EventWatcherOptions Konstruktor
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menginisialisasi instans EventWatcherOptions baru kelas untuk pengamatan peristiwa.
Overload
EventWatcherOptions() |
Menginisialisasi instans EventWatcherOptions baru kelas untuk pengamatan peristiwa, menggunakan nilai default. Ini adalah konstruktor tanpa parameter. |
EventWatcherOptions(ManagementNamedValueCollection, TimeSpan, Int32) |
Menginisialisasi instans EventWatcherOptions baru kelas dengan nilai yang diberikan. |
EventWatcherOptions()
- Sumber:
- ManagementOptions.cs
- Sumber:
- ManagementOptions.cs
- Sumber:
- ManagementOptions.cs
Menginisialisasi instans EventWatcherOptions baru kelas untuk pengamatan peristiwa, menggunakan nilai default. Ini adalah konstruktor tanpa parameter.
public:
EventWatcherOptions();
public EventWatcherOptions ();
Public Sub New ()
Contoh
Contoh berikut menunjukkan bagaimana klien menerima pemberitahuan saat instans Win32_Process dibuat karena kelas peristiwa __InstanceCreationEvent. Untuk informasi selengkapnya, lihat dokumentasi Instrumentasi Manajemen Windows . Klien menerima peristiwa secara sinkron dengan memanggil WaitForNextEvent metode . Contoh ini dapat diuji dengan memulai proses, seperti Notepad, saat kode contoh sedang berjalan.
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
Keterangan
.NET Framework Security
Kepercayaan penuh untuk penelepon segera. Anggota ini tidak dapat digunakan oleh kode tepercaya sebagian. Untuk informasi selengkapnya, lihat Menggunakan Pustaka dari Kode Tepercaya Sebagian.
Berlaku untuk
EventWatcherOptions(ManagementNamedValueCollection, TimeSpan, Int32)
- Sumber:
- ManagementOptions.cs
- Sumber:
- ManagementOptions.cs
- Sumber:
- ManagementOptions.cs
Menginisialisasi instans EventWatcherOptions baru kelas dengan nilai yang diberikan.
public:
EventWatcherOptions(System::Management::ManagementNamedValueCollection ^ context, TimeSpan timeout, int blockSize);
public EventWatcherOptions (System.Management.ManagementNamedValueCollection context, TimeSpan timeout, int blockSize);
new System.Management.EventWatcherOptions : System.Management.ManagementNamedValueCollection * TimeSpan * int -> System.Management.EventWatcherOptions
Public Sub New (context As ManagementNamedValueCollection, timeout As TimeSpan, blockSize As Integer)
Parameter
- context
- ManagementNamedValueCollection
Objek konteks opsi yang berisi informasi khusus penyedia untuk diteruskan ke penyedia.
- timeout
- TimeSpan
Waktu habis untuk menunggu peristiwa berikutnya.
- blockSize
- Int32
Jumlah peristiwa yang harus ditunda di setiap blok.
Contoh
Contoh berikut menunjukkan bagaimana klien menerima pemberitahuan saat instans Win32_Process dibuat karena kelas peristiwa __InstanceCreationEvent. Untuk informasi selengkapnya, lihat dokumentasi Instrumentasi Manajemen Windows . Klien menerima peristiwa secara sinkron dengan memanggil WaitForNextEvent metode . Contoh ini dapat diuji dengan memulai proses, seperti Notepad, saat kode contoh sedang berjalan.
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
// blockSize = 1 to receive one event
EventWatcherOptions eventOptions = new
EventWatcherOptions(null, System.TimeSpan.MaxValue,
1);
// 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
' blockSize = 1 to receive one event
Dim eventOptions As New EventWatcherOptions( _
Nothing, System.TimeSpan.MaxValue, 1)
' 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
Keterangan
.NET Framework Security
Kepercayaan penuh untuk penelepon segera. Anggota ini tidak dapat digunakan oleh kode tepercaya sebagian. Untuk informasi selengkapnya, lihat Menggunakan Pustaka dari Kode Tepercaya Sebagian.