다음을 통해 공유


Process.Kill 메서드

정의

기본 프로세스를 강제로 종료합니다.

오버로드

Kill()

연결된 프로세스를 즉시 중지합니다.

Kill(Boolean)

연결된 프로세스를 즉시 중지하고, 선택적으로 자식/하위 프로세스를 중지합니다.

설명

메서드는 Kill 프로세스를 강제로 종료하고 CloseMainWindow 종료만 요청합니다. 그래픽 인터페이스가 있는 프로세스가 실행 중이면 메시지 루프가 대기 상태입니다. 메시지 루프는 운영 체제에서 Windows 메시지를 프로세스로 보낼 때마다 실행됩니다. 를 호출 CloseMainWindow 하면 기본 창을 닫는 요청이 전송됩니다. 이 창은 올바른 형식의 애플리케이션에서 자식 창을 닫고 애플리케이션에 대해 실행 중인 모든 메시지 루프를 취소합니다. 호출 하 여 프로세스를 종료 하는 요청 CloseMainWindow 종료 하도록 애플리케이션을 강제 적용 되지 않습니다. 애플리케이션을 끝내기 전에 사용자 확인 요청 또는 종료를 거부할 수 있습니다. 종료 하도록 애플리케이션을 강제로 사용 하 여를 Kill 메서드.

동작 CloseMainWindow 시스템 메뉴를 사용 하 여 애플리케이션의 주 창을 닫으면 사용자와 동일 합니다. 따라서 주 창을 닫으면 프로세스를 종료 하는 요청은 즉시 취소 하려면 애플리케이션을 강제로 되지 않습니다.

참고

메서드는 Kill 비동기적으로 실행됩니다. 메서드를 호출한 Kill 후 메서드를 WaitForExit 호출하여 프로세스가 종료될 때까지 기다리거나 속성을 검사 HasExited 프로세스가 종료되었는지 확인합니다.

참고

메서드와 속성은 WaitForExitHasExited 하위 프로세스의 상태 반영하지 않습니다. 가 사용되는 WaitForExit 경우 Kill(entireProcessTree: true)HasExited 는 모든 하위 항목이 아직 종료되지 않은 경우에도 지정된 프로세스가 종료된 후 종료가 완료되었음을 나타냅니다.

를 호출 Kill하면 프로세스 또는 프로세스에 할당된 리소스에서 편집한 데이터가 손실될 수 있습니다. Kill 는 비정상적인 프로세스 종료를 발생시키고 필요한 경우에만 사용해야 합니다. CloseMainWindow 과정을 순서 대로 종료 있으며 인터페이스를 사용 하 여 애플리케이션에 대 한 것이 좋습니다 이므로 모든 창을 닫습니다. 실패하면 CloseMainWindow 를 사용하여 Kill 프로세스를 종료할 수 있습니다. Kill 는 그래픽 인터페이스가 없는 프로세스를 종료하는 유일한 방법입니다.

로컬 컴퓨터에서 실행되는 프로세스에 대해서만 및 CloseMainWindow 를 호출 Kill 할 수 있습니다. 원격 컴퓨터의 프로세스가 종료되도록 할 수 없습니다. 원격 컴퓨터에서 실행되는 프로세스에 대한 정보만 볼 수 있습니다.

Kill()

Source:
Process.Unix.cs
Source:
Process.Unix.cs
Source:
Process.Unix.cs

연결된 프로세스를 즉시 중지합니다.

public:
 void Kill();
public void Kill ();
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public void Kill ();
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
[System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")]
public void Kill ();
member this.Kill : unit -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : unit -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
[<System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")>]
member this.Kill : unit -> unit
Public Sub Kill ()
특성

예외

연결된 프로세스를 종료할 수 없습니다.

원격 컴퓨터에서 실행 중인 프로세스의 Kill() 를 호출하려고 합니다. 이 메서드는 로컬 컴퓨터에서 실행되는 프로세스에만 사용할 수 있습니다.

Process 개체와 연결된 프로세스가 없습니다.

추가 정보

적용 대상

Kill(Boolean)

Source:
Process.NonUap.cs
Source:
Process.NonUap.cs
Source:
Process.NonUap.cs

연결된 프로세스를 즉시 중지하고, 선택적으로 자식/하위 프로세스를 중지합니다.

public:
 void Kill(bool entireProcessTree);
public void Kill (bool entireProcessTree);
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public void Kill (bool entireProcessTree);
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
[System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")]
public void Kill (bool entireProcessTree);
member this.Kill : bool -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : bool -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
[<System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")>]
member this.Kill : bool -> unit
Public Sub Kill (entireProcessTree As Boolean)

매개 변수

entireProcessTree
Boolean

연결된 프로세스 및 해당 하위 항목을 종료하려면 true, 연결된 프로세스만 종료하려면 false입니다.

특성

예외

연결된 프로세스를 종료할 수 없습니다.

또는

프로세스가 종료됩니다.

원격 컴퓨터에서 실행 중인 프로세스의 Kill() 를 호출하려고 합니다. 이 메서드는 로컬 컴퓨터에서 실행되는 프로세스에만 사용할 수 있습니다.

.NET Framework 및 .NET Core 3.0 이하 버전만 해당: 프로세스가 이미 종료되었습니다.

또는

Process 개체와 연결된 프로세스가 없습니다.

또는

호출 프로세스는 연결된 프로세스의 하위 트리의 멤버입니다.

연결된 프로세스의 하위 트리에 있는 모든 프로세스를 종료할 수 있는 것은 아닙니다.

설명

가 로 true설정된 경우 entireProcessTree 종료 프로세스가 해당 프로세스가 하위 항목인지 여부를 확인할 수 없으므로 호출에 세부 정보를 볼 수 있는 권한이 없는 프로세스는 하위 종료 프로세스에서 자동으로 건너뜁니다.

추가 정보

적용 대상