ManagementEventWatcher.Query プロパティ
アセンブリ: System.Management (system.management.dll 内)

Dim instance As ManagementEventWatcher Dim value As EventQuery value = instance.Query instance.Query = value
public: property EventQuery^ Query { EventQuery^ get (); void set (EventQuery^ value); }
/** @property */ public EventQuery get_Query () /** @property */ public void set_Query (EventQuery value)
イベントに適用するクエリを格納している EventQuery を返します。


イベント クラスが __InstanceCreationEvent であるために、Win32_Process のインスタンスが作成されたときにクライアントが通知を受信するしくみを説明する例を次に示します。詳細については、MSDN ライブラリ (http://msdn.microsoft.com/library/ja) で Windows Management Instrumentation に関するドキュメントを参照してください。クライアントは WaitForNextEvent メソッドを呼び出して、イベントを同期的に受信します。この例は、コード例の実行中にメモ帳などのプロセスを開始することでテストできます。
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 New WqlEventQuery( _ "__InstanceCreationEvent", _ New TimeSpan(0, 0, 1), _ "TargetInstance isa ""Win32_Process""") ' Initialize an event watcher and subscribe to events ' that match this query Dim watcher As New ManagementEventWatcher watcher.Query = query ' times watcher.WaitForNextEvent in 5 seconds watcher.Options.Timeout = New TimeSpan(0, 0, 5) ' 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 WqlEventQuery query = new WqlEventQuery("__InstanceCreationEvent", new TimeSpan(0,0,1), "TargetInstance isa \"Win32_Process\""); // Initialize an event watcher and subscribe to events // that match this query ManagementEventWatcher watcher = new ManagementEventWatcher(); watcher.Query = query; // times out watcher.WaitForNextEvent in 5 seconds watcher.Options.Timeout = new TimeSpan(0,0,5); // 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; } }


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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からManagementEventWatcher.Query プロパティを検索する場合は、下記のリンクをクリックしてください。

- ManagementEventWatcher.Query プロパティのページへのリンク