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