[Lazarus] is there a way to get Call stack on WinCE-device

Sven Barth pascaldragon at googlemail.com
Thu Jun 21 09:25:08 CEST 2012


Am 21.06.2012 09:01, schrieb Tommi Prami:
> Hello,
>
> I would need to have Call Stack extracted programmatically some how.
>
> Is there way to do that?? Or anyone have such a piece of code and
> instructions available??

When you have catched the exception (e.g. in a OnException handler of 
the application) you can do a "DumpExceptionBackTrace" which takes a 
file as a parameter (see here: 
http://www.freepascal.org/docs-html/rtl/system/dumpexceptionbacktrace.html )

Please note that on WinCE the line information resolving is not working 
(see here http://bugs.freepascal.org/view.php?id=14330 ) and thus only 
the addresses will be resolved. You can resolve that by using a 
arm-wince gdb and starting it like this:

gdb --exec=your-wince-executable --symbols=your-wince-dbg-file -x 
stacktrace.txt

where stacktrace.txt is your stacktrace where the lines are changed from 
"$1234ABCD" to "info source 0x1234ABCD" (or it could be "info address 
0x1234ABCD"...)

GDB should then print the line numbers for the addresses.

Regards,
Sven




More information about the Lazarus mailing list