API COM pour WMI
Vous pouvez utiliser l’API COM (WMI Component Object Model) pour écrire des applications clientes de gestion ou créer un fournisseur WMI. La référence de l’API COM fournit des informations aux administrateurs système avancés, ainsi qu’aux développeurs qui écrivent des applications clientes et de fournisseurs.
Pour plus d’informations sur l’écriture d’applications de gestion d’entreprise WMI, consultez Création d’une application WMI à l’aide de C++. Pour plus d’informations sur l’écriture d’un fournisseur WMI, consultez Fourniture de données à WMI.
Notes
WMI prend uniquement en charge le développement C++ à l’aide des systèmes de développement Microsoft Visual C++ version 6.0 et ultérieures. Toutefois, vous pouvez également utiliser d’autres compilateurs tels que ceux de Borland et Watcom.
Chacun des différents objets WMI hérite d’une interface finalement héritée de l’interface IUnknown . COM dicte la façon dont les implémenteurs d’objets, ou interfaces, gèrent des tâches telles que la gestion de la mémoire, la gestion des paramètres et le multithreading. En se conformant à COM, l’API COM pour WMI garantit qu’elle prend en charge les fonctionnalités fournies par les interfaces de chaque objet WMI.
WMI est accessible via les interfaces COM spécifiques à WMI suivantes.
Interface | Description |
---|---|
IEnumWbemClassObject | Énumérateur qui fonctionne avec des objets de type IWbemClassObject. Il est similaire aux énumérateurs COM standard, tels que IEnumVariant. |
IMofCompiler | Implémentée par Mofd.dll, cette interface fournit une interface COM qui est utilisée par le compilateur MOF et toutes les autres applications qui compilent des fichiers MOF. |
IUnsecuredApartment | Utilisé pour simplifier le processus d’exécution d’appels asynchrones à partir d’un processus client. |
IWbemBackupRestore | Sauvegarde et restaure le contenu du référentiel WMI. |
IWbemCallResult | Utilisé pour les appels semi-synchrones de l’interface IWbemServices. Lors de ces appels, la méthode IWbemServices appelée retourne immédiatement, ainsi qu’un objet IWbemCallResult . |
IWbemCausalityAnalysis | Effectue le suivi des requêtes enfants générées à partir d’une demande parente. |
IWbemClassObject | Contient et manipule les définitions de classe et les instances d’objet de classe. Les développeurs n’ont pas besoin d’implémenter cette interface ; WMI fournit son implémentation. |
IWbemConfigureRefresher | Utilisé par le code client pour ajouter ou supprimer des énumérateurs, des objets et des actualisations imbriquées dans un actualisateur. |
IWbemContext | Éventuellement utilisé pour communiquer des informations de contexte supplémentaires aux fournisseurs lors de l’envoi d’appels IWbemServices à Windows Management. |
IWbemDecoupledBasicEventProvider | Inscrit les fournisseurs découplés auprès de WMI. |
IWbemDecoupledRegistrar | Associe des fournisseurs découplés à WMI. Cette interface permet à un fournisseur hébergé par un processus de définir la durée de vie d’interopérabilité de l’interface et de coexister avec d’autres fournisseurs. |
IWbemEventConsumerProvider | Fournit l’interface principale pour un fournisseur de consommateurs d’événements. Grâce à cette interface et à la méthode FindConsumer , un fournisseur de consommateurs d’événements peut indiquer quels consommateurs d’événements doivent recevoir un événement donné. |
IWbemEventProvider | Utilisé pour lancer la communication avec un fournisseur d’événements. |
IWbemEventProviderQuerySink | Implémentés éventuellement par les fournisseurs d’événements qui souhaitent savoir quels types de filtres de requête d’événement sont actuellement actifs pour optimiser les performances. |
IWbemEventProviderSecurity | Éventuellement implémenté par les fournisseurs d’événements qui souhaitent restreindre l’accès du consommateur à leur événement. |
IWbemEventSink | Initie la communication avec un fournisseur d’événements à l’aide d’un ensemble restreint de requêtes. Cette interface étend IWbemObjectSink, en fournissant de nouvelles méthodes traitant de la sécurité et des performances. |
IWbemHiPerfProvider | Permet aux fournisseurs de fournir des objets et des énumérateurs actualisables. |
IWbemHiPerfEnum | Utilisé dans les opérations d’actualisation pour fournir un accès rapide aux énumérations d’objets d’instance. |
IWbemLocator | Obtient le pointeur d’espace de noms initial vers l’interface IWbemServices pour WMI sur un ordinateur hôte spécifique. |
IWbemObjectAccess | Fournit l’accès aux méthodes et aux propriétés d’un objet . Un objet IWbemObjectAccess est un conteneur pour un instance mis à jour par un actualiseur. |
IWbemObjectSink | Utilisé pour recevoir les résultats d’IWbemServices et certains types de notifications d’événements. |
IWbemObjectTextSrc | Utilisé pour traduire des instances IWbemClassObject vers et depuis différents formats de texte. |
IWbemPropertyProvider | Prend en charge la récupération et la mise à jour de propriétés individuelles dans une instance d’une classe WMI. |
IWbemProviderIdentity | Implémenté par un fournisseur d’événements si le fournisseur s’inscrit lui-même à l’aide de plusieurs noms ( plusieurs instances de __Win32Provider) avec la même valeur CLSID. La classe fournit un mécanisme permettant de distinguer le fournisseur nommé qui doit être utilisé. |
IWbemProviderInit | Utilisé pour initialiser des fournisseurs. |
IWbemProviderInitSink | Implémenté par WMI et appelé par les fournisseurs pour signaler l’état d’initialisation. |
IWbemQualifierSet | Agit en tant que conteneur pour l’ensemble des qualificateurs nommés pour une propriété unique ou un objet entier (une classe ou une instance). |
IWbemQuery | Fournit un point d’entrée par le biais duquel une requête WMI Query Language (WQL) peut être analysée. |
IWbemRefresher | Fournit un point d’entrée par lequel les objets actualisables tels que les énumérateurs ou les objets d’actualisation peuvent être actualisés. |
IWbemServices | Utilisé par les clients et les fournisseurs pour accéder aux services WMI. L’interface est implémentée uniquement par WMI et est l’interface WMI principale. |
IWbemStatusCodeText | Extrait les descriptions de chaîne de texte des codes d’erreur ou le nom du sous-système où l’erreur s’est produite. |
IWbemUnboundObjectSink | Implémenté par tous les consommateurs d’événements logiques. Il s’agit d’une interface récepteur simple qui accepte la remise d’objets d’événement. |
Notes
La plupart des fonctions COM WMI retournent des codes d’erreur numériques documentés sous forme de constantes nommées. Ces constantes sont définies dans Wbemcli.h dans le dossier WMI\Include PSDK. Pour plus d’informations, consultez Codes de retour WMI.
Pour plus d’informations sur les rubriques suivantes concernant la programmation COM, consultez Développement de composants :
- Interfaces et conception d’objets.
- Implémentation d’IUnknown.
- Gestion de la mémoire
- Gestion du comptage des références.
Rubriques connexes