Windbg可以加载微软符号库,如果本地没有符号,可以自动去微软网站上下载对应的PDB文件辅助调试分析。
PS:WingDbg下的符号加载,SRV*c:/windows/symbols*http://msdl.microsoft.com/download/symbols
Ring3下的OD也具有这个功能,当然需要StrongOD来帮助了。
1.在WingDbg目录下拷贝dbgeng.dll,dbghelp.dll,srcsrv.dll,symbolcheck.dll,symsrv.dll,symsrv.yes,一共6个文件至OD目录下。
2.打开OD,设置符号路径。调试--->选择符号路径。
3.设置StrongOD的插件选项。选择加载符号。
PS:有的时候程序加载很慢,只需要把插件选项关闭,即可恢复。主要是联网下载PDB符号文件。
微软对于这个符号表的说明:
当您开始调试故障转储文件或应用程序时,Windows 调试器将检查它加载的模块的符号信息是否位于本地文件夹中。如果模块的符号信息不在本地文件夹中,WinDbg 将尝试从 Symbol Server 下载相应的符号文件或文件。如果您在具有不同文件版本的计算机上调试应用程序时使用相同的本地高速缓存,则将下载不同版本的符号,并将其同第一批符号存储在一起。SymStore 格式会按照映像的时间戳和大小(或校验和)来存储文件。因此,来自不同产品版本的符号可以并行共存。由于下载符号文件需要一些时间,因此请记住,当您第一次调试应用程序时,调试器可能看上去停止了响应(挂起)。这是因为必须下载系统 DLL 的大多数符号文件&#x