Войти

Показать полную графическую версию : Повторение кода через промежуток времени


palexa
28-09-2020, 10:46
Привет, может кто поможет

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

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

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

Iska
28-09-2020, 20:14
Это можно как то сделать? »
Добавить Sleep() и обрамить всё в бесконечный цикл.

palexa
28-09-2020, 20:37
Добавить Sleep() и обрамить всё в бесконечный цикл. »
так?
While 1
MouseMove(0,0,0)
MouseMove(500,500)
Sleep (840000)
Wend

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

Iska
28-09-2020, 21:40
Да. Только почему 840000? Должно быть 5 (минут) * 60 (секунд в 1 минуте) * 1000 (миллисекунд) = 300000.

palexa
28-09-2020, 22:04
оказалось надо на 14 минут

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

Creat0R
29-09-2020, 03:42
Ещё вариант:

_Move()
AdlibRegister (http://www.autoitscript.com/autoit3/docs/functions/AdlibRegister.htm)(_Move, 840000)

While (http://www.autoitscript.com/autoit3/docs/keywords.htm#While) 1
Sleep (http://www.autoitscript.com/autoit3/docs/functions/Sleep.htm)(10)
Wend (http://www.autoitscript.com/autoit3/docs/keywords.htm#WEnd)

Func (http://www.autoitscript.com/autoit3/docs/keywords.htm#Func) _Move()
MouseMove (http://www.autoitscript.com/autoit3/docs/functions/MouseMove.htm)(0, 0, 0)
MouseMove (http://www.autoitscript.com/autoit3/docs/functions/MouseMove.htm)(500, 500)
EndFunc (http://www.autoitscript.com/autoit3/docs/keywords.htm#EndFunc)

palexa
29-09-2020, 07:29
Ещё вариант: »
ну уже из любопытства, чем лучше этот вариант? Там же больше строчек кода.

Creat0R
29-09-2020, 16:35
чем лучше этот вариант? »
"Модульностью" ©.
Если серьёзно, то ничем, просто ещё вариант.
Если нужен скрипт только лишь для этой единой задачи, то первого варианта вполне достаточно.

Iska
29-09-2020, 17:07
чем лучше этот вариант? »
Асинхронностью вызова. Или квазиасинхронностью (я не знаю, как внутри реализовано сие).

Creat0R
29-09-2020, 17:10
Асинхронностью вызова »
Я бы не назвал это асинхронностью, т.к на момент выполнения функции выполнение основного скрипта приостанавливается.
Для асинхронности нужно использовать таймеры (_WinAPI_SetTimer).

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

Iska
02-10-2020, 20:57
Можно ли такое сделать в cmd »
Нет.

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

palexa
03-10-2020, 08:52
Но Вы можете скомпилировать Ваш код на AutoIt в исполняемый файл, и запускать последний. »
Так и сделал




© OSzone.net 2001-2012