I’d like to display a stack trace in an error dialog in Delphi 2007 (Win32).
Ideally, I’d like something like this:
try //do something except on e : exception do begin //rollback a transaction or whatever i need to do here MessageDlg('An error has occurred!' + #13#10 + e.Message + #13#10 + 'Here is the stack trace:' + #13#10 + e.StackTrace,mtError,[mbOK],0); end; //except end; /try-except
And for the output to be like the Call Stack in the IDE:
MYPROGRAM.SomeFunction MYPROGRAM.SomeProcedure MYPROGRAM.MYPROGRAM :7c817067 kernel32.RegisterWaitForInputIdle + 0x49
madExcept has a method StackTrace (in unit madStackTrace) that does that.
JEDI Code Library offers similar functionality in unit JclDebug.