KBDLLHOOKSTRUCT 構造体 (winuser.h)

低レベルのキーボード入力イベントに関する情報が含まれます。

構文

typedef struct tagKBDLLHOOKSTRUCT {
  DWORD     vkCode;
  DWORD     scanCode;
  DWORD     flags;
  DWORD     time;
  ULONG_PTR dwExtraInfo;
} KBDLLHOOKSTRUCT, *LPKBDLLHOOKSTRUCT, *PKBDLLHOOKSTRUCT;

メンバー

vkCode

型: DWORD

仮想キー コード。 コードは、1 ~ 254 の範囲の値である必要があります。

scanCode

型: DWORD

キーのハードウェア スキャン コード。

flags

型: DWORD

拡張キー フラグ、イベント挿入フラグ、コンテキスト コード、および遷移状態フラグ。 このメンバーは次のように指定します。 アプリケーションでは、次の値を使用してキーストローク フラグをテストできます。 LLKHF_INJECTED (ビット 4) をテストすると、イベントが挿入されたかどうかを確認できます。 その場合は、LLKHF_LOWER_IL_INJECTED (ビット 1) をテストすると、より低い整合性レベルで実行されているプロセスからイベントが挿入されたかどうかを示します。

意味
LLKHF_EXTENDED
(KF_EXTENDED >> 8)
拡張キー フラグをテストします。
LLKHF_LOWER_IL_INJECTED
0x00000002
イベントが挿入された (整合性レベルが低いプロセスから) フラグをテストします。
LLKHF_INJECTED
0x00000010
(任意のプロセスから) イベントが挿入されたフラグをテストします。
LLKHF_ALTDOWN
(KF_ALTDOWN >> 8)
コンテキスト コードをテストします。
LLKHF_UP
(KF_UP >> 8)
遷移状態フラグをテストします。
 

次の表では、この値のレイアウトについて説明します。

Bits 説明
0 キーが拡張キー (ファンクション キーやテンキーのキーなど) であるかどうかを指定します。 キーが拡張キーの場合、値は 1 です。それ以外の場合は 0 です。
1 より低い整合性レベルで実行されているプロセスからイベントが挿入されたかどうかを指定します。 その場合、値は 1 です。それ以外の場合は 0 です。 ビット 1 が設定されるたびに、ビット 4 も設定されることに注意してください。
2 ~ 3 予約済み。
4 イベントが挿入されたかどうかを指定します。 その場合、値は 1 です。それ以外の場合は 0 です。 ビット 4 が設定されている場合、ビット 1 は必ずしも設定されないことに注意してください。
5 コンテキスト コード。 Alt キーを押すと、値は 1 になります。それ以外の場合は 0 です。
6 予約済み。
7 遷移の状態。 キーが押されている場合は 0、解放されている場合は 1 です。

time

型: DWORD

このメッセージのタイム スタンプ。このメッセージに 対して GetMessageTime が返すのと同じです。

dwExtraInfo

種類: ULONG_PTR

メッセージに関連付けられている追加情報。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header winuser.h (Windows.h を含む)

関連項目

概念

フック

LowLevelKeyboardProc

リファレンス

SetWindowsHookEx