CompletedEventHandler Delegate
.NET Framework 3.0
Represents the method that will handle the Completed event.
Namespace: System.Management
Assembly: System.Management (in system.management.dll)
Assembly: System.Management (in system.management.dll)
'Declaration Public Delegate Sub CompletedEventHandler ( _ sender As Object, _ e As CompletedEventArgs _ ) 'Usage Dim instance As New CompletedEventHandler(AddressOf HandlerMethod)
/** @delegate */ public delegate void CompletedEventHandler ( Object sender, CompletedEventArgs e )
Not applicable.
Parameters
- sender
The instance of the object for which to invoke this method.
- e
The CompletedEventArgs that specifies the reason the event was invoked.
The following example calls a method asynchronously. The Win32_Process.Create method is called to create a new process for Calc.exe.
Imports System Imports System.Management Public Class InvokeMethodAsync Private isFinished As Boolean = False Private returnObj As ManagementBaseObject Public Sub New() ' Get the object on which the method ' will be invoked Dim processClass As ManagementClass = _ New ManagementClass("Win32_Process") ' Create a results and completion handler Dim handler As ManagementOperationObserver = _ New ManagementOperationObserver AddHandler handler.Completed, _ AddressOf Me.Completed ' Invoke method asynchronously Dim inParams As ManagementBaseObject = _ processClass.GetMethodParameters("Create") inParams("CommandLine") = "calc.exe" processClass.InvokeMethod( _ handler, "Create", inParams, Nothing) ' Do something while method is executing While (Not Me.IsComplete) System.Threading.Thread.Sleep(1000) End While End Sub ' Property allows accessing the result ' object in the main function Private Function ReturnObject() As ManagementBaseObject Return returnObj End Function ' Delegate called when the method completes ' and results are available Private Sub NewObject(ByVal sender As Object, _ ByVal e As ObjectReadyEventArgs) Console.WriteLine("New Object arrived!") returnObj = e.NewObject End Sub ' Used to determine whether the method ' execution has completed Private Function IsComplete() As Boolean Return isFinished End Function Private Sub Completed(ByVal sender As Object, _ ByVal e As CompletedEventArgs) isFinished = True Console.WriteLine("Completed method invocation.") End Sub Public Shared Function _ Main(ByVal args() As String) As Integer Dim invokeMethod As New InvokeMethodAsync Return 0 End Function End Class
Windows 98, Windows Server 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
The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.Community Additions
ADD
Show: