1

を点滅。私はそれが完全に隠されて実行する必要があります。実行スクリプトは、私は、コマンド</p> <pre><code>cmd.exe /c Start /min powershell.exe -windowstyle hidden -file <file>.ps1 </code></pre> <p>しかし、一瞬のためのCMDウィンドウを取得を使用してスクリプトを実行しようとしてい

+1

すべての 'start'と' hidden' mumboジャンボを使わずにPowerShellスクリプトを実行して、タスクに「ユーザーがログオンしているかどうかをチェックする」チェックボックスを有効にします。 –

+0

@AnsgarWiechersのコメントが答えになるはずです。 –

答えて

1

私はこの問題があったと私はそれを修正することができる唯一の方法は、簡単なVBSラッパーでPowerShellスクリプトを呼び出すことだった:

https://github.com/gbuktenica/PsRun

http://blog.buktenica.com/run-a-powershell-task-silently/

' SYNOPSIS 
' Run a PowerShell script in the user context without a script window 
' EXAMPLE 
' wscript.exe PsRun.vbs MyPsScript.ps1 
' AUTHOR 
' Glen Buktenica 

Set objShell = CreateObject("Wscript.Shell") 
Set args = Wscript.Arguments 
For Each arg In args 
    Dim PSRun 
    PSRun = "powershell.exe -WindowStyle hidden -ExecutionPolicy bypass -NonInteractive -File " & arg 
    objShell.Run(PSRun),0 
+0

VBSを非表示にする魔法のビットは、行末の0です。 objShell.Run(PSRun)、0 –

1

は、スケジュールされたタスクを設定ユーザーがログオンしているかどうかを確認する:

enter image description here

及びこれにコマンドラインを減らす:

powershell.exe -File "C:\path\to\your.ps1" 

これは可視ウィンドウで、バックグラウンドでタスクを実行します。

関連する問題

 関連する問題