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 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
標頭 winuser.h (包括 Windows.h)

另請參閱

概念

勾點

LowLevelKeyboardProc

參考

SetWindowsHookEx