Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

EventArrivedEventArgs Class

Holds event data for the EventArrived event.

System.Object
  System.EventArgs
    System.Management.ManagementEventArgs
      System.Management.EventArrivedEventArgs

Namespace:  System.Management
Assembly:  System.Management (in System.Management.dll)

'Declaration
Public Class EventArrivedEventArgs _
	Inherits ManagementEventArgs

The EventArrivedEventArgs type exposes the following members.

  NameDescription
Public propertyContextGets the operation context echoed back from the operation that triggered the event. (Inherited from ManagementEventArgs.)
Public propertyNewEventGets the WMI event that was delivered.
Top

  NameDescription
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

The following asynchronous example sets up a WMI timer to raise an event every second, and removes it when no longer needed. The ManagementEventWatcher defines several .NET Framework events which are raised when WMI events are delivered. Delegates are attached to these events for handling the incoming data.

Imports System
Imports System.Management

' This example shows asynchronous consumption of events. 
' In this example you are listening for timer events. 
' The first part of the example sets up the timer. 

Public Class EventWatcherAsync

    Public Sub New()
        ' Set up a timer to raise events every 1 second 
        '============================================= 
        Dim timerClass As New ManagementClass( _
            "__IntervalTimerInstruction")
        Dim timer As ManagementObject = _
            timerClass.CreateInstance()
        timer("TimerId") = "Timer1"
        timer("IntervalBetweenEvents") = 1000
        timer.Put()

        ' Set up the event consumer 
        '========================== 
        ' Create event query to receive timer events 
        Dim query As New WqlEventQuery("__TimerEvent", _
            "TimerId=""Timer1""")

        ' Initialize an event watcher and subscribe to  
        ' events that match this query 
        Dim watcher As New ManagementEventWatcher(query)

        ' Set up a listener for events 
        AddHandler watcher.EventArrived, _
            AddressOf Me.HandleEvent

        ' Start listening
        watcher.Start()

        ' Do something in the meantime
        System.Threading.Thread.Sleep(10000)

        ' Stop listening
        watcher.Stop()

    End Sub 

    Private Sub HandleEvent(ByVal sender As Object, _
        ByVal e As EventArrivedEventArgs)

        Console.WriteLine("Event arrived !")
    End Sub 

    Public Overloads Shared Function _
            Main(ByVal args() As String) As Integer 

        'start the event watcher 
        Dim eventWatcher As New EventWatcherAsync

        Return 0

    End Function 

End Class

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show:
© 2015 Microsoft