How to load a stacktrace into Visual Studio 2013 for offline debugging?

0

Well i'm in the situation where my dll file passes all the tests but somehow on the production server it sometimes does crash at the least expected moments.

There is actually no possibility to run a debugger but there is a generated stacktrace file:

An exception occured at address 0x0045DA51 in module my.dll

Registers:

EAX: 0x61A881BC 
//data......
EFLAGS: 0x00010206

Stack:
+0000: 0x0379F5E4   0x00000000   0x01F1B968   0x00000001
+0010: 0x00000007   0x01F1BCA8   0x00454622   0x742F3500
+0020: 0x00000034   0x00000001   0x00000009   0x00000002
+0030: 0x00000000   0x00000240   0x61A881BC   0x000000A4
+0040: 0x00000000   0x60104F70   0x01F1C15C   0x60104F7D
//more data..

Is there any possibility to load this data into visual studio 2013 to perform some offline debugging (not runtime debugging, I don't know how to call it)?

windows
debugging
visual-c++
visual-studio-2013
visual-studio-debugging
asked on Stack Overflow Nov 16, 2014 by Gizmo

1 Answer

0

You should see a crashdump somewhere, a .dmp file. You can export that through sysinternals PrcessExplorer, not sureif that's possible with the default task manager, but that's of course before the crash. I unfortunately don't know anymore how to force a process to generate a .dmp file on crash..

But once you have the .dmp file, you can open it in VS (I think since 2010, maybe 2012). There are two kinds of dumps, a minidump (basically just including the point of the execution at that point) which is usually < 1 MB, and a "full dump", which incorporates the whole working set of the process afair, which can easily be hundreds of megs. The minidump usually is enough to get started.

Sorry for the incomplete answer, but maybe it gets you on the right track (no time to investigate on my own right now).

answered on Stack Overflow Nov 16, 2014 by hko

User contributions licensed under CC BY-SA 3.0