Мой вариант на AutoIt: https://ru.wikipedia.org/wiki/AutoIt
https://www.autoitscript.com/site/autoit/
https://www.autoitscript.com/site/autoit/
AutoItSetOption ( "MouseCoordMode", 0 ) Do if NOT ProcessExists("Krug.SCADA.RuntimeClientHost.exe") Then Run("Krug.SCADA.RuntimeClientHost.exe") WinWait("Выберите сетевой проект","",4) WinActivate ("Выберите сетевой проект") MouseMove(10,10) ;ControlClick("Выберите сетевой проект","OK", 132676) MouseMove(100,100) MouseClick("left",50,80,2,1 ) ;EndIf EndIf Sleep(1000) Until FalseТут кроме проверки того что программа запущена сделано нажатие нужных кнопок на экране после перезапуска. Для вашего случая скрипт будет выглядеть как-то так:
Do if NOT ProcessExists("ХХХХ") Then Run("ХХХХ") EndIf Sleep(1000) Until FalseПуть к ХХХХ должен быть в PATH или можно его прописать в Run() полностью. Скрипты AutoIt это текстовые файлы с расширением *.au3 в кодировке Win1251. Скрипты можно компилировать в *.exe, после этого сам AutoIt для их работы не нужен. Очень удобный вариант для автоматизации всяких действий на ПК. Как-то раз делал на AutoIt скрипт массово забивающий настройки в OPC-сервер. Жадные разработчики в демо-версии заблокировали функцию сохранения, а мне для проверки как оно работает нужны были десятки тегов. В итоге выяснилось что в реальных условиях этот OPC не работает никак и покупать его смысла нет.