Registrieren des Systemregistrierungsanbieters
Der Systemregistrierungsanbieter wird im Rahmen des WMI-Installationsvorgangs unter Windows registriert. Wenn Sie eine andere Plattform verwenden und den Systemregistrierungsanbieter verwenden möchten, müssen Sie den Anbieter zunächst selbst registrieren, indem Sie die unten beschriebenen Schritte ausführen.
Nachfolgend wird beschrieben, wie Sie den Systemregistrierungsanbieter registrieren.
Registrieren des Systemregistrierungsanbieters
Registrieren Sie den Anbieter als COM-Server.
Bei Bedarf müssen Sie möglicherweise Registrierungseinträge erstellen. Dieser Prozess gilt für alle COM-Server und hat nichts mit WMI zu tun. Weitere Informationen finden Sie in der COM-Dokumentation im Microsoft Windows Software Development Kit (SDK).
Erstellen Sie eine Instanz der __Win32Provider-Klasse, um die Implementierung des Systemregistrierungsanbieters zu beschreiben.
Die __Win32Provider-Instanz beschreibt den Namen des Anbieters und dessen Klassenbezeichner (CLSID).
Im folgenden Beispiel wird beschrieben, wie Sie __Win32Provider als Instanzeigenschaften-, Ereignis- oder Methodenanbieter registrieren.
// 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}"; };
Erstellen Sie eine oder mehrere Instanzen von Klassen, die von der __ProviderRegistration-Klasse abgeleitet wurden, um die logische Implementierung des Systemregistrierungsanbieters zu beschreiben.
Je nach Zweck, für den Sie den Systemregistrierungsanbieter registrieren, können Sie eine oder mehrere der folgenden Klassen erstellen.
__InstanceProviderRegistration
__PropertyProviderRegistration
Im folgenden MOF-Codebeispiel wird beschrieben, wie Sie den Systemregistrierungsanbieter als Instanz-, Eigenschafts-, Ereignis- oder Methodenanbieter registrieren können.
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; };
Kompilieren Sie die MOF-Datei mithilfe des MOF-Compilers oder der IMofCompiler-Schnittstelle.
Die im WMI-Abschnitt des Windows SDK bereitgestellte Datei RegEvent.mof enthält die Instanzen __Win32Provider und __EventProviderRegistration, die zum Registrieren des Systemregistrierungsanbieters als Ereignisanbieter erforderlich sind. Weitere Informationen zum Registrieren eines Anbieters finden Sie unter Registrieren eines Anbieters und Empfangen eines WMI-Ereignisses.