Windows Management Instrumentation overview
Windows Management Instrumentation (WMI) is the Microsoft implementation of WBEM, an industry initiative to establish standards for accessing and sharing management information over an enterprise network. WMI is WBEM-compliant and provides integrated support for the Common Information Model (CIM)--the data model that describes the objects that exist in a management environment.
WMI includes a CIM-compliant object repository, which is the database of object definitions, and the CIM Object Manager, which handles the collection and manipulation of objects in the repository and gathers information from WMI providers. WMI providers act as intermediaries between WMI and components of the operating system, applications, and other systems. For example, the registry provider draws information from the registry, while the SNMP provider provides data and events from SNMP devices. Providers provide information about their components, and might provide methods to manipulate the components, properties that can be set, or events that can alert you to changes in the components.
WMI can be used by computer management tools, such as Microsoft Systems Management Server, to help you manage your computers. WMI is also used by other Microsoft technologies and tools, such as Microsoft Health Monitor and Microsoft Operations Manager, and by other vendors of computer management systems. You can use WMI with programming or scripting systems (such as Windows Script Host) to retrieve configuration details about most aspects of your computer systems, including server applications, or to affect changes to your systems--see the WMI SDK for more details.
Several management tools are WMI-enabled, including System Properties, System Information, and the Dependencies component of Services. These components are briefly described below:
For technical information about developing for the WMI system, see the WMI Software Development Kit (SDK). The WMI SDK is released by Microsoft Developer Network (MSDN) as part of the Microsoft Platform SDK.