Process.OnExited Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Az eseményt emeli Exited ki.
protected:
void OnExited();
protected void OnExited();
member this.OnExited : unit -> unit
Protected Sub OnExited ()
Példák
Az alábbi példa bemutatja, hogyan használható a OnExited metódus egy származtatott osztályban.
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
Megjegyzések
OnExited az eseményt előhozó Exited API-metódus. A hívás OnExited miatt az Exited esemény bekövetkezik, és ez az egyetlen módja annak, hogy az összetevő használatával emelje fel az eseményt Process . OnExited elsődlegesen az összetevőből származó osztályok származtatásakor használatos.
Alternatív megoldásként OnExitedsaját eseménykezelőt is írhat. Saját eseménykezelő delegáltat és saját eseménykezelési módszert hozhat létre.
Note
Ha a Visual Studio környezetet használja, egy eseménykezelő delegált (AddOnExited) és egy eseménykezelési módszer (Process1_Exited) jön létre, amikor egy Process összetevőt húz egy űrlapra, és kattintson duplán az ikonra. Az esemény bekövetkezésekor Exited létrehozandó kód be lesz írva a Process1_Exited eljárásba. Nem kell létrehoznia a OnExited tagot, mert az ön számára implementálva van.
Az esemény létrehozása meghívja az eseménykezelőt egy meghatalmazotton keresztül. Az áttekintésért tekintse meg az Események kezelése és növelése című témakört.