Назад | Перейти на главную страницу

Как скрыть командное окно при запуске сценария PowerShell через планировщик задач?

У меня есть сценарий PowerShell с формой графического интерфейса, который показывает сообщение по условию. Этот сценарий запускается через планировщик задач каждые 15 минут. Каждый запуск показывает мне окно Concole, затем форму графического интерфейса с сообщением, а затем консоль закрывается. Такое поведение меня раздражает. Я хочу скрыть консоль и отображать только форму графического интерфейса. Я пробовал запускать с аргументом "-WindowsStyle Hidden", но это не помогло.

Как скрыть это окно консоли?

Вы можете создать другой сценарий PowerShell с именем, например, yourCallerPsScript, и вызвать свой первый сценарий следующим образом:

$commpath = '"yourscriptpath\yourFirstPsScript.ps1"'
$strCommand = "powershell -WindowStyle hidden -file $($commpath)"

Invoke-Expression $strCommand

И в планировщике задач вы запускаете новый скрипт:

Powershell -file "yourscriptpath\yourCallerPsScript.ps1"

Насколько я понимаю, это невозможно без файла типа PSRun.exe. В моей ситуации мне нужно было только окно сообщения на экране пользователя, поэтому я использовал команду windows msg.exe для локального хоста.