Présentation de WMI pour les pilotes KMDF
[S’applique à KMDF uniquement]
Kernel-Mode Driver Framework prend en charge les pilotes qui fournissent des informations à Windows Management Instrumentation (WMI). Ces pilotes sont appelés fournisseurs de données WMI , car ils fournissent des données aux clients WMI, qui sont des applications inscrites pour recevoir des informations de WMI.
Les fournisseurs de données WMI prennent en charge les blocs de données WMI, qui peuvent représenter un ou plusieurs des éléments suivants :
Éléments de données, qui contiennent des données spécifiques à un appareil qu’un pilote envoie à un client WMI ou en reçoit.
Méthodes (fonctions) que le pilote exécute pour le compte d’un client WMI.
Événements que le pilote envoie aux clients WMI qui se sont inscrits pour recevoir une notification d’événements spécifiques à l’appareil.
Les blocs de données WMI sont spécifiés en tant que classes WMI dans les fichiers .mof. Chaque bloc de données WMI est identifié par un GUID.
Tous les pilotes doivent prendre en charge tous les blocs de données WMI standard définis par WMI pour leur classe d’appareils. Ces blocs de données WMI sont définis dans Wmicore.mof.
Votre pilote peut également prendre en charge les blocs de données WMI que vous définissez dans un fichier .mof. Pour savoir comment définir et publier des blocs de données WMI personnalisés, consultez les sections suivantes :
Objets WMI d’infrastructure et fonctions de rappel
L’infrastructure définit deux objets que les pilotes peuvent utiliser pour implémenter des fournisseurs de données WMI. L’objet de fournisseur WMI représente le schéma des blocs de données WMI que le pilote fournit. L’objet instance WMI représente une instance d’un bloc de données associé à un fournisseur particulier. Les pilotes communiquent avec les clients WMI en implémentant les fonctions de rappel d’événement suivantes que ces deux objets définissent :
EvtWmiProviderFunctionControl
Active et désactive la prise en charge du pilote pour la collecte de données WMI et l’envoi d’événements WMI.
EvtWmiInstanceQueryInstance
Fournit les données instance d’un fournisseur WMI à un client WMI.
EvtWmiInstanceSetInstance Et EvtWmiInstanceSetItem
Définissez les informations dans le bloc de données d’un pilote sur les valeurs fournies par le client.
EvtWmiInstanceExecuteMethod
Exécute une méthode fournie par le pilote, à la demande d’un client.
Exemples de pilotes qui implémentent WMI
Les exemples de pilotes FIREFLY, PCIDRV et Toaster sont des fournisseurs de données WMI.