2016-11-10 7 views
0

コードの目的は次のとおりです。Powershellスクリプトに秒単位の整数値を渡して、コンソールアプリケーションを待機させてから再起動するように指示します。C#アプリケーションとは独立してPowershellスクリプトを実行する

問題:PowerShellスクリプトインスタンスは、アプリケーションの内部に存在します。これは、アプリケーションを終了してスクリプトを実行したままにしたいときに、スクリプトが終了するまでアプリケーションが待機することを意味します。

PowerShell psExec = PowerShell.Create(); 
psExec.AddCommand(@powershellScriptLocation); 
psExec.AddArgument(Convert.ToInt32(CalculateTimeToWait().TotalSeconds)); 
psExec.Invoke(); 
+1

あなたはそのためのジョブをスケジュールするか、あなたは単に 'Process.Startを()'を使用しようとすることができ – 4c74356b41

+0

背景PowerShellのジョブを使用したいと'PowerShell.exe'を使ってスクリプトを起動してください。 –

答えて

1

あなたは、おそらくこのようなものが:)必要

var psi = new ProcessStartInfo("powershell.exe", "pathToYourScript and args"); 
var process = Process.Start(psi); 
process.WaitForExit(); 
関連する問題