Avatar billede driis Nybegynder
07. november 2005 - 13:51 Der er 5 kommentarer og
1 løsning

Windows CE IXMLDOMDocument.load hænger

I forlængelse af dette:
http://eksperten.dk/spm/662266

Jeg har et MSXML til at parse XML under Windows CE i en native applikation. I øjeblikket bruger jeg følgende:
    IXMLDOMDocument *ptrXml = NULL;
    VARIANT_BOOL vSuccess = VARIANT_FALSE;
    HRESULT hr = 0;

    //try to get an IXMLDOMDocument to do parsing
    hr = CoCreateInstance(CLSID_DOMDocument,NULL,CLSCTX_INPROC_SERVER,IID_IXMLDOMDocument ,(void**)&ptrXml);
    if ( hr == S_OK )
    {
        //ptrXml->put_validateOnParse(VARIANT_FALSE);
        ptrXml->put_resolveExternals(VARIANT_FALSE);
        ptrXml->put_async(VARIANT_FALSE);
        CComVariant vFile(XML_PATH);           
        ptrXml->load(vFile,&vSuccess);
}

Problemet er, at hvis filen enten ikke eksisterer eller indeholder ugyldig xml (såsom manglende afslutning af tags), så hænger ptrXml->load kaldet. Det vil jeg gerne undgå. Any ideas ?


Al hjælp vil blive påskønnet!
Avatar billede driis Nybegynder
07. november 2005 - 13:54 #1
Det skal lige præciseres at kaldet til load hænger på den måde at metoden aldrig returnerer. Jeg vil bare gerne have en fejl, hvis filen på den ene eller anden måde er ugyldig.

Jeg har eksperimenteret med validateOnParse true/false, uden jeg er kommet frem til noget.
Avatar billede jpk Nybegynder
08. november 2005 - 08:08 #2
Hvilken compiler/udviklingsmiljø bruger du og sker det uanset om du kører den eksekvérbare direkte eller fra miljøet? Hvad med debug/release, gør det nogen forskel?
Avatar billede driis Nybegynder
08. november 2005 - 18:40 #3
Jeg bruger MS Embedded Visual C++ 4.0 Sp4.

Jeg tror du er inde på noget, når jeg kører fra udviklingsmiljøet får jeg fejlen, når jeg eksekverer programmet direkte, får jeg ingen fejl. Det gælder både debug og release.

I begge tilfælde kører programmet på en emulator.

Nogen ideer til hvad jeg kan gøre ved det ? Det er lidt svært at skulle debugge programmet uden debugger :-(
Avatar billede driis Nybegynder
09. november 2005 - 17:45 #5
OK, læg et svar.

Nu har jeg i det mindste en forklaring på hvad der sker, og en måde at omgå det på.
Avatar billede jpk Nybegynder
10. november 2005 - 08:17 #6
Svar...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester