Visual Studio 2012 には、実行可能ファイルとクラス ライブラリ プロジェクトで構成される大規模なソリューションがあります。アプリケーションをデバッグするときに、特定のクラス ライブラリ プロジェクトのブレークポイントがヒットしません。
そのプロジェクトのシンボルのステータスを確認するために[Debug] > [Windows] > [Modules ] ウィンドウを調べたところ、 「Cannot find or open the PDB file」と表示されています。
また、 「ユーザー コード」列の下に「いいえ」と表示されます。
ソリューションには、その列に「いいえ」と表示されているカスタム プロジェクトが他にもいくつかあり、それらのシンボルも読み込みに失敗していることに気付きました。「ユーザーコード」の下に「はい」が付いているものは、pdbが問題なくロードされているようです。しかし、これが関連しているかどうかはわかりません。
dll でdumpbin /headersを使用しましたが、pdb ファイルのパスが存在し、正しいです。
モジュールは、シンボル読み込みの除外リストに含まれていません。
また、モジュール ウィンドウのエントリを右クリックし、[シンボルの読み込み] を選択して、dll ヘッダーで指定されたパスに移動しようとしました。pdb を選択すると、「一致するシンボル ファイルがこのフォルダーに見つかりませんでした」と表示されます。
これらのフォルダーとファイルを削除し、ソリューションをクリーンアップし、閉じて、全体を再構築した後にこれを取得します。pdb は、問題の dll と同時にビルドされたことは間違いありません。
したがって、明らかに問題は、エラー メッセージの「pdb を開けません」という部分です。
2台のコンピューターでこれを試しましたが、どちらも同じ動作を示しています。
ここからどこへ行くべきかについて誰か提案を提供できますか?おそらく、dllに対応するビルドされたpdbがロードされないのはなぜですか?