[This is preliminary documentation and subject to change]

## About the IIS WMI Interface

Windows Management Instrumentation (WMI) is technology for administrators to manage Windows features. The IIS WMI provider exposes a set of programming interfaces that offer powerful and flexible ways to administer your Web sites. The IIS WMI provider is superior to ADSI for managing configuration of the metabase.

### WMI and System Management Tools

Windows Whistler management tools and scripts can use WMI to manage systems composed of numerous devices, resources, and applications. With WMI technology, these systems and components are represented using the Common Information Model (CIM). CIM can model anything in the managed environment regardless of data-source location by providing a consistent and unified view of logical and physical objects. Managed objects are represented using object-oriented constructs, such as classes. These classes include properties that describe data and methods. WMI offers a powerful set of services that include manipulating managed objects, retrieving query-based information, and notification of events.

WMI is designed to offer the following advantages over other available management technologies, including ADSI:

- Query Support: Administrators can select only the objects or properties they want to see, and WMI will return only the appropriate data. This high granularity is efficient for the system and the administrator.
- Association: Objects and properties may be associated outside the boundaries of a containment model. WMI allows selections and modifications by association across containment boundaries, including across nodes.
- Global Object Model: A single COM API exposes managed objects in IIS and other systems and applications depending onlu upon the availability of appropriate WMI providers.

Access to these services and to the management data is made possible with a single (COM) programming interface. WMI providers expose instances of objects to the WMI COM interface.

### The IIS WMI Provider

For managing IIS with WMI, the managed object is the metabase, and the IIS WMI Provider is an object management tool that manages the metabase. The IIS WMI provider returns instances of IIS configuration classes (the metabase schema) and properties to WMI. The IIS WMI provider is designed to provide functionality greater than the IIS ADSI provider for metabase configuration and IIS management tasks. The IIS WMI provider accesses the queries and manages the IIS metabase as follows:

1. A script or application executes, sending a query for IIS configuration classes to the WMI CIM Object Manager (OM) for validation. The query may select classes to acquire status,, or change notifications, or to set class properties.
2. OM compares the objects in the query with the WMI Object Repository (OR) to validate them as WMI objects, then forwards the query to the appropriate WMI provider. If the objects queried are all valid metabase objects, OM forwards the query to the IIS WMI Provider.
3. IIS WMI provider executes the query against the metabase configuration classes, manipulating them and returning the requested data to OM.
4. OM forwards the query response to the client that initiated the query.

Figure 1. [Image illustrating the above sequence goes here.]

The WMI provider reads the metabase as a database of records, where each record is represented as an instance of a class. Each instance can then be queried to determine content, state, associations, and properties. WMI provider establishes relationships between objects, allowing you to tie together the various objects and all the objects contained within them. Management tasks can then be performed using an instance of the class, or many instances.

### Comparing ADSI and WMI Providers

The IIS WMI schema is congruent with the IIS ADSI Admin Objects schema. The two technologies differ in architecture and features.

The following table compares the architecture and features of the IIS ADSI provider with those of the IIS WMI provider.

Issue | IIS ADSI provider | IIS WMI provider
Query capabilities? | No. | Yes. By querying on keytypes, WMI provider returns only the data you need.
Object model and access routes | COM. Scripts and programs. | COM. Scripts, programs, and UI tools, such as the WMI Object Browser.
Extensible schema? | Yes. | No. WMI provider can return existing schema extensions, but cannot extend the metabase schema.
Association or containment of related data | Properties are related to metabase keys by containment. You can use the ADSI container object methods of the IIS Admin Objects to manipulate keys in the metabase. You can create, delete, and move keys by creating, deleting, and moving IIS Admin Objects within container objects. You can also enumerate contained objects such as virtual directories or servers with container object methods. Supports property inheritance. | Association. In conjunction with other providers, includes associations with managed objects not in the metabase. An association in WMI describes a relationship between classes and is in itself defined by a class. This powerful concept allows management information about an entire system of associated components to be viewed and traversed for tasks such as troubleshooting. Navigating associations to other classes is not limited by containment.

### Resources

Complete WMI documentation, titled "WMI Reference," is available from MSDN. To get and use the WMI Object Browser, download and install the WMI SDK from MSDN.

© 1997-2001 Microsoft Corporation. All rights reserved.