Aracılığıyla paylaş


ManagementEventWatcher Sınıf

Tanım

Belirtilen olay sorgusuna göre geçici olay bildirimlerine abonedir.

public ref class ManagementEventWatcher : System::ComponentModel::Component
public class ManagementEventWatcher : System.ComponentModel.Component
type ManagementEventWatcher = class
    inherit Component
Public Class ManagementEventWatcher
Inherits Component
Devralma
ManagementEventWatcher

Örnekler

Aşağıdaki örnekte, olay sınıfı __InstanceCreationEvent olduğundan bir Win32_Process örneği oluşturulduğunda istemcinin nasıl bildirim aldığı gösterilmektedir. Daha fazla bilgi için Windows Yönetim Araçları belgelerine bakın. İstemci, yöntemini çağırarak WaitForNextEvent olayları zaman uyumlu olarak alır. Bu örnek, örnek kod çalışırken Not Defteri gibi bir işlem başlatılarak test edilebilir.

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;
    }
}
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

Oluşturucular

ManagementEventWatcher()

ManagementEventWatcher sınıfının yeni bir örneğini başlatır. Daha fazla başlatma için nesnedeki özellikleri ayarlayın. Bu, parametresiz oluşturucudur.

ManagementEventWatcher(EventQuery)

WMI olay sorgusu verildiğinde sınıfının yeni bir örneğini ManagementEventWatcher başlatır.

ManagementEventWatcher(ManagementScope, EventQuery)

Sınıfın verilen WMI olay sorgusunaManagementEventWatcher uygun olayları dinleyen yeni bir örneğini başlatır.

ManagementEventWatcher(ManagementScope, EventQuery, EventWatcherOptions)

Belirtilen seçeneklere ManagementEventWatcher göre verilen WMI olay sorgusuna uyan olayları dinleyen sınıfının yeni bir örneğini başlatır. Bu değişken için sorgu ve kapsam belirtilen nesnelerdir. options nesnesi zaman aşımı ve bağlam bilgileri gibi seçenekleri belirtebilir.

ManagementEventWatcher(String)

Dize biçiminde bir WMI olay sorgusu verildiğinde sınıfının yeni bir örneğini ManagementEventWatcher başlatır.

ManagementEventWatcher(String, String)

Sınıfın verilen WMI olay sorgusunaManagementEventWatcher uygun olayları dinleyen yeni bir örneğini başlatır. Bu değişken için sorgu ve kapsam dize olarak belirtilir.

ManagementEventWatcher(String, String, EventWatcherOptions)

Belirtilen seçeneklere ManagementEventWatcher göre verilen WMI olay sorgusuna uyan olayları dinleyen sınıfının yeni bir örneğini başlatır. Bu değişken için sorgu ve kapsam dize olarak belirtilir. options nesnesi zaman aşımı ve bağlam bilgileri gibi seçenekleri belirtebilir.

Özellikler

CanRaiseEvents

Bileşenin olay oluşturup oluşturamayacağını belirten bir değer alır.

(Devralındığı yer: Component)
Container

öğesini IContainer içeren öğesini Componentalır.

(Devralındığı yer: Component)
DesignMode

öğesinin şu anda tasarım modunda olup olmadığını Component gösteren bir değer alır.

(Devralındığı yer: Component)
Events

Bu Componentöğesine eklenen olay işleyicilerinin listesini alır.

(Devralındığı yer: Component)
Options

Olaylar için watch için kullanılan seçenekleri alır veya ayarlar.

Query

Olaylara uygulanacak ölçütleri alır veya ayarlar.

Scope

Olaylar için watch kapsamı (ad alanı veya kapsam) alır veya ayarlar.

Site

öğesini alır veya ayarlar ISiteComponent.

(Devralındığı yer: Component)

Yöntemler

CreateObjRef(Type)

Uzak bir nesneyle iletişim kurmak için kullanılan bir ara sunucu oluşturmak için gereken tüm ilgili bilgileri içeren bir nesne oluşturur.

(Devralındığı yer: MarshalByRefObject)
Dispose()

Component tarafından kullanılan tüm kaynakları serbest bırakır.

(Devralındığı yer: Component)
Dispose(Boolean)

Component tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır.

(Devralındığı yer: Component)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
Finalize()

Bekleyen çağrıların temizlendiğinden emin olun. Bu, nesnenin yıkıcısıdır. C# dilinde sonlandırıcılar yıkıcı söz dizimi kullanılarak ifade edilir.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetLifetimeService()
Geçersiz.

Bu örnek için yaşam süresi ilkesini denetleen geçerli yaşam süresi hizmet nesnesini alır.

(Devralındığı yer: MarshalByRefObject)
GetService(Type)

veya tarafından ComponentContainersağlanan bir hizmeti temsil eden bir nesnesi döndürür.

(Devralındığı yer: Component)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
InitializeLifetimeService()
Geçersiz.

Bu örneğin yaşam süresi ilkesini denetlemek için bir yaşam süresi hizmet nesnesi alır.

(Devralındığı yer: MarshalByRefObject)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
MemberwiseClone(Boolean)

Geçerli MarshalByRefObject nesnenin sığ bir kopyasını oluşturur.

(Devralındığı yer: MarshalByRefObject)
Start()

Verilen sorguyla olaylara abone olur ve bunları olay aracılığıyla EventArrived zaman uyumsuz olarak teslim eder.

Stop()

Zaman uyumlu veya zaman uyumsuz olması fark etmeksizin aboneliği iptal eder.

ToString()

Varsa, adını Componentiçeren bir String döndürür. Bu yöntem geçersiz kılınmamalıdır.

(Devralındığı yer: Component)
WaitForNextEvent()

Belirtilen sorguyla eşleşen bir sonraki olayın gelmesini bekler ve ardından döndürür.

Ekinlikler

Disposed

Bileşen yöntemine Dispose() yapılan bir çağrı tarafından atıldığında gerçekleşir.

(Devralındığı yer: Component)
EventArrived

Yeni bir olay geldiğinde gerçekleşir.

Stopped

Abonelik iptal edildiğinde gerçekleşir.

Şunlara uygulanır