MULTI_QI (Compact 2013)
3/26/2014
To optimize network performance, most remote activation functions take an array of MULTI_QI structures rather than just a single IID as input and a single pointer to the requested interface on the object as output, as do local machine activation functions.
This allows a set of pointers to interfaces to be returned from the same object in a single round-trip to the server.
In network scenarios, requesting multiple interfaces at the time of object construction can save considerable time over using a number of calls to the QueryInterface method for unique interfaces, each of which would require a round-trip to the server.
Syntax
typedef struct _MULTI_QI {
const IID* pIID;
IUnknown* pItf;
HRESULT hr;
} MULTI_QI;
Members
- pIID
Pointer to an interface identifier.
- pItf
Pointer to the interface requested in pIID. Must be set to NULL on entry.
hr
Return value of the QueryInterface call made to satisfy the request for the interface requested in pIID.Common return values are S_OK and E_NOINTERFACE.
Must be set to zero on entry.
Requirements
Header |
objidl.h |
See Also
Reference
Storage Structures
CoGetInstanceFromFile
CoGetInstanceFromIStorage
CoCreateInstanceEx
IUnknown::QueryInterface