编写方法提供程序

方法提供程序允许 WMI 访问类的方法。 例如,表示应用程序的类可能具有终止应用程序的方法。

在更新现有方法提供程序时更改方法输入和输出参数的顺序可能会导致调用该方法的应用程序失败。 输入或输出参数的顺序由每个参数的 ID 限定符值确定。 第一个参数的 ID 值为零。 在现有参数的末尾添加新的输入参数,而不是将它们插入到已建立的序列中。

以下过程介绍了如何实现方法提供程序。

实现方法提供程序

  1. 设计类提供程序并将其注册到 WMI。

    类提供程序通过创建 __Win32Provider 实例和 __MethodProviderRegistration 类向 WMI 进行注册。 有关详细信息,请参阅注册方法提供程序

  2. 为提供程序实现 IWbemProviderInit 接口。

    注意

    强烈建议方法提供程序使用多线程模型“Both”。

     

  3. 为提供程序实现 IWbemServices::ExecMethodAsync 方法。

    IWbemServices 接口是方法提供程序的主接口。 有关详细信息,请参阅实现方法提供程序的主接口

  4. 添加提供程序所需的任何其他代码。

    设计提供程序时,很可能需要调用 WMI 接口。 有关详细信息,请参阅调用方法维护提供程序中的安全级别

    检索客户端的信息时,可能需要访问该客户端的安全级别。 有关详细信息,请参阅模拟客户端

  5. 将预先存在的提供程序替换为新代码。

    如果没有要复制的预先存在的提供程序,则无需执行此步骤。 有关详细信息,请参阅更新提供程序