Suggestions for debugging a bug report with no application c

delphi package - automated exception handling
Post Reply
AlanH
Posts: 2
Joined: Thu Mar 01, 2018 6:01 pm

Suggestions for debugging a bug report with no application c

Post by AlanH »

This appears to be something going wrong in the Delphi or LMD runtimes, since there are no application level units / procedures referenced in the call stack. I had been getting these bug reports on an older version of the program, compiled with Delphi 7, so I recently ported it to Delphi XE7 and the LMD VCL Complete 2015 component library, but these crashes are still occurring. Environment is a W2012R2 server running Remote Desktop Services.

I’m at a loss for how to proceed, does anyone have any suggestions?

Code: Select all

date/time          : 2018-03-01, 11:17:25, 360ms
computer name      : xxxxx
wts client name    : xxxxx
user name          : xxxxx
registered owner   : Windows User
operating system   : Windows 2012 R2 x64 build 9600
system language    : English
system up time     : 1 hour 43 minutes
program up time    : 4 minutes 20 seconds
processors         : 2x Intel(R) Xeon(R) CPU E5-2670 v3 @ 2.30GHz
physical memory    : 2745/4095 MB (free/total)
free disk space    : (C:) 22.62 GB (P:) 78.32 GB
display mode       : 1366x768, 32 bit
process id         : $1150
allocated memory   : 42.22 MB
largest free block : 1.35 GB
executable         : Dashboard4004.exe
exec. date/time    : 2018-02-27 09:44
version            : 4.0.0.4
compiled with      : Delphi XE7
madExcept version  : 4.0.12
callstack crc      : $b12cc41a, $e3c5ba4e, $d9b6e3ba
exception number   : 3
exception class    : EStringListError
exception message  : List index out of bounds (2).

main thread ($12e0):
005f46a9 Dashboard4004.exe Vcl.StdCtrls          TListBoxStrings.GetObject
0053bdba Dashboard4004.exe System.Classes        TStrings.AddStrings
0053bfd6 Dashboard4004.exe System.Classes        TStrings.Assign
0053db82 Dashboard4004.exe System.Classes        TStringList.Assign
005f4e91 Dashboard4004.exe Vcl.StdCtrls          TCustomListBox.SaveRecreateItems
005f5a05 Dashboard4004.exe Vcl.StdCtrls          TCustomListBox.DestroyWnd
005d3ab9 Dashboard4004.exe Vcl.Controls          TWinControl.DestroyHandle
005d3a89 Dashboard4004.exe Vcl.Controls          TWinControl.DestroyHandle
005d3b16 Dashboard4004.exe Vcl.Controls          TWinControl.CMRecreateWnd
005cfdc9 Dashboard4004.exe Vcl.Controls          TControl.WndProc
005d4896 Dashboard4004.exe Vcl.Controls          TWinControl.WndProc
005cfa04 Dashboard4004.exe Vcl.Controls          TControl.Perform
005d3ada Dashboard4004.exe Vcl.Controls          TWinControl.RecreateWnd
00731320 Dashboard4004.exe LMDCustomScrollBox    TLMDCustomScrollBox.DoThemeChanged
0073b9c9 Dashboard4004.exe LMDListBox            TLMDListBox.DoThemeChanged
00730a78 Dashboard4004.exe LMDCustomScrollBox    TLMDCustomScrollBox.WMThemeChanged
005cfdc9 Dashboard4004.exe Vcl.Controls          TControl.WndProc
005d4896 Dashboard4004.exe Vcl.Controls          TWinControl.WndProc
005d3ed0 Dashboard4004.exe Vcl.Controls          TWinControl.MainWndProc
00555850 Dashboard4004.exe System.Classes        StdWndProc
77b90664 ntdll.dll                               KiUserCallbackDispatcher
770cf15d USER32.dll                              SendMessageTimeoutW
770ceef6 USER32.dll                              EnumChildWindows
77113fd6 USER32.dll                              EnumDesktopWindows
77114000 USER32.dll                              EnumDesktopsW
770ca6db USER32.dll                              DispatchMessageW
006cc96f Dashboard4004.exe Vcl.Forms             TApplication.ProcessMessage
006cc9b2 Dashboard4004.exe Vcl.Forms             TApplication.HandleMessage
006ccce5 Dashboard4004.exe Vcl.Forms             TApplication.Run
00b0096c Dashboard4004.exe Dashboard          81 initialization
77287c02 KERNEL32.DLL                            BaseThreadInitThunk
madshi
Site Admin
Posts: 10754
Joined: Sun Mar 21, 2004 5:25 pm

Re: Suggestions for debugging a bug report with no applicati

Post by madshi »

Exceptions like these can cause headaches. Of course you could try asking LMD support about this, but I'm not sure if they can help.

One thing you could do is edit and recompile LMDCustomScrollBox.pas. You could add a try..except block around "TLMDCustomScrollBox.DoThemeChanged" and maybe also LMDListBox.pas in "TLMDListBox.DoThemeChanged" and then log the name of the custom scroll box or list box (in case you don't know the name already, I don't know how many of those components you have on your forms).

Generally, it seems the problem occurs when a Theme is changed, for some reason.
AlanH
Posts: 2
Joined: Thu Mar 01, 2018 6:01 pm

Re: Suggestions for debugging a bug report with no applicati

Post by AlanH »

Thanks!

Unfortunately I don't have source code for the LMD components. I've had some interaction with them on the subject, but no resolution as yet.

I've tried intercepting the WM_THEMECHANGED message and simply ignoring them, but that hasn't resolved the issue.
Post Reply