On 21.6.2012 10:25, Sven Barth wrote:
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.


Almost got it working tested in Win32, I think there is something weird in my Compiler options (Or linking), got simple files with the addresses, still got the :

Reading symbols from c:\MyProg.dbg...done.
No current source file.
No current source file.
No current source file.
No current source file.
...

as result from the Gdb...

Any ideas, I try somethin on my end...

-Tee-


--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to