ввод данных с рандом задержкой

isaacfks

Пользователь
Регистрация
29.05.2023
Сообщения
90
Благодарностей
11
Баллы
8
Всем привет, прошу помощи. Как вводить данные с рандомной задержкой? Чтобы можно было выбрать время (случайное) от и до. В эмуляторе клавиатуры есть только фиксированная задержка, не рандомная к сожалению.
 

oleg21621

Client
Регистрация
20.04.2016
Сообщения
783
Благодарностей
147
Баллы
43
вводишь 1 букву и используешь экшен пауза и вторая буква в экшене ввод с клавы и т.д
 

Sherminator

Client
Регистрация
10.09.2021
Сообщения
1 043
Благодарностей
545
Баллы
113
C#:
            Random random = new Random();

            string str = project.Variables["Имя переменной с текстом"].Value;
            char[] characters = str.ToCharArray();

            for (int i = 0; i < characters.Length; i++)
            {
               Thread.Sleep(random.Next(100,500)); // Задержка в мс от и до перед вводом каждого символа
               instance.SendText(characters[i].ToString(), 0);              
            }
 
  • Спасибо
Реакции: isaacfks, kagorec и izubr

isaacfks

Пользователь
Регистрация
29.05.2023
Сообщения
90
Благодарностей
11
Баллы
8
C#:
            Random random = new Random();

            string str = project.Variables["Имя переменной с текстом"].Value;
            char[] characters = str.ToCharArray();

            for (int i = 0; i < characters.Length; i++)
            {
               Thread.Sleep(random.Next(100,500)); // Задержка в мс от и до перед вводом каждого символа
               instance.SendText(characters[i].ToString(), 0);           
            }
Спасибо огромное. А можно ещё сделать, чтобы при вводе был процент (такую же настройку сделать) ошибок ? И чтобы само стирало ошибочный текст и писало дальше правильно.
@Sherminator
 

Sherminator

Client
Регистрация
10.09.2021
Сообщения
1 043
Благодарностей
545
Баллы
113
Спасибо огромное. А можно ещё сделать, чтобы при вводе был процент (такую же настройку сделать) ошибок ? И чтобы само стирало ошибочный текст и писало дальше правильно.
@Sherminator
C#:
Random random = new Random();

            string str = project.Variables["Имя переменной с текстом"].Value;
            char[] characters = str.ToCharArray();

            for (int i = 0; i < characters.Length; i++)
            {
                Thread.Sleep(random.Next(100, 500)); // Задержка в мс от и до перед вводом каждого символа

                if (random.Next(0,100) > 90) // 90 это процент срабатывания без ошибки, чем число ниже  тем ошибки чаще
                {
                    instance.SendText(characters[random.Next(0, characters.Length)].ToString(), 0);
                    Thread.Sleep(random.Next(100, 500)); // Задержка в мс от и до перед стиранием не правильного символа
                    instance.SendText("{BACKSPACE}", 0);
                }

                instance.SendText(characters[i].ToString(), 0);
              
            }
 
  • Спасибо
Реакции: isaacfks

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)