ManagementEventWatcher Sınıf

Tanım

Belirtilen bir 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

Name Description
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 ManagementEventWatcher verildiğinde sınıfın yeni bir örneğini başlatır.

ManagementEventWatcher(ManagementScope, EventQuery, EventWatcherOptions)

Belirtilen seçeneklere ManagementEventWatcher göre verilen WMI olay sorgusuna uygun olayları dinleyen sınıfı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(ManagementScope, EventQuery)

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

ManagementEventWatcher(String, String, EventWatcherOptions)

Belirtilen seçeneklere ManagementEventWatcher göre verilen WMI olay sorgusuna uygun olayları dinleyen sınıfı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.

ManagementEventWatcher(String, String)

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

ManagementEventWatcher(String)

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

Özellikler

Name Description
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ı izlemek için kullanılan seçenekleri alır veya ayarlar.

Query

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

Scope

Olayların (ad alanı veya kapsam) izlendiği kapsamı alır veya ayarlar.

Site

öğesini alır veya ayarlar ISiteComponent.

(Devralındığı yer: Component)

Yöntemler

Name Description
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()

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

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

tarafından Component kullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları 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 Componenttarafından Container sağlanan bir hizmeti temsil eden bir nesnesi döndürür.

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

Geçerli örneğin Type 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 Objectbasit 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ı zaman uyumsuz olarak olay aracılığıyla EventArrived teslim eder.

Stop()

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

ToString()

Varsa, adını Stringiçeren bir Component 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

Name Description
Disposed

Bileşen yöntemine Dispose() yapılan bir çağrıyla 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