WdfRequestIsFrom32BitProcess function (wdfrequest.h)
[Applies to KMDF and UMDF]
The WdfRequestIsFrom32BitProcess method checks whether the originator of a specified I/O request is a 32-bit user-mode application.
Syntax
BOOLEAN WdfRequestIsFrom32BitProcess(
[in] WDFREQUEST Request
);
Parameters
[in] Request
A handle to a framework request object.
Return value
On 64-bit systems,WdfRequestIsFrom32BitProcess returns TRUE if the originator of the current I/O request is a 32-bit user-mode process, and FALSE otherwise. On 32-bit systems, WdfRequestIsFrom32BitProcess always returns TRUE.
A bug check occurs if the driver supplies an invalid object handle.
Remarks
Drivers can call WdfRequestIsFrom32BitProcess to determine whether an I/O request is likely to contain data elements that need to be converted, or "thunked," before they can be used in a 64-bit driver.
The specified request handle must have been obtained from one of the driver's I/O queues and not from a call to WdfRequestCreate.
Examples
The following code example determines if an I/O request came from a 32-bit application.
VOID
MyEvtIoRead(
IN WDFQUEUE Queue,
IN WDFREQUEST Request,
IN size_t Length
)
{
...
if (WdfRequestIsFrom32BitProcess(Request)) {
//
// The driver is running on a 64-bit computer and the
// I/O request came from a 32-bit application.
//
...
}
...
}
Requirements
Requirement | Value |
---|---|
Target Platform | Universal |
Minimum KMDF version | 1.0 |
Minimum UMDF version | 2.0 |
Header | wdfrequest.h (include Wdf.h) |
Library | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI compliance rules | DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |