Process.Kill Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vynutí ukončení základního procesu.
Přetížení
| Name | Description |
|---|---|
| Kill() |
Okamžitě zastaví přidružený proces. |
| Kill(Boolean) |
Okamžitě zastaví přidružený proces a volitelně jeho podřízené/sestupné procesy. |
Poznámky
Metoda Kill vynutí ukončení procesu, zatímco CloseMainWindow vyžaduje pouze ukončení.
Při spuštění procesu s grafickým rozhraním je jeho smyčka zpráv ve stavu čekání.
Smyčka zpráv se spustí při každém odeslání zprávy systému Windows do procesu operačním systémem.
Volání CloseMainWindow odešle žádost o zavření hlavního okna, které v dobře vytvořené aplikaci zavře podřízená okna a odvolá všechny spuštěné smyčky zpráv pro aplikaci.
Požadavek na ukončení procesu voláním CloseMainWindow nenutí aplikaci ukončit.
Aplikace může před ukončením požádat o ověření uživatele nebo může odmítnout ukončení.
Chcete-li vynutit ukončení aplikace, použijte metodu Kill .
Chování je stejné jako chování CloseMainWindow uživatele, který zavře hlavní okno aplikace pomocí systémové nabídky. Proto požadavek na ukončení procesu zavřením hlavního okna nevynutí aplikaci okamžitě ukončit.
Poznámka:
Metoda Kill se provádí asynchronně.
Po volání Kill metody zavolejte metodu WaitForExit , která bude čekat na ukončení procesu, nebo zkontrolujte HasExited vlastnost, zda proces ukončil.
Poznámka:
Metoda WaitForExit a HasExited vlastnost neodráží stav následnických procesů.
Když Kill(entireProcessTree: true) se použije, a HasExited bude indikovat, WaitForExit že ukončení se dokončilo po ukončení daného procesu, i když ještě všichni potomci neodejdou.
Data upravená procesem nebo prostředky přidělenými procesu mohou být ztracena, pokud zavoláte Kill.
Kill způsobí neobvyklé ukončení procesu a měl by být použit pouze v případě potřeby.
CloseMainWindow umožňuje uspořádané ukončení procesu a zavře všechna okna, takže je vhodnější pro aplikace s rozhraním.
Pokud CloseMainWindow selže, můžete ho ukončit.Kill
Kill je jediný způsob, jak ukončit procesy, které nemají grafická rozhraní.
Můžete volat Kill a CloseMainWindow pouze pro procesy spuštěné v místním počítači.
Procesy na vzdálených počítačích nelze ukončit. Můžete zobrazit pouze informace pro procesy spuštěné na vzdálených počítačích.
Kill()
- Zdroj:
- Process.Unix.cs
- Zdroj:
- Process.Unix.cs
- Zdroj:
- Process.Unix.cs
- Zdroj:
- Process.Unix.cs
- Zdroj:
- Process.Unix.cs
Okamžitě zastaví přidružený proces.
public:
void Kill();
[System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public void Kill();
public void Kill();
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public void Kill();
[<System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : unit -> unit
member this.Kill : unit -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : unit -> unit
Public Sub Kill ()
- Atributy
Výjimky
Přidružený proces nelze ukončit.
Pokoušíte se volat Kill() proces, který běží na vzdáleném počítači. Metoda je k dispozici pouze pro procesy spuštěné v místním počítači.
K tomuto Process objektu není přidružený žádný proces.
Viz také
Platí pro
Kill(Boolean)
- Zdroj:
- Process.NonUap.cs
- Zdroj:
- Process.NonUap.cs
- Zdroj:
- Process.NonUap.cs
- Zdroj:
- Process.NonUap.cs
- Zdroj:
- Process.NonUap.cs
Okamžitě zastaví přidružený proces a volitelně jeho podřízené/sestupné procesy.
public:
void Kill(bool entireProcessTree);
[System.Runtime.Versioning.SupportedOSPlatform("maccatalyst")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
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.SupportedOSPlatform("maccatalyst")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : bool -> unit
member this.Kill : bool -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.Kill : bool -> unit
Public Sub Kill (entireProcessTree As Boolean)
Parametry
- entireProcessTree
- Boolean
true k ukončení přidruženého procesu a jeho potomků; false a ukončete pouze přidružený proces.
- Atributy
Výjimky
Pokoušíte se volat Kill() proces, který běží na vzdáleném počítači. Metoda je k dispozici pouze pro procesy spuštěné v místním počítači.
Pouze .NET Framework a .NET Core 3.0 a starší verze: Proces již byl ukončen.
nebo
K tomuto Process objektu není přidružený žádný proces.
nebo
Volající proces je členem odvozeného stromu přidruženého procesu.
Ne všechny procesy v odvozené stromové struktuře přidruženého procesu můžou být ukončeny.
Poznámky
Pokud entireProcessTree je nastavena na true, procesy, kde volání nemá oprávnění k zobrazení podrobností, jsou bezobslužně vynechány procesem ukončení potomků, protože proces ukončení nemůže určit, zda jsou tyto procesy potomky.