Partager via


Techniques générales pour tester le soutien des pilotes WMI

Outils clients WMI

Il existe plusieurs outils que vous pouvez utiliser pour tester la prise en charge de WMI dans votre pilote.

Wbemtest
Le système d’exploitation inclut l’outil Wbemtest, qui fournit une interface graphique graphique que vous pouvez utiliser pour rechercher des classes WMI et des instances de classe, modifier les valeurs de propriété, exécuter des méthodes et recevoir des notifications d’événements. Connectez-vous à l’espace de noms « root\wmi » pour tester la prise en charge de votre pilote.

Wmic
Microsoft Windows XP et les systèmes d’exploitation ultérieurs incluent l’outil Wmic, qui fournit un interpréteur de commandes que vous pouvez utiliser pour émettre des commandes liées à WMI pour tester votre pilote.

Wmimofck
La commande wmimofck peut être utilisée pour vérifier la syntaxe de vos fichiers MOF binaires. Vous pouvez également utiliser la commande wmimofck -t pour générer un fichier VBScript. Vous pouvez utiliser ce script pour tester la gestion des requêtes d’instance de classe WMI de votre pilote. La commande wmimofck -w génère des pages web qui peuvent tester l’interrogation et définir des classes, exécuter des méthodes et recevoir des événements. Notez que les pages web ne prennent pas en charge l’exécution de méthodes qui utilisent des paramètres complexes ou des valeurs de retour (par exemple, un tableau de classes incorporées). Dans ce cas, vous pouvez utiliser Wbemtest à la place. Consultez Utilisation de wmimofck.exe pour plus d’informations sur Wmimofck.

Vous pouvez également tester la prise en charge WMI de votre pilote en écrivant une application cliente WMI personnalisée à l’aide de l’API en mode utilisateur WMI.

Pour plus d’informations sur cette API en mode utilisateur, qui permet aux applications de fournir ou d’utiliser des informations WMI, reportez-vous aux informations d’instrumentation de gestion Windows dans la documentation du Kit de développement logiciel (SDK) Microsoft Windows.

Une application cliente WMI effectue les tâches suivantes pour tester un pilote :

  • Se connecte à WMI.

    Pour vous connecter à WMI, l’application peut appeler la fonction COM (Component Object Model), CoCreateInstance, pour récupérer un pointeur vers l’interface IWbemLocator . L’application appelle ensuite la méthode IWbemLocator ::ConnectServer pour se connecter à WMI. À partir de cet appel, l’application reçoit un pointeur vers l’interface IWbemServices .

  • Accède aux informations du pilote.

    Pour accéder aux informations et s’inscrire aux événements, l’application utilise les méthodes de l’interface IWbemServices .

IRPs WMI et journal des événements système

Les erreurs WMI qui se produisent strictement en mode noyau sont journalisées dans le journal des événements système. Vous pouvez utiliser l’Observateur d’événements pour examiner le journal des événements système. (Pour plus d’informations, consultez Erreurs de journalisation .)

Les deux principales sources de ces erreurs sont des réponses incorrectes aux requêtes WMI et des paramètres incorrects aux notifications d’événements. Par exemple, si le pilote retourne une structure de données WMIREGINFO incorrecte en réponse à une demande de IRP_MN_REGINFO ou de IRP_MN_REGINFO_EX , le système journalira cela dans le journal des événements système. Le système journaliserait également un appel non valide à IoWMIWriteEvent et À WmiFireEvent pour émettre une notification d’événement WMI.

Journal du fournisseur WMI WDM

Les erreurs WMI qui se produisent lors du traitement par le fournisseur WMI WDM (Wmiprov.dll) sont enregistrées dans le fichier journal du fournisseur WMI WDM, Wmiprov.log. Il s’agit d’un fichier texte disponible dans %windir%\system32\wbem\logs\wmiprov.log. Les erreurs, telles qu’une ressource MOF incorrecte ou manquante pour le pilote, sont enregistrées ici. Dans le cas d’une ressource MOF incorrecte, le fichier %windir%\system32\mofcomp.log peut avoir des informations supplémentaires relatives à l’erreur.

Dans les versions de Windows antérieures à Windows Vista, vous pouvez modifier les paramètres de journalisation pour tous les fournisseurs WMI à l’aide de l’application Wmimgmt.msc. (Dans Windows 98/Me, utilisez Wbemcntl à la place.) Vous pouvez désactiver ou réactiver la journalisation, modifier le répertoire dans lequel les fichiers journaux WMI sont conservés, ainsi que définir la taille maximale de ces fichiers. Pour plus d’informations, consultez fichiers journaux WMI.