4.2.2.2 Unoptimized Client and Optimized Server

The product versions that exhibit unoptimized client behavior and optimized server behavior are referenced in section 4.2.2.

To make a synchronous operation from a client to a server, the client uses the IWbemServices interface pointer. The client calls the IWbemServices synchronous methods IWbemServices::CreateInstanceEnum, IWbemServices::CreateClassEnum, and IWbemServices::ExecQuery. In response to the method executed, the server returns an IEnumWbemClassObject interface pointer. The client then uses the IEnumWbemClassObject::Next method to repeatedly retrieve the IWbemClassObject objects from the query result set.

The call sequence is the same as that in section 4.2.2.1 because in both cases, the client is unoptimized, and therefore still uses the old mechanism for communication. Sections 4.2.2.3 and 4.2.2.4 explain the call sequences between the newer versions of client and server.

Unoptimized Client and Optimized Server

Figure 14: Unoptimized Client and Optimized Server

An example capture is given on [SysDocCap-WMI] showing a Windows 2000 Server operating system connecting to a Windows Server 2008 operating system using the wbemtest utility and enumerating the default namespace.