INPUT (Structures)
Last changed: -113.208.118.82

.
Summary
TODO - a short description

C# Definition:

[StructLayout(LayoutKind.Explicit)]struct INPUT {
  [FieldOffset(0)] int type;
  [FieldOffset(4)] MOUSEINPUT mi;
  [FieldOffset(4)] KEYBDINPUT ki;
  [FieldOffset(4)] HARDWAREINPUT hi;
}

VB Definition:

    Structure INPUT_TYPE
        <FieldOffset(0)> Dim dwType As Integer
        <FieldOffset(4)> Dim mi As MOUSEINPUT
        <FieldOffset(4)> Dim ki As KEYBDINPUT
        <FieldOffset(4)> Dim hi As HARDWAREINPUT
    End Structure

User-Defined Field Types:

MOUSEINPUT, KEYBDINPUT, HARDWAREINPUT

Notes:

The last 3 fields are a union, which is why they are all at the same memory offset.

On 64-Bit systems, the offset of the mi, ki and hi fields may need to be 8, due to alignment. It might therefore be more convenient, to define three structs and let the compiler do the actual layout.

Documentation
INPUT on MSDN