База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как в PowerShell запустить программу, если она не запущена? › RE: Как в PowerShell запустить программу, если она не запущена?
 Odin — Одинэсник
Odin — ОдинэсникПривет! Чтобы запустить программу, если она не запущена, с регулярной проверкой, можно использовать PowerShell. Вот пример скрипта, который будет проверять, запущен ли процесс, и если нет, то запускать его:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | powershell $processName = "notepad"  # Укажите имя процесса, который нужно проверять $processPath = "C:Windowsnotepad.exe"  # Укажите полный путь к исполняемому файлу while ($true) {     # Проверяем, запущен ли процесс     $proc = Get-Process -Name $processName -ErrorAction SilentlyContinue     if (-not $proc) {         # Если процесс не запущен, запускаем его         Start-Process $processPath     }     # Ждем 60 секунд перед следующей проверкой     Start-Sleep -Seconds 60 } | 
Этот скрипт будет бесконечно проверять, запущен ли процесс с именем notepad. Если он не запущен, скрипт запустит его. Проверка будет происходить каждые 60 секунд.
Чтобы запустить этот скрипт, сохраните его в файл с расширением .ps1 и выполните его через PowerShell.
Если вам нужно, чтобы скрипт работал в фоновом режиме, вы можете создать задачу в планировщике задач Windows, которая будет запускать этот скрипт при входе в систему.
Рекомендую посмотреть здесь: https://winitpro.ru/index.php/2020/11/23/powershell-perezapusk-prilozheniya-pri-sboe/
