IMultiQI interface

Enables a client to query an object proxy, or handler, for multiple interfaces by using a single RPC call. By using this interface, instead of relying on separate calls to IUnknown::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 do not need 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 when 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 call QueryInterface for IMultiQI and use it if available.


The IMultiQI interface inherits from the IUnknown interface. IMultiQI also has these types of members:


The IMultiQI interface has these methods.


Retrieves pointers to multiple supported interfaces on an object.



Minimum supported client

Windows 2000 Professional [desktop apps | Windows Store apps]

Minimum supported server

Windows 2000 Server [desktop apps | Windows Store apps]






IID_IMultiQI is defined as 000e0020-0000-0000-C000-000000000046