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) 会告诉你事件是否是从以较低完整性级别运行的进程注入的。
下表描述了此值的布局。
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 [仅限桌面应用] |
标头 | winuser.h (包括 Windows.h) |
请参阅
概念性
引用