[Lazarus] [lazarus] Patch for processing WM_COPYDATA in Win32 / BugID 9210

Vincent Snijders vsnijders at quicknet.nl
Mon Feb 18 08:16:56 CET 2008


Lukas Gradl schreef:
> Vincent Snijders schrieb:
>> Christian U. schreef:
>>> I want to remember this Patch, its good and as i see the correct Way.
>>> Why it is not applied ?
>> What LCL components listen to WM_COPYDATA?
>>
> 
> This patch was not for the LCL but for general Windows compatibility.

Compatibility with windows?

> At the moment the Windows part of the LCL eats up the 
> WM_COPYDATA-Messages, so you can't interact with quite some application 
> using this message to exchange control information with other apps.
> 

If you want to use WM_COPYDATA messages on windows, you can add your own 
windows handler with windows.setwindowlong. No need to polute own 
LCL-message handler with it.

> With this patch WM_COPYDATA will get throug the LCL-Messagehandler 
> untouched and can be handled in the application specific messagehandler.
> 

I don't think we should add this to our event handler. Let the 
application specific message handler handle it. Maybe it should be 
easier to add one, but OTOH, what is difficult about this?
   Windows.SetWindowLong(MyForm.Handle, GWL_WNDPROC, 
PtrInt(SubClassWndProc));

Let's keep the LCL win32 widgetset interface clean and just add things 
that are used by the LCL and keep custom extension outside it.

Vincent



More information about the Lazarus mailing list