WinDbg无法加载SOS.dll

我需要使用WinDbg调试一个32位的托管应用程序,但WinDbg固执地拒绝加载SOS.dll扩展.经过很多互联网搜索和事情尝试,我被困了.我有使用WinDbg调试非托管代码的经验,但这是我第一次尝试管理.

当我直接WinDbg加载认的SOS.dll它给出这个错误

sxe ld clr                <- I wait until the clr has loaded
.loadby sos clr

The call to LoadLibrary(C:\Windows\Microsoft.NET\Framework\v4.0.30319\sos) Failed,Win32 error 0n193
    "%1 is not a valid Win32 application."
Please check your debugger configuration and/or network access.

如果我试图指定SOS.dll,我收到一个不同的错误

.load C:\Windows\Microsoft.NET\Framework\v4.0.30319\sos clr

The call to LoadLibrary(C:\Windows\Microsoft.NET\Framework\v4.0.30319\sos clr) Failed,Win32 error 0n126
    "The specified module Could not be found."
Please check your debugger configuration and/or network access.

我的设置是通过串行连接的VM到VM,两个VM都是Windows Server 2008 R2 SP1.
调试工具Windows(x64)安装在这两个虚拟机中.

注意:在新的Windows操作系统中,似乎在x64 cpu上安装x86调试工具,如this solution所示,不可能(也不需要),所以请不要建议.安装程序失败并出现错误.

提前感谢您的想法.

可以在同一台机器上安装x86和x64版本的WinDbg,如果您正在调试32位.NET应用程序,则应使用x86版本的WinDbg / SOS.该错误消息告诉您,您正在尝试加载错误的SOS版本的应用程序的位置.

还有一些额外的guidance here.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...