[Lazarus] Exception on close application
William Oliveira Ferreira
bdexterholland at gmail.com
Thu Feb 14 20:40:14 CET 2013
Hi guys,
When I close my application, it raises a exception. Debugger stops on line
491 of Win32WSButtons.pp. I Don´t know how to debug it as it happens only
when application terminate. If I make my code does not show any window, the
exception doesn´t raises. Could someone help?
Code fragmentation is:
function BitBtnWndProc(Window: HWnd; Msg: UInt; WParam: Windows.WParam;
LParam: Windows.LParam): LResult; stdcall;
var
Info: PWin32WindowInfo;
Control: TWinControl;
ButtonImageList: BUTTON_IMAGELIST;
ImageList: HIMAGELIST;
LMessage: TLMessage;
begin
Info := GetWin32WindowInfo(Window);
if (Info = nil) or (Info^.WinControl = nil) then
begin
Result := CallDefaultWindowProc(Window, Msg, WParam, LParam);
Exit;
end
else
Control := Info^.WinControl;
case Msg of
WM_DESTROY:
begin
if ThemeServices.ThemesAvailable and //
<<---------------------- Stops on this line....
(Windows.SendMessage(Window, BCM_GETIMAGELIST, 0,
Windows.LPARAM(@ButtonImageList)) <> 0) then
begin
// delete and destroy button imagelist
if ButtonImageList.himl <> 0 then
begin
ImageList:=ButtonImageList.himl;
ButtonImageList.himl:=0;
Windows.SendMessage(Window, BCM_SETIMAGELIST, 0,
Windows.LPARAM(@ButtonImageList));
ImageList_Destroy(ImageList);
end;
end;
Result := WindowProc(Window, Msg, WParam, LParam);
end;
WM_GETFONT:
begin
Result := LResult(Control.Font.Reference.Handle);
end;
WM_UPDATEUISTATE:
begin
Result := WindowProc(Window, Msg, WParam, LParam);
DrawBitBtnImage(TBitBtn(Control), TBitBtn(Control).Caption);
end;
WM_PAINT,
WM_ERASEBKGND:
begin
if not Control.DoubleBuffered then
begin
LMessage.msg := Msg;
LMessage.wParam := WParam;
LMessage.lParam := LParam;
LMessage.Result := 0;
Result := DeliverMessage(Control, LMessage);
end
else
Result := WindowProc(Window, Msg, WParam, LParam);
end;
WM_PRINTCLIENT:
Result := CallDefaultWindowProc(Window, Msg, WParam, LParam);
else
Result := WindowProc(Window, Msg, WParam, LParam);
end;
end;
--
________________________________
William de Oliveira Ferreira
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20130214/33b3f375/attachment-0002.html>
More information about the Lazarus
mailing list