The problem of debugging hangers in windbg

After loading sosex, I get the following error. Any ideas? The dump is hanging from a 32-bit machine, my 64-bit one. Do I need to install something?

!clrstack CLR DLL status: ERROR: Unable to load DLL mscordacwks_x86_x86_2.0.50727.3623.dll, Win32 error 0n2 
+1
source share
1 answer

The problem is that the version of mscordacwks on your computer is different from the version with the crash dump. This is not a bit problem - even if your machine is 64-bit, you have 32-bit .NET installed. Mine is located under C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727.

You will not have such a long name, it will be called mscordacwks.dll. When the debugger sees that your โ€œactiveโ€ copy is different, it will search for one with a long name (avoiding the infernal add-on) and also tell you which version you need to get. After I get the correct mscordacwks.dll file (for example, from the original machine), I will copy it to my framework directory and name it as it shows in the error message. I also set the path to the windbg image to include the frame directory.

sos should use the mscordacwks assembly to understand the data structures in memory. All this is explained in the blog post โ€œFailed to load data dll, 0x80004005โ€ - OR - What is mscordacwks.dll? Notes from a dark corner blog.

You will find that the Internet is inundated with questions about how to get different versions of this DLL. Assuming that you cannot get the one that was on the machine that created the crash dump and it does not load from the Microsoft symbol server, what I did in the past is searching for microsoft.com for mscordacwks and the version I need (for example, 2.0 .50727.3623). This is usually a fix that you can download.

If you do not have the appropriate system to install it, I was lucky to open the exe installation using 7zip. I found the mscordacwks file in the cockpit, which was in the patch file (MSP file), which was in the executable installation file of the security patch. Each of them can be opened using 7zip.

When you press the CAB file, sometimes it is better to use the expand.exe file, as it can unpack files. 7zip (v4.65) does not. If you open CAB with 7zip, which has _manifest_.cix.xml , use the extension instead, because it uses a manifest to extract, extract, and rename the content. 7zip (makes a simple extract for ...) leaves it raw with bundles of files named numerically, literally 1, 2, etc. These files can still be compressed. As you know, if you open them (for example, using SciTE), they will start with a signature, such as PA30 (it will correspond to the type attribute from the manifest).

+4
source

All Articles