以前の VC6 で現在 VS 2008 に移行されている C++ プロジェクトを、以前の MSXML 3 の代わりに MSXML 6 を使用するように変更しています。コードが VC6 にあったとき、MSXML3 をインポートして使用していました。
# import "msxml3.dll"
これに置き換えられました
# import "msxml6.dll"
この後、プロジェクトをコンパイルすると、これと他のいくつかの同様のエラー エラー C2011: 'MSXML2::IXMLDOMImplementation' : 'struct' type redefinition が表示されます
上記のエラーは msxml3.tlh ファイルにあります。
1) msxml3 がまだ使用されているのはなぜですか?
2) 問題を MSXML.h に絞り込みました。MSXML.h は、プロジェクトに何らかの形で自動的に含まれています。どうしてこれなの?
3) MSXML.h で参照されている MSXML のバージョンはどれですか?
4) VC++ が自動的にこれほど多くのヘッダー ファイルをインクルードするのはなぜですか? 一部のヘッダー ファイルを含めたくない場合はどうすればよいですか?
5) C++ プロジェクトで MSXML6 を使用する正しい方法は何ですか? #インポート、ヘッダー ファイル?????
6) この問題を解決するにはどうすればよいですか?
いつでも .net をください。ずっときれい。VC++ プロジェクトはめちゃくちゃです。