Hi!

Had some problems sending a WM_COPYDATA-Message from one Window to another. (See forum: http://www.lazarus.freepascal.org/index.php?name=PNphpBB2&file=viewtopic&t=3973 )

As no one in the forum found a bug in my code I tried to track down the problem myself. As I'm new to the source of Lazarus and the LCL I'm not quite shure that I looked at the right place, but I've found a possible solution to this problem.

The function WindowProc in lcl\interfaces\win32\win32callback.inc revieves the WM_COPYDATA-Message but has no handler for it.

In line 1081 of the file a 'case Msg of' starts the handling of the different Messages.
I added the following lines:
  WM_COPYDATA:
    Begin
      LMessage.Msg := Msg;
      LMessage.WParam := WParam;
      LMessage.LParam := LParam;
      WinProcess := false;
    End;

so the WM_COPYDATA message gets handled same as WM_USER - just pass it on to some user-defined handler.

Can someone who knows the LCL-Code better than I do post a comment on that workaround? Or perhaps point me to another place to look for a solution?

For my current problem it works as expected - but I don't know if it's really a 'solution'...

Thanks
Lukas




--

----------------------------
software security networks
Lukas Gradl <lazarus#ssn.at>
Eduard-Bodem-Gasse 9
A - 6020 Innsbruck
Tel: +43-720-300168-0
Fax: +43-512-341033-19
----------------------------

_________________________________________________________________
    To unsubscribe: mail [EMAIL PROTECTED] with
               "unsubscribe" as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives

Reply via email to