estrutura MULTI_QI (objidl.h)

Representa uma interface em uma consulta para várias interfaces.

Sintaxe

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

Membros

pIID

Um ponteiro para um identificador de interface.

pItf

Um ponteiro para a interface solicitada em pIID. Esse membro deve ser NULL na entrada.

hr

O valor retornado da chamada QueryInterface para localizar a interface solicitada. Os valores retornados comuns incluem S_OK e E_NOINTERFACE. Esse membro deve ser 0 na entrada.

Comentários

Para otimizar o desempenho da rede, a maioria das funções de ativação remota usa uma matriz de estruturas MULTI_QI em vez de apenas um único IID como entrada e um único ponteiro para a interface solicitada no objeto como saída, assim como as funções de ativação local. Isso permite que um conjunto de ponteiros para interfaces seja retornado do mesmo objeto em uma única viagem de ida e volta para o servidor. Em cenários de rede, solicitar várias interfaces no momento da construção do objeto pode economizar tempo considerável ao usar várias chamadas para QueryInterface para interfaces exclusivas, cada uma das quais exigiria uma viagem de ida e volta para o servidor.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Cabeçalho objidl.h (inclua Objidl.h)

Confira também

Cocreateinstanceex

CoGetInstanceFromFile

CoGetInstanceFromIStorage

IMultiQI