MSXML xml.load() bringt Fehlermeldung wenn XML Datei leer
-
Hallo,
ich bin gerade an einem Programm das XML lesen und Schreiben soll.
Es funktioniert schon soweit alles, jedoch habe ich ein Problem.Wenn die XML-Datei die ich einlese komplett leer ist bekomme ich
mehrere Debug-Meldungen von Visual Studio gefolgt von einer
Windows Mobile Fehlermeldung die gwes.exe habe einen Fehler verursacht.Meldungen von Visual Studio:
TLSKERN_NOFAULT set... bypassing kernel debugger.
RaiseException: Thread=96e8b8c0 Proc=814c7100 'XML_Test.exe'
AKY=00010001 PC=03f785b4(coredll.dll+0x000185b4) RA=800773f4(NK.EXE+0x000073f4) BVA=00000000 FSR=00000000
TLSKERN_NOFAULT set... bypassing kernel debugger.Die Fehler treten bei folgende Zeile auf:
LPCTSTR szXMLFile = TEXT("Filepath...."); CComPtr<IXMLDOMDocument> m_iXMLDoc; VARIANT_BOOL bSuccess; [b]hr = m_iXMLDoc->load( CComVariant ( szXMLFile ), &bSuccess );[/b]Kann mir jemand sagen woran das liegen könnte?
Danke schonmal
-
m_iXMLDoc zeigt auf nirgendwas... was soll da geschehen?
SimonEdit: Hier Doku: http://msdn.microsoft.com/en-us/library/ms756987.aspx
-
Hallo,
habe die Datentypen nur zur Information gepostet.
Das DOMDocument ist initialisiert und der komplette Zugriff funktioniert,
nur sobald ich eine "leere" XML-Datei lade bekomme ich oben beschriebene
Fehler.Hier nochmal ein größerer Codeausschnitt:
m_iXMLDoc.CoCreateInstance( __uuidof( DOMDocument ) ); m_iXMLDoc->put_async( VARIANT_FALSE ); CComQIPtr<IObjectSafety,&IID_IObjectSafety> iSafety( m_iXMLDoc ); if ( iSafety ) { DWORD dwSupported, dwEnabled; iSafety->GetInterfaceSafetyOptions( IID_IXMLDOMDocument, &dwSupported, &dwEnabled ); iSafety->SetInterfaceSafetyOptions( IID_IXMLDOMDocument, dwSupported, 0 ); } bSuccess=false; // Can load it from a url/filename... hr = m_iXMLDoc->load( CComVariant ( szXMLFile ), &bSuccess );Kann mir jemand sagen warum das Laden mit load() bei leeren Dateien Fehler verursacht?
Danke