Jump to content

What is MiniDump support in the Project Manager?


Recommended Posts

MiniDump combined with debug symbols is useful for getting a stack trace when the process crashes. I haven't used it myself though, so I don't know how usable it is in Torque3D. Ideally you would combine it with some sort of automated mechanism to submit the dumps somewhere so you can automatically check them. Very useful.

Link to comment
Share on other sites

And here's how you make your life easier when using minidumps:


So, I made a couple of tools to make this easier:


Documentation is in the top level of the repo.

Now when someone sends you a crash dump for your Windows version of your game you can debug the exact version that they were running.

Just to be clear - I didn't include the files from the Debugging Kit but you can download and install that from Debugging Tools for Windows (WinDbg, KD, CDB, NTSD).

So when you build, you store a copy of your executable and its associated pdb file with the source indexed. When you get a minidump file you just open it with Visual Studio and it loads the correct symbols, finds and checks out the source code, and sets you up to debug the exact version that the minidump came from.

Documentation is included in the repo.

Note - I have yet to successfully index source from Subversion and I can only speculate on how to do it with Git, but Perforce works for sure.

Link to comment
Share on other sites

The tool I set up is to assist large teams - the tool Microsoft provides for storing the symbol information isn't meant to support concurrent symbol submissions to the store (you and I can't both store symbols simultaneously). My "StoreManager" monitors a folder for changes, then submits the changes sequentially. It did just occur to me that if you and I submitted the same folders/files one after another there would be an issue....

Anyway - the documentation I provided is a collection/clarification of what Microsoft provided. As long as you use the dump on the same machine where you have the correct version of the source you're golden - otherwise you have to ensure that your source is properly indexed in your .pdb files during the build.

And this works with release builds too - just store the executable and .pdb file using the debugging kit tools. In C++ I believe the .pdb is generated by default in release configurations, but in C# it is not so you might want to double check.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...