include shell.inc
mov ebx, Handle ; virtual machine handle
mov ecx, Event ; event number
mov ax, wParam ; word parameter for event
mov esi, OFFSET32 Callback ; address of event callback proc
mov edx, OFFSET32 ReferenceData ; reference data for the callback
VxDcall SHELL_Event
jc error
mov [EventHandle], eax ; event handle only if callback is used
Posts an event in the Windows shell to WINOLDAPP. Uses EAX and Flags.
The system calls the callback procedure with the following input parameters:
mov edx, ReferenceData ; points to reference data
mov ebp, ClientReg ; points to a WINOLDAPP Client_Reg_Struc frame
call [Callback]
If the carry flag is clear on entry, the event was processed and the EBP register points to a Client_Reg_Struc structure containing the register values after the event returned. If the carry flag is set, the event could not be placed in the queue and only the EDX register contains valid data. In both cases, the EBX register does not contain a virtual machine handle.