EventWatcherOptions.BlockSize-Eigenschaft
Ruft die Blockgröße für Blockoperationen ab oder legt diese fest. Beim Warten auf Ereignisse gibt dieser Wert an, auf wie viele Ereignisse zu warten ist, bevor diese zurückgegeben werden.
Namespace: System.Management
Assembly: System.Management (in system.management.dll)
Syntax
'Declaration
Public Property BlockSize As Integer
'Usage
Dim instance As EventWatcherOptions
Dim value As Integer
value = instance.BlockSize
instance.BlockSize = value
public int BlockSize { get; set; }
public:
property int BlockSize {
int get ();
void set (int value);
}
/** @property */
public int get_BlockSize ()
/** @property */
public void set_BlockSize (int value)
public function get BlockSize () : int
public function set BlockSize (value : int)
Eigenschaftenwert
Gibt einen Int32-Wert zurück, der die Blockgröße für einen Block von Operationen angibt.
Hinweise
Eigenschaftenwert
Der Standardwert ist 1.
.NET Framework-Sicherheit
Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann nicht von teilweise vertrauenswürdigem Code verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.
Beispiel
Im folgenden Beispiel wird veranschaulicht, wie der Client eine Benachrichtigung empfängt, wenn eine Instanz von Win32_Process erstellt wird, da die Ereignisklasse __InstanceCreationEvent ist. Weitere Informationen über die Windows-Verwaltungsinstrumentation finden Sie in der Dokumentation zur Windows-Verwaltungsinstrumentation in der MSDN Library unter https://msdn.microsoft.com/library/deu. Der Client empfängt Ereignisse synchron durch Aufrufen der WaitForNextEvent-Methode. Während der Beispielcode ausgeführt wird, kann dieses Beispiel durch Starten eines Prozesses wie Editor getestet werden.
Imports System
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
' return after 1 event is received
eventOptions.BlockSize = 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 'EventWatcherPolling
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;
// return after 1 event is received
eventOptions.BlockSize = 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;
}
}
.NET Framework-Sicherheit
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter .
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
EventWatcherOptions-Klasse
EventWatcherOptions-Member
System.Management-Namespace