EventWatcherOptions Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Especifica opções para observação de evento de gerenciamento.
public ref class EventWatcherOptions : System::Management::ManagementOptions
public class EventWatcherOptions : System.Management.ManagementOptions
type EventWatcherOptions = class
inherit ManagementOptions
Public Class EventWatcherOptions
Inherits ManagementOptions
- Herança
Exemplos
O exemplo a seguir mostra como o cliente recebe notificação quando uma instância de Win32_Process é criada porque a classe de evento é __InstanceCreationEvent. Para obter mais informações, consulte a documentação instrumentação de gerenciamento do Windows . O cliente recebe eventos de forma síncrona chamando o WaitForNextEvent método . Este exemplo pode ser testado iniciando um processo, como o Bloco de Notas, enquanto o código de exemplo está em execução.
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
Construtores
EventWatcherOptions() |
Inicializa uma nova instância da classe EventWatcherOptions para inspeção de eventos usando os valores padrão. Esse é o construtor sem parâmetros. |
EventWatcherOptions(ManagementNamedValueCollection, TimeSpan, Int32) |
Inicializa uma nova instância da classe EventWatcherOptions com os valores fornecidos. |
Propriedades
BlockSize |
Obtém ou define o tamanho do bloco para operações de bloco. Ao aguardar por eventos, esse valor especifica quantos eventos esperar antes de retornar. |
Context |
Obtém ou define um objeto de contexto WMI. Essa é uma lista de pares nome-valor a ser passada para um provedor WMI que dá suporte a informações de contexto para a operação personalizada. (Herdado de ManagementOptions) |
Timeout |
Obtém ou define o tempo limite para aplicar a operação. Observe que, para operações que retornam coleções, esse tempo limite se aplica à enumeração por meio da coleção resultante, não da operação propriamente dita (a propriedade ReturnImmediately é usada para a operação). Essa propriedade é usada para indicar que a operação deve ser realizada de forma semissíncrona. (Herdado de ManagementOptions) |
Métodos
Clone() |
Retorna uma cópia do objeto. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |