Een exemplaarprovider schrijven
Een instantieprovider levert exemplaren van een of meer gegeven klassen. Een exemplaarprovider kan bijvoorbeeld informatie leveren met betrekking tot een CPU of een ander type hardware. Omdat de objecten die worden beheerd door een instantieprovider regelmatig veranderen, worden alle instantieproviders beschouwd als pull-providers; dat wil zeggen, een provider die dynamisch informatie over een beheerd object ophaalt wanneer WMI om de informatie verzoekt. De naam komt voort uit het concept dat WMI de informatie bij de provider ophaalt namens een aanvraag van een client. Met behulp van pull-technologie kan een instantieprovider ondersteuning bieden voor het ophalen, inventariseren, wijzigen, verwijderen en queryverwerking van een specifiek exemplaar.
Providers met hoge prestaties kunnen de efficiƫntie van een exemplaarprovider verhogen of programmatisch toegang krijgen tot de gegevens die worden weergegeven in Systeemmonitor. Voor meer informatie, zie Een exemplaarprovider omzetten in een High-Performance Provider.
In de volgende procedure wordt beschreven hoe u een instantieleverancier schrijft.
Een exemplaarprovider schrijven
Registreer uw provider bij WMI.
Instantieproviders registreren zich bij WMI door een __Win32Provider-exemplaar en een __InstanceProviderRegistration-klasse te maken.
-
WMI maakt gebruik van IWbemProviderInit- om een provider te laden en te initialiseren. Dit is een taak die gebruikelijk is voor alle providers.
Notitie
Exemplaarproviders worden sterk aangemoedigd om het multithreadingmodel 'Beide' te gebruiken.
Implementeer de IWbemServices-interface voor uw provider.
De interface IWbemServices is de primaire interface voor een instantieprovider.
Voeg eventuele extra code toe die nodig is voor uw provider.
Bij het ontwerpen van uw provider moet u waarschijnlijk WMI-interfaces aanroepen. Zie Aanroepen naar WMI-voor meer informatie.
Bij het ophalen van informatie voor een client moet u mogelijk toegang krijgen tot de beveiligingsniveaus voor die client. Zie Een client-imiteren voor meer informatie.
Indien nodig implementeert de interface met hoge prestaties.
De interface met hoge prestaties verhoogt de snelheid waarmee de provider kan reageren op aanvragen van WMI.
Implementeer indien nodig ondersteuning voor updates van gedeeltelijke exemplaren.
Zoals de naam al aangeeft, is een gedeeltelijke update van een exemplaar een techniek die wordt gebruikt om slechts een deel van een exemplaar bij te werken. Zie Een deel van een exemplaar bijwerken en Een deel van een WMI-exemplaar ophalenvoor meer informatie over het aanroepen van een gedeeltelijk exemplaar vanuit een client.
Vervang de bestaande provider door uw nieuwe code.
U hoeft deze stap niet uit te voeren als u geen bestaande provider hebt om deze te kopiƫren. Zie Een provider bijwerkenvoor meer informatie.