Hallo,
gibt es dazu irgendwelche neuen Erkenntnisse?
Wir verwenden immer schon free (nicht release), haben aber gelegentlich genau den gleichen Fehler.
Ich verwende eine Komponente, die von TCustomElComboBox abgeleitet ist: TMyComboBox; die ist eins der Controls der Form, die ich freigeben will. Ich habe den Destructor dieser Komponente "übernommen" (overload) und darin nichts anderes als
try
inheritted;
except
//meldung in Log-Datei schreiben
end;
eingebaut, aber, wie man sieht, wird der Destructor zwar ausgeführt, aber die
Exception entsteht gar nicht in dieser Routine, obwohl der Stackdump (von Madexcept) das suggeriert.
Vielmehr schein Windows zu meinen, hier irgendwie eingreifen zu müssen:
7751507b +04b ntdll.dll KiUserCallbackDispatcher
was ist das und wo kommt das her?
Und vor allem: wie kann man das verhindern?
Man sollte noch wissen, dass diese
Exception nicht reproduzierbar entsteht, sondern scheinbar zufällig ungefähr in 20 von 100 Fällen.
Gruß
MM
006cc0ef +00f My_Prog.exe
Vcl.Forms TCustomForm.IsFormSizeStored
006cc0d5 +005 My_Prog.exe
Vcl.Forms TCustomForm.IsClientSizeStored
006ce988 +5a4 My_Prog.exe
Vcl.Forms TCustomForm.CreateParams
005c7550 +034 My_Prog.exe
Vcl.Controls TWinControl.CreateWnd
006ca421 +005 My_Prog.exe
Vcl.Forms TScrollingWinControl.CreateWnd
006cea02 +00a My_Prog.exe
Vcl.Forms TCustomForm.CreateWnd
005c7b62 +016 My_Prog.exe
Vcl.Controls TWinControl.CreateHandle
005cbbe0 +01c My_Prog.exe
Vcl.Controls TWinControl.HandleNeeded
005cbbed +005 My_Prog.exe
Vcl.Controls TWinControl.GetHandle
006cf205 +0f1 My_Prog.exe
Vcl.Forms TCustomForm.SetFocusedControl
005c872f +21f My_Prog.exe
Vcl.Controls TWinControl.WndProc
006ccc61 +64d My_Prog.exe
Vcl.Forms TCustomForm.WndProc
00bae796 +05e My_Prog.exe Main 945 +14 TWomiTota.WndProc
005c8118 +02c My_Prog.exe
Vcl.Controls TWinControl.MainWndProc
00543edc +014 My_Prog.exe System.Classes StdWndProc
0040f6b0 +20c My_Prog.exe System 168 +0 DynArraySetLength
7751507b +04b ntdll.dll KiUserCallbackDispatcher
005c3f66 +2be My_Prog.exe
Vcl.Controls TControl.WndProc
005c8b4b +63b My_Prog.exe
Vcl.Controls TWinControl.WndProc
006ccc61 +64d My_Prog.exe
Vcl.Forms TCustomForm.WndProc
00bae796 +05e My_Prog.exe Main 945 +14 TWomiTota.WndProc
005c8118 +02c My_Prog.exe
Vcl.Controls TWinControl.MainWndProc
00543edc +014 My_Prog.exe System.Classes StdWndProc
7751507b +04b ntdll.dll KiUserCallbackDispatcher
0040a8c4 +008 My_Prog.exe System 168 +0 TObject.Free
00460ee0 +008 My_Prog.exe System.SysUtils FreeAndNil
00820ea3 +01b My_Prog.exe ElSBCtrl 3377 +2 TElSBHandlerCustom.DestroyScrollTimer
00820e63 +07f My_Prog.exe ElSBCtrl 3370 +9 TElSBHandlerCustom.Destroy
0040a8c4 +008 My_Prog.exe System 168 +0 TObject.Free
00460ee0 +008 My_Prog.exe System.SysUtils FreeAndNil
0082249b +017 My_Prog.exe ElSBCtrl 4165 +1 TElSBController.Destroy
0040a8c4 +008 My_Prog.exe System 168 +0 TObject.Free
00541bec +074 My_Prog.exe System.Classes TComponent.DestroyComponents
0054168b +01b My_Prog.exe System.Classes TComponent.Destroy
005c12d9 +121 My_Prog.exe
Vcl.Controls TControl.Destroy
005c5dbf +16b My_Prog.exe
Vcl.Controls TWinControl.Destroy
005cee90 +01c My_Prog.exe
Vcl.Controls TCustomControl.Destroy
007d3544 +034 My_Prog.exe ElXPThemedControl 439 +3 TElXPThemedControl.Destroy
00842a1f +037 My_Prog.exe ElListBox 789 +4 TCustomElListBox.Destroy
0040a8c4 +008 My_Prog.exe System 168 +0 TObject.Free
00857ede +01a My_Prog.exe ElCombos 1626 +1 TCustomElComboBox.Destroy
00b3c80a +06a My_Prog.exe eboxen 2488 +10 TMyComboBox.Destroy