我正在使用混合模式应用程序(C/C++LI,C,一些C#),当它在现场崩溃时,会创建内存转储.我经常从客户处获得这些转储并试图弄清楚出了什么问题.
问题是 – 如何处理托管代码的事后调试?我通常使用WinDbg与SOS.dll,但似乎SOS不向后兼容!我最近运行Windows Update,现在我无法从客户端站点加载任何minidump.它抱怨SOS版本错误.
如何获取并加载以前的版本?我做错了什么?
解决方法
这可能是x86 / 64问题.你是如何加载sos的?
您可以尝试使用以下方法加载sos:
.loadby sos mscorwks
或者,如果失败,请尝试显式加载64位sos:
.load c:\Windows\Microsoft.NET\Framework64\v4.0.30319\SOS.dll