Share via


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

Minimum supported client
None supported
Minimum supported server
Windows Server 2008
End of client support
None supported
End of server support
Windows Server 2012
Namespace
Root\Virtualization
MOF
WindowsVirtualization.mof

See also

Msvm_Keyboard

Virtual-Key Codes