Ich ändere mein C++ - Projekt, das früher in VC6 und jetzt auf VS 2008 migriert wurde, MSXML 6 anstelle der früheren MSXML 3. verwenden wenn der Code in VC6 war, dass wir durch den Import mit MSXML3 wurdenFehler C2011: 'MSXML2 :: IXMLDOMImplementation': 'struct' Typ Neudefinition
# import "msxml3.dll"
wurde mit
# import "msxml6.dll"
Danach ersetzt, wenn ich das Projekt, das ich diese und einige andere ähnliche Fehler erhalten kompilieren Fehler C2011: 'MSXML2 :: IXMLDOMImplementatio n ':' struct 'Typ Neudefinition
Der obige Fehler ist in der Datei msxml3.tlh.
1) Warum wird msxml3 noch verwendet?
2) Ich habe das Problem auf MSXML.h eingegrenzt, das irgendwie automatisch in meinem Projekt enthalten ist. Warum ist das?
3) Auf welche Version von MSXML wird in MSXML.h verwiesen?
4) Warum in der Welt enthält VC++ automatisch so viele Header-Dateien? Was ist, wenn ich nicht möchte, dass einige Header-Dateien enthalten sind?
5) Was ist der richtige Weg für die Verwendung von MSXML6 in einem C++ - Projekt? #import, Header-Datei ?????
6) Wie behebe ich dieses Problem?
Geben Sie mir .net jederzeit. Viel sauberer. Ein VC++ Projekt ist ein Durcheinander.
können Sie eine DLL einschließen? – bobbyalex
Ich habe das Projekt gereinigt. Die Dateien tlh und tli werden automatisch neu erstellt. Ich habe die gesamte Lösung für msxml3 durchsucht und es ist nichts mehr übrig. Alles ist msxml6. – bobbyalex