5

VisualStudio2005のATLSimpleObject Wizardを使用して、DLLに新しいCOMオブジェクトを作成しようとしています。

オブジェクトの短い名前を入力すると、他のすべてのフィールドが派生します。

ただし、ウィザードで[次へ]をクリックすると、次のエラーメッセージが表示されます。

Object 'IXxxInterfaceName' already exists

ソリューション全体でIXxxInterfaceNameへのすべての参照を検索しましたが、どこにも定義されていません。

ウィザードは、それがすでに存在しているとどのように判断しますか?

4

3 に答える 3

2

オブジェクト名が既に存在するとウィザードが判断した理由がわかりませんでした。何かがどこかにキャッシュされていて、追跡できなかったのだと思います。

最後に、作成時にインターフェイス名の末尾に 2 を追加して、追加できるようにしました。次に、出現する IXxxInterfaceName2 をすべて IXxxInterfaceName に置き換えました。この後、すべてが機能しました。

この問題の根本原因を突き止めたら、回答を更新します。

于 2009-04-08T06:13:42.773 に答える
1

参照しているライブラリで定義されていますか?

于 2009-03-12T00:56:35.823 に答える
0

VS 2008でも発生します。ただし、ビルドオプションからクリーンソリューションとクリーンプロジェクトを使用すると、これが解決されます:-)

于 2011-12-10T00:08:02.040 に答える