IsKeyPressed method of the Msvm_Keyboard class

Retrieves the key state of a key.

Syntax

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

Parameters

keyCode [in]

Type: uint32

The virtual key code of the key to query. For the list for virtual-key codes, see Virtual-Key Codes.

keyState [out]

Type: boolean

The current down state of the key. A True value means the key is down.

Return value

Type: uint32

A return value of zero indicates success. A nonzero value indicates a failure to query the key state.

Completed with No Error (0)

Method Parameters Checked - Job Started (4096)

Failed (32768)

Access Denied (32769)

Not Supported (32770)

Status is unknown (32771)

Timeout (32772)

Invalid parameter (32773)

System is in used (32774)

Invalid state for this operation (32775)

Incorrect data type (32776)

System is not available (32777)

Out of memory (32778)

Remarks

The IsKeyPressed method will always return False for the VK_MENU (18), VK_CONTROL (17), and VK_SHIFT (16) because these are not real keys on a keyboard. These virtual key codes are always mapped to VK_LMENU (164), VK_LCONTROL (162), and VK_LSHIFT (160), respectively, by the PressKey and ReleaseKey methods.

Access to the Msvm_Keyboard class might be restricted by UAC Filtering. For more information, see User Account Control and WMI.

Requirements

Requirement Value
Minimum supported client
Windows 8 [desktop apps only]
Minimum supported server
Windows Server 2012 [desktop apps only]
Namespace
Root\Virtualization\V2
MOF
WindowsVirtualization.V2.mof
DLL
Vmms.exe

See also

Msvm_Keyboard

Virtual-Key Codes