Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   Повторение кода через промежуток времени (http://forum.oszone.net/showthread.php?t=346554)

palexa 28-09-2020 10:46 2935104

Повторение кода через промежуток времени
 
Привет, может кто поможет

По сути мне нужно каждые 5 минут дёргать мышкой

Код:

MouseMove(0,0,0)
MouseMove(400,400)

Вот что бы две эти команды выполнялись каждые 5 минут
Это можно как то сделать? - что бы не использовать планировщик винды

Iska 28-09-2020 20:14 2935140

Цитата:

Цитата palexa
Это можно как то сделать? »

Добавить Sleep() и обрамить всё в бесконечный цикл.

palexa 28-09-2020 20:37 2935145

Цитата:

Цитата Iska
Добавить Sleep() и обрамить всё в бесконечный цикл. »

так?
Код:

While 1
MouseMove(0,0,0)
MouseMove(500,500)
Sleep (840000)
Wend

щас попробую, должно работать
спасибо

Iska 28-09-2020 21:40 2935152

Да. Только почему 840000? Должно быть 5 (минут) * 60 (секунд в 1 минуте) * 1000 (миллисекунд) = 300000.

palexa 28-09-2020 22:04 2935153

оказалось надо на 14 минут

Спасибо, всё работает.

Creat0R 29-09-2020 03:42 2935163

Ещё вариант:

Код:

_Move()
AdlibRegister(_Move, 840000)

While 1
    Sleep(10)
Wend

Func _Move()
    MouseMove(0, 0, 0)
    MouseMove(500, 500)
EndFunc


palexa 29-09-2020 07:29 2935170

Цитата:

Цитата Creat0R
Ещё вариант: »

ну уже из любопытства, чем лучше этот вариант? Там же больше строчек кода.

Creat0R 29-09-2020 16:35 2935213

Цитата:

Цитата palexa
чем лучше этот вариант? »

"Модульностью" ©.
Если серьёзно, то ничем, просто ещё вариант.
Если нужен скрипт только лишь для этой единой задачи, то первого варианта вполне достаточно.

Iska 29-09-2020 17:07 2935216

Цитата:

Цитата palexa
чем лучше этот вариант? »

Асинхронностью вызова. Или квазиасинхронностью (я не знаю, как внутри реализовано сие).

Creat0R 29-09-2020 17:10 2935217

Цитата:

Цитата Iska
Асинхронностью вызова »

Я бы не назвал это асинхронностью, т.к на момент выполнения функции выполнение основного скрипта приостанавливается.
Для асинхронности нужно использовать таймеры (_WinAPI_SetTimer).

palexa 02-10-2020 16:29 2935426

Всем спасибо за ответы
Не хочу плодить темы, поэтому спрошу тут, если ответят конечно спасибо
Можно ли такое сделать в cmd, но одной строкой, что бы не файлом, а написать команду руками в cmd и свернуть окно
Спасибо за ваше время

Iska 02-10-2020 20:57 2935441

Цитата:

Цитата palexa
Можно ли такое сделать в cmd »

Нет.

Но Вы можете скомпилировать Ваш код на AutoIt в исполняемый файл, и запускать последний.

palexa 03-10-2020 08:52 2935460

Цитата:

Цитата Iska
Но Вы можете скомпилировать Ваш код на AutoIt в исполняемый файл, и запускать последний. »

Так и сделал


Время: 02:36.

Время: 02:36.
© OSzone.net 2001-