关于mousemove:模拟鼠标移动(C#)

Simulating mouse movement (C#)

我将如何制作一个不断向上移动鼠标的小程序?

对于那些想知道的人来说,tt 是一个很小的一次性东西。我在玩星球大战原力释放。在控制台版本中,您将向上握住右摇杆。在 PC 上的错误控制台端口中,您正在使用鼠标。也许你能理解我的沮丧。


这是机械编程的问题,而不是 CSharp。

  • 你需要插入第二个鼠标,
    并获得便宜的变速有线
    钻头。
  • 将砂轮放在
    钻孔,用条纹纸包起来,
    并将其设置为最低速度。
  • 然后在不旋转的上面放一个支架
    将保持钻头的主体
    鼠标靠近传感器
    旋转条纹纸。
  • 确保鼠标朝向正确的方向
    模拟向上运动。

要执行程序,请拨动钻头所插入的电源板上的电源开关。

编辑:如果您想要更便携的代码,请使用无绳电钻。不包括电池。


SetCursorPos 将在非托管代码中执行此操作。我不确定是否有 .NET 方法可以做到这一点,但您始终可以使用 com 互操作。它在 User32.dll

1
2
[DllImport("user32.dll")]
static extern bool SetCursorPos(int X, int Y);

一个小小的 google 将它生成为 .net 的 SetCursorPos 等价物

1
System.Windows.Form.Cursor.Position


我不知道这个游戏,但内部窗口会发出鼠标移动的消息。这些由 SendMessage() API 调用发送到应用程序。在 C# 中,您要么必须直接使用相同的 Win32 API,要么可能通过创建/发送事件?不确定如何将事件发送到另一个正在运行的应用程序。

在 C# 中定义的 SendMessage() Win32 API 调用如下所示:

1
2
3
4
5
6
7
[DllImport("user32.dll")]
        public static extern int SendMessage(
              int hWnd,     // handle to destination window
              uint Msg,     // message
              long wParam,  // first message parameter
              long lParam   // second message parameter
              );