Exploration WMI

WMI (Windows Management Instrumentation) est une normalisation des interfaces systèmes en informatique.  L’auteur en est le groupe DMTF (Distributed Management Task Force) auquel appartient Microsoft, parmi  plusieurs autres membres (Intel, IBM, Sun, Dell…).

De cette initiative est née la norme CIM (Common Information Model) qui estun schéma orienté objet pour la gestion des systèmes, des réseaux, desapplications, des bases de données et des périphériques. Le tout, administrable à partir d’une même interface normalisée. C’est l’environnement Windows, avec le standard WBEM/CIM, qui a le mieux exploité la norme WMI. Il est apparu pour la première fois dans le service Pack 4 de Windows NT 4.0 en 1998. Depuis il est présent dans Windows 2000, XP, VISTA, W7 et .NET Server. En principe, WMI permet d’atteindre les ressources d’un ordinateur – et de toutes les machines basées sur un réseau Windows – pour les configurer et les interroger. On aura aussi la possibilité de gérer ces ordinateurs, de recevoir des alertes, de faire exécuter un programme, d’arrêter un service, ou de le lancer. Architecture WMI et son accès: InfrastructureWMI (D’après L. Dardenne) Il est possible d’atteindre la couche WMI avec différents langages de programmation, scripts et outils prévus à cette fin. D’autre part, pour la seule  interrogation des propriétés des ressources gérées, il  existe langage WQL. WQL est un langage d’interrogation en lecture uniquement, on ne peut pas modifier le référentiel CIM par les instructions Insert ,Update et Delete, qui d’ailleurs n’estpas supporté. Ce langage est dérivé du langage d’interrogation structuré SQL ANSI. A la différence de SQL, WQL interroge des classes et non des tables, et retourne des classes et/ou des instances au lieu de lignes. WQL n’est pas du SQL mais y ressemble sous plusieurs aspects. Interrogation WQL L’utilitaire Explorateur WMI Volvox permet d’explorer facilement les classes de Windows (2000, XP, Vista, W7, Server .net) et de filtrer les propriétés utiles. Il y a plus de 800 classes à explorer dans rootCIM qui est l’espace de nom (namespace) à la racine des ressources. Exemple. L’expression WQL suivante interroge les comptes:

[ SELECT * FROM Win32_Account ]

Elle est tirée directement de l’utilitaire parmi les classes favorites. On l’interroge  parmi beaucoup d’autres classes accessibles dans l’ordinateur et proposées par l’Explorateur WMI.  On pourra préciser la recherche initiale avec des opérateurs reconnues par WQL, par exemple WHERE:

SELECT * FROM Win32_Account WHERE name  = ‘UtilisateursAND sidtype = ‘4

Parmi toutes les requêtes simples accessibles par l’intermédiaire de WMI, les plus populaires pour Windows 32 sont présentées dans le volet Favoris du logiciel. Aperçu graphique de l’Explorateur WMI Volvox WMI-application1 Il est possible de se connecter sur plus d’un ordinateur en même temps dans la même session, qu’il soit local, dans un réseau ou accessible depuis l’internet par son adresse IP. Exemple: WMI-application2 [ Utilisation du logiciel ] L’utilitaire est portable et ne nécessite aucune installation ou formalité autre que de l’exécuter à partir de votre ordinateur ou d’une clé USB. On utilise une Connexion pour chaque ordinateur rejoint ou chaque racine WMI interrogée. On choisira de préférence la racine rootCIMV2, qui englobe toutes les classes comprises dans les ressources de votre ordinateur. Une adresse locale est identifiée par le nom de l’ordinateur sur le réseau ou par ‘localhost‘ s’il  s’agit de son propre ordinateur. Il est aussi possible d’entrer l’adesse IP d’un ordinateur, qu’il soit local ou distant.  Une fois connecté, double-cliquez sur une classe exposée à gauche de l’application, par exemple [ Win32_IP4RouteTable ] pour que la requête s’inscrive dans l’éditeur WQL de droite de cette façon: [ select * from Win32_IP4RouteTable ]. Exécutez cette requête [cliquez sur le crochet vert] pour obtenir un résultat si disponible. Les propriétés de chaque classe sont visibles au bas de la fenêtre à gauche et répétées dans les résultats s’il  y a lieu. Vous pouvez sauvegarder une requête inscrite dans l’éditeur et la rappeler plus tard. Vous pouvez aussi imprimer le résultat de la requête. Une bande-filtre au bas de la fenêtre permer de chercher un terme parmi tous les résultats obtenus ou de le surligner en respectant ou non la casse du mot cherché. [ Téléchargement ]

ExpWmi.rar –  Version 1.0 (670ko)

Complément d’information: pour explorer plus à fond l’architecture WMI, l’interrogation WQL et autres sujets connexes: Milani S. 2009.  Brève sur WMI (Windows Management Instrumentation). Excellente présentation et de bonnes références sur WMI et son architecture. Dardenne L. 2009.  Qu’est-ce que WQL ? FAQ Delphi de Developpez.com. Très bon article avec exemples de requêtes WQL. Autres articles de Dardenne sur le sujet et la programmation WMI en Delphi. Friedrich M. 2009.  Making WMI Queries In C++. The Code Project. Pour une programmation très proche de celle utilisée dans l’Explorateur WMI. MSDN 2009.  Using WMI. La référence absolue pour Windows. MSDN 2009.  Querying with WQL. Entre autres pour voir tous les opérateurs WQL. MSDN 2009. Extended WMI Query Language. Permet d’étendre le langage WQL avec d’autres opérateurs (Order By, Join, Count …). WMI pour Linux? – Non, pas vraiment. Le kernel Linux expose déjà beaucoup d’information plus ou moins accessible sur /proc and /sys. Il n’y a pas de langage standard d’exploration comme tel, mais un effort a été fait avec SBLIM : « SBLIM (pronounced « sublime »), the Standards Based Linux Instrumentation for Manageability is an IBM-initiated Open Source project, intended to enhance the manageability of GNU/Linux systems. It does so by enabling WBEM, Web Based Enterprise Management. »

Commentaires

  1. Flex a écrit:

    Bonjour,

    le lien de téléchargement ne fonctionne pas: Forbidden acess

Exprimez vous!

*