2017-09-07 20 views
0

5分ごとに実行されるWindowsタスクスケジューラで初期化されたPSスクリプトがあります。私はそれが始まったときに気づいた、コマンドプロンプトが短く開き、離れて行く(スクリプト自体の本質は理解できる)。しかし、私は5分ごとにコマンドプロンプトが表示され、妨げになる可能性があるため、バックグラウンドで非表示にしたい。私はWindowsタスクスケジューラで "隠し"チェックボックスをチェックしようとしましたが、結果はスクリプトが実行されません。Windowsタスクスケジューラ経由でスクリプトを実行したときにダイアログウィンドウを非表示にするPowerShellコードの行?

また、タスクスケジューラのプロパティのargumentsフィールドに-Hiddenと書き込んでみました。スクリプトは実行されません。

私のPSスクリプトをバックグラウンドで実行することができ、デスクトップ環境の使用を妨げないコード行がありますか?

.batまたはVBスクリプトでラッピングすることに興味はありません。 PSコードのラインがあれば私は好奇心を持っています。.ps1で普遍的に働くことができます。私は最後の手段を下回るとあれば提供VBスクリプトソリューションの認識しています、それを使用する必要があります:

https://www.sapien.com/blog/2006/12/20/schedule-hidden-powershell-tasks/

+2

の可能性のある重複した[ウィンドウを表示せずにPowerShellスクリプトを実行する方法?](https://stackoverflow.com/questions/1802127/how-to-run-a-powershell-script-without-displaying -ウィンドウ) –

答えて

1

短い答えはノーです。 PowerShellウィンドウは、実行される方法のために、少なくとも一時的に(-WindowStyle Hiddenのように)一瞬でも点滅します。答えは残念なことに、興味のないソリューションの1つです。実行ファイルにラップするか、以下のVBスクリプトで起動します。

Dim shell,command 
command = "powershell.exe -nologo -command \\path-to\your-script.ps1" 
set shell = CreateObject("WScript.Shell") 
shell.Run command,0' 
関連する問題