InstrumentationManager 类

定义

提供方法,用于管理生命周期和管理用于分离式提供程序的模型。

注意:WMI .NET 库现在视为处于最终状态,且没有可用于会影响这些库的非安全性相关问题的进一步开发、增强或更新。 MI API 应用于所有新的开发。

public ref class InstrumentationManager abstract sealed
public static class InstrumentationManager
type InstrumentationManager = class
Public Class InstrumentationManager
继承
InstrumentationManager

示例

以下示例演示如何使用发布/撤销模型。 创建并发布路由器类的两个实例。 它们稍后被撤销。

public class Sample_InstanceProvider
{
    public int Main (string[] args)
    {
        var r_one = new Router();
        r_one.Name = "one";
        InstrumentationManager.Publish(r_one);
        var r_two = new Router ();
        r_two.Name = "two";
        InstrumentationManager.Publish(r_two);
        // ....
        InstrumentationManager.Revoke(r_one);
        InstrumentationManager.Revoke(r_two);
        return 0;
    }
}

在下一个示例中,注册的回调方法用于公开 RouterNew 类。

public int MainNew(string[] args)
{
    InstrumentationManager.RegisterType(typeof(RouterNew));
    // ....
    InstrumentationManager.UnRegisterType(typeof(RouterNew));
    return 0;
}

注解

分离的提供程序由应用程序托管。 应用程序可以使用两种方法使 WMI 类的实例可用:发布/撤销或回调方法。 回调方法使用 RegisterTypeUnregisterType 方法。

在发布/撤销模型中,WMI 基础结构为许多必须在回调方法中自行编写的方法提供默认行为。 其中包括枚举和绑定方法。 在此模型中,应用程序创建并发布实例。 应用程序负责确保遵守类的关键属性。 应用程序还负责删除实例。

在回调模型中,WMI 基础结构要求应用程序具有处理枚举、绑定和实现提供程序功能所需的任何其他方法的方法。 它调用应用程序以获取此功能,如果它不存在或未正确实现,它将失败。 应用程序通过调用 RegisterType 将其 WMI 类的类型注册到基础结构,并指示它不再希望通过调用 UnregisterType公开 WMI 类。

方法

Publish(Object)

使提供程序实例可用于 WMI 基础结构。

RegisterAssembly(Assembly)

在 WMI 基础结构中注册程序集。

RegisterType(Type)

在 WMI 基础结构中注册类。

Revoke(Object)

获取当前可用的提供程序的实例,并使其在 WMI 基础结构中不可用。

UnregisterAssembly(Assembly)

对当前在 WMI 基础结构中注册的程序集取消注册。

UnregisterType(Type)

对在 WMI 基础结构中注册的类取消注册。

适用于