I am having a problem getting WinDbg to use the PDB files for my .NET DLL files. The hang dump I am looking at is from a production build, but I have PDB files from a debug build of the same code.
I set the symbol path to include a local folder and the Microsoft symbol server.
C:\websymbols\foo;srv*c:\websymbols*http://msdl.microsoft.com/download/symbols
I put all my PDB files in C:\websymbols\foo
. Yet, the managed stack listings do not contain any method names.
Doing a reload, .reload /f
, tells me:
DBGHELP: No debug info for FOO.dll. Searching for dbg file
SYMSRV: c:\websymbols\foo\FOO.dbg\49B7F17C10000\FOO.dbg not found
SYMSRV: c:\websymbols\FOO.dbg\49B7F17C10000\FOO.dbg not found
SYMSRV: http://msdl.microsoft.com/download/symbols/FOO.dbg/49B7F17C10000/FOO.dbg not found
DBGHELP: .\FOO.dbg - file not found
DBGHELP: .\dll\FOO.dbg - path not found
DBGHELP: .\symbols\dll\FOO.dbg - path not found
DBGHELP: FOO.dll missing debug info. Searching for pdb anyway
DBGHELP: Can't use symbol server for FOO.pdb - no header information available
DBGHELP: FOO.pdb - file not found
*** WARNING: Unable to verify checksum for FOO.dll
*** ERROR: Module load completed but symbols could not be loaded for FOO.dll
DBGHELP: FOO - no symbols loaded
When attaching WinDbg to the service in a test environment, managed stacks show up fine with method names. Dumping the memory, and analyzing the DMP file locally I don't see the names in the managed stacks. What might I be doing wrong?