Msvm_Keyboard 类的 IsKeyPressed 方法

检索密钥的键状态。

语法

uint32 IsKeyPressed(
  [in]  uint32  keyCode,
  [out] boolean keyState
);

参数

keyCode [in]

类型: uint32

要查询的密钥的虚拟密钥代码。 有关虚拟密钥代码的列表,请参阅 虚拟密钥代码

keyState [out]

类型: 布尔值

键的当前关闭状态。 True 值表示键关闭。

返回值

类型: uint32

返回值零表示成功。 非零值指示查询密钥状态失败。

已完成,无错误 (0)

已检查方法参数 - 作业 启动 (4096)

(32768) 失败

访问被拒绝 (32769)

不支持 (32770)

状态未知 (32771)

超时 (32772)

参数 (32773) 无效

系统 ( 32774)

此操作的无效状态 (32775)

数据类型 (32776) 不正确

系统 (32777) 不可用

内存不足 (32778)

备注

对于 VK_MENU ( 18) 、VK_CONTROL (17) 、VK_SHIFT (16) ,IsKeyPressed 方法将始终返回 False,因为这些键不是键盘上的实际键。 这些虚拟密钥代码始终通过 PressKeyReleaseKey 方法分别映射到 VK_LMENU ( 164) 、VK_LCONTROL (162) 和 VK_LSHIFT (160) 。

UAC 筛选可能会限制对 Msvm_Keyboard 类的访问。 有关详细信息,请参阅 用户帐户控制和 WMI

要求

要求
最低受支持的客户端
Windows 8 [仅限桌面应用]
最低受支持的服务器
Windows Server 2012 [仅限桌面应用]
命名空间
Root\Virtualization\V2
MOF
WindowsVirtualization.V2.mof
DLL
Vmms.exe

另请参阅

Msvm_Keyboard

虚拟键代码