Condividi tramite


MULTI_QI struttura (objidlbase.h)

Rappresenta un'interfaccia in una query per più interfacce.

Sintassi

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

Members

pIID

Puntatore a un identificatore di interfaccia.

pItf

Puntatore all'interfaccia richiesta in pIID. Questo membro deve essere NULL nell'input.

hr

Valore restituito della chiamata QueryInterface per individuare l'interfaccia richiesta. I valori restituiti comuni includono S_OK e E_NOINTERFACE. Questo membro deve essere 0 in input.

Commenti

Per ottimizzare le prestazioni di rete, la maggior parte delle funzioni di attivazione remota accetta una matrice di strutture MULTI_QI anziché solo un singolo IID come input e un singolo puntatore all'interfaccia richiesta nell'oggetto come output, come funzionano le funzioni di attivazione locali. Ciò consente di restituire un set di puntatori alle interfacce dallo stesso oggetto in un singolo round trip al server. Negli scenari di rete, la richiesta di più interfacce al momento della costruzione dell'oggetto può risparmiare tempo durante l'uso di una serie di chiamate a QueryInterface per interfacce univoche, ognuna delle quali richiederebbe un round trip al server.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Intestazione objidlbase.h (include Objidl.h)

Vedi anche

CoCreateInstanceEx

CoGetInstanceFromFile

CoGetInstanceFromIStorage

IMultiQI