Process.EnableRaisingEvents プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > Process.EnableRaisingEvents プロパティの意味・解説 

Process.EnableRaisingEvents プロパティ

プロセス終了したときに、Exited イベント発生させるかどうか取得または設定します

名前空間: System.Diagnostics
アセンブリ: System (system.dll 内)
構文構文

Public Property EnableRaisingEvents As
 Boolean
Dim instance As Process
Dim value As Boolean

value = instance.EnableRaisingEvents

instance.EnableRaisingEvents = value
public bool EnableRaisingEvents { get;
 set; }
public:
property bool EnableRaisingEvents {
    bool get ();
    void set (bool value);
}
/** @property */
public boolean get_EnableRaisingEvents ()

/** @property */
public void set_EnableRaisingEvents (boolean
 value)
public function get EnableRaisingEvents
 () : boolean

public function set EnableRaisingEvents
 (value : boolean)

プロパティ
正常終了または Kill呼び出しによって関連付けられたプロセス終了したときに Exited イベント発生させる場合trueそれ以外場合false既定値false です。

解説解説

EnableRaisingEvents プロパティは、オペレーティング システムプロセスシャットダウンしたときにコンポーネント通知するかどうか示しますEnableRaisingEvents プロパティは、非同期処理使用しプロセス終了したことをアプリケーション通知しますアプリケーション終了イベント同期的に待つ (終了イベント発生するまでアプリケーションの処理を中断する) ようにするには、WaitForExit メソッド使用します

メモメモ

Visual Studio使用している場合は、プロジェクトProcess コンポーネントダブルクリックすると、Exited イベント デリゲートイベント ハンドラ自動的に生成されます。追加コードによって、EnableRaisingEvents プロパティfalse設定されます。関連付けられたプロセス終了したときにイベント ハンドラ実行するには、このプロパティtrue変更する必要があります

コンポーネントEnableRaisingEvents 値が true場合は、オペレーティング システムシャットダウンされた後、関連付けられたプロセス終了したときに、正常終了異常終了かにかかわらずオペレーティング システムプロセス関連付けられている各プロセス コンポーネント通知しますコンポーネントプロセス起動した場合コンポーネント関連付けられたプロセス管理情報アクセスできます。この情報は、終了後オペレーティング システムによって格納されています。これらの情報には、ExitTime、ExitCode などがあります

関連付けられているプロセス終了した後は、コンポーネントHandle実在するプロセス リソースを指さなくなります代わりに、その用途プロセス リソースに関するオペレーティング システム情報アクセスするだけになりますオペレーティング システムは、Process コンポーネント解放されていない終了したプロセス識別するハンドルがあることを認識します。そのため、ExitTimeHandle情報メモリ保持します

プロセス終了監視関連付けられているコストありますEnableRaisingEventstrue場合は、関連付けられたプロセス終了したときに Exited イベント発生します。このとき、Exited イベントに対して指定したプロシージャ実行されます。

アプリケーションプロセス起動しても、終了通知を受ける必要がない場合あります。たとえば、アプリケーションメモ帳起動してテキスト編集したものの、その後メモ帳使用しない場合です。アプリケーション操作継続に関係がないため、プロセス終了して通知しないように選択できますEnableRaisingEventsfalse設定すると、システム リソース節約できます

使用例使用例

ファイル出力するプロセス作成するコード例次に示しますプロセス終了するときに Exited イベント発生するように EnableRaisingEvents プロパティ設定しますExited イベント ハンドラは、プロセス情報表示します

Imports System
Imports System.Diagnostics
Imports System.ComponentModel
Imports System.Threading
Imports Microsoft.VisualBasic

Class PrintProcessClass

    Private WithEvents myProcess As
 New Process
    Private elapsedTime As Integer
    Private eventHandled As Boolean

    ' Print a file with any known extension.
    Sub PrintDoc(ByVal fileName As
 String)

        elapsedTime = 0
        eventHandled = False

        Try
            ' Start a process to print a file and raise an event when
 done.
            myProcess.StartInfo.FileName = fileName
            myProcess.StartInfo.Verb = "Print"
            myProcess.StartInfo.CreateNoWindow = True
            myProcess.EnableRaisingEvents = True
            myProcess.Start()

        Catch ex As Exception
            Console.WriteLine("An error occurred trying to print
 ""{0}"":"
 & _
                vbCrLf & ex.Message, fileName)
            Return
        End Try

        ' Wait for Exited event, but not more than 30 seconds.
        Const SLEEP_AMOUNT As Integer
 = 100
        Do While Not eventHandled
            elapsedTime += SLEEP_AMOUNT
            If elapsedTime > 30000 Then
                Exit Do
            End If
            Thread.Sleep(SLEEP_AMOUNT)
        Loop
    End Sub

    ' Handle Exited event and display process information.
    Private Sub myProcess_Exited(ByVal
 sender As Object, _
            ByVal e As System.EventArgs) Handles
 myProcess.Exited

        eventHandled = True
        Console.WriteLine("Exit time:    {0}" &
 vbCrLf & _
            "Exit code:    {1}" & vbCrLf &
 "Elapsed time: {2}", _
            myProcess.ExitTime, myProcess.ExitCode, elapsedTime)
    End Sub

    Shared Sub Main(ByVal
 args() As String)

        ' Verify that an argument has been entered.
        If args.Length <= 0 Then
            Console.WriteLine("Enter a file name.")
            Return
        End If

        ' Create the process and print the document.
        Dim myProcess As New
 PrintProcessClass
        myProcess.PrintDoc(args(0))
    End Sub
End Class
.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照


このページでは「.NET Framework クラス ライブラリ リファレンス」からProcess.EnableRaisingEvents プロパティを検索した結果を表示しています。
Weblioに収録されているすべての辞書からProcess.EnableRaisingEvents プロパティを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からProcess.EnableRaisingEvents プロパティ を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

Process.EnableRaisingEvents プロパティのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Process.EnableRaisingEvents プロパティのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS