C#表单窗口中的多个鼠标宏

时间:2012-07-24 10:24:52

标签: c# windows forms

我想创建一个可以多次打开的Windows窗体应用程序。

当我单击第一个表单上的“GO”按钮时,我希望鼠标在表单中执行一系列单击(由特定坐标给出),而我仍然可以使用手持鼠标控制光标,基本上有2只老鼠。

如果我点击所有表格上的“GO”按钮,我希望所有鼠标在相应的表格中执行一系列点击(所有鼠标一致运行,不会相互影响),同时我仍然可以控制手 - 鼠标做我想要的IE浏览网页。

这可能吗?如果是这样我会从哪里开始?

2 个答案:

答案 0 :(得分:0)

您可以使用PInvoke并调用SendInput API。 http://www.pinvoke.net/default.aspx/user32.sendinput

答案 1 :(得分:0)

据我所知,在一个Windows系统上不可能有两只鼠标,如果你在某处模拟点击,它通常会将鼠标移动到那个位置。

您可以尝试使用Wolfgang建议的lib,也可以使用this question

中的代码

至于它多次运行,您可以加载多个运行相同代码的线程,如下所示:

    static void Main(string[] args)
    {
        Thread[] threads = new Thread[5]; // replace 5 with how many times you want to run it.
        for(int i = 0; i < threads.Length;i++)
        {
            threads[i] = new Thread(new ThreadStart(MyCode));
            threads[i].Start();
        }
    }

    static void MyCode()
    {
        //put code here
    }