2.2.2.4.7.1 IMEVENT

The IMEVENT structure defines keyboard and mouse events.

 typedef struct tagIMEVENT {
   UINT32 timeMS;
   UINT16 type;
   union {
     IMKEYBOARD keyboard;
     IMMOUSE mouse;
   } data;
 } IMEVENT;

timeMS: The time the message was generated, specified as the number of milliseconds since the sending computer was started.

type: One of the following IMEVENT values, indicating the type of the event:

Value

Meaning

IM_TYPE_SYNC

0x0000

Obsolete after version 2.

IM_TYPE_ASCII

0x0001

The event consists of standard keyboard input.

IM_TYPE_VK1

0x0002

The event consists of virtual keyboard keys, such as ALT, CTRL, or SHIFT.

IM_TYPE_VK2

0x0003

The event consists of keyboard hot keys (also called keyboard shortcuts).

IM_TYPE_3BUTTON

0x8001

The event consists of mouse input.

data: If the IMEVENT type equals IM_TYPE_3BUTTON, data will contain the IMMOUSE packet. Otherwise, all other IMEVENT types will contain IMKEYBOARD packets.