一般来说,我对编程和调试很陌生。
我花了很多时间离线(没有互联网),并且正在阅读《Windows 调试内部》一书,但时不时地,我发现自己需要一个 pdb 文件。
我做了一些挖掘,发现了这个网址:http://msdn.microsoft.com/en-us/windows/hardware/gg463028.aspx,但是版本太多,我花了一些时间试图弄清楚如何找到合适的版本。
我确实找到了正确的版本,并且下载了它,但运气不佳(我花了 6 个多小时才下载了 200 Mb),但我发现自己处于循环的开始(pdb 不是正确的,即使构建是匹配的),我需要活跃的互联网来继续阅读我的书,但在国家政策期间我无法获得该书。
我的问题很简单,如何让 Windbg 一次性下载所有二进制文件的所有符号。
操作系统信息:
版本:Windows 7 旗舰版 (x86)
内部版本:7601.win7sp1_gdr.130104-1431
谢谢你的耐心阅读我糟糕的英语:)
我认为您正在寻找这篇文章搭建调试环境
基本上它会下载您当前安装的所有文件的符号。两个月前,我安装了 Windows 7,运行良好,但需要 8.3 GB 的磁盘空间,当然下载时间也很长。
其概念是遍历 Windows 目录中的所有 DLL 和 EXE,将文件添加到本地符号存储中,然后在线检查符号。
SET PATH=%PATH%;"C:\Program Files\Debugging Tools for Windows"
REM Copy all .DLL files
SYMSTORE add /r /f C:\Windows\*.dll /s C:\SymbolStore\OSSymbols /t "Microsoft Windows" /v ""
REM Download symbols for .DLL files
SYMCHK /r C:\Windows\*.dll /s SRV*C:\SymbolStore\OSSymbols*http://msdl.microsoft.com/download/symbols
REM Copy all .EXE files
SYMSTORE add /r /f C:\Windows\*.exe /s C:\SymbolStore\OSSymbols /t "Microsoft Windows" /v ""
REM Download symbols for .EXE files
SYMCHK /r C:\Windows\*.exe /s SRV*C:\SymbolStore\OSSymbols*http://msdn.microsoft.com/download/symbols
当脚本中断时,您可以再次运行它。 DLL 和 EXE 使用哈希值存储。如果文件未更改,则哈希值不应更改。 Symstore 足够智能,可以根据文档仅拾取丢失的文件:“SymChk 始终在查询符号服务器之前搜索下游存储。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)