WM_WINHELP, was: Re: Handling of messages above WM_USER in pack_message

Uwe Bonnes bon at elektron.ikp.physik.tu-darmstadt.de
Fri Apr 12 03:07:19 CDT 2002


>>>>> "Alexandre" == Alexandre Julliard <julliard at winehq.com> writes:

    Alexandre> Uwe Bonnes <bon at elektron.ikp.physik.tu-darmstadt.de> writes:
    >> I don't know if this global approach is valid, but at least it helped
    >> me to get winhlp32 working called with WinHelpA from an
    >> application. In what other way can we cope with user defined messages
    >> and their related structures in inter-process SendMessage?

    Alexandre> We can't. User messages cannot pass data around, WinHelpA
    Alexandre> will need to do that differently. The best way to find out
    Alexandre> how is probably to watch winhlp32 with a message spy under
    Alexandre> Windows.

On Win95 OSR2 with Spy++ I could only see the Winhelp Message, nothing else
special. Searching the web, I could find several approaches. However I think
none of the required infrastructure is completly in place with wine yet

- Allocate Remote memory
  The sending process allocates memory in the remote process with
  VirtualAlloxEx and copies the the local structure to that remote memory
  with WriteProcessMemory. Then the local process sends the WM_WINHELP
  message with the remote handle. This seems cleanest to me, but
  VirtualAllocEx is not yet implemented for remote processed.
- Usage of shared memory
  (probably only on Win9X). Do we yet have shared memory? As we go the
  NT-way, this is probably depreciated.
- Usage of SHAllocEx
  Probably requires support in the remote application to lock the passed 
  handle, which is not the case for winhlp32.exe

I could also see the possibility to inform the message-packer about the
need to pack the WinHelp structure when RegisterWindowMessage is called. 

What other possibilities do other people see? Help and ideas appreciated.

Bye

-- 
Uwe Bonnes                bon at elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------



More information about the wine-devel mailing list