Platform SDK: Win32 API

W32_DEVICEIOCONTROL

Passes a control code and related information to a virtual device driver.

include VMM.INC 
 
mov ebx, VMHandle
mov eax, W32_DEVICEIOCONTROL 
mov esi, OFFSET32 dioparams
VMMCall System_Control 
 

Parameters

VMHandle
Handle of the virtual machine.
dioparams
Address of a DIOCParams structure containing a control code and information that the VxD needs to process the control code.

Return Values

Returns one of the following values in the EAX register:

0 The control code processed successfully.
– 1 An asynchronous operation is in progress. A VxD must return this value only if the lpoOverlapped member of the DIOCParams structure is not NULL.
Error code An error occurred.

Remarks

This message is sent to a VxD when an application specifies the name of a VxD in the CreateFile function and when an application specifies the device handle of the VxD in a call to the DeviceIoControl or CloseHandle function. This message uses the ESI register.