Debugging 如何设置windbg以自动下载所有符号?

Debugging 如何设置windbg以自动下载所有符号?,debugging,windbg,symbols,Debugging,Windbg,Symbols,我一般不熟悉编程和调试 我花了很多时间离线(没有互联网),并且正在阅读《Windows内部调试手册》,但有时,我发现自己需要一个pdb文件 我做了一些挖掘,发现了这个URL:,但是版本太多了,我花了一些时间试图找出正确的版本 我确实找到了正确的版本,并下载了它,但运气不好(我花了6个多小时下载了200 Mb),但我发现自己站在了这个圈子的起点(pdb不是正确的版本,即使版本匹配),我需要活跃的互联网来继续阅读我的书,而我在访问国家政策期间无法获得这本书 我的问题很简单,如何让windbg一次下载

我一般不熟悉编程和调试

我花了很多时间离线(没有互联网),并且正在阅读《Windows内部调试手册》,但有时,我发现自己需要一个pdb文件

我做了一些挖掘,发现了这个URL:,但是版本太多了,我花了一些时间试图找出正确的版本

我确实找到了正确的版本,并下载了它,但运气不好(我花了6个多小时下载了200 Mb),但我发现自己站在了这个圈子的起点(pdb不是正确的版本,即使版本匹配),我需要活跃的互联网来继续阅读我的书,而我在访问国家政策期间无法获得这本书

我的问题很简单,如何让windbg一次下载所有二进制文件的所有符号

操作系统信息: 版本:Windows7Ultimate(x86) 内部版本:7601.win7sp1_gdr.130104-1431


感谢您耐心阅读我的蹩脚英语:)

当您连接到要调试的应用程序或打开.dmp文件时,请键入

.reload /f
这将强制加载二进制文件的所有符号


请确保您之前已正确配置了符号服务器。

我想您正在寻找这篇文章

基本上,它会下载您当前安装的所有文件的符号。两个月前,我在安装Windows7时就这么做了,它运行得很好,但需要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总是在查询symbol服务器之前搜索下游存储。

thanx tehlexx以获得回复,但这不是我需要的….,我需要的是下载所有PDB,windows系统的所有二进制文件,而不是当前正在调试的应用程序,理论上我可以编写一个应用程序,在system32中加载所有dll,然后调试它,这会欺骗windbg下载符号,但说真的,我必须这样做吗?是的,托马斯,这就是我想要的。我将测试您的脚本并让您更新结果,tnx:)