ManagementEventWatcher Klasa

Definicja

Subskrybuje tymczasowe powiadomienia o zdarzeniach na podstawie określonego zapytania dotyczącego zdarzenia.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
Dziedziczenie
ManagementEventWatcher

Przykłady

Poniższy przykład pokazuje, jak klient otrzymuje powiadomienie po utworzeniu wystąpienia Win32_Process , ponieważ Klasa zdarzeń jest __InstanceCreationEvent.The following example shows how the client receives notification when an instance of Win32_Process is created because the event class is __InstanceCreationEvent. Aby uzyskać więcej informacji, zobacz dokumentację Instrumentacja zarządzania Windows .For more information, see the Windows Management Instrumentation documentation. Klient odbiera zdarzenia synchronicznie przez wywołanie WaitForNextEvent metody.The client receives events synchronously by calling the WaitForNextEvent method. Ten przykład może być testowany przez uruchomienie procesu, takiego jak Notatnik, podczas gdy przykładowy kod jest uruchomiony.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

Konstruktory

ManagementEventWatcher()

Inicjuje nowe wystąpienie klasy ManagementEventWatcher.Initializes a new instance of the ManagementEventWatcher class. W celu dalszej inicjalizacji ustaw właściwości obiektu.For further initialization, set the properties on the object. To jest Konstruktor bez parametrów.This is the parameterless constructor.

ManagementEventWatcher(EventQuery)

Inicjuje nowe wystąpienie ManagementEventWatcher klasy w przypadku podaną kwerendę zdarzenia usługi WMI.Initializes a new instance of the ManagementEventWatcher class when given a WMI event query.

ManagementEventWatcher(ManagementScope, EventQuery)

Inicjuje nowe wystąpienie ManagementEventWatcher klasy, które nasłuchuje zdarzeń zgodnych z podaną kwerendą zdarzenia usługi WMI.Initializes a new instance of the ManagementEventWatcher class that listens for events conforming to the given WMI event query.

ManagementEventWatcher(ManagementScope, EventQuery, EventWatcherOptions)

Inicjuje nowe wystąpienie ManagementEventWatcher klasy, które nasłuchuje zdarzeń zgodnych z podaną kwerendą zdarzenia WMI zgodnie z określonymi opcjami.Initializes a new instance of the ManagementEventWatcher class that listens for events conforming to the given WMI event query, according to the specified options. Dla tego wariantu zapytanie i zakres są określonymi obiektami.For this variant, the query and the scope are specified objects. Obiekt Options może określać opcje, takie jak limit czasu i informacje kontekstu.The options object can specify options such as time-out and context information.

ManagementEventWatcher(String)

Inicjuje nowe wystąpienie ManagementEventWatcher klasy, gdy otrzyma zapytanie zdarzenia usługi WMI w postaci ciągu.Initializes a new instance of the ManagementEventWatcher class when given a WMI event query in the form of a string.

ManagementEventWatcher(String, String)

Inicjuje nowe wystąpienie ManagementEventWatcher klasy, które nasłuchuje zdarzeń zgodnych z podaną kwerendą zdarzenia usługi WMI.Initializes a new instance of the ManagementEventWatcher class that listens for events conforming to the given WMI event query. Dla tego wariantu zapytanie i zakres są określone jako ciągi.For this variant, the query and the scope are specified as strings.

ManagementEventWatcher(String, String, EventWatcherOptions)

Inicjuje nowe wystąpienie ManagementEventWatcher klasy, które nasłuchuje zdarzeń zgodnych z podaną kwerendą zdarzenia WMI zgodnie z określonymi opcjami.Initializes a new instance of the ManagementEventWatcher class that listens for events conforming to the given WMI event query, according to the specified options. Dla tego wariantu zapytanie i zakres są określone jako ciągi.For this variant, the query and the scope are specified as strings. Obiekt Options może określać opcje, takie jak informacje o przekroczeniu limitu czasu i kontekstu.The options object can specify options such as a time-out and context information.

Właściwości

CanRaiseEvents

Pobiera wartość wskazującą, czy składnik może zgłosić zdarzenie.Gets a value indicating whether the component can raise an event.

(Odziedziczone po Component)
Container

Pobiera IContainer , który zawiera Component .Gets the IContainer that contains the Component.

(Odziedziczone po Component)
DesignMode

Pobiera wartość wskazującą, czy Component jest aktualnie w trybie projektowania.Gets a value that indicates whether the Component is currently in design mode.

(Odziedziczone po Component)
Events

Pobiera listę programów obsługi zdarzeń, które są dołączone do tego elementu Component .Gets the list of event handlers that are attached to this Component.

(Odziedziczone po Component)
Options

Pobiera lub ustawia opcje używane do oglądania zdarzeń.Gets or sets the options used to watch for events.

Query

Pobiera lub ustawia kryteria, które mają zostać zastosowane do zdarzeń.Gets or sets the criteria to apply to events.

Scope

Pobiera lub ustawia zakres, w którym będą obserwowane zdarzenia (przestrzeń nazw lub zakres).Gets or sets the scope in which to watch for events (namespace or scope).

Site

Pobiera lub ustawia wartość ISite Component .Gets or sets the ISite of the Component.

(Odziedziczone po Component)

Metody

CreateObjRef(Type)

Tworzy obiekt, który zawiera wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikacji z obiektem zdalnym.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Odziedziczone po MarshalByRefObject)
Dispose()

Zwalnia wszelkie zasoby używane przez element Component.Releases all resources used by the Component.

(Odziedziczone po Component)
Dispose(Boolean)

Zwalnia zasoby niezarządzane używane przez element Component i opcjonalnie zwalnia zasoby zarządzane.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Odziedziczone po Component)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.Determines whether the specified object is equal to the current object.

(Odziedziczone po Object)
Finalize()

Zapewnia, że oczekujące wywołania są wyczyszczone.Ensures that outstanding calls are cleared. Jest to destruktor dla obiektu.This is the destructor for the object. W języku C#, finalizatory są wyrażane przy użyciu składni destruktora.In C#, finalizers are expressed using destructor syntax.

GetHashCode()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Odziedziczone po Object)
GetLifetimeService()
Nieaktualne.

Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Odziedziczone po MarshalByRefObject)
GetService(Type)

Zwraca obiekt, który reprezentuje usługę dostarczoną przez Component lub przez Container .Returns an object that represents a service provided by the Component or by its Container.

(Odziedziczone po Component)
GetType()

Pobiera Type bieżące wystąpienie.Gets the Type of the current instance.

(Odziedziczone po Object)
InitializeLifetimeService()
Nieaktualne.

Uzyskuje obiekt usługi istnienia w celu kontrolowania zasad okresu istnienia dla tego wystąpienia.Obtains a lifetime service object to control the lifetime policy for this instance.

(Odziedziczone po MarshalByRefObject)
MemberwiseClone()

Tworzy skróconą kopię bieżącego elementu Object .Creates a shallow copy of the current Object.

(Odziedziczone po Object)
MemberwiseClone(Boolean)

Tworzy skróconą kopię bieżącego MarshalByRefObject obiektu.Creates a shallow copy of the current MarshalByRefObject object.

(Odziedziczone po MarshalByRefObject)
Start()

Subskrybuje zdarzenia za pomocą danego zapytania i dostarcza je asynchronicznie przez EventArrived zdarzenie.Subscribes to events with the given query and delivers them, asynchronously, through the EventArrived event.

Stop()

Anuluje subskrypcję niezależnie od tego, czy jest ona synchroniczna, czy asynchroniczna.Cancels the subscription whether it is synchronous or asynchronous.

ToString()

Zwraca wartość String zawierającą nazwę Component (jeśli istnieje).Returns a String containing the name of the Component, if any. Ta metoda nie powinna być przesłaniana.This method should not be overridden.

(Odziedziczone po Component)
WaitForNextEvent()

Czeka na następne zdarzenie, które pasuje do określonego zapytania, a następnie zwraca go.Waits for the next event that matches the specified query to arrive, and then returns it.

Zdarzenia

Disposed

Występuje, gdy składnik zostanie usunięty przez wywołanie Dispose() metody.Occurs when the component is disposed by a call to the Dispose() method.

(Odziedziczone po Component)
EventArrived

Występuje po nadejściu nowego zdarzenia.Occurs when a new event arrives.

Stopped

Występuje, gdy subskrypcja zostanie anulowana.Occurs when a subscription is canceled.

Dotyczy