InstrumentationManager 类 
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供方法,用于管理生命周期和管理用于分离式提供程序的模型。
注意: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 类的实例可用:发布/撤销或回调方法。 回调方法使用 RegisterType 和 UnregisterType 方法。
在发布/撤销模型中,WMI 基础结构为许多必须在回调方法中自行编写的方法提供默认行为。 其中包括枚举和绑定方法。 在此模型中,应用程序创建并发布实例。 应用程序负责确保遵守类的关键属性。 应用程序还负责删除实例。
在回调模型中,WMI 基础结构要求应用程序具有处理枚举、绑定和实现提供程序功能所需的任何其他方法的方法。 它调用应用程序以获取此功能,如果它不存在或未正确实现,它将失败。 应用程序通过调用 RegisterType 将其 WMI 类的类型注册到基础结构,并指示它不再希望通过调用 UnregisterType公开 WMI 类。
方法
| Publish(Object) | 
		 使提供程序实例可用于 WMI 基础结构。  | 
        	
| RegisterAssembly(Assembly) | 
		 在 WMI 基础结构中注册程序集。  | 
        	
| RegisterType(Type) | 
		 在 WMI 基础结构中注册类。  | 
        	
| Revoke(Object) | 
		 获取当前可用的提供程序的实例,并使其在 WMI 基础结构中不可用。  | 
        	
| UnregisterAssembly(Assembly) | 
		 对当前在 WMI 基础结构中注册的程序集取消注册。  | 
        	
| UnregisterType(Type) | 
		 对在 WMI 基础结构中注册的类取消注册。  |