public void ProcessInput() { if ((int)_deltaXOut != 0 || (int)_deltaYOut != 0) { var input = new MouseApi.INPUT[1]; input[0].type = MouseApi.INPUT_MOUSE; input[0].mkhi = MouseInput((int)_deltaXOut, (int)_deltaYOut, 0, 0, MouseApi.MOUSEEVENTF_MOVE); MouseApi.SendInput(1, input, Marshal.SizeOf(input[0].GetType())); if ((int)_deltaXOut != 0) { _deltaXOut = _deltaXOut - (int)_deltaXOut; } if ((int)_deltaYOut != 0) { _deltaYOut = _deltaYOut - (int)_deltaYOut; } } }