You need to programmatically create a mini-drive (with one exception, see the following link). CodeProject has a nice article on MiniDumps . Basically, you want to use dbghelp.dll
and use the MiniDumpWriteDump()
function (see MSDN on MiniDumpWriteDump ).
How effective such dumps are depends on the application. Sometimes optimized binaries are almost useless. Also, without experience, heap / stack corruption errors will lead you astray.
However, if the optimizer was not too complicated for you, there is a large class of errors in which dumps help, namely all errors that have values โโof the trace stack + locally used variables, that is, many operations with a pure virtual function (i.e. incorrect destruction order), access violations (uninitialized access or lack of NULL checks), etc.
By the way, if your service policy allows this in some way, port the application from VC6 to something acceptable, for example VC8 or 9. You will do yourself a great service.
gimpf Oct 10 '09 at 6:57 2009-10-10 06:57
source share