.loadby 不起作用,但 .load 运行良好 [英] .loadby not work, but .load works well

查看:32
本文介绍了.loadby 不起作用,但 .load 运行良好的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试使用windbg时,

.load C:\Windows\Microsoft.NET\Framework64\v4.0.30319\SOS.dll

完美加载 SOS 扩展.

但是当我尝试使用建议的模式时

.loadby SOS

.loadby sos.dll

我只能收到一条错误消息,指出扩展字符串中的语法错误".

我试图用谷歌搜索此错误消息,但没有找到任何有用的信息.

有什么建议吗?

解决方案

.loadby 需要另一个参数来定义 by 的位置.来自 WinDbg 帮助:

.loadby DLLName ModuleName

<块引用>

DLL 名称
指定要加载的调试器扩展 DLL.如果使用 .load 命令,DLLName 应包含完整路径.如果使用 .loadby 命令,DLLName 应仅包含文件名.

模块名称
指定与 DLLName 指定的扩展 DLL 位于同一目录中的模块的模块名称.

试试吧

.loadby sos mscorwks ;*** .NET 2.loadby sos clr ;*** .NET 4.loadby sos coreclr;*** 银光

请注意,在某些情况下,.loadby 可能无法找到 by 模块的完整路径,例如如果创建的转储没有完整路径名 (.dump/maR).在这种情况下,您必须返回 .load.

When I try to use windbg,

.load C:\Windows\Microsoft.NET\Framework64\v4.0.30319\SOS.dll 

works perfectly to load SOS extension.

But when I tried to used the suggested pattern

.loadby SOS

OR

.loadby sos.dll

I could only got a error message saying "Syntax error in extension string".

I tried to googled this error message, but nothing useful found.

Any suggestions ?

解决方案

.loadby needs another argument to define where by is. From WinDbg help:

.loadby DLLName ModuleName

DLLName
Specifies the debugger extension DLL to load. If you use the .load command, DLLName should include the full path. If you use the .loadby command, DLLName should include only the file name.

ModuleName
Specifies the module name of a module that is located in the same directory as the extension DLL that DLLName specifies.

So try

.loadby sos mscorwks ; *** .NET 2
.loadby sos clr ; *** .NET 4
.loadby sos coreclr; *** Silverlight

Note that in some cases it may be impossible for .loadby to find out the full path of the by module, e.g. if the dump was created without full path names (.dump /maR). In that case you have to go back to .load.

这篇关于.loadby 不起作用,但 .load 运行良好的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆