Unable to find module 'mscorwks.dll'

2019-03-09 17:21发布

问题:

I try to use the winDBG to debug a dump file. When I run .loadby sos mscorwks.dll

It gave me an error message. Unable to find module 'mscorwks.dll'

Has anyone seen this before?

回答1:

Don't add the .dll, try just .loadby sos mscorwks



回答2:

If you are debugging a .NET 4.0 application, you need to use the following instead of mscorwks:

.loadby sos clr

Here is a good overview of the commands available for .NET 4.0. Enjoy!!



回答3:

I had this issue as well and it turned out to be because the debugger was breaking into the app before the CLR was loaded. I had to let the app run throug further before I could do much of anything.

Doing this in windbg might help:

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

The 'sxe ld:..' stops on module load.

As Sixto mentions, if you are debugging dotnet 4 apps you'll need to replace the last line with

.loadby sos clr


回答4:

Also ensure you have correct bitness - trying to do this in 64-bit windbg while debugging 32-bit app will give you the same error.



回答5:

If you have the .NET framework directory (e.g. c:\Windows\Microsoft.NET\Framework\v2.0.50727) in your path, you can just use

.load sos