Skip to content

Opening mdmp files from user crashes

EatThePath edited this page Jan 26, 2024 · 1 revision

If a user has a hard crash they may have a .mdmp crash memory dump file in their bin directory that can let a developer see the details of a log that didn't produce any useful log data.

Microsoft Visual Studio(Not MS Visual Studio Code) is capable of opening and reading these files. To read them usefully you need:

  • a copy of the source code checked out to the revision used for that build.
  • a copy of the executable that generated the .mdmp
  • the .pdb symbols file for that executable
  • the actual .mdmp file.

Getting .pdb symbols files.

For personal test builds, the symbols file can only be obtained from the developer who created the build initially. For all SCP official builds the symbols are available at least temporarily, though nightlies may only be available for a limited amount of time. This is only verified for windows builds, as well.

Stable and Release Candidate builds

Builds available in https://github.com/scp-fs2open/fs2open.github.com/releases have symbols available in separated packages. If a user crashed on a win32-sse build, debug or not, the symbols file will be contained in a fs2open-___-debug-Win32-SSE2.7z file, and so forth.

Nightly builds

Symbols for nightly builds are only accessible by github team members.

To find a nightly's symbols you must navigate to the nightly build action runs, currently at https://github.com/scp-fs2open/fs2open.github.com/actions/workflows/build-nightly.yaml. Select the build in question, then on that page navigate all the way down to the section labeled "artifacts". Non-team members can only see the file names, but for team members these artifacts are clickable links for downloads. Download the one matching the executable used and, at least for windows, it will contain the symbols files as well as the executable used. This is also useful to get the right executable when knossos doesn't easily give you the right architecture executable.