Поделиться через


Функция 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

Дескриптор необработанного входного устройства. Это происходит от члена hDevice RAWINPUTHEADER или из GetRawInputDeviceList.

[in] uiCommand

Тип: UINT

Указывает, какие данные будут возвращены в pData. Этот параметр может быть одним из следующих значений.

Ценность Значение
RIDI_PREPARSEDDATA
0x20000005
pData — это указатель PHIDP_PREPARSED_DATA на буфер дляпредварительно подготовленныхданных коллекции верхнего уровня.
RIDI_DEVICENAME
0x20000007
pData указывает на строку, содержащую имя интерфейса устройства .

Если это устройство открыто с помощью режима общего доступа, можно вызвать CreateFile с таким именем, чтобы открыть коллекцию HID и использовать возвращенный дескриптор для вызова ReadFile для чтения входных отчетов и WriteFile для отправки выходных отчетов.

Дополнительные сведения см. в разделе открытии коллекций HID и обработке отчетов HID.

Только для этого uiCommand значение в pcbSize — это число символов (а не число байтов).

RIDI_DEVICEINFO
0x2000000b
pData указывает на структуру RID_DEVICE_INFO.

[in, out, optional] pData

Тип: LPVOID

Указатель на буфер, содержащий сведения, указанные uiCommand.

Если uiCommandRIDI_DEVICEINFO, задайте cbSize члена RID_DEVICE_INFOsizeof(RID_DEVICE_INFO) перед вызовом GetRawInputDeviceInfo.

[in, out] pcbSize

Тип: PUINT

Размер данных в байтах в pData.

Возвращаемое значение

Тип: UINT

В случае успешного выполнения эта функция возвращает не отрицательное число, указывающее количество байтов, скопированных в pData.

Если pData недостаточно велик для данных, функция возвращает значение -1. Если pDataNULL, функция возвращает значение нуля. В обоих случаях pcbSize имеет минимальный размер, необходимый для буфера pData.

Вызовите GetLastError для выявления других ошибок.

Замечания

Заметка

Заголовок winuser.h определяет GetRawInputDeviceInfo как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, который не является кодировкой нейтральным, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows XP [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2003 [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll
набор API ext-ms-win-ntuser-rawinput-l1-1-0 (представлен в Windows 10 версии 10.0.14393)

См. также

концептуальные

RAWINPUTHEADER

RID_DEVICE_INFO

необработанные входные

Справочник

WM_INPUT

коллекций Top-Level

предварительно подготовленные данные

PHIDP_PREPARSED_DATA

открытие коллекций HID

обработка отчетов HID