Windows Management Instrumentation (WMI) is a component of the Windows operating system that allows programmatic access to management information for applications, services, and other computer components (for example, configuration settings and property values). WMI in the. NET Framework is based on the original WMI technology, allowing the use of. NET Framew The programming advantages in Ork the same application and provider development. For more information, see WMI benefits in the. NET Framework.
WMI provides pre-assembled class schemas that allow scripts or applications written in scripting languages, C #, VB. NET, or C + + to monitor and configure applications, systems, or network components, and hardware in the computer. For example, an instance of theWin32_Process class represents all processes on a computer, and theWin32_LogicalDisk class can represent any disk device. For more information about the available WMI classes, see "Win32 Classes (Win32 Class)" In the Windows Management instrumentation documentation in the MSDN Library.
The. NET Framework classes that use WMI are located in the System.Management and System.Management.Instrumentation namespaces. However, the. NET Framework-based managed code application has some limitations that are not available from the original WMI provider and application. For more information, see WMI limitations in the. NET Framework.
The WQL language introduction and the WQL test tool Wbemtest.exe Use methods are described in detail:
Http://www.jb51.net/article/52489.htm
The WMI architecture consists of the following layers:
The client software component uses WMI to perform operations such as reading administrative details, configuring system, and subscribing to events for software components.
The object manager is an intermediary between a WMI provider and a client that provides key services such as standard event publishing and subscriptions, event filtering, query engines, and other services.
The provider software component captures real-time data and returns it to the client application, processes method calls from the client, and links the client to the managed system components.
For more background information about WMI architecture, see WMI. NET Architecture and WMI and. NET Framework architecture.
Wmi. NET namespace:
System.Management System.Management.Instrumentation
Introduction to WMI. NET Classes
The following table lists the main classes that must be used for each specified task scope. If relevant, the associated interfaces and configuration elements are also listed. This is not a comprehensive list of all the classes in each namespace, but includes all the classes illustrated in the How to topic.
System.Management namespaces
Technical range |
|
Collect WMI class information td> |
Managementobject, managementclass |
Query data Asynchronous query data |
selectquery, managementobjectsearcher, wqlobjectquery, ObjectQuery Managementobjectcollection, managementoperationobserver |
Execute method Async execution Method |
Managementbaseobject managementoperationobserver |
Receive events Receive events asynchronously |
Wqleventquery, managementeventwatcher eventarrivedeventargs, eventarrivedeventhandler, completedeventargs, Completedeventhandler |
Connect to a remote computer |
ConnectionOptions, managementscope |
System.Management.Instrumentation namespaces
Technical Scope |
class/interface/configuration elements |
Create a data Provider |
Instance, Instrumentationclassattribute, Instrumentedattribute |
Create an event provider |
BaseEvent, Instrumentation |
Registering a provider |
ManagementInstaller |
WMI, WQL language, WQL test tool Wbemtest.exe