Process.OnExited 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í.
Exited Vyvolá událost.
protected:
void OnExited();
protected void OnExited();
member this.OnExited : unit -> unit
Protected Sub OnExited ()
Příklady
Následující příklad ukazuje, jak použít metodu OnExited v odvozené třídě.
using System;
using System.Diagnostics;
class MyProcess : Process
{
public void Stop()
{
this.CloseMainWindow();
this.Close();
OnExited();
}
}
class StartNotePad
{
public static void Main(string[] args)
{
MyProcess p = new MyProcess();
p.StartInfo.FileName = "notepad.exe";
p.EnableRaisingEvents = true;
p.Exited += new EventHandler(myProcess_HasExited);
p.Start();
p.WaitForInputIdle();
p.Stop();
}
private static void myProcess_HasExited(object sender, System.EventArgs e)
{
Console.WriteLine("Process has exited.");
}
}
open System
open System.Diagnostics
type MyProcess() =
inherit Process()
member this.Stop() =
this.CloseMainWindow() |> ignore
this.Close()
this.OnExited()
let myProcess_HasExited (sender: obj) (e: EventArgs) = printfn "Process has exited."
let p = new MyProcess()
p.StartInfo.FileName <- "notepad.exe"
p.EnableRaisingEvents <- true
p.Exited.AddHandler(EventHandler myProcess_HasExited)
p.Start() |> ignore
p.WaitForInputIdle() |> ignore
p.Stop()
Imports System.Diagnostics
Class MyProcess
Inherits Process
Public Sub [Stop]()
Me.CloseMainWindow()
Me.Close()
OnExited()
End Sub
End Class
Class StartNotePad
Public Shared Sub Main(ByVal args() As String)
Dim p As New MyProcess()
p.StartInfo.FileName = "notepad.exe"
p.EnableRaisingEvents = True
AddHandler p.Exited, AddressOf myProcess_HasExited
p.Start()
p.WaitForInputIdle()
p.Stop()
End Sub
Private Shared Sub myProcess_HasExited(ByVal sender As Object, ByVal e As System.EventArgs)
Console.WriteLine("Process has exited.")
End Sub
End Class
Poznámky
OnExited je metoda rozhraní API, která vyvolá Exited událost. Volání OnExited způsobí, že Exited dojde k události a je jediným způsobem, jak vyvolat událost pomocí Process komponenty. OnExited je primárně používán při odvození tříd ze součásti.
Jako alternativu OnExitedmůžete napsat vlastní obslužnou rutinu události. Vytvoříte vlastního delegáta obslužné rutiny události a vlastní metodu zpracování událostí.
Note
Pokud používáte Visual Studio prostředí, vytvoří se delegát obslužné rutiny události (AddOnExited) a metoda zpracování událostí (Process1_Exited), když přetáhnete komponentu Process do formuláře a poklikáním na ikonu. Kód, který vytvoříte pro spuštění, Exited když dojde k události, je zadán do Process1_Exited procedury. Člena nemusíte vytvářet OnExited , protože je implementovaný za vás.
Vyvolání události vyvolá obslužnou rutinu události prostřednictvím delegáta. Přehled najdete v tématu Zpracování a vyvolávání událostí.