関連付けられたプロセスを即時中断します。
Public Sub Kill()
[C#]
public void Kill();
[C++]
public: void Kill();
[JScript]
public function Kill();
例外
例外の種類 | 条件 |
---|---|
Win32Exception | 関連付けられたプロセスを終了できませんでした。 |
SystemException | プロセス Id が設定されておらず、 Id プロパティの判断材料となる Handle が存在しません。
または Process オブジェクトに関連付けられているプロセスがありません。 または リモート コンピュータで実行されているプロセスに対して Kill を呼び出そうとしています。このメソッドが利用できるのは、ローカル コンピュータで実行されているプロセスだけです。 |
InvalidOperationException | プロセスが既に終了しています。 |
解説
CloseMainWindow がプロセスの終了を要求するだけなのに対して、 Kill は強制的にプロセスを終了します。グラフィカル インターフェイスを持つプロセスを実行するときは、メッセージ ループは待機状態です。メッセージ ループは、オペレーティング システムによって Windows メッセージがプロセスに送信されるたびに実行されます。 CloseMainWindow を呼び出すと、メイン ウィンドウを閉じる要求が送信されます。適切に構成されたアプリケーションでは、これにより子ウィンドウも閉じられ、そのアプリケーションのために実行されているすべてのメッセージ ループが終了します。 CloseMainWindow を呼び出してプロセスの終了を要求しても、アプリケーションは強制終了されません。アプリケーションでは、終了前にユーザーに確認を求めたり、終了を拒否できます。アプリケーションを強制的に終了するには、 Kill メソッドを使用します。 CloseMainWindow の動作は、システム メニューを使用してアプリケーションのメイン ウィンドウを閉じるときと同じです。そのため、メイン ウィンドウを閉じてプロセスの終了を要求しても、アプリケーションはすぐには強制的に終了されません。
プロセスによって編集されたデータまたはプロセスに割り当てられたリソースは、 Kill を呼び出すと失われることがあります。 Kill はプロセスの異常終了を発生させるため、必要なときにだけ使用してください。 CloseMainWindow を使用すると、プロセスを手順に従って終了させ、すべてのウィンドウを閉じることができるため、インターフェイスのあるアプリケーションにはより適切です。 CloseMainWindow が失敗した場合は、 Kill を使用してプロセスを終了できます。グラフィカル インターフェイスのないプロセスを終了させるには、 Kill が唯一の方法です。
Kill と CloseMainWindow を呼び出すことができるのは、ローカル コンピュータで実行されているプロセスだけです。リモート コンピュータ上のプロセスは終了できません。リモート コンピュータ上で実行中のプロセスは、情報の表示だけができます。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
.NET Framework セキュリティ:
- SecurityPermission (完全信頼を指定して System.Diagnostic.Process のメンバを呼び出すためのアクセス許可) PermissionState.Unrestricted (関連する列挙体)
参照
Process クラス | Process メンバ | System.Diagnostics 名前空間 | CloseMainWindow | Start