.net-4.0 - sos 和 clr 版本不匹配 - 如何解决

标签 .net-4.0 sos windb

在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/

相关文章:

windbg - !dumpobj in windbg,Domain :Value dynamic statics NYI 002a8428:NotInit mean? 是什么

visual-studio - 找不到匹配的二进制文件错误

c# - 使用框架 4.0 安装 nuget 包 Google.Apis.Drive.v3

c# - 如何使用 C# 和 XML 获取根元素的直接子元素?

c# - 你如何在 C# 中获取原始 TCP 数据包?

c# - 如何通过反射执行带有可选参数的私有(private)静态方法?

.net - 我如何使用 !gcroot

.net - 加载 psscor4 : The garbage collector data structures are not in a valid state for traversal 时