Hid.dll导出函数与IOCTL对应大全
2022-05-07
662
0
Windows封装的HID相关系列API函数,其本质是通过WIN32 API函数DeviceIoControl函数来与内核进行通讯的,而DeviceIoControl中一个重要的参数就是dwIoControlCode,代表了该次通讯的功能。
BOOL
WINAPI
DeviceIoControl(
_In_ HANDLE hDevice,
_In_ DWORD dwIoControlCode,
_In_reads_bytes_opt_(nInBufferSize) LPVOID lpInBuffer,
_In_ DWORD nInBufferSize,
_Out_writes_bytes_to_opt_(nOutBufferSize,*lpBytesReturned) LPVOID lpOutBuffer,
_In_ DWORD nOutBufferSize,
_Out_opt_ LPDWORD lpBytesReturned,
_Inout_opt_ LPOVERLAPPED lpOverlapped
);
这里列出相关的API与dwIoControlCode码之间的关系,未列出的函数一般为通过下列获取的内核数据的内部解析处理。
函数 | dwIoControlCode | 结构体 |
---|---|---|
HidD_GetPreparsedData | IOCTL_HID_GET_COLLECTION_INFORMATION /IOCTL_HID_GET_COLLECTION_DESCRIPTOR | HID_COLLECTION_INFORMATION/HIDP_PREPARSED_DATA |
HidD_GetAttributes | IOCTL_HID_GET_COLLECTION_INFORMATION | HID_COLLECTION_INFORMATION |
HidD_FlushQueue | IOCTL_HID_FLUSH_QUEUE | |
HidD_GetConfiguration | IOCTL_HID_GET_DRIVER_CONFIG | HIDD_CONFIGURATION |
HidD_SetConfiguration | IOCTL_HID_SET_DRIVER_CONFIG | |
HidD_GetNumInputBuffers | IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS | |
HidD_SetNumInputBuffers | IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS | |
HidD_GetSerialNumberString | IOCTL_HID_GET_SERIALNUMBER_STRING | |
HidD_GetManufacturerString | IOCTL_HID_GET_MANUFACTURER_STRING | |
HidD_GetProductString | IOCTL_HID_GET_PRODUCT_STRING | |
HidD_GetIndexedString | IOCTL_HID_GET_INDEXED_STRING | |
HidD_GetPhysicalDescriptor | IOCTL_GET_PHYSICAL_DESCRIPTOR | |
HidD_GetFeature | IOCTL_HID_GET_FEATURE | |
HidD_SetFeature | IOCTL_HID_SET_FEATURE | |
HidD_GetInputReport | IOCTL_HID_GET_INPUT_REPORT | |
HidD_SetOutputReport | IOCTL_HID_SET_OUTPUT_REPORT | |
HidD_GetMsGenreDescriptor | IOCTL_HID_GET_MS_GENRE_DESCRIPTOR |
微软定义的IOCTL码大全:http://www.pnpon.com/article/detail-32.html
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936