註冊屬性提供者

若要建立 WMI屬性提供者,您必須使用 __PropertyProviderRegistration 實例來註冊代表提供者__Win32Provider實例。 身為 COM 物件,您的提供者必須向作業系統和 WMI 註冊。 下列程式假設您已經實作註冊程式,如 註冊提供者中所述。

下列程式描述如何註冊屬性提供者。

註冊屬性提供者

  1. 建立描述屬性提供者 之__Win32Provider 類別的實例。

    __Win32Provider類別接受其他屬性的預設值,例如Pure屬性的TRUE值。 如需詳細資訊,請參閱 __Win32Provider

  2. 建立描述提供者功能集 之__PropertyProviderRegistration 類別的實例。

    __PropertyProviderRegistration類別會繼承許多屬性自父類別__ObjectProviderRegistration,其提供布林值,指出支援特定功能和字串陣列,以表示查詢支援。

    請務必使用 動態提供者 限定詞標記 類別。 動態限定詞表示 WMI 應該使用動態提供者來擷取包含支援屬性的類別實例。 提供者限定詞會指定 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的實例來註冊或刪除屬性提供者。