无法找到模块'mscorwks.dll'

时间:2009-09-14 06:21:24

标签: .net windows windbg

我尝试使用winDBG来调试转储文件。当我运行.loadby sos mscorwks.dll

它给了我一条错误信息。 无法找到模块'mscorwks.dll'

有没有人见过这个?

5 个答案:

答案 0 :(得分:117)

如果您正在调试 .NET 4.0 应用程序,则需要使用以下代替mscorwks

.loadby sos clr

Here is a good overview可用于.NET 4.0的命令。享受!!

答案 1 :(得分:18)

我也有这个问题,原来是因为调试器在CLR加载之前就进入了应用程序。在我做任何事情之前,我不得不让应用程序进一步运行。

在windbg中执行此操作可能有所帮助:

sxe ld:mscorlib
g
(... breaks again ...)
.loadby sos mscorwks

'sxe ld:..'在模块加载时停止。

正如Sixto所提到的,如果您正在调试dotnet 4应用程序,则需要用

替换最后一行
.loadby sos clr

答案 2 :(得分:13)

请勿添加.dll,只需.loadby sos mscorwks

答案 3 :(得分:4)

同时确保你有正确的位数 - 尝试在64位windbg中执行此操作,而调试32位应用程序会给你同样的错误。

答案 4 :(得分:2)

如果您的路径中有.NET框架目录(例如c:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727),则可以使用

.load sos