IQueueCallbackDeviceIoControl::OnDeviceIoControl method (wudfddi.h)
[Warning: UMDF 2 is the latest version of UMDF and supersedes UMDF 1. All new UMDF drivers should be written using UMDF 2. No new features are being added to UMDF 1 and there is limited support for UMDF 1 on newer versions of Windows 10. Universal Windows drivers must use UMDF 2. For more info, see Getting Started with UMDF.]
The OnDeviceIoControl method is called to handle a device I/O control request when an application performs a specific operation on a device through the Microsoft Win32 OnDeviceIoControl function.
void OnDeviceIoControl( IWDFIoQueue *pWdfQueue, IWDFIoRequest *pWdfRequest, ULONG ControlCode, SIZE_T InputBufferSizeInBytes, SIZE_T OutputBufferSizeInBytes );
[in] A pointer to the IWDFIoQueue interface for the I/O queue object that the request arrives from.
[in] A pointer to the IWDFIoRequest interface that represents the framework request object.
[in] The driver-defined or system-defined I/O control code (IOCTL) that identifies the specific operation to be performed and that is associated with the request.
A driver can implement a single OnDeviceIoControl method for all I/O queues or separate OnDeviceIoControl methods for each I/O queue.
The OnDeviceIoControl method receives every device I/O control request type from a queue. (The request type is identified by the WdfRequestDeviceIoControl value of the WDF_REQUEST_TYPE enumeration type for the request.)
For more information about the driver's methods that are associated with queues and that the framework calls, see I/O Queue Event Callback Functions. The OnDeviceIoControl method must process each received device I/O control request. For more information about how UMDF drivers process I/O requests, see Processing I/O Requests.
The driver can call the IWDFIoRequest::GetDeviceIoControlParameters, IWDFIoRequest::GetInputMemory, and IWDFIoRequest::GetOutputMemory methods to retrieve information about the request and the input and output buffers.
|Header||wudfddi.h (include Wudfddi.h)|