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 类的实例可用:publish/revoke 或 回调方法。 回调方法使用 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 基础结构中注册的类取消注册。

适用于