次の方法で共有


KEYBOARD_INPUT_DATA 構造体 (ntddkbd.h)

KEYBOARD_INPUT_DATAには、キーボード入力データのパケットが 1 つ含まれています。

構文

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 のデバイスの単位番号は 0 で、名前が \Device\KeyboardPort1 のデバイスの単位番号は 1 です。

MakeCode

キー押下に関連付けられているスキャン コードを指定します。

Flags

キーが押されたか解放されたか、およびその他の情報を示す、次の 1 つ以上のフラグのビットごとの OR を指定します。

意味
KEY_MAKE キーが押されました。
KEY_BREAK キーがリリースされました。
KEY_E0 特殊なキーボード機能を示すために使用される拡張スキャン コード。
KEY_E1 特殊なキーボード機能を示すために使用される拡張スキャン コード。

Reserved

オペレーティング システムで使用するために予約されています。

ExtraInformation

キーボード イベントに関連付けられているデバイス固有の情報を指定します。

注釈

IRP_MJ_READ (Kbdclass) 要求に応答して、Kbdclass は 0 個以上のKEYBOARD_INPUT_DATA構造体を内部データ キューから Win32 サブシステム バッファーに転送します。

要件

要件
Header ntddkbd.h (Ntddkbd.h を含む)

こちらもご覧ください

IRP_MJ_READ (Kbdclass)

KeyboardClassServiceCallback