Process.Kill Process.Kill Process.Kill Process.Kill Method

Definizione

Overload

Kill() Kill() Kill() Kill()

Arresta immediatamente il processo associato.Immediately stops the associated process.

Kill(Boolean) Kill(Boolean) Kill(Boolean) Kill(Boolean)

Arresta immediatamente il processo associato e, facoltativamente, i processi figlio/discendenti.Immediately stops the associated process, and optionally its child/descendent processes.

Commenti

Il Kill metodo forza la chiusura del processo, mentre CloseMainWindow richiede solo una chiusura.The Kill method forces a termination of the process, while CloseMainWindow only requests a termination. Quando viene eseguito un processo con un'interfaccia grafica, il relativo ciclo di messaggi si trova in uno stato di attesa.When a process with a graphical interface is executing, its message loop is in a wait state. Il ciclo di messaggi viene eseguito ogni volta che un messaggio di Windows viene inviato al processo dal sistema operativo.The message loop executes every time a Windows message is sent to the process by the operating system. La CloseMainWindow chiamata a Invia una richiesta di chiusura della finestra principale, che, in un'applicazione ben formata, chiude le finestre figlio e revoca tutti i cicli di messaggi in esecuzione per l'applicazione.Calling CloseMainWindow sends a request to close the main window, which, in a well-formed application, closes child windows and revokes all running message loops for the application. La richiesta di uscire dal processo chiamando CloseMainWindow non impone la chiusura dell'applicazione.The request to exit the process by calling CloseMainWindow does not force the application to quit. L'applicazione può richiedere la verifica dell'utente prima di uscire oppure può rifiutare di uscire.The application can ask for user verification before quitting, or it can refuse to quit. Per forzare la chiusura dell'applicazione, usare Kill il metodo.To force the application to quit, use the Kill method.

Il comportamento di CloseMainWindow è identico a quello di un utente che chiude la finestra principale di un'applicazione usando il menu di sistema.The behavior of CloseMainWindow is identical to that of a user closing an application's main window using the system menu. Pertanto, la richiesta di uscire dal processo chiudendo la finestra principale non impone immediatamente la chiusura dell'applicazione.Therefore, the request to exit the process by closing the main window does not force the application to quit immediately.

Nota

Il Kill metodo viene eseguito in modo asincrono.The Kill method executes asynchronously. Dopo la chiamata Kill al metodo, chiamare WaitForExit il metodo per attendere la chiusura del processo oppure controllare la HasExited proprietà per determinare se il processo è stato terminato.After calling the Kill method, call the WaitForExit method to wait for the process to exit, or check the HasExited property to determine if the process has exited.

Nota

Il WaitForExit metodo e la HasExited proprietà non riflettono lo stato dei processi discendenti.The WaitForExit method and the HasExited property do not reflect the status of descendant processes. Quando Kill(entireProcessTree: true) si WaitForExit USA eHasExited indicherà che l'uscita è stata completata dopo la chiusura del processo specificato, anche se tutti i discendenti non sono stati ancora terminati.When Kill(entireProcessTree: true) is used, WaitForExit and HasExited will indicate that exiting has completed after the given process exits, even if all descendants have not yet exited.

I dati modificati dal processo o dalle risorse allocate al processo possono essere persi se si Killchiama.Data edited by the process or resources allocated to the process can be lost if you call Kill. Killcausa una chiusura anomala del processo e deve essere utilizzata solo quando necessario.Kill causes an abnormal process termination and should be used only when necessary. CloseMainWindowconsente una chiusura ordinata del processo e chiude tutte le finestre, quindi è preferibile per le applicazioni con un'interfaccia.CloseMainWindow enables an orderly termination of the process and closes all windows, so it is preferable for applications with an interface. Se CloseMainWindow ha esito negativo, Kill è possibile usare per terminare il processo.If CloseMainWindow fails, you can use Kill to terminate the process. Killè l'unico modo per terminare i processi che non dispongono di interfacce grafiche.Kill is the only way to terminate processes that do not have graphical interfaces.

È possibile chiamare Kill e CloseMainWindow solo per i processi in esecuzione nel computer locale.You can call Kill and CloseMainWindow only for processes that are running on the local computer. Non è possibile causare la chiusura dei processi nei computer remoti.You cannot cause processes on remote computers to exit. È possibile visualizzare solo le informazioni per i processi in esecuzione in computer remoti.You can only view information for processes running on remote computers.

Nota

Se viene eseguita la chiamata Kill al metodo mentre il processo è in fase di terminazione, Win32Exception viene generata un'eccezione per l'accesso negato.If the call to the Kill method is made while the process is currently terminating, a Win32Exception is thrown for Access Denied.

Kill() Kill() Kill() Kill()

Arresta immediatamente il processo associato.Immediately stops the associated process.

public:
 void Kill();
public void Kill ();
member this.Kill : unit -> unit
Public Sub Kill ()

Eccezioni

Non è possibile terminare il processo associato.The associated process could not be terminated.

-oppure--or-

Il processo verrà terminato.The process is terminating.

Si sta provando a chiamare Kill() per un processo in esecuzione in un computer remoto.You are attempting to call Kill() for a process that is running on a remote computer. Il metodo è disponibile solo per i processi in esecuzione nel computer locale.The method is available only for processes running on the local computer.

Processo già terminato.The process has already exited.

-oppure--or- A questo oggetto Process non è associato alcun processo.There is no process associated with this Process object.

Sicurezza

LinkDemand
per l'attendibilità totale per il chiamante immediato.for full trust for the immediate caller. Impossibile utilizzare questo membro in codice parzialmente attendibile.This member cannot be used by partially trusted code.

Vedi anche

Kill(Boolean) Kill(Boolean) Kill(Boolean) Kill(Boolean)

Arresta immediatamente il processo associato e, facoltativamente, i processi figlio/discendenti.Immediately stops the associated process, and optionally its child/descendent processes.

public:
 void Kill(bool entireProcessTree);
public void Kill (bool entireProcessTree);
member this.Kill : bool -> unit
Public Sub Kill (entireProcessTree As Boolean)

Parametri

entireProcessTree
Boolean Boolean Boolean Boolean

true per terminare il processo associato e i relativi discendenti. false per terminare solo il processo associato.true to kill the associated process and its descendants; false to kill only the associated process.

Eccezioni

Non è possibile terminare il processo associato.The associated process could not be terminated.

In alternativa-or-

Il processo verrà terminato.The process is terminating.

Si sta provando a chiamare Kill() per un processo in esecuzione in un computer remoto.You are attempting to call Kill() for a process that is running on a remote computer. Il metodo è disponibile solo per i processi in esecuzione nel computer locale.The method is available only for processes running on the local computer.

Processo già terminato.The process has already exited.

-oppure--or- A questo oggetto Process non è associato alcun processo.There is no process associated with this Process object.

-oppure--or-

Il processo chiamante è un membro dell'albero discendente del processo associato.The calling process is a member of the associated process' descendant tree.

Non è stato possibile terminare tutti i processi nell'albero discendente del processo associato.Not all processes in the associated process' descendant tree could be terminated.

Commenti

Quando entireProcessTree è impostato su true, i processi in cui la chiamata non dispone delle autorizzazioni per visualizzare i dettagli vengono ignorati automaticamente dal processo di terminazione discendente, perché il processo di terminazione non è in grado di determinare se tali processi sono discendenti.When entireProcessTree is set to true, processes where the call lacks permissions to view details are silently skipped by the descendant termination process because the termination process is unable to determine whether those processes are descendants.

Sicurezza

LinkDemand
per l'attendibilità totale per il chiamante immediato.for full trust for the immediate caller. Impossibile utilizzare questo membro in codice parzialmente attendibile.This member cannot be used by partially trusted code.

Vedi anche

Si applica a