-1
C++ DLLを使用するC#プロジェクトがあります。私はDLLをデバッグしようとしていますが、Visual Studioは "PDBがイメージと一致しません"ということを私のDLLに報告しています。C#プロジェクトで使用されるC++ DLLのデバッグ
- C++ DLLは、DLLと完全なPDBの両方を生成する同じソリューションで私によって構築されています。
- C++ DLLは、C#プロジェクトの依存関係としてマークされています。
- C#プロジェクトは、既存のものよりも新しいDLLファイルを出力ディレクトリにコピーするように設定しています。
- C#プロジェクトで「ネイティブコードのデバッグを有効にする」が有効になっています。
モジュールウィンドウの下にあるDLLのシンボル読み込み情報には、正しいPDBが見つかりましたが、「PDBはイメージに一致しません」という文句があります。これはVisual StudioによるDLLの側に構築されたPDBですが。
このエラーを検出すると、人々は何がうまくいかないかを尋ねるだけですが、回答は決して提供されません。
このような不思議なことが起こったとき、私は次のことを行います:1.ソリューションの下の名前とdllのすべてのインスタンスをPATHで検索し、すべて削除します。すべてのdll pdbファイルを検索して削除してください。デバッグ対象の構成(x64/Debugなど)を使用してdllプロジェクトを再ビルドします。 2. C#プロジェクトを再ビルドし、再度デバッグを試みます。ほとんどの場合、私が使用していたとは異なるバージョンのdllを使用することによってエラーが発生しました。 –
別のプロジェクトにはこの問題はありません。 – lsalamon