SmcCxDeviceIoControl function
Processes the requested I/O control code.
Syntax
FORCEINLINE void SmcCxDeviceIoControl(
_In_ WDFDEVICE Device,
_In_ WDFREQUEST FxRequest
);
Parameters
Device [in]
Handle to the framework device object.FxRequest [in]
Handle to the framework request object that contains the I/O control code to process.
Return value
This function does not return a value.
Remarks
The client driver calls this method to handle these smart card-specific I/O control requests.
- IOCTL_SMARTCARD_POWER
- IOCTL_SMARTCARD_GET_ATTRIBUTE
- IOCTL_SMARTCARD_SET_ATTRIBUTE
- IOCTL_SMARTCARD_TRANSMIT
- IOCTL_SMARTCARD_EJECT
- IOCTL_SMARTCARD_SWALLOW
- IOCTL_SMARTCARD_SET_PROTOCOL
- IOCTL_SMARTCARD_GET_STATE
- IOCTL_SMARTCARD_GET_FEATURE_REQUEST
- Vendor-specific IOCTLs (start from 0x800).
The client driver can call the SmcCxDeviceIoControl function its implementation of the EvtIoDeviceControl function.
Examples
VOID
EvtIoDeviceControl(
_In_ WDFQUEUE FxQueue,
_In_ WDFREQUEST FxRequest,
_In_ size_t OutputBufferSizeInBytes,
_In_ size_t InputBufferSizeInBytes,
_In_ ULONG ControlCode
)
{
WDFDEVICE FxDevice = WdfIoQueueGetDevice(FxQueue);
UNREFERENCED_PARAMETER(ControlCode);
UNREFERENCED_PARAMETER(InputBufferSizeInBytes);
UNREFERENCED_PARAMETER(OutputBufferSizeInBytes);
SmcCxDeviceIoControl(FxDevice, FxRequest);
return;
}
Requirements
Target platform |
Desktop |
Header |
SmcCx.h on Windows 10 |
See also