Windows &引用;“无法加载符号”;尝试读取转储文件时

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. * *

我有一个应用程序,有时会在Win XP机器上导致BSOD。为了了解更多信息,我加载了生成的*.dmp文件(来自C:\Windows\Minidump),但在执行此操作时,在大部分读数中都会收到以下消息:

*********************************************************************
* 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