Freigeben über


KEYBOARD_INPUT_DATA-Struktur (ntddkbd.h)

KEYBOARD_INPUT_DATA enthält ein Paket mit Tastatureingabedaten.

Syntax

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

Member

UnitId

Gibt die Einheitennummer eines Tastaturgeräts an. Ein Tastaturgerätename hat das Format \Device\KeyboardPortN, wobei das Suffix N die Einheitsnummer des Geräts ist. Ein Gerät, dessen Name \Device\KeyboardPort0 lautet, weist beispielsweise die Einheitsnummer 0 auf, und ein Gerät, dessen Name \Device\KeyboardPort1 lautet, weist die Einheitsnummer 1 auf.

MakeCode

Gibt den Scancode an, der einem Tastendruck zugeordnet ist.

Flags

Gibt ein bitweises ODER mit einem oder mehreren der folgenden Flags an, die angeben, ob eine Taste gedrückt oder freigegeben wurde, sowie andere sonstige Informationen.

Wert Bedeutung
KEY_MAKE Die Taste wurde gedrückt.
KEY_BREAK Der Schlüssel wurde freigegeben.
KEY_E0 Erweiterter Scancode, der verwendet wird, um spezielle Tastaturfunktionen anzugeben.
KEY_E1 Erweiterter Scancode, der verwendet wird, um spezielle Tastaturfunktionen anzugeben.

Reserved

Reserviert für die Verwendung durch das Betriebssystem.

ExtraInformation

Gibt gerätespezifische Informationen an, die einem Tastaturereignis zugeordnet sind.

Hinweise

Als Reaktion auf eine IRP_MJ_READ -Anforderung (Kbdclass) überträgt Kbdclass null oder mehr KEYBOARD_INPUT_DATA Strukturen aus der internen Datenwarteschlange an den Win32-Subsystempuffer.

Anforderungen

Anforderung Wert
Header ntddkbd.h (include Ntddkbd.h)

Weitere Informationen

IRP_MJ_READ (Kbdclass)

KeyboardClassServiceCallback