Visual Studio can locate mscordacwks but WinDBG fails

0

I've been working on a tool to pull some information out of crash dumps (minidumps) and create a report. In some cases I'm finding that WinDBG is unable to automatically download the correct combination of mscordacwks and SOS. The source of the crash dump is an application containing both native and managed code.

My symbol path is:

Cache*D:\SymbolCache;SRV*\\\storage\Symbols;SRV*http://msdl.microsoft.com/download/symbols;SRV*http://referencesource.microsoft.com/symbols;SRV*https://dotnet.myget.org/F/rx/symbols";

.loadby sos clr

CLRDLL: Unable to get version info for '\\storage\symbols\clr.dll\5B5542C49ec000\mscordacwks.dll', Win32 error 0n87
CLRDLL: Unable to find mscordacwks_AMD64_AMD64_4.7.3132.00.dll by mscorwks search
CLRDLL: Unable to find 'mscordacwks_AMD64_AMD64_4.7.3132.00.dll' on the path
Cannot Automatically load SOS
CLRDLL: ERROR: Unable to load DLL mscordacwks_AMD64_AMD64_4.7.3132.00.dll, Win32 error 0n2
CLRDLL: Consider using ".cordll -lp <path>" command to specify .NET runtime directory.
Failed to load data access DLL, 0x80004005

I have also tried .cordll -ve -u -l but the result is the same as shown above.

!pe

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.7.3132.0
SOS Version: 4.7.3190.0

Inspecting the outgoing HTTP requests i see the following:

WinDBG:

http://msdl.microsoft.com/download/symbols/mscordacwks_AMD64_AMD64_4.7.3132.00.dll/5B5542C49ec000/mscordacwks_AMD64_AMD64_4.7.3132.00.dll

Visual Studio:

http://msdl.microsoft.com/download/symbols/mscordacwks.dll/5B5541451ca000/mscordacwks.dll

I'm surprised to see that the files they request have different paths. It seems to me that Visual Studio must have further logic to locate the correct mscordacwks (unsure about SOS.dll)...whats the difference between the two - how come Visual Studio's version doesn't have the architecture in the name?

At one point i did see it working albeit after locating the mscordacwks and placing it in the right folder, however this is not a solution as i need this to be an automatic process.

Can anyone shed any light on what is going wrong here?

visual-studio
windbg
debug-symbols
crash-dumps
sos
asked on Stack Overflow Oct 25, 2018 by rupertmulrenan • edited Oct 26, 2018 by Thomas Weller

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0