首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SOS调试.net

使用SOS调试.net
EN

Stack Overflow用户
提问于 2010-11-22 18:56:20
回答 2查看 1.6K关注 0票数 0

我已经使用clrdump创建了一个转储文件。当我使用sos查看它时,我加载了sos,然后运行!dso,但我得到的错误是:

代码语言:javascript
复制
PDB symbol for mscorwks.dll not loaded

但是,在模块窗口中,它显示符号已加载。我已经从微软商店获得了最新的符号?

有人有什么想法吗?

谢谢,

达伦。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-23 15:00:17

要让!dso正常工作,您并不需要mscorwks.dll的符号,但这里有一些关于如何获取符号的建议。

您需要做的第一件事是验证您是否设置了符号路径?可以使用.sympath命令查看符号路径的当前设置。您可以下载所有符号并将符号路径指向光盘上的位置,或者只使用联机符号服务器。在这两种情况下,符号路径都必须指向正确的位置。

您可以使用.symfix命令指向微软的公共符号服务器,这可能是获取符号的最简单方法(前提是您可以在线访问)。

使用lm命令查看模块及其符号。如果它在模块旁边显示pdb symbols,则一切正常。请记住,WinDbg只会在需要时加载符号,因此对于许多模块,您可能会看到deferred。您可以使用.reload /f命令强制加载所有模块的符号。

要解决符号加载问题,请使用!sym noisy命令。它将告诉您调试器正在尝试查找PDB文件的位置。

票数 2
EN

Stack Overflow用户

发布于 2010-11-23 15:02:00

代码语言:javascript
复制
!sym noisy    
.symfix
.reload -f
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4244670

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档