註冊系統登錄提供者
系統登錄提供者會在 Windows 上註冊為 WMI 安裝程式的一部分。 如果您使用另一個平臺,而且想要使用系統登錄提供者,您必須先遵循下列步驟自行註冊提供者。
下列程式說明如何註冊系統登錄提供者。
註冊系統登錄提供者
將提供者註冊為 COM 伺服器。
如有必要,您可能需要建立登錄專案。 此程式適用于所有 COM 伺服器,且與 WMI 無關。 如需詳細資訊,請參閱 Microsoft Windows 軟體發展工具組 (SDK) 中的 COM 檔。
建立 __Win32Provider 類別的實例,以描述系統登錄提供者的實作。
__Win32Provider實例描述提供者的名稱及其類別識別碼, (CLSID) 。
下列範例描述如何將 __Win32Provider 註冊為實例屬性、事件或方法提供者。
// Instance provider instance of __Win32Provider as $InstProv { Name = "RegProv" ; ClsId = "{fe9af5c0-d3b6-11ce-a5b6-00aa00680c3f}" ; }; // Property provider instance of __Win32Provider as $PropProv { Name = "RegPropProv"; Clsid = "{72967901-68EC-11d0-B729-00AA0062CBB7}"; }; // Event provider instance of __Win32Provider as $RegEvent { Name = "RegistryEventProvider"; Clsid = "{fa77a74e-e109-11d0-ad6e-00c04fd8fdff}"; }; instance of __Win32Provider as $RegMethod { Name = "RegistryMethodProvider"; Clsid = "{44DE513E-60C2-11d3-AF33-00C04F79FEB1}"; };
建立衍生自 __ProviderRegistration 類別的一或多個類別實例,以描述系統登錄提供者的邏輯實作。
根據您註冊系統登錄提供者的目的,您可以建立下列一或多個類別。
__InstanceProviderRegistration
__PropertyProviderRegistration
下列 MOF 程式碼範例說明如何將系統登錄提供者註冊為實例、屬性、事件或方法提供者。
instance of __InstanceProviderRegistration { Provider = $InstProv; SupportsPut = TRUE; SupportsGet = TRUE; SupportsDelete = FALSE; SupportsEnumeration = TRUE; }; instance of __PropertyProviderRegistration { Provider = $PropProv; SupportsPut = TRUE; SupportsGet = TRUE; }; instance of __EventProviderRegistration { Provider = $RegEvent; EventQueryList = { "select * from RegistryKeyChangeEvent", "select * from RegistryValueChangeEvent", "select * from RegistryTreeChangeEvent"}; }; // Method provider instance of __MethodProviderRegistration { Provider = $RegMethod; };
使用 MOF 編譯器或 IMofCompiler 介面編譯 MOF 檔案。
Windows SDK 的 WMI 區段中提供的 RegEvent.mof 檔案包含 將 系統登錄提供者註冊為事件提供者所需的 __Win32Provider和__EventProviderRegistration 實例。 如需註冊提供者的詳細資訊,請參閱 註冊提供者 和 接收 WMI 事件。