Что нового

[Автоматизация] Планировщик не корректно выполняет скрипт

MissiaL

Новичок
Сообщения
4
Репутация
0
Имеется простейший скрипт взятый для примера.
Код:
ShellExecute("notepad.exe","",@SW_MAXIMIZE)
WinWaitActive("Безымянный — Блокнот")
Send("Привет мир")
WinClose("Безымянный — Блокнот")
WinWaitActive("Блокнот")
Send("{RIGHT}")


Хочу запускать его в планировщике каждый день.
Создаю задачу, прописываю путь к скрипту, устанавливаю время запуска.
При запуске просто выходит окно с блокнотом. Чтобы скрипт продолжил работу, мне нужно тыкнуть мышкой в блокнот. После чего скрипт продолжает выполнение работы. Как сделать полностью автоматическое выполнение скрипта?

И еще один вопрос. Если я компилирую скрипт и запущу exe, то у меня начинают запускаться куча копий этого скрипта, :stars: при этом скрипт сам не выполняется. Почему так происходит и как это исправить?
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
MissiaL [?]
При запуске просто выходит окно с блокнотом. Чтобы скрипт продолжил работу, мне нужно тыкнуть мышкой в блокнот
Потому что WinWaitActive ждёт пока окно активируется, но этого может и не произойти.

Так правильнее:

Код:
ShellExecute("notepad.exe", "", @SW_MAXIMIZE)

$hNotepad = WinWait("[REGEXPCLASS:Notepad.*]")
If Not $hNotepad Then Exit

While Not BitAND(WinGetState($hNotepad), 2)
	Sleep(10)
WEnd

SendKeepActive($hNotepad)
Send("Привет мир")
WinClose($hNotepad)

$hMsg = WinWait("[CLASS:#32770]", "&Да", 3)
SendKeepActive($hMsg)
Send("{RIGHT}{ENTER}")
 
Верх