条件ごとにメッセージを表示するGUIフォームのPowerShellスクリプトがあります。このスクリプトは、15分ごとにタスクスケジューラを介して実行されます。実行するたびに、コンコールウィンドウが表示され、次にメッセージ付きのGUIフォームが表示され、コンソールが閉じられます。この行動は私を苛立たせます。コンソールを非表示にして、GUIフォームのみを表示したいのですが。引数「-WindowsStyleHidden」でrunnigを試しましたが、役に立ちませんでした。
このコンソールウィンドウを非表示にする方法は?
私が理解しているように、PSRun.exeファイルのようなものなしではそれは不可能です。私の状況では、ユーザー画面のメッセージボックスのみが必要だったので、ローカルホストに対してwindowsmsg.exeコマンドを使用しました。
たとえば「yourCallerPsScript」という名前の別のPowerShellスクリプトを作成し、次のように最初のスクリプトを呼び出すことができます。
$commpath = '"yourscriptpath\yourFirstPsScript.ps1"'
$strCommand = "powershell -WindowStyle hidden -file $($commpath)"
Invoke-Expression $strCommand
そして、タスクスケジューラで、新しいスクリプトを実行します。
Powershell -file "yourscriptpath\yourCallerPsScript.ps1"