0

我只是想知道这些虚拟键盘命令之间的区别是什么:

KEYEVENTF_EXTENDEDKEY并且KEYEVENTF_KEYUP是。

在我看过的所有地方,它都只是根据整数给我一个描述,而不是什么,但我只是想知道它们每个人的作用。

4

1 回答 1

4

您已标记问题 VB.NET,但这些实际上与 VB.NET 毫无关系。它们是在 Windows 头文件中定义的常量,用于 Win32 API 函数。

至于差异,您无法通过查看它们的值来判断。各个值并不是特别重要,这就是使用命名标识符的原因。重要的是它们的使用位置以及这些函数的文档告诉您它们的含义。

第一个,KEYEVENTF_EXTENDEDKEY,与KEYBDINPUT结构(与例如SendInput 函数一起使用)一起使用,以传递有关合成键盘输入的信息。如果使用此标志,则意味着扫描码应被解释为扩展密钥。从技术上讲,这意味着扫描码前面有一个值为 224 的前缀字节(十六进制表示法中的 &HE0)。

第二个,KEYEVENTF_KEYUP,是另一个可用于此结构的标志。这意味着该键正在释放(向上),而不是按下(向下)。

MSDN 上提供了键盘输入的一般概述。它更详细地解释了虚拟键码是什么,扩展键是什么等。

于 2013-07-31T14:43:47.743 回答