KBEA-00145 - Debugging Applications on Windows Using Minidump Files

Article ID:360032824252
1 minute readKnowledge base

Issue

All Electric Cloud binaries are designed to automatically generate a stack trace minidump if they encounter an unexpected exception. The program will generate a program .dmp file next to the program .exe file.

Environment

Resolution

You can instruct the application to generate a full minidump instead of a stack-only minidump by creating/setting the registry key program and setting the dumpType value for it:

HKLM\Software\Electric Cloud\'program':dumpType (dword)

The dword is a bitmask of MINIDUMP_TYPE values:
0 = stack only (default)
1 = stack and global vars
2 = full memory
4 = handle data

Here’s an example of how to enable full memory dumps with vars for the eMake and/or Apache programs:

Create new registry key for emake

HKLM\Software\Electric Cloud\emake

and/or

Create new registry key for Apache

HKLM\Software\Electric Cloud\Apache

Then create new DWORD value for the new key

dumpType
set value of dumpType = 3 (1 for vars + 2 for full memory = 3)

Forcing a Minidump

If you have a hung process (e.g., agent or eMake), you can generate a minidump file by attaching to the process with the Visual Studio .NET debugger:

  1. Start devenv.

  2. Select Debug  Processes…​

  3. Find your process in the list then select Attach…​

  4. Wait for it to finish loading symbols, then select Break

  5. Close the process window.

  6. Select Debug  Save Dump As…​

  7. Enter a file name.

  8. Change the type field to Minidump with Heap (.dmp)*

  9. Hit Save

You now have a .dmp file on disk that contains the full memory image of the process.