在windbg中加载转储文件后,我运行了以下命令
.loadby sos clr
然后我在运行 ThreadPool 命令时收到以下消息
> 0:000> !ThreadPool The version of SOS does not match the version of
> CLR you are debugging. Please load the matching version of SOS for
> the version of CLR you are debugging. CLR Version: 4.0.30319.18444 SOS
> Version: 4.0.30319.34011
我做错了什么吗?我在进行分析的机器上安装了.NET 4.5。如果我尝试在该计算机上安装 .NET 4.0,它不会让我安装,因为已经安装了更高版本。
最佳答案
从技术上讲,您需要将 SOS 版本与 CLR 和 DAC (mscordacwks.dll) 的所有 4 个版本位置相匹配。但是,这些都是 .NET 4.5 版本,因此您应该可以放心地忽略此警告。为了解决这个问题,您需要从进行转储的安装中获取 SOS.dll。
关于.net-4.0 - sos 和 clr 版本不匹配 - 如何解决,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24272219/