WinDbgを使用してマネージ コード (C#、Any CPU用に構築されたコンソール アプリケーション) からクラッシュ ダンプを読み込んでいます。クラッシュ ダンプは x64 プラットフォームで作成されます。x64 プラットフォームでデバッグしています。関連するPDBファイルをシンボル パスに配置しました。
しかし、WinDbg は常に奇妙なフォルダーからシンボルを見つけます。例を次に示します (!sym ノイジーを使用した場合):
SYMSRV: c:\MySymbols\FooService.pdb\4311207E2E2D442CB7473828D2488F941\FooService.pdb not found
アプリケーションが呼び出されFooService.exe
、関連する PDB ファイルの名前がFooService.pdb
. C:\MySymbols
シンボル パスとして設定しFooService.pdb
、ディレクトリにコピーしましたC:\MySymbols
。しかし、なぜ WinDbg はFooService.pdb
ではC:\MySymbols
なく、奇妙なサブフォルダー "FooService.pdb\4311207E2E2D442CB7473828D2488F941" から検出されるのでしょうか?
私のシナリオでは、PDB シンボル ファイルをロードするために、最善の解決策は何ですか (自分でサブフォルダーFooService.pdb\4311207E2E2D442CB7473828D2488F941
を手動で作成する必要がありますか)?