IMultiQI (Compact 2013)

3/26/2014

This interface enables a client to query an object proxy, or handler, for multiple interfaces, using a single RPC call.

By using this interface, instead of relying on separate calls to QueryInterface, clients can reduce the number of RPC calls that have to cross thread, process, or machine boundaries and, therefore, the amount of time required to obtain the requested interface pointers.

When to Implement

You never have to implement this interface because there is no situation in which it is required. COM server applications that rely on COM's standard remoting support get the interface for free because COM implements it on every object proxy.

The only situation in which you might want to implement this interface yourself is if you are writing a custom marshaler that handles interface remoting. Even here, implementing IMultiQI yourself is not recommended, particularly if your object is aggregatable.

When to Use

When more than one interface pointer is sought, client applications should QueryInterface for IMultiQI and use it if available.

Methods in Vtable Order

IUnknown method

Description

QueryInterface

Returns pointers to supported interfaces.

AddRef

Increments the reference count.

Release

Decrements the reference count.

Method

Description

QueryMultipleInterfaces

Queries for multiple interfaces.

Remarks

To determine whether the platform supports this interface, see Determining Supported COM APIs.

Requirements

Header

objidl.h,
objidl.idl

Library

ole32.lib,
uuid.lib

See Also

Reference

COM Interfaces
IUnknown::QueryInterface