Process.OnExited 方法

定義

引發 Exited 事件。

protected:
 void OnExited();
protected void OnExited ();
member this.OnExited : unit -> unit
Protected Sub OnExited ()

範例

下列範例示範如何在衍生類別中使用 OnExited 方法。

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.");
    }
}
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

備註

OnExited 是引發 Exited 事件的 API 方法。 呼叫 OnExited 會導致 Exited 事件發生,而且是使用 Process 元件引發事件的唯一方式。 OnExited 主要用於從元件衍生類別時。

做為的 OnExited替代方案,您可以撰寫自己的事件處理程式。 您可以建立自己的事件處理程式委派和您自己的事件處理方法。

注意

如果您使用 Visual Studio 環境,當您將元件拖 Process 曳到窗體上並按兩下圖示時,會為您建立事件處理程式委派 (AddOnExited) ,併為您建立事件處理程式方法 (Process1_Exited) 。 當事件發生時 Exited 所要執行的程式代碼會輸入至Process1_Exited程式中。 您不需要建立 OnExited 成員,因為它會為您實作。

引發事件會透過委派叫用此事件處理常式。 如需概觀,請參閱 處理和引發事件

適用於

另請參閱