ManagementObject.InvokeMethod 方法   
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
对对象调用方法。
重载
InvokeMethod(String, Object[])
- Source:
 - ManagementObject.cs
 
- Source:
 - ManagementObject.cs
 
- Source:
 - ManagementObject.cs
 
对对象调用方法。
public:
 System::Object ^ InvokeMethod(System::String ^ methodName, cli::array <System::Object ^> ^ args);
	public object InvokeMethod (string methodName, object[] args);
	member this.InvokeMethod : string * obj[] -> obj
	Public Function InvokeMethod (methodName As String, args As Object()) As Object
	参数
- methodName
 - String
 
要执行的方法的名称。
- args
 - Object[]
 
包含参数值的数组。
返回
该方法返回的对象值。
示例
以下示例调用 Win32_Process::Create 方法以启动 Notepad.exe 的新进程。
using System;
using System.Management;
// This sample demonstrates invoking
// a WMI method using an array of arguments.
public class InvokeMethod
{
    public static void Main()
    {
        // Get the object on which the
        // method will be invoked
        ManagementClass processClass =
            new ManagementClass("Win32_Process");
        // Create an array containing all
        // arguments for the method
        object[] methodArgs =
            {"notepad.exe", null, null, 0};
        //Execute the method
        object result =
            processClass.InvokeMethod(
            "Create", methodArgs);
        //Display results
        Console.WriteLine(
            "Creation of process returned: " + result);
        Console.WriteLine("Process id: " + methodArgs[3]);
    }
}
Imports System.Management
' This sample demonstrates invoking a WMI method
' using an array of arguments.
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("Win32_Process")
        ' Create an array containing all arguments 
        ' for the method
        Dim methodArgs() As Object = _
            {"notepad.exe", Nothing, Nothing, 0}
        ' Execute the method
        Dim result As Object = _
            processClass.InvokeMethod("Create", methodArgs)
        ' Display results
        Console.WriteLine( _
            "Creation of process returned: {0}", result)
        Console.WriteLine( _
            "Process id: {0}", methodArgs(3))
        Return 0
    End Function
End Class
    	注解
如果 方法是静态的,则执行仍应成功。
.NET Framework 安全性
对直接调用方的完全信任。 此成员不能由部分信任的代码使用。 有关详细信息,请参阅 使用部分受信任的代码中的库。
适用于
InvokeMethod(ManagementOperationObserver, String, Object[])
- Source:
 - ManagementObject.cs
 
- Source:
 - ManagementObject.cs
 
- Source:
 - ManagementObject.cs
 
对对象异步调用方法。
public:
 void InvokeMethod(System::Management::ManagementOperationObserver ^ watcher, System::String ^ methodName, cli::array <System::Object ^> ^ args);
	public void InvokeMethod (System.Management.ManagementOperationObserver watcher, string methodName, object[] args);
	member this.InvokeMethod : System.Management.ManagementOperationObserver * string * obj[] -> unit
	Public Sub InvokeMethod (watcher As ManagementOperationObserver, methodName As String, args As Object())
	参数
- watcher
 - ManagementOperationObserver
 
要接收操作结果的对象。
- methodName
 - String
 
要执行的方法的名称。
- args
 - Object[]
 
包含参数值的数组。
注解
如果 方法是静态的,则执行仍应成功。
.NET Framework 安全性
对直接调用方的完全信任。 此成员不能由部分信任的代码使用。 有关详细信息,请参阅 使用部分受信任的代码中的库。
适用于
InvokeMethod(String, ManagementBaseObject, InvokeMethodOptions)
- Source:
 - ManagementObject.cs
 
- Source:
 - ManagementObject.cs
 
- Source:
 - ManagementObject.cs
 
对 WMI 对象调用方法。 输入和输出参数表示为 ManagementBaseObject 对象。
public:
 System::Management::ManagementBaseObject ^ InvokeMethod(System::String ^ methodName, System::Management::ManagementBaseObject ^ inParameters, System::Management::InvokeMethodOptions ^ options);
	public System.Management.ManagementBaseObject InvokeMethod (string methodName, System.Management.ManagementBaseObject inParameters, System.Management.InvokeMethodOptions options);
	member this.InvokeMethod : string * System.Management.ManagementBaseObject * System.Management.InvokeMethodOptions -> System.Management.ManagementBaseObject
	Public Function InvokeMethod (methodName As String, inParameters As ManagementBaseObject, options As InvokeMethodOptions) As ManagementBaseObject
	参数
- methodName
 - String
 
要执行的方法的名称。
- inParameters
 - ManagementBaseObject
 
保存方法的输入参数的 ManagementBaseObject。
- options
 - InvokeMethodOptions
 
一个 InvokeMethodOptions,它包含有关执行方法的附加选项。
返回
一个 ManagementBaseObject,它包含执行的方法的输出参数和返回值。
示例
以下示例调用 Win32_Process::Create 方法以启动 Calc.exe 的新进程。
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";
        // Execute the method
        ManagementBaseObject outParams =
            processClass.InvokeMethod ("Create",
            inParams, null);
        // 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("Win32_Process")
        ' Get an input parameters object for this method
        Dim inParams As ManagementBaseObject = _
            processClass.GetMethodParameters("Create")
        ' Fill in input parameter values
        inParams("CommandLine") = "calc.exe"
        ' Execute the method
        Dim outParams As ManagementBaseObject = _
            processClass.InvokeMethod( _
            "Create", inParams, Nothing)
        ' 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
    	注解
.NET Framework 安全性
对直接调用方的完全信任。 此成员不能由部分信任的代码使用。 有关详细信息,请参阅 使用部分受信任的代码中的库。
适用于
InvokeMethod(ManagementOperationObserver, String, ManagementBaseObject, InvokeMethodOptions)
- Source:
 - ManagementObject.cs
 
- Source:
 - ManagementObject.cs
 
- Source:
 - ManagementObject.cs
 
对对象异步调用方法。
public:
 void InvokeMethod(System::Management::ManagementOperationObserver ^ watcher, System::String ^ methodName, System::Management::ManagementBaseObject ^ inParameters, System::Management::InvokeMethodOptions ^ options);
	public void InvokeMethod (System.Management.ManagementOperationObserver watcher, string methodName, System.Management.ManagementBaseObject inParameters, System.Management.InvokeMethodOptions options);
	member this.InvokeMethod : System.Management.ManagementOperationObserver * string * System.Management.ManagementBaseObject * System.Management.InvokeMethodOptions -> unit
	Public Sub InvokeMethod (watcher As ManagementOperationObserver, methodName As String, inParameters As ManagementBaseObject, options As InvokeMethodOptions)
	参数
- watcher
 - ManagementOperationObserver
 
一个 ManagementOperationObserver,它用于处理异步执行的进度和结果。
- methodName
 - String
 
要执行的方法的名称。
- inParameters
 - ManagementBaseObject
 
包含方法的输入参数的 ManagementBaseObject。
- options
 - InvokeMethodOptions
 
包含执行方法时使用的附加选项的 InvokeMethodOptions。
注解
方法调用指定的方法执行,然后返回 。 进度和结果通过 上的 ManagementOperationObserver事件报告。
.NET Framework 安全性
对直接调用方的完全信任。 此成员不能由部分信任的代码使用。 有关详细信息,请参阅 使用部分受信任的代码中的库。