我正在使用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
自己手动创建子文件夹)?