Search code examples
c#visual-studio-2010symbolsdebug-symbolspostmortem-debugging

Debugging MiniDump


I have compiled a Debug-Version of my application in one folder. There are now all dll's, pdb's and the exe with the pdb. I have now created a MiniDump of my running application started out of this path with Taskmanager. Now, I can open this dmp-File in Visual Studio 2010. But when I try to debug, there will be a message, that the symbols could not be found. I have added the path to my symbols (pdb) to the symbol-paths in visual studio - but with no success. I have also try to load the symbols over the ContextMenu of the modules. It is searching there for MyApp.pdb and I have selected the correct pdb. But I get the message A matching symbol file was not found in this folder.

What can I do to make post mortem debug of my MiniDump with Visual Studio 2010 (so it will find my symbols)?


Solution

    1. Do your pdb's and dll's have the same timestamp? Are they both recreated when you rebuild?

    2. Try using chkmatch to ensure your dll and pdb match.

    Use chkmatch this way: chkmatch -c MyApp.exe MyApp.dll

    The output should look something like this

    Debug information file:
    Format: PDB 7.00
    Signature: {ef4bc52f-0161-4e0a-8654-cc1368d7a8a6} Age: 1

    Result: Matched

    You shouldnt need to set the symbol path if your pdb's are in the same location as the exe you are dumping.

    Are you on .NET 4?