Atozed Forums
IWJclDebug and an empty stack trace - Printable Version

+- Atozed Forums (https://www.atozed.com/forums)
+-- Forum: Atozed Software Products (https://www.atozed.com/forums/forum-1.html)
+--- Forum: IntraWeb (https://www.atozed.com/forums/forum-3.html)
+---- Forum: English (https://www.atozed.com/forums/forum-16.html)
+----- Forum: IntraWeb General Discussion (https://www.atozed.com/forums/forum-4.html)
+----- Thread: IWJclDebug and an empty stack trace (/thread-260.html)



IWJclDebug and an empty stack trace - jeroen.rottink - 05-25-2018

I had an issue where using the integrated IW ExceptionLogger would not print the stack trace. 
To include the debug information I use a Jcl tool called MakeJclDbg.exe (in jcl\examples\windows\debug\tools). 
This tool takes a *.map converts it to *.jdbg format with the option to include this info in the executable. 
Big plus is that the resulting *.exe is a lot smaller than including the debug information from the Delphi compiler (TD32).
When I choose to include this info in the *.exe as a resource, the stack trace is empty.

Origin of this issue is a small error in IWJclDebug.

Code:
const
 JclDbgDataSignature = $4742444A; // JDBG
 JclDbgDataResName   = AnsiString('IWJclDebug'); // do not localize

But this should be kept 'JCLDEBUG' like in the original code. The resname is used to locate the resource holding the debug data.


Using IW14.1.3 with Delphi 10.1 Berlin so maybe its already fixed in the meantime.

Kind regards,
Jeroen Röttink


RE: IWJclDebug and an empty stack trace - Alexandre Machado - 05-27-2018

(05-25-2018, 01:26 PM)jeroen.rottink Wrote: I had an issue where using the integrated IW ExceptionLogger would not print the stack trace. 
To include the debug information I use a Jcl tool called MakeJclDbg.exe (in jcl\examples\windows\debug\tools). 
This tool takes a *.map converts it to *.jdbg format with the option to include this info in the executable. 
Big plus is that the resulting *.exe is a lot smaller than including the debug information from the Delphi compiler (TD32).
When I choose to include this info in the *.exe as a resource, the stack trace is empty.

Origin of this issue is a small error in IWJclDebug.

Code:
const
 JclDbgDataSignature = $4742444A; // JDBG
 JclDbgDataResName   = AnsiString('IWJclDebug'); // do not localize

But this should be kept 'JCLDEBUG' like in the original code. The resname is used to locate the resource holding the debug data.


Using IW14.1.3 with Delphi 10.1 Berlin so maybe its already fixed in the meantime.

Kind regards,
Jeroen Röttink
Hi Jeroen,

thanks for your feedback. It will be fixed in next release.

Kind regards