CompletedEventArgs Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Contiene dati evento per l'evento Completed.
public ref class CompletedEventArgs : System::Management::ManagementEventArgs
public class CompletedEventArgs : System.Management.ManagementEventArgs
type CompletedEventArgs = class
inherit ManagementEventArgs
Public Class CompletedEventArgs
Inherits ManagementEventArgs
- Ereditarietà
Esempio
Nell'esempio seguente viene chiamato un metodo in modo asincrono. Il metodo Win32_Process.Create viene chiamato per creare un nuovo processo per Calc.exe.
using System;
using System.Management;
public class InvokeMethodAsync
{
private bool isComplete = false;
private ManagementBaseObject returnObject;
public InvokeMethodAsync()
{
// Get the object on which the method
// will be invoked
ManagementClass processClass =
new ManagementClass("Win32_Process");
// Create a results and completion handler
ManagementOperationObserver handler =
new ManagementOperationObserver();
handler.Completed +=
new CompletedEventHandler(this.Completed);
// Invoke method asynchronously
ManagementBaseObject inParams =
processClass.GetMethodParameters("Create");
inParams["CommandLine"] = "calc.exe";
processClass.InvokeMethod(
handler, "Create", inParams, null);
// Do something while method is executing
while(!this.IsComplete)
{
System.Threading.Thread.Sleep(1000);
}
}
// Property allows accessing the result
// object in the main function
private ManagementBaseObject ReturnObject
{
get
{
return returnObject;
}
}
// Delegate called when the method completes
// and results are available
private void NewObject(object sender,
ObjectReadyEventArgs e)
{
Console.WriteLine("New Object arrived!");
returnObject = e.NewObject;
}
// Used to determine whether the method
// execution has completed
private bool IsComplete
{
get
{
return isComplete;
}
}
private void Completed(object sender,
CompletedEventArgs e)
{
isComplete = true;
Console.WriteLine("Method invoked.");
}
public static void Main()
{
InvokeMethodAsync invokeMethod = new InvokeMethodAsync();
return;
}
}
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
Proprietà
Context |
Ottiene il contesto dell'operazione restituito dall'operazione che ha generato l'evento. (Ereditato da ManagementEventArgs) |
Status |
Ottiene lo stato di completamento dell'operazione. |
StatusObject |
Ottiene informazioni aggiuntive sullo stato all'interno di un oggetto WMI. Può assumere il valore |
Metodi
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |