Sto modificando il mio progetto C++, che era precedente in VC6 e ora migrato a VS 2008, per utilizzare MSXML 6 invece del precedente MSXML 3. quando il codice era in VC6 stavamo usando MSXML3 importandoloErrore C2011: 'MSXML2 :: IXMLDOMImplementation': 'struct' tipo ridefinizione
# import "msxml3.dll"
questo è stato sostituito con
# import "msxml6.dll"
Dopo questo, quando compilo il progetto ottengo questo e molti altri errori simili Errore C2011: 'MSXML2 :: IXMLDOMImplementatio n ':' struct 'tipo ridefinizione
L'errore sopra riportato è nel file msxml3.tlh.
1) Perché è ancora in uso msxml3?
2) Ho ristretto il problema a MSXML.h che è in qualche modo incluso automaticamente nel mio progetto. Perchè è questo?
3) A quale versione di MSXML viene fatto riferimento in MSXML.h?
4) Perché nel mondo VC++ include automaticamente tanti file di intestazione? Cosa succede se non desidero includere alcuni file di intestazione?
5) Qual è il modo corretto di utilizzare MSXML6 in un progetto C++? #import, file di intestazione ?????
6) Come posso risolvere questo problema?
Datemi .net in qualsiasi momento. Molto più pulito Un progetto VC++ è un casino.
puoi # includere una dll? – bobbyalex
Ho pulito il progetto. I file tlh e tli vengono ricreati automaticamente. Ho cercato l'intera soluzione per msxml3 e non è rimasto nulla. È tutto msxml6. – bobbyalex