虚拟键盘命令

时间:2013-07-31 14:28:34

标签: vb.net winapi keyboard

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

KEYEVENTF_EXTENDEDKEYKEYEVENTF_KEYUP是。

我看到它的任何地方只是给我一个基于整数的描述,什么不是,但我只是想知道它们各自的作用。

1 个答案:

答案 0 :(得分:4)

你已经标记了VB.NET的问题,但这些实际上与VB.NET没什么关系。它们是Windows头文件中定义的常量,用于Win32 API函数。

就差异而言,通过观察他们的价值观你无法说清楚。各个值并不是特别重要,这就是使用命名标识符的原因。重要的是它们的使用位置以及这些功能的文档告诉您它们的含义。

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

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

可用的键盘输入概述here on MSDN。它更详细地解释了虚拟密钥代码是什么,扩展密钥是什么等等。