当我在堆栈顶部出现的某个方法(!CLRStack)上设置断点时,我会为调试对象引用的每个DLL(包括.NET Framework)获取大量这些消息。
错误:模块加载已完成但无法加载符号
进一步深入研究表明windbg没有加载我在符号路径中提供的每个.pdb文件。我已经仔细检查了我的符号路径,看起来没问题,但是以下命令清楚地表明并非所有PDB都正确加载了!
0:000> !sym吵闹 嘈杂的模式 - 符号提示 0:000> .reload
重新加载电流模块
.................................................. ..............
DBGHELP:ntdll - 公共符号
C:\符号\ ntdll.pdb \ 6992F4DAF4B144068D78669D6CB5D2072 \ ntdll.pdb
..
0:000> .sympath
符号搜索路径为:SRV c:\ symbols C:\ xc
扩展符号搜索路径为:srv c:\ symbols c:\ xc
我用c:\符号用于缓存,c:\ xc用于WinDBG似乎无法找到的.NET应用程序PDB。知道如何使用它来帮助进一步排除故障吗?
由于
答案 0 :(得分:1)
SRV 前缀表示目录的布局类似于符号服务器。如果您的目录不使用符号服务器hiarchy,则应使用C:\Symbols;C:xc
而不是SRV*C:\Symbols*C:\Xc