プロセスが終了するまで次の処理を行わない
using System.Diagnostics; class Project { //メイン public static void Main(string[] args) { //プロセスが終了するまで次のプロセスを行わない string processName = "notepad"; if (IsStopedProcess(processName)) { System.Diagnostics.Debug.WriteLine("notepad終了"); } } ////// プロセス終了検知 /// プロセスが終了するまでループし続ける /// /// ///public static bool IsStopedProcess(string processName) { foreach (var process in Process.GetProcessesByName(processName)) { //プロセスが終了したらTrue while (!process.HasExited) { System.Threading.Thread.Sleep(1000); } } return true; } }
プロセスが終了するまで待つ
この場合メモ帳が閉じられるまで無限ループし続けるプロセスがなければProcess.GetProcessesByNameで拾えず抜けるし、拾えたらHasExitedでプロセスが閉じるまで監視し続ける
このプロセスが終わってから次の処理へ、としたい場合に使う
0 件のコメント:
コメントを投稿