Windows &引用;“无法加载符号”;尝试读取转储文件时
我有一个应用程序,有时会在Win XP机器上导致BSOD。为了了解更多信息,我加载了生成的*.dmp文件(来自C:\Windows\Minidump),但在执行此操作时,在大部分读数中都会收到以下消息:Windows &引用;“无法加载符号”;尝试读取转储文件时,windows,windows-xp,crash-dumps,bsod,Windows,Windows Xp,Crash Dumps,Bsod,我有一个应用程序,有时会在Win XP机器上导致BSOD。为了了解更多信息,我加载了生成的*.dmp文件(来自C:\Windows\Minidump),但在执行此操作时,在大部分读数中都会收到以下消息: ********************************************************************* * Symbols can not be loaded because symbol path is not initialized. * *
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*********************************************************************
*无法加载符号,因为符号路径未初始化*
* *
*符号路径可通过以下方式设置:*
*使用\u NT\u SYMBOL\u PATH环境变量*
*启动调试器时使用-y参数*
*使用.sympath和.sympath+*
*********************************************************************
这意味着什么?我如何“修复”它?您实际上需要将符号下载到计算机上,或者将其配置为在调试过程中在线时下载 这里有一个详细讨论这个问题的链接:快速答案是 c:\>set\u NT\u SYMBOL\u PATH=SRV*c:\WINDOWS\Symbols*http://msdl.microsoft.com/download/symbols
启动windbg之前。我通常先进入系统控制面板,然后进入高级选项卡,然后进入环境。然后,您可以添加必要的
\u NT\u SYMBOL\u PATH
变量。在运行WinDbg之前,您不必在命令行上执行任何操作
staffan建议的srv*C:\Windows\Symbols*http
://msdl.microsoft.com/download/Symbols
设置很好。不过,我通常更喜欢使用自己的配置文件来存储符号(这样我就不需要编辑C:\Windows\symbols
的权限,因为出于良好的安全卫生考虑,我有意以受限用户身份运行)。因此(在我的例子中)我的\NT\u SYMBOL\u路径是srv*C:\Documents and Settings\cky\symbols*http
://msdl.microsoft.com/download/symbols
希望这有帮助。:-) 正如@Vaibhav所指出的,您实际上需要下载符号并配置windbg来使用它们
还应注意以下事项:
!sym noise——激活有噪符号加载
lm v——与“m”参数一起使用,查看已加载模块的信息。
lme D sm-列出所有不带符号的模块。快速回答:
!symfix
但它只影响当前的windbg/ntsd/cdb/kd