Программа непредсказуемо нажимает клавиши

Я хотел создать программу для игры, чтобы в ее чат отправлять определенное сообщение с заданным промежутком. У меня есть такой метод:

 private async Task WriteThis(string msg, int timeDelay)
 {
     isWriting = true;
     await Task.Delay(5000);
     while (isWriting)
     {
         Process[] processes = Process.GetProcessesByName("Stalcraft");
         foreach (Process proc in processes)
         {

            
             SendKeys.SendWait("{ENTER}");
             await Task.Delay(1000);
            
             SendKeys.SendWait(msg);
             await Task.Delay(1000);
             SendKeys.SendWait("{ENTER}");
             await Task.Delay(timeDelay*1000);



         }
     }
 }

а также метод для кнопки старта

private async void button1_Click(object sender, EventArgs e)
{
    var task = WriteThis(textBox1.Text, Convert.ToInt32(textBox2.Text));
    await task;
}

Но когда я протестировал ее, то увидел, что иногда программа делает все правильно, а иногда просто не открывает чат на Enter и прожимает клавиши из которых состоит msg. Как исправить код, чтобы он работал корректно? Может я допустил какие-то недочеты?


Ответы (0 шт):