3

我正在尝试使用 WinDbg 和 SOS.dll 读取 .NET 2.0 程序集的故障转储文件。

通过阅读,我了解到我必须将 sos.dll、mscorwks.dll 和 mscordacwks.dll 复制到 windbg 安装目录中。

所以我这样做了,但 WinDbg 然后告诉我,我自己的 .Net 目录中的副本是错误的版本。WinDbg 正在寻找 mscordacwks.dll_x86_x86_2.0.50727.4211.dll,我有 mscordacwks.dll_x86_x86_2.0.50727.5420.dll

问题是:我在哪里可以找到这些文件的正确版本?

a)在构建崩溃的应用程序的机器上

b)在应用程序崩溃的机器上?

我找到了这个站点,您可以在其中查看哪个 .NET 补丁包含哪些版本,但我没有设法下载相关补丁(找不到它),所以我想到从其中一台受影响的机器上复制文件会更快。

4

1 回答 1

2

a 或 b 都可以工作,前提是 .NET 尚未在任何一台机器上更新。如果我没有特定的 DAC 文件,我通常会从崩溃的机器上获取它。请记住将您遇到的每一个 DAC 保存到一个目录中。然后将此目录添加到您的符号路径。随着时间的推移,这将使您找到 DAC 的难度降低。

于 2013-02-26T11:24:04.783 回答