Memory Dump in D

Benjamin Thaut code at benjamin-thaut.de
Sun Jan 7 17:28:11 UTC 2018


Am 07.01.2018 um 16:40 schrieb H3XT3CH:
> 
> I need it for windows and linux but primary for windows

On windows there is the MiniDumpWriteDump function: 
https://msdn.microsoft.com/en-us/library/windows/desktop/ms680360(v=vs.85).aspx

This might sound misleading but besides being able to write out a 
minidump, which essentially only contains the stacks of all threads, you 
can also write out a full dump which contains all memory of the process. 
Usually these files are named *.dmp on windows. You can then open these 
*.dmp files with WinDBG or the Visual Studio Debugger and inspect the 
state of the program at which the dump was taken just you would normally 
inspect a running program at a breakpoint.

What I have been doing in the past is:
- Set a exception handler via SetUnhandledExceptionFilter
- The exception handler writes out a minidump and calls a extrnal process
- The external process prompts the user for additional information on 
the crash and uploads the minidump into a crash database.
- I inspect the crash database and see whats going wrong for the users 
of my programs.

-- 
Kind Regards
Benjamin Thaut


More information about the Digitalmars-d mailing list