msxml
-
Wenn man neu in C++ ist macht man nicht solche schwierigen Sachen.
-
Ich habe alles soweit hinbekommen bis auf (Programmiere seit 20 Jahren nur eben nicht in c++)
Wie deklariere ich die Variablen hr,result und dwbytes richtig.
dwbytes(also den Inhalt der XML-Datei) möchte ich in einer Datei speichern.
Etwas passt an dem Code nichtFILE *file=fopen("halal.txt", "w+b"); fwrite(&dwBytes, 4, 2, file); fclose (file);
Danke für die Mühe
mwwEdit:......................
Ich habe jetzt alles deklariert und es läuft (nur das Ergebnis stimmt noch nicht), bin mir aber nicht sicher, ob das die sinnvollsten Lösungen sind. Wäre also trotzdem für eure Lösungen dankbar
-
mww schrieb:
Edit:......................
Ich habe jetzt alles deklariert und es läuft (nur das Ergebnis stimmt noch nicht), bin mir aber nicht sicher, ob das die sinnvollsten Lösungen sind. Wäre also trotzdem für eure Lösungen dankbarwie hat das ein anderer hier im forum so treffend gesagt?
"sorry aber meine kristallkugel is heute kaputt"
woher solln wir denn wissen wie das ergebnis aussieht und wie es aussehen soll?
-
Mit Ergebnis meine ich, daß das Program zwar fehlerfrei kompiliert wird. Nur es werden definitiv nicht die XML-Daten in die Datei geschrieben. Irgendwas stimmt bei den 2 obigen Quellcodes nicht.
-
untersuch halt mal die inhalte der variablen im speicher indem du breakpoints setzt
-
Die Variable &dwBytes in der die xml-Daten enthalten sind, wird falsch gespeichert. Die zweite Zeile im folgendem Quellcode ist das Problem. Ich weiß aber nicht wie man diese Variable richtig speichert
FILE *file=fopen("halal.txt", "w+b"); fwrite(&dwBytes, 4, 2, file); fclose (file);
-
benutz fstream, das ist der C++ weg.
-
probier mal so:
#include <atlcomcli.h> #include <msxml2.h> #include <iostream> #include <exception> class HRTester { public: HRTester() { } HRTester(HRESULT hr) { test(hr); } HRTester &operator=(HRESULT hr) { test(hr); return *this; } private: void test(HRESULT hr) { if(FAILED(hr)) throw hr; } }; int main() { ::CoInitialize(NULL); try { HRTester hr; CComPtr<IXMLDOMDocument2> xmlDoc; hr = xmlDoc.CoCreateInstance(__uuidof(DOMDocument)); hr = xmlDoc->put_async(VARIANT_FALSE); VARIANT_BOOL b; hr = xmlDoc->load(CComVariant(L"xmlDatei"), &b); if(!b) { throw std::logic_error("Failed to load xml"); } } catch(const std::exception &e) { std::cerr << "error : " << e.what(); } catch (HRESULT hr) { std::cerr << "error. hr = " << hr; } ::CoUninitialize(); }
-
Erstmal vielen Dank
Das Programm läuft bei mir nicht, wahrscheinlic wegen der fehlenden <atlcomcli.h>
-
mww schrieb:
Erstmal vielen Dank
Das Programm läuft bei mir nicht, wahrscheinlic wegen der fehlenden <atlcomcli.h>
compiler?
version?
-
Ich habe Microsoft Visual c++ 6.00
Wie schreibt man den die Variable &b, aus deinem Quellcode, in der die XML Daten sind, in eine Datei ?