プロセスを強制的に終了する広告
強制的にプロセスを終了するには、ProcessクラスのKillメソッドを使います。このメソッドはローカルコンピュータで実行されているプロセスにだけ使用でき、リモートコンピュータ上で実行中のプロセスには使用できません。 なお、プロセスが終了するまで待機するには、Process.WaitForExitメソッドを使います。 次の例ではプロセスIDがprocessIdのプロセスを強制終了しています。 [VB.NET] Dim p As System.Diagnostics.Process 'processIdというプロセスIDを持つプロセスを取得 p = System.Diagnostics.Process.GetProcessById(processId) 'プロセスを強制終了 p.Kill() [C#] System.Diagnostics.Process p; //processIdというプロセスIDを持つプロセスを取得 p = System.Diagnostics.Process.GetProcessById(processId); //プロセスを強制終了 p.Kill(); グラフィカルインターフェイスのあるプロセスの終了を要求するグラフィカルインターフェイスのあるプロセスを安全に終了させるためには、Process.Killを使用するのではなく、CloseMainWindowメソッドを使用します。CloseMainWindowメソッドはプロセスのメインウィンドウにクローズメッセージを送信し、プロセスの終了を要求します。要求するだけですので、実際には終了しない可能性もあります。 下の例では、開いているすべてのメモ帳を閉じるように要求しています。 [VB.NET] 'notepadのプロセスを取得 Dim ps As System.Diagnostics.Process() = _ System.Diagnostics.Process.GetProcessesByName("notepad") Dim p As System.Diagnostics.Process For Each p In ps 'クローズメッセージを送信する p.CloseMainWindow() Next p [C#] //notepadのプロセスを取得 System.Diagnostics.Process[] ps = System.Diagnostics.Process.GetProcessesByName("notepad"); foreach (System.Diagnostics.Process p in ps) { //クローズメッセージを送信する p.CloseMainWindow(); } |
Copyright(C) DOBON!. All rights reserved.
|