0

我最近制作了这个小型 Windows 窗体应用程序:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;

namespace Spammer
{
    public partial class Form1 : Form
    {
        Thread t1;
        int delay, y = 1;
        public Form1()
        {
            t1 = new Thread(send);
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            delay = int.Parse(textBox2.Text);
            t1.Start();
        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {

        }

        private void button2_Click(object sender, EventArgs e)
        {
            y = 0;
        }
        private void send()
        {
            while (y == 1)
            {
                String textt = textBox1.Text;
                Thread.Sleep(delay);
                SendKeys.SendWait(textt);
            }
        }

        private void label1_Click(object sender, EventArgs e)
        {

        }

        private void textBox2_TextChanged(object sender, EventArgs e)
        {

        }
    }
}

现在,它看起来像这样:

它有一个延迟文本框、一个要发送的文本文本框和 2 个按钮:开始和停止。

现在,我尝试运行它并将延迟设置为 1000 毫秒。

当我按下“停止”按钮时,它完全停止并且不再发送消息。

但是,当我输入延迟非常小的延迟(例如 100 毫秒)时,按下“停止”不会做任何事情。点击它甚至有点困难,即使我点击它也不会停止发送消息。

为什么是这样?我能以某种方式解决它吗?

4

1 回答 1

0

好的,谢谢大家帮忙!

我现在正在使用 GUI 计时器,它可以完美运行。

于 2013-10-21T14:35:21.363 回答