Je suis en train de modifier mon projet C++, qui était auparavant dans VC6 et qui est en cours de migration vers VS 2008, pour utiliser MSXML 6 au lieu de MSXML 3. 3. MSXML 3. 3.lorsque le code était en VC6 que nous utilisions MSXML3 en l'importantErreur C2011: 'MSXML2 :: IXMLDOMImplementation': redéfinition du type 'struct'
# import "msxml3.dll"
cela a été remplacé par
# import "msxml6.dll"
Après cela, quand je compilez le projet, je reçois cela et plusieurs autres erreurs similaires erreur C2011: 'MSXML2 :: IXMLDOMImplementatio n ': redéfinition du type' struct '
L'erreur ci-dessus se trouve dans le fichier msxml3.tlh.
1) Pourquoi msxml3 est toujours utilisé?
2) J'ai réduit le problème à MSXML.h qui est en quelque sorte inclus automatiquement dans mon projet. Pourquoi est-ce?
3) Quelle version de MSXML est référencée dans MSXML.h?
4) Pourquoi dans le monde VC++ inclut-il automatiquement autant de fichiers d'en-tête? Que faire si je ne veux pas que certains fichiers d'en-tête soient inclus?
5) Quelle est la bonne façon d'utiliser MSXML6 dans un projet C++? #import, fichier d'en-tête ?????
6) Comment résoudre ce problème?
Donnez-moi .net n'importe quand. Beaucoup plus propre. Un projet VC++ est un gâchis.
pouvez-vous # inclure une DLL? – bobbyalex
J'ai nettoyé le projet. Les fichiers tlh et tli sont recréés automatiquement. J'ai cherché toute la solution pour msxml3 et il n'y a plus rien. Tout est msxml6. – bobbyalex