Udostępnij za pośrednictwem


ManagementEventWatcher Klasa

Definicja

Subskrybuj tymczasowe powiadomienia o zdarzeniach na podstawie określonego zapytania o zdarzenie.

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

W poniższym przykładzie pokazano, jak klient odbiera powiadomienie po utworzeniu wystąpienia Win32_Process , ponieważ klasa zdarzeń jest __InstanceCreationEvent. Aby uzyskać więcej informacji, zobacz dokumentację instrumentacji zarządzania windows . Klient odbiera zdarzenia synchronicznie przez wywołanie WaitForNextEvent metody . Ten przykład można przetestować, uruchamiając proces, taki jak Notatnik, podczas gdy przykładowy kod jest uruchomiony.

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. Aby uzyskać dalszą inicjację, ustaw właściwości obiektu. Jest to konstruktor bez parametrów.

ManagementEventWatcher(EventQuery)

Inicjuje ManagementEventWatcher nowe wystąpienie klasy, gdy otrzymujesz zapytanie o zdarzenie WMI.

ManagementEventWatcher(ManagementScope, EventQuery)

Inicjuje ManagementEventWatcher nowe wystąpienie klasy, która nasłuchuje zdarzeń zgodnych z danym zapytaniem zdarzenia usługi WMI.

ManagementEventWatcher(ManagementScope, EventQuery, EventWatcherOptions)

Inicjuje ManagementEventWatcher nowe wystąpienie klasy, która nasłuchuje zdarzeń zgodnych z danym zapytaniem zdarzenia usługi WMI, zgodnie z określonymi opcjami. W przypadku tego wariantu zapytanie i zakres są określone obiekty. Obiekt options może określać opcje, takie jak limit czasu i informacje kontekstowe.

ManagementEventWatcher(String)

Inicjuje ManagementEventWatcher nowe wystąpienie klasy, gdy otrzymujesz zapytanie o zdarzenie WMI w postaci ciągu.

ManagementEventWatcher(String, String)

Inicjuje ManagementEventWatcher nowe wystąpienie klasy, która nasłuchuje zdarzeń zgodnych z danym zapytaniem zdarzenia usługi WMI. W przypadku tego wariantu zapytanie i zakres są określane jako ciągi.

ManagementEventWatcher(String, String, EventWatcherOptions)

Inicjuje ManagementEventWatcher nowe wystąpienie klasy, która nasłuchuje zdarzeń zgodnych z danym zapytaniem zdarzenia usługi WMI, zgodnie z określonymi opcjami. W przypadku tego wariantu zapytanie i zakres są określane jako ciągi. Obiekt options może określać opcje, takie jak limit czasu i informacje kontekstowe.

Właściwości

CanRaiseEvents

Pobiera wartość wskazującą, czy składnik może zgłosić zdarzenie.

(Odziedziczone po Component)
Container

Pobiera element IContainer zawierający element Component.

(Odziedziczone po Component)
DesignMode

Pobiera wartość wskazującą, czy Component element jest obecnie w trybie projektowania.

(Odziedziczone po Component)
Events

Pobiera listę programów obsługi zdarzeń dołączonych do tego Componentelementu .

(Odziedziczone po Component)
Options

Pobiera lub ustawia opcje używane do watch dla zdarzeń.

Query

Pobiera lub ustawia kryteria, które mają być stosowane do zdarzeń.

Scope

Pobiera lub ustawia zakres, w którym mają być watch dla zdarzeń (przestrzeń nazw lub zakres).

Site

Pobiera lub ustawia ISite element .Component

(Odziedziczone po Component)

Metody

CreateObjRef(Type)

Tworzy obiekt zawierający wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikowania się z obiektem zdalnym.

(Odziedziczone po MarshalByRefObject)
Dispose()

Zwalnia wszelkie zasoby używane przez element Component.

(Odziedziczone po Component)
Dispose(Boolean)

Zwalnia zasoby niezarządzane używane przez element Component i opcjonalnie zwalnia zasoby zarządzane.

(Odziedziczone po Component)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
Finalize()

Zapewnia, że zaległe wywołania są czyszczone. Jest to destruktor obiektu. W języku C# finalizatory są wyrażane przy użyciu składni destruktora.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetLifetimeService()
Przestarzałe.

Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
GetService(Type)

Zwraca obiekt reprezentujący usługę dostarczaną przez Component obiekt lub przez obiekt Container.

(Odziedziczone po Component)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
InitializeLifetimeService()
Przestarzałe.

Uzyskuje obiekt usługi okresu istnienia, aby kontrolować zasady okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
MemberwiseClone(Boolean)

Tworzy płytkią kopię bieżącego MarshalByRefObject obiektu.

(Odziedziczone po MarshalByRefObject)
Start()

Subskrybuje zdarzenia za pomocą danego zapytania i dostarcza je asynchronicznie za pośrednictwem EventArrived zdarzenia.

Stop()

Anuluje subskrypcję, niezależnie od tego, czy jest synchroniczna, czy asynchroniczna.

ToString()

Zwraca wartość String zawierającą nazwę Componentobiektu , jeśli istnieje. Ta metoda nie powinna być zastępowana.

(Odziedziczone po Component)
WaitForNextEvent()

Czeka na następne zdarzenie zgodne z podanym zapytaniem, a następnie zwraca je.

Zdarzenia

Disposed

Występuje, gdy składnik jest usuwany przez wywołanie Dispose() metody .

(Odziedziczone po Component)
EventArrived

Występuje po nadejściu nowego zdarzenia.

Stopped

Występuje, gdy subskrypcja zostanie anulowana.

Dotyczy