Что нового

[Автоматизация] Запуск скомпилированного скрипта AutoIt планировщиком заданий.

CAMOBbIPOgOK

Новичок
Сообщения
1
Репутация
0
Здравствуйте! Пытался найти поиском схожие темы, но, к сожалению, ничего не нашел. Тема связана, скорее не с AutoIt а именно с планировщиком заданий.
В общем, суть моей проблемы в следующем:
На компьютере под управлением Windows Server 2008 r2 Работает консольное приложение, которое нужно периодически перезапускать, предварительно отправляя в него команды, настроен автологин, для того что бы после рестарта сервера запускалось данное приложение (автологин от имени учетной записи администратора). Для решения задачи создал скрипт в AutoIt:
Код:
If WinExists("Start server") Then
	  WinActivate ("Start server")
	  WinWaitActive("Start server")
	  Send("say The server will restart in 10 seconds")
	  Send("{ENTER}")
	  Sleep(5000)
	  WinActivate ("Start server")
	  WinWaitActive("Start server")
	  Send("say The server will restart in 5 seconds")
	  Send("{ENTER}")
	  Sleep(1000)
	  WinActivate ("Start server")
	  WinWaitActive("Start server")
	  Send("say The server will restart in 4 seconds")
	  Send("{ENTER}")
	  Sleep(1000)
	  WinActivate ("Start server")
	  WinWaitActive("Start server")
	  Send("say The server will restart in 3 seconds")
	  Send("{ENTER}")
	  Sleep(1000)
	  WinActivate ("Start server")
	  WinWaitActive("Start server")
	  Send("say The server will restart in 2 seconds")
	  Send("{ENTER}")
	  Sleep(1000)
	  WinActivate ("Start server")
	  WinWaitActive("Start server")
	  Send("say The server will restart in 1 seconds")
	  Send("{ENTER}")
	  Sleep(1000)
	  WinActivate ("Start server")
	  WinWaitActive("Start server")
	  Send("kickall")
	  Send("{ENTER}")
	  Sleep(200)
	  WinActivate ("Start server")
	  WinWaitActive("Start server")
	  Send("stop")
	  Send("{ENTER}")
	  While WinExists("Start server") = 1
		  Sleep(1000)
	  WEnd
	  ShellExecute('C:\server\Start server.lnk')
   Else
      ShellExecute('C:\server\Start server.lnk')
EndIf

Скрипт скомпилировал в *.exe приложение, добавил приложение в назначенные задания серверу.
Сам скрипт работает без проблем. Доступ к серверу осуществляется по rdp, но когда rdp сеанс не активен, скрипт не выполняется. В планировщике заданий написано, что "задание выполнено успешно", но скрипт никаких действий не выполнял.
При чем нет разницы, с какими параметрами доступа выполняется запланированное задание, хоть "для зарегистрированного пользователя", хоть "вне зависимости от регистрации", хоть с галкой "выполнять с наивысшими правами". Кто нибудь сталкивался с подобной проблемой? Каким было решение? Заранее спасибо за ответ!
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Предупреждение За нарушение правил форума (пункт В.11):
Любые отрывки AutoIt кода необходимо заключать в тег [autoit]
autoit.gif
(подробнее), а обычный код соответственно в тег [code]
code.gif
(подробнее). Также большие выдержки текста помещайте под тег [spoiler]
spoiler.gif
(подробнее), там где это поддерживается естественно. Как в случае с названием темы, также короткое и эргономичное сообщение привлекает больше внимания, и шансы на получение конкретного ответа увеличиваются.


С уважением, ваш Глобальный модератор.
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
WinWaitActive - с этой функцией проблемы в rdp. Ищите другие варианты.
 
Верх