C# Autoclicker Visual Studio

本文关键字:Studio Visual Autoclicker | 更新日期: 2023-09-27 18:16:38

我使用Visual Studio用c#制作了一个用于个人学习的自动点击器。

它在某种程度上是有效的,但有一个令人沮丧的问题解释如下,我无法解决,无论我做什么。我已经对代码进行了各种编辑,它现在也应该在自己的线程上运行。作为最后的手段,我浏览了其他开源的自动点击器,并检查了他们代码中的提示,但没有一个有效。

这是一个简短的视频剪辑。(当我打开自动点击器并将鼠标悬停在任何下拉菜单上时,它就会开始这样做)。间隔不重要,它正常点击其他所有这些下拉菜单的问题。

https://gfycat.com/ContentGreedyFoal

下面是整个Visual Studio项目给那些有兴趣看一看的人:https://drive.google.com/file/d/0B36Lvz9TiOAWNF80cVVXWnRjeHM/view?usp=sharing

对于那些没有时间下载整个项目的人来说,这里也是代码。我为缺少注释和混淆变量名而道歉。这是我第一个c#项目之一,我想完成它来扩展我的知识。

http://pastebin.com/M1SiL9Rh

C# Autoclicker Visual Studio

我刚刚看了一下你的代码,你这里似乎有很多循环,这就解释了点击开始按钮后的点击。

private void MouseClicker()
    {
        int i = 0;
        while (true)
        {
            Thread.Sleep(100);
            while (threadStatus)
            {
                if (repeatTimes)
                {
                    while (startbutton.Enabled == false)
                    {
                        int x = Cursor.Position.X;
                        int y = Cursor.Position.Y;
                        mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, x, y, 0, 0);
                    }
                }
                else if (randomInterval)
                {
                    while (startbutton.Enabled == false)
                    {
                        int li = Convert.ToInt32(Math.Round(lowerintervalvalue.Value, 0));
                        int hi = Convert.ToInt32(Math.Round(higherintervalvalue.Value, 0));
                        int x = Cursor.Position.X;
                        int y = Cursor.Position.Y;
                        mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, x, y, 0, 0);
                        Random rand = new Random();
                        Thread.Sleep(rand.Next(li, hi));
                    }
                }
            }
        }
    }

您需要在此方法中使用逻辑来避免点击超过窗口中设置的Repeat次数