Condividi tramite


struttura MULTI_QI (objidl.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 all'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 all'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 le funzioni di attivazione locale. In questo modo, un set di puntatori alle interfacce deve essere restituito dallo stesso oggetto in un singolo round trip al server. Negli scenari di rete, la richiesta di più interfacce al momento della costruzione di oggetti può risparmiare molto tempo usando 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 objidl.h (include Objidl.h)

Vedi anche

CoCreateInstanceEx

CoGetInstanceFromFile

CoGetInstanceFromIStorage

IMultiQI