PDA

Показать полную графическую версию : Не работает WinWaitActive если скрипт запущен из Windows sheduler


Kubik
11-02-2011, 16:28
Есть установщик программы, написанный на InnoSetup. Процесс установки автоматизировал с помощью setup.exe /VERYSILENT /LOADINF="setup.inf".
Но в конце установки выскакивает окно с предложением установить Adobe Reader, в котором надо нажать кнопку No.
Пишу скрипт на AutoIt, в котором есть вот такой франмент:


; Adobe Reader
WinWait('Setup','Abobe Reader is required to view the documentation')
If WinExists('Setup','Abobe Reader is required to view the documentation') Then
WinActivate('Setup','Abobe Reader is required to view the documentation')
WinWaitActive('Setup','Abobe Reader is required to view the documentation')
Send('!n')
EndIf


Когда запускаю скрипт руками - замечательно отрабатывает. Добавляю выполнение скрипта в Windows sheduler.
И вот тут что получается - если я в этот момент залогинен на сервере - скрипт работает, если в это время я отлогинился от сервера,
скрипт останавливается на выполнении WinWaitActive. Если я логинюсь на сервер и делаю окно запроса Adobe активным - скрипт успешно идет
работать дальше.

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

Заранее спасибо




© OSzone.net 2001-2012