EventWatcherOptions Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Especifica opciones para la inspección de eventos de administración.
public ref class EventWatcherOptions : System::Management::ManagementOptions
public class EventWatcherOptions : System.Management.ManagementOptions
type EventWatcherOptions = class
inherit ManagementOptions
Public Class EventWatcherOptions
Inherits ManagementOptions
- Herencia
Ejemplos
En el ejemplo siguiente se muestra cómo el cliente recibe una notificación cuando se crea una instancia de Win32_Process porque la clase de eventos es __InstanceCreationEvent. Para obtener más información, consulte la documentación Windows Management Instrumentation. El cliente recibe eventos de forma sincrónica llamando al WaitForNextEvent método . Este ejemplo se puede probar iniciando un proceso, como el Bloc de notas, mientras se ejecuta el código de ejemplo.
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
Constructores
| Nombre | Description |
|---|---|
| EventWatcherOptions() |
Inicializa una nueva instancia de la EventWatcherOptions clase para el seguimiento de eventos mediante valores predeterminados. Este es el constructor sin parámetros. |
| EventWatcherOptions(ManagementNamedValueCollection, TimeSpan, Int32) |
Inicializa una nueva instancia de la EventWatcherOptions clase con los valores especificados. |
Propiedades
| Nombre | Description |
|---|---|
| BlockSize |
Obtiene o establece el tamaño de bloque para las operaciones de bloque. Al esperar eventos, este valor especifica el número de eventos que se deben esperar antes de devolverlos. |
| Context |
Obtiene o establece un objeto de contexto WMI. Se trata de una lista de pares de nombre-valor que se pasarán a un proveedor WMI que admite información de contexto para la operación personalizada. (Heredado de ManagementOptions) |
| Timeout |
Obtiene o establece el tiempo de espera que se aplicará a la operación. Tenga en cuenta que para las operaciones que devuelven colecciones, este tiempo de espera se aplica a la enumeración a través de la colección resultante, no a la propia operación (la ReturnImmediately propiedad se usa para este último). Esta propiedad se usa para indicar que la operación se debe realizar de forma semiincrónica. (Heredado de ManagementOptions) |
Métodos
| Nombre | Description |
|---|---|
| Clone() |
Devuelve una copia del objeto . |
| Equals(Object) |
Determina si el objeto especificado es igual al objeto actual. (Heredado de Object) |
| GetHashCode() |
Actúa como la función hash predeterminada. (Heredado de Object) |
| GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |