private void TerminateHogeHoge()
{
//ローカルコンピュータ上で実行されている"HogeHoge"という名前のすべてのプロセスを取得
Process[] processes = Process.GetProcessesByName("HogeHoge");
foreach (Process process in processes)
{
// メイン ウィンドウにクローズ メッセージを送信する
bool isCloseMainWindow = process.CloseMainWindow();
if (! isCloseMainWindow)
{
// 終了しなかった場合は強制終了する
process.Kill();
}
// プロセスが終了するまで60秒間に待機する
// TODO:何秒待機するのが適正化?暫定的に60秒。
bool isExit = process.WaitForExit(60000);
if (isExit)
{
return;
}
throw new HogeHogeException("一定時間内にHogeHogeが終了しませんでした。");
}
}
2022年10月16日日曜日
[C#,サンプルコード]HogeHogeをkillするのサンプルコード
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿