using System.Drawing;
[Flags]
private enum MouseEventFlags
{
LEFTDOWN = 0x00000002,
LEFTUP = 0x00000004,
MIDDLEDOWN = 0x00000020,
MIDDLEUP = 0x00000040,
MOVE = 0x00000001,
ABSOLUTE = 0x00008000,
RIGHTDOWN = 0x00000008,
RIGHTUP = 0x00000010
}
[Flags]
private enum Win32Consts
{
INPUT_MOUSE = 0,
INPUT_KEYBOARD = 1,
INPUT_HARDWARE = 2,
}
private struct INPUT
{
public int type;
public MOUSEINPUT mi;
}
private struct MOUSEINPUT
{
public int dx;
public int dy;
public int mouseData;
public int dwFlags;
public int time;
public int dwExtraInfo;
}
private void MoveMouse(Point point)
{
var mi = new MOUSEINPUT
{
dx = point.X,
dy = point.Y,
mouseData = 0,
time = 0,
dwFlags = Convert.ToInt32(MouseEventFlags.MOVE),
dwExtraInfo = 0
};
var input = new INPUT
{
mi = mi,
type = Convert.ToInt32(Win32Consts.INPUT_MOUSE)
};
SendInput(1, ref input, 28);
}