EventWatcherOptions Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie des options pour la surveillance d'événements de gestion.
public ref class EventWatcherOptions : System::Management::ManagementOptions
public class EventWatcherOptions : System.Management.ManagementOptions
type EventWatcherOptions = class
inherit ManagementOptions
Public Class EventWatcherOptions
Inherits ManagementOptions
- Héritage
Exemples
L’exemple suivant montre comment le client reçoit une notification lorsqu’un instance de Win32_Process est créé parce que la classe d’événements est __InstanceCreationEvent. Pour plus d’informations, consultez la documentation de Windows Management Instrumentation . Le client reçoit les événements de façon synchrone en appelant la méthode WaitForNextEvent. Cet exemple peut être testé par le démarrage d'un processus, comme le Bloc-notes, alors que l'exemple de code est en cours d'exécution.
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
string query = "SELECT * FROM" +
" __InstanceCreationEvent WITHIN 1 " +
"WHERE TargetInstance isa \"Win32_Process\"";
// Event options
EventWatcherOptions eventOptions = new
EventWatcherOptions();
eventOptions.Timeout = System.TimeSpan.MaxValue;
// Initialize an event watcher and subscribe to events
// that match this query
ManagementEventWatcher watcher =
new ManagementEventWatcher("root\\CIMV2", query,
eventOptions);
// 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 String
query = "SELECT * FROM" & _
" __InstanceCreationEvent WITHIN 1 " & _
"WHERE TargetInstance isa ""Win32_Process"""
' Event options
Dim eventOptions As New EventWatcherOptions
eventOptions.Timeout = System.TimeSpan.MaxValue
' Initialize an event watcher and subscribe to events
' that match this query
Dim watcher As New ManagementEventWatcher( _
"root\CIMV2", query, eventOptions)
' 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
Constructeurs
EventWatcherOptions() |
Initialise une nouvelle instance de la classe EventWatcherOptions pour la surveillance d'événements, en utilisant les valeurs par défaut. Il s’agit du constructeur sans paramètre. |
EventWatcherOptions(ManagementNamedValueCollection, TimeSpan, Int32) |
Initialise une nouvelle instance de la classe EventWatcherOptions avec les valeurs spécifiées. |
Propriétés
BlockSize |
Obtient ou définit la taille de bloc pour les opérations de bloc. Pendant l'attente d'événements, cette valeur spécifie combien d'événements attendre avant de retourner une réponse. |
Context |
Obtient ou définit un objet de contexte WMI. Il s'agit d'une liste de paires nom-valeur à passer à un fournisseur WMI qui prend en charge les informations de contexte pour une opération personnalisée. (Hérité de ManagementOptions) |
Timeout |
Obtient ou définit le délai d'attente à appliquer à l'opération. Notez que pour les opérations qui retournent des collections, ce délai d'attente s'applique à l'énumération sur la collection résultante, et non sur l'opération elle-même (la propriété ReturnImmediately est utilisée pour cette dernière). Cette propriété est utilisée pour indiquer que l'opération doit être effectuée de façon semi-synchrone. (Hérité de ManagementOptions) |
Méthodes
Clone() |
Retourne une copie de l'objet. |
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |