1

したがって、C#プロジェクト(テストドライバー-exeを作成)と7つのC ++プロジェクト(dll)を含むVisualStudio2005ソリューションがあります。

このソリューションは、この時点までうまく構築されています。

DevPartnerstudio8.2をインストールしています。ソリューション全体でテストカバレッジを生成しようとしていますが、ビルド中にネイティブc++コードをインストルメント化する必要があります。このDevPartnerオプションをオンにすると、ビルドでリンカーエラーが発生します。

誰かがこれを経験したことがありますか?

例えば:

Error   25  error LNK2001: unresolved external symbol "public: __thiscall IntLong::IntLong(class BufObjBase *,int,int,unsigned char,wchar_t const *,bool)" (??0IntLong@@QAE@PAVBufObjBase@@HHEPB_W_N@Z) X.obj
4

1 に答える 1

1

同僚はこれを理解しました。他の誰かがこの問題に遭遇した場合:

プロジェクトには、dll、他の dll、およびライブラリ間の依存関係チェーンがあります。通常のビルドでは、Visual Studio はライブラリを見つけるのに十分スマートです。DevPartner がインストルメンテーションを挿入すると、そうではありません。

すべての追加の依存関係が (リンク エラーを取得するプロジェクトのプロパティ) -> リンカー -> 入力 -> 追加の依存関係で明示的に指定されていることを確認します。

于 2009-07-31T14:10:54.233 に答える