注册属性提供程序

要创建 WMI 属性提供程序,必须使用 __PropertyProviderRegistration 实例注册表示你的提供程序的 __Win32Provider 实例。 作为 COM 对象,提供程序必须在操作系统和 WMI 中注册。 以下过程假定你已实现注册提供程序中所述的注册过程。

以下过程介绍了如何注册属性提供程序。

注册属性提供程序

  1. 创建 __Win32Provider 类实例来描述属性提供程序。

    __Win32Provider 类对于其他属性会接受默认值,例如 Pure 属性的 TRUE 值。 有关详细信息,请参阅 __Win32Provider

  2. 创建 __PropertyProviderRegistration 类实例来描述提供程序的功能集。

    __PropertyProviderRegistration 类从 __ObjectProviderRegistration 父类继承许多属性,该父类提供指示是否支持特定功能的布尔值,以及表示查询支持的字符串数组。

    请务必使用 DynamicProvider 限定符标记该类。 Dynamic 限定符指示 WMI 应使用动态提供程序来检索包含受支持属性的类实例。 Provider 限定符指定 WMI 应使用的提供程序的名称。

当客户端使用者注册包含事件提供程序支持的事件引用的事件筛选器查询时,WMI 对事件提供程序调用 NewQuery。 因此,可以将负责 EmailClass 类的实例修改事件的事件提供程序设置为仅为发件人生成通知。 当提供程序收到有关主题属性变更的查询请求通知时,提供程序可以开始生成这些通知。 在这种情况下,不会要求 WMI 丢弃仅报告收件人变更的通知。

以下 MOF 代码示例展示了可用于注册属性提供程序的实例。

  instance of __Win32Provider as $P
  {
    Name    = "PropProvider" ;
    ClsId   = "{E30EC6A0-23CF-11d1-8FDE-0000F804AA5C}" ;
  };    

  instance of __PropertyProviderRegistration
  {
    Provider = $P;
    SupportsGet = TRUE;
    SupportsPut = FALSE;
  };

注意

只有管理员可以通过创建 __Win32Provider__PropertyProviderRegistration 的实例来注册或删除属性提供程序。