estructura MULTI_QI (objidl.h)

Representa una interfaz en una consulta para varias interfaces.

Sintaxis

typedef struct tagMULTI_QI {
  const IID *pIID;
  IUnknown  *pItf;
  HRESULT   hr;
} MULTI_QI;

Miembros

pIID

Puntero a un identificador de interfaz.

pItf

Puntero a la interfaz solicitada en pIID. Este miembro debe ser NULL en la entrada.

hr

Valor devuelto de la llamada QueryInterface para buscar la interfaz solicitada. Los valores devueltos comunes incluyen S_OK y E_NOINTERFACE. Este miembro debe ser 0 en la entrada.

Comentarios

Para optimizar el rendimiento de la red, la mayoría de las funciones de activación remota toman una matriz de estructuras de MULTI_QI en lugar de un solo IID como entrada y un único puntero a la interfaz solicitada en el objeto como salida, al igual que las funciones de activación local. Esto permite que un conjunto de punteros a interfaces se devuelvan desde el mismo objeto en un solo recorrido de ida y vuelta al servidor. En escenarios de red, la solicitud de varias interfaces en el momento de la construcción de objetos puede ahorrar mucho tiempo con el uso de una serie de llamadas a QueryInterface para interfaces únicas, cada una de las cuales requeriría un recorrido de ida y vuelta al servidor.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP]
Encabezado objidl.h (incluya Objidl.h)

Consulte también

CoCreateInstanceEx

CoGetInstanceFromFile

CoGetInstanceFromIStorage

IMultiQI