我有一个有时会在Win XP计算机上导致BSOD的应用程序。尝试查找更多信息,我从C:\\\\ Windows \\\\ Minidump加载了生成的* .dmp文件,但是这样做时在很多读数中都得到了此消息:
1 2 3 4 5 6 7 8
| *********************************************************************
* 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+ *
********************************************************************* |
这是什么意思,我该如何"修复"它?
我通常进入系统控制面板,然后进入高级选项卡,然后进入环境。然后,您可以添加必需的_NT_SYMBOL_PATH变量。这样,在运行WinDbg之前,您无需在命令行上执行任何操作。
staffan建议的srv*C:\\Windows\\Symbols*http://msdl.microsoft.com/download/symbols设置很好。不过,我通常更喜欢使用自己的配置文件来存储符号(因此,我不需要编辑C:\\Windows\\Symbols的权限,因为出于安全卫生的考虑,我故意以受限用户身份运行)。因此(在我的情况下)我的_NT_SYMBOL_PATH是srv*C:\\Documents and Settings\\cky\\symbols*http://msdl.microsoft.com/download/symbols。
希望这会有所帮助。 :-)
快速答案是
c:\\\\>设置_NT_SYMBOL_PATH = SRV * C:\\\\ WINDOWS \\\\ Symbols * http://msdl.microsoft.com/download/symbols
开始windbg之前。
更快的答案:
但是它只会影响当前的windbg / ntsd / cdb / kd。
实际上,您需要将这些符号下载到您的计算机上,或者在调试时在线时将其配置为随时下载。
这里是详细讨论此问题的链接:http://www.microsoft.com/whdc/DevTools/Debugging/debugstart.mspx
正如@Vaibhav所指出的,您实际上需要下载这些符号并配置windbg来使用它们。
还请注意以下几点:
!sym noisy-激活噪声符号加载
lm v-与" m"参数一起使用以查看已加载模块的信息。
lme D sm-列出所有不带符号的模块。