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


структура KEYBOARD_INPUT_DATA (ntddkbd.h)

KEYBOARD_INPUT_DATA содержит один пакет входных данных клавиатуры.

Синтаксис

typedef struct _KEYBOARD_INPUT_DATA {
  USHORT UnitId;
  USHORT MakeCode;
  USHORT Flags;
  USHORT Reserved;
  ULONG  ExtraInformation;
} KEYBOARD_INPUT_DATA, *PKEYBOARD_INPUT_DATA;

Члены

UnitId

Указывает номер устройства клавиатуры. Имя устройства клавиатуры имеет формат \Device\KeyboardPortN, где суффикс N — это номер единицы устройства. Например, устройство с именем \Device\KeyboardPort0 имеет нулевое число единиц, а устройство с именем \Device\KeyboardPort1 имеет номер единицы один.

MakeCode

Указывает код сканирования, связанный с нажатием клавиши.

Flags

Задает побитовое ЗНАЧЕНИЕ ИЛИ одного или нескольких следующих флагов, указывающих, была ли нажата или отпущена клавиша, а также другие прочие сведения.

Значение Значение
KEY_MAKE Клавиша была нажата.
KEY_BREAK Ключ был освобожден.
KEY_E0 Расширенный код сканирования, используемый для обозначения специальных функций клавиатуры.
KEY_E1 Расширенный код сканирования, используемый для обозначения специальных функций клавиатуры.

Reserved

Зарезервировано для использования операционной системой.

ExtraInformation

Указывает сведения об устройстве, связанные с событием клавиатуры.

Комментарии

В ответ на запрос IRP_MJ_READ (Kbdclass) Kbdclass передает ноль или более KEYBOARD_INPUT_DATA структур из внутренней очереди данных в буфер подсистемы Win32.

Требования

Требование Значение
Заголовок ntddkbd.h (включая Ntddkbd.h)

См. также раздел

IRP_MJ_READ (Kbdclass)

KeyboardClassServiceCallback