InvokeMethodOptions Costruttori

Definizione

Inizializza una nuova istanza della InvokeMethodOptions classe per un'operazione invoke.

Overload

Nome Descrizione
InvokeMethodOptions()

Inizializza una nuova istanza della InvokeMethodOptions classe per l'operazione InvokeMethod(String, Object[]) utilizzando i valori predefiniti. Si tratta del costruttore senza parametri.

InvokeMethodOptions(ManagementNamedValueCollection, TimeSpan)

Inizializza una nuova istanza della InvokeMethodOptions classe per un'operazione invoke utilizzando i valori specificati.

InvokeMethodOptions()

Origine:
ManagementOptions.cs
Origine:
ManagementOptions.cs
Origine:
ManagementOptions.cs
Origine:
ManagementOptions.cs

Inizializza una nuova istanza della InvokeMethodOptions classe per l'operazione InvokeMethod(String, Object[]) utilizzando i valori predefiniti. Si tratta del costruttore senza parametri.

public:
 InvokeMethodOptions();
public InvokeMethodOptions();
Public Sub New ()

Esempio

Nell'esempio seguente viene richiamato il metodo Win32_Process::Create per avviare un nuovo processo di Calc.exe. Viene usato il costruttore senza parametri della InvokeMethodOptions classe .

using System;
using System.Management;

// This sample demonstrates invoking
// a WMI method using parameter objects
public class InvokeMethod
{
    public static void Main()
    {

        // Get the object on which the method will be invoked
        ManagementClass processClass =
            new ManagementClass("Win32_Process");

        // Get an input parameters object for this method
        ManagementBaseObject inParams =
            processClass.GetMethodParameters("Create");

        // Fill in input parameter values
        inParams["CommandLine"] = "calc.exe";

        // Method Options
        InvokeMethodOptions methodOptions = new
            InvokeMethodOptions();
        methodOptions.Timeout =
            System.TimeSpan.MaxValue;

        // Execute the method
        ManagementBaseObject outParams =
            processClass.InvokeMethod("Create",
            inParams, methodOptions);

        // Display results
        // Note: The return code of the method is
        // provided in the "returnValue" property
        // of the outParams object
        Console.WriteLine(
            "Creation of calculator process returned: "
            + outParams["returnValue"]);
        Console.WriteLine("Process ID: "
            + outParams["processId"]);
    }
}
Imports System.Management

' This sample demonstrates invoking
' a WMI method using parameter objects
Class InvokeMethod
    Public Overloads Shared Function _
        Main(ByVal args() As String) As Integer

        ' Get the object on which the
        ' method will be invoked
        Dim processClass As _
            New ManagementClass("root\CIMV2", _
            "Win32_Process", _
            Nothing)

        ' Get an input parameters object for this method
        Dim inParams As ManagementBaseObject = _
            processClass.GetMethodParameters("Create")

        ' Fill in input parameter values
        inParams("CommandLine") = "calc.exe"

        ' Method Options
        Dim methodOptions As New InvokeMethodOptions
        methodOptions.Timeout = _
            System.TimeSpan.MaxValue

        ' Execute the method
        Dim outParams As ManagementBaseObject = _
            processClass.InvokeMethod( _
            "Create", inParams, methodOptions)

        ' Display results
        ' Note: The return code of the method 
        ' is provided in the "returnValue" property
        ' of the outParams object
        Console.WriteLine( _
            "Creation of calculator process returned: {0}", _
            outParams("returnValue"))
        Console.WriteLine("Process ID: {0}", _
            outParams("processId"))

        Return 0
    End Function
End Class

Commenti

Sicurezza di .NET Framework

Attendibilità totale per il chiamante immediato. Questo membro non può essere utilizzato da codice parzialmente attendibile. Per altre informazioni, vedere Uso di librerie da codice parzialmente attendibile.

Si applica a

InvokeMethodOptions(ManagementNamedValueCollection, TimeSpan)

Origine:
ManagementOptions.cs
Origine:
ManagementOptions.cs
Origine:
ManagementOptions.cs
Origine:
ManagementOptions.cs

Inizializza una nuova istanza della InvokeMethodOptions classe per un'operazione invoke utilizzando i valori specificati.

public:
 InvokeMethodOptions(System::Management::ManagementNamedValueCollection ^ context, TimeSpan timeout);
public InvokeMethodOptions(System.Management.ManagementNamedValueCollection context, TimeSpan timeout);
new System.Management.InvokeMethodOptions : System.Management.ManagementNamedValueCollection * TimeSpan -> System.Management.InvokeMethodOptions
Public Sub New (context As ManagementNamedValueCollection, timeout As TimeSpan)

Parametri

context
ManagementNamedValueCollection

Oggetto coppie denominate-valore specifico del provider da passare al provider.

timeout
TimeSpan

Periodo di tempo per consentire l'esecuzione dell'operazione prima del timeout. Il valore predefinito è TimeSpan.MaxValue. L'impostazione di questo parametro richiamerà l'operazione in modo semisynchrono.

Esempio

Nell'esempio seguente viene richiamato il metodo Win32_Process::Create per avviare un nuovo processo di Calc.exe. La InvokeMethodOptions classe viene utilizzata per richiamare il metodo .

using System;
using System.Management;

// This sample demonstrates invoking
// a WMI method using parameter objects
public class InvokeMethod
{
    public static void Main()
    {

        // Get the object on which the method will be invoked
        ManagementClass processClass =
            new ManagementClass("Win32_Process");

        // Get an input parameters object for this method
        ManagementBaseObject inParams =
            processClass.GetMethodParameters("Create");

        // Fill in input parameter values
        inParams["CommandLine"] = "calc.exe";

        // Method Options
        InvokeMethodOptions methodOptions = new
            InvokeMethodOptions(null,
            System.TimeSpan.MaxValue);

        // Execute the method
        ManagementBaseObject outParams =
            processClass.InvokeMethod("Create",
            inParams, methodOptions);

        // Display results
        // Note: The return code of the method is
        // provided in the "returnValue" property
        // of the outParams object
        Console.WriteLine(
            "Creation of calculator process returned: "
            + outParams["returnValue"]);
        Console.WriteLine("Process ID: "
            + outParams["processId"]);
    }
}
Imports System.Management

' This sample demonstrates invoking
' a WMI method using parameter objects
Class InvokeMethod
    Public Overloads Shared Function _
        Main(ByVal args() As String) As Integer

        ' Get the object on which the
        ' method will be invoked
        Dim processClass As _
            New ManagementClass("root\CIMV2", _
            "Win32_Process", _
            Nothing)

        ' Get an input parameters object for this method
        Dim inParams As ManagementBaseObject = _
            processClass.GetMethodParameters("Create")

        ' Fill in input parameter values
        inParams("CommandLine") = "calc.exe"

        ' Method Options
        Dim methodOptions As New InvokeMethodOptions( _
            Nothing, System.TimeSpan.MaxValue)

        ' Execute the method
        Dim outParams As ManagementBaseObject = _
            processClass.InvokeMethod( _
            "Create", inParams, methodOptions)

        ' Display results
        ' Note: The return code of the method 
        ' is provided in the "returnValue" property
        ' of the outParams object
        Console.WriteLine( _
            "Creation of calculator process returned: {0}", _
            outParams("returnValue"))
        Console.WriteLine("Process ID: {0}", _
            outParams("processId"))

        Return 0
    End Function
End Class

Commenti

Sicurezza di .NET Framework

Attendibilità totale per il chiamante immediato. Questo membro non può essere utilizzato da codice parzialmente attendibile. Per altre informazioni, vedere Uso di librerie da codice parzialmente attendibile.

Si applica a