ManagementEventWatcher ManagementEventWatcher ManagementEventWatcher ManagementEventWatcher Class

定義

指定したイベント クエリに基づいて、一時的なイベント通知をサブスクライブします。Subscribes to temporary event notifications based on a specified event query.

public ref class ManagementEventWatcher : System::ComponentModel::Component
public class ManagementEventWatcher : System.ComponentModel.Component
type ManagementEventWatcher = class
    inherit Component
Public Class ManagementEventWatcher
Inherits Component
継承
ManagementEventWatcherManagementEventWatcherManagementEventWatcherManagementEventWatcher

次の例は、イベントクラスが __InstanceCreationEventであるため、 Win32_Processのインスタンスが作成されたときにクライアントが通知を受信する方法を示しています。The following example shows how the client receives notification when an instance of Win32_Process is created because the event class is __InstanceCreationEvent. 詳細については、 Windows Management Instrumentationのドキュメントを参照してください。For more information, see the Windows Management Instrumentation documentation. クライアントは WaitForNextEvent メソッドを呼び出して、イベントを同期的に受信します。The client receives events synchronously by calling the WaitForNextEvent method. この例は、コード例の実行中にメモ帳などのプロセスを開始することでテストできます。This example can be tested by starting a process, such as Notepad, while the example code is running.

using System;
using System.Management;

// This example shows synchronous consumption of events. 
// The client is blocked while waiting for events. 

public class EventWatcherPolling 
{
    public static int Main(string[] args) 
    {
        // Create event query to be notified within 1 second of 
        // a change in a service
        WqlEventQuery query = 
            new WqlEventQuery("__InstanceCreationEvent", 
            new TimeSpan(0,0,1), 
            "TargetInstance isa \"Win32_Process\"");

        // Initialize an event watcher and subscribe to events 
        // that match this query
        ManagementEventWatcher watcher =
            new ManagementEventWatcher();
        watcher.Query = query;
        // times out watcher.WaitForNextEvent in 5 seconds
        watcher.Options.Timeout = new TimeSpan(0,0,5);
      
        // Block until the next event occurs 
        // Note: this can be done in a loop if waiting for 
        //        more than one occurrence
        Console.WriteLine(
            "Open an application (notepad.exe) to trigger an event.");
        ManagementBaseObject e = watcher.WaitForNextEvent();

        //Display information from the event
        Console.WriteLine(
            "Process {0} has been created, path is: {1}", 
            ((ManagementBaseObject)e
            ["TargetInstance"])["Name"],
            ((ManagementBaseObject)e
            ["TargetInstance"])["ExecutablePath"]);

        //Cancel the subscription
        watcher.Stop();
        return 0;
    }
}
Imports System.Management

' This example shows synchronous consumption of events. 
' The client is blocked while waiting for events. 

Public Class EventWatcherPolling
    Public Overloads Shared Function _
        Main(ByVal args() As String) As Integer

        ' Create event query to be notified within 1 second of 
        ' a change in a service
        Dim query As New WqlEventQuery( _
            "__InstanceCreationEvent", _
            New TimeSpan(0, 0, 1), _
            "TargetInstance isa ""Win32_Process""")

        ' Initialize an event watcher and subscribe to events 
        ' that match this query
        Dim watcher As New ManagementEventWatcher
        watcher.Query = query
        ' times watcher.WaitForNextEvent in 5 seconds
        watcher.Options.Timeout = New TimeSpan(0, 0, 5)

        ' Block until the next event occurs 
        ' Note: this can be done in a loop
        ' if waiting for more than one occurrence
        Console.WriteLine( _
          "Open an application (notepad.exe) to trigger an event.")
        Dim e As ManagementBaseObject = _
            watcher.WaitForNextEvent()

        'Display information from the event
        Console.WriteLine( _
            "Process {0} has created, path is: {1}", _
            CType(e("TargetInstance"), _
                ManagementBaseObject)("Name"), _
            CType(e("TargetInstance"), _
                ManagementBaseObject)("ExecutablePath"))

        'Cancel the subscription
        watcher.Stop()
        Return 0

    End Function 'Main
End Class

コンストラクター

ManagementEventWatcher() ManagementEventWatcher() ManagementEventWatcher() ManagementEventWatcher()

ManagementEventWatcher クラスの新しいインスタンスを初期化します。Initializes a new instance of the ManagementEventWatcher class. より詳細な初期化を行うためには、オブジェクトのプロパティを設定します。For further initialization, set the properties on the object. これはパラメーターなしのコンストラクターです。This is the parameterless constructor.

ManagementEventWatcher(EventQuery) ManagementEventWatcher(EventQuery) ManagementEventWatcher(EventQuery) ManagementEventWatcher(EventQuery)

WMI (Windows Management Instrumentation) イベント クエリが指定されたときに、ManagementEventWatcher クラスの新しいインスタンスを初期化します。Initializes a new instance of the ManagementEventWatcher class when given a WMI event query.

ManagementEventWatcher(ManagementScope, EventQuery) ManagementEventWatcher(ManagementScope, EventQuery) ManagementEventWatcher(ManagementScope, EventQuery) ManagementEventWatcher(ManagementScope, EventQuery)

指定した WMI イベント クエリに一致するイベントを待機する ManagementEventWatcher クラスの新しいインスタンスを初期化します。Initializes a new instance of the ManagementEventWatcher class that listens for events conforming to the given WMI event query.

ManagementEventWatcher(ManagementScope, EventQuery, EventWatcherOptions) ManagementEventWatcher(ManagementScope, EventQuery, EventWatcherOptions) ManagementEventWatcher(ManagementScope, EventQuery, EventWatcherOptions) ManagementEventWatcher(ManagementScope, EventQuery, EventWatcherOptions)

指定したオプションに従って、指定した WMI イベント クエリに一致するイベントを待機する ManagementEventWatcher クラスの新しいインスタンスを初期化します。Initializes a new instance of the ManagementEventWatcher class that listens for events conforming to the given WMI event query, according to the specified options. このバリアントでは、クエリとスコープは指定したオブジェクトです。For this variant, the query and the scope are specified objects. オプション オブジェクトは、タイムアウトやコンテキスト情報などのオプションを指定できます。The options object can specify options such as time-out and context information.

ManagementEventWatcher(String) ManagementEventWatcher(String) ManagementEventWatcher(String) ManagementEventWatcher(String)

文字列形式で WMI イベント クエリが指定された場合、ManagementEventWatcher クラスの新しいインスタンスを初期化します。Initializes a new instance of the ManagementEventWatcher class when given a WMI event query in the form of a string.

ManagementEventWatcher(String, String) ManagementEventWatcher(String, String) ManagementEventWatcher(String, String) ManagementEventWatcher(String, String)

指定した WMI イベント クエリに一致するイベントを待機する ManagementEventWatcher クラスの新しいインスタンスを初期化します。Initializes a new instance of the ManagementEventWatcher class that listens for events conforming to the given WMI event query. このバリアントでは、クエリとスコープは文字列として指定します。For this variant, the query and the scope are specified as strings.

ManagementEventWatcher(String, String, EventWatcherOptions) ManagementEventWatcher(String, String, EventWatcherOptions) ManagementEventWatcher(String, String, EventWatcherOptions) ManagementEventWatcher(String, String, EventWatcherOptions)

指定したオプションに従って、指定した WMI イベント クエリに一致するイベントを待機する ManagementEventWatcher クラスの新しいインスタンスを初期化します。Initializes a new instance of the ManagementEventWatcher class that listens for events conforming to the given WMI event query, according to the specified options. このバリアントでは、クエリとスコープは文字列として指定します。For this variant, the query and the scope are specified as strings. オプション オブジェクトは、タイムアウトやコンテキスト情報などのオプションを指定できます。The options object can specify options such as a time-out and context information.

プロパティ

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。Gets a value indicating whether the component can raise an event.

(Inherited from Component)
Container Container Container Container

IContainer を格納している Component を取得します。Gets the IContainer that contains the Component.

(Inherited from Component)
DesignMode DesignMode DesignMode DesignMode

Component が現在デザイン モードかどうかを示す値を取得します。Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Events Events Events Events

Component に結び付けられているイベント ハンドラーのリストを取得します。Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Options Options Options Options

イベントをウォッチするために使用するオプションを取得または設定します。Gets or sets the options used to watch for events.

Query Query Query Query

イベントに適用する基準を取得または設定します。Gets or sets the criteria to apply to events.

Scope Scope Scope Scope

イベントをウォッチするスコープ (名前空間またはスコープ) を取得または設定します。Gets or sets the scope in which to watch for events (namespace or scope).

Site Site Site Site

ComponentISite を取得または設定します。Gets or sets the ISite of the Component.

(Inherited from Component)

メソッド

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()

Component によって使用されているすべてのリソースを解放します。Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Component によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Inherited from Component)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize() Finalize() Finalize() Finalize()

未解決の呼び出しを確実にクリアします。Ensures that outstanding calls are cleared. これはオブジェクトのデストラクターです。This is the destructor for the object. C# では、ファイナライザーはデストラクター構文を使用して表します。In C#, finalizers are expressed using destructor syntax.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Component またはその Container で提供されるサービスを表すオブジェクトを返します。Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
Start() Start() Start() Start()

指定したクエリでイベントをサブスクライブし、EventArrived イベントを通じて、非同期的に配信します。Subscribes to events with the given query and delivers them, asynchronously, through the EventArrived event.

Stop() Stop() Stop() Stop()

同期的か、非同期的かにかかわらず、サブスクリプションをキャンセルします。Cancels the subscription whether it is synchronous or asynchronous.

ToString() ToString() ToString() ToString()

Component の名前 (存在する場合) を格納する String を返します。Returns a String containing the name of the Component, if any. このメソッドはオーバーライドできません。This method should not be overridden.

(Inherited from Component)
WaitForNextEvent() WaitForNextEvent() WaitForNextEvent() WaitForNextEvent()

指定したクエリに一致する次のイベントが到達するのを待機してから、そのイベントを返します。Waits for the next event that matches the specified query to arrive, and then returns it.

イベント

Disposed Disposed Disposed Disposed

Dispose() メソッドの呼び出しによってコンポーネントが破棄されると発生します。Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
EventArrived EventArrived EventArrived EventArrived

新しいイベントが到達したときに発生します。Occurs when a new event arrives.

Stopped Stopped Stopped Stopped

サブスクリプションがキャンセルされたときに発生します。Occurs when a subscription is canceled.

適用対象