GetRawInputDeviceInfoA 函数 (winuser.h)
检索有关原始输入设备的信息。
语法
UINT GetRawInputDeviceInfoA(
[in, optional] HANDLE hDevice,
[in] UINT uiCommand,
[in, out, optional] LPVOID pData,
[in, out] PUINT pcbSize
);
参数
[in, optional] hDevice
类型: HANDLE
原始输入设备的句柄。 这来自 RAWINPUTHEADER 的 hDevice 成员或 GetRawInputDeviceList。
[in] uiCommand
类型: UINT
指定 将在 pData 中返回哪些数据。 此参数的取值可为下列值之一:
值 | 含义 |
---|---|
|
pData 是指向顶级集合预分析数据的缓冲区的PHIDP_PREPARSED_DATA指针。 |
|
pData 指向包含 设备接口名称的字符串。
如果此设备 是使用共享访问模式打开的 ,则可以使用此名称调用 CreateFile 以打开 HID 集合,并使用返回的句柄调用 ReadFile 读取输入报告和 WriteFile 发送输出报告。 有关详细信息,请参阅 打开 HID 集合 和 处理 HID 报表。 仅对于此 uiCommand , 在 ( 不是字节计数) 的字符计数。 |
|
pData 指向 RID_DEVICE_INFO 结构。 |
[in, out, optional] pData
类型: LPVOID
指向包含 uiCommand 指定的信息的缓冲区的指针。
如果 uiCommandRIDI_DEVICEINFO,请将RID_DEVICE_INFO的cbSize 成员设置为sizeof(RID_DEVICE_INFO)
调用 GetRawInputDeviceInfo 之前。
[in, out] pcbSize
类型: PUINT
pData 中数据的大小(以字节为单位)。
返回值
类型: UINT
如果成功,此函数将返回一个非负数,指示复制到 pData 的字节数。
如果 pData 不足以容纳数据,则函数返回 -1。 如果 pData 为 NULL,则函数返回值为零。 在这两种情况下,对于 pData 缓冲区,将大小设置为所需的最小大小。
调用 GetLastError 以标识任何其他错误。
注解
注意
winuser.h 标头将 GetRawInputDeviceInfo 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非中性编码别名与非非编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅 函数原型的约定。
要求
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | winuser.h (包括 Windows.h) |
Library | User32.lib |
DLL | User32.dll |
API 集 | ext-ms-win-ntuser-rawinput-l1-1-0 (在 Windows 10 版本 10.0.14393) |
请参阅
概念性
参考