ManagementEventWatcher Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Abonneren op tijdelijke gebeurtenismeldingen op basis van een opgegeven gebeurtenisquery.
public ref class ManagementEventWatcher : System::ComponentModel::Component
public class ManagementEventWatcher : System.ComponentModel.Component
type ManagementEventWatcher = class
inherit Component
Public Class ManagementEventWatcher
Inherits Component
- Overname
Voorbeelden
In het volgende voorbeeld ziet u hoe de client een melding ontvangt wanneer een exemplaar van Win32_Process wordt gemaakt omdat de gebeurtenisklasse is __InstanceCreationEvent. Zie de documentatie Windows Management Instrumentation voor meer informatie. De client ontvangt synchroon gebeurtenissen door de WaitForNextEvent methode aan te roepen. Dit voorbeeld kan worden getest door een proces te starten, zoals Kladblok, terwijl de voorbeeldcode wordt uitgevoerd.
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
Constructors
| Name | Description |
|---|---|
| ManagementEventWatcher() |
Initialiseert een nieuw exemplaar van de ManagementEventWatcher klasse. Voor verdere initialisatie stelt u de eigenschappen voor het object in. Dit is de parameterloze constructor. |
| ManagementEventWatcher(EventQuery) |
Initialiseert een nieuw exemplaar van de ManagementEventWatcher klasse wanneer een WMI-gebeurtenisquery wordt gegeven. |
| ManagementEventWatcher(ManagementScope, EventQuery, EventWatcherOptions) |
Initialiseert een nieuw exemplaar van de ManagementEventWatcher klasse die luistert naar gebeurtenissen die voldoen aan de opgegeven WMI-gebeurtenisquery, volgens de opgegeven opties. Voor deze variant worden de query en het bereik opgegeven objecten. Het optiesobject kan opties opgeven, zoals time-out en contextinformatie. |
| ManagementEventWatcher(ManagementScope, EventQuery) |
Initialiseert een nieuw exemplaar van de ManagementEventWatcher klasse die luistert naar gebeurtenissen die voldoen aan de opgegeven WMI-gebeurtenisquery. |
| ManagementEventWatcher(String, String, EventWatcherOptions) |
Initialiseert een nieuw exemplaar van de ManagementEventWatcher klasse die luistert naar gebeurtenissen die voldoen aan de opgegeven WMI-gebeurtenisquery, volgens de opgegeven opties. Voor deze variant worden de query en het bereik opgegeven als tekenreeksen. Het optiesobject kan opties opgeven, zoals een time-out en contextinformatie. |
| ManagementEventWatcher(String, String) |
Initialiseert een nieuw exemplaar van de ManagementEventWatcher klasse die luistert naar gebeurtenissen die voldoen aan de opgegeven WMI-gebeurtenisquery. Voor deze variant worden de query en het bereik opgegeven als tekenreeksen. |
| ManagementEventWatcher(String) |
Initialiseert een nieuw exemplaar van de ManagementEventWatcher klasse wanneer een WMI-gebeurtenisquery wordt gegeven in de vorm van een tekenreeks. |
Eigenschappen
| Name | Description |
|---|---|
| CanRaiseEvents |
Hiermee wordt een waarde opgehaald die aangeeft of het onderdeel een gebeurtenis kan genereren. (Overgenomen van Component) |
| Container |
Hiermee haalt u het IContainer bestand op dat de Component. (Overgenomen van Component) |
| DesignMode |
Hiermee wordt een waarde opgehaald die aangeeft of de Component momenteel in de ontwerpmodus is. (Overgenomen van Component) |
| Events |
Hiermee haalt u de lijst met gebeurtenis-handlers op die aan dit Componentbestand zijn gekoppeld. (Overgenomen van Component) |
| Options |
Hiermee haalt u de opties op die worden gebruikt om gebeurtenissen te bekijken of stelt u deze in. |
| Query |
Hiermee haalt u de criteria op die moeten worden toegepast op gebeurtenissen of stelt u deze in. |
| Scope |
Hiermee haalt u het bereik op waarin moet worden gecontroleerd op gebeurtenissen (naamruimte of bereik). |
| Site |
Haalt of stelt de ISite van de Component. (Overgenomen van Component) |
Methoden
| Name | Description |
|---|---|
| CreateObjRef(Type) |
Hiermee maakt u een object dat alle relevante informatie bevat die nodig is om een proxy te genereren die wordt gebruikt om te communiceren met een extern object. (Overgenomen van MarshalByRefObject) |
| Dispose() |
Alle resources die worden gebruikt door de Component. (Overgenomen van Component) |
| Dispose(Boolean) |
Publiceert de niet-beheerde resources die worden gebruikt door de Component beheerde resources en brengt eventueel de beheerde resources vrij. (Overgenomen van Component) |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| Finalize() |
Zorgt ervoor dat openstaande oproepen worden gewist. Dit is de destructor voor het object. In C# worden finalizers uitgedrukt met behulp van destructorsyntaxis. |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetLifetimeService() |
Verouderd.
Hiermee haalt u het huidige levensduurserviceobject op waarmee het levensduurbeleid voor dit exemplaar wordt beheerd. (Overgenomen van MarshalByRefObject) |
| GetService(Type) |
Hiermee wordt een object geretourneerd dat een service vertegenwoordigt die wordt geleverd door of door de Component service Container. (Overgenomen van Component) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| InitializeLifetimeService() |
Verouderd.
Hiermee haalt u een levensduurserviceobject op om het levensduurbeleid voor dit exemplaar te beheren. (Overgenomen van MarshalByRefObject) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| MemberwiseClone(Boolean) |
Hiermee maakt u een ondiepe kopie van het huidige MarshalByRefObject object. (Overgenomen van MarshalByRefObject) |
| Start() |
Abonneert u op gebeurtenissen met de opgegeven query en levert ze asynchroon via de EventArrived gebeurtenis. |
| Stop() |
Hiermee wordt het abonnement geannuleerd, ongeacht of het synchroon of asynchroon is. |
| ToString() |
Retourneert een String met de naam van de Component, indien van toepassing. Deze methode mag niet worden overschreven. (Overgenomen van Component) |
| WaitForNextEvent() |
Wacht op de volgende gebeurtenis die overeenkomt met de opgegeven query die binnenkomt en retourneert deze. |
gebeurtenis
| Name | Description |
|---|---|
| Disposed |
Treedt op wanneer het onderdeel wordt verwijderd door een aanroep naar de Dispose() methode. (Overgenomen van Component) |
| EventArrived |
Treedt op wanneer een nieuwe gebeurtenis binnenkomt. |
| Stopped |
Treedt op wanneer een abonnement wordt geannuleerd. |