Freigeben über


MULTI_QI-Struktur (objidlbase.h)

Stellt eine Schnittstelle in einer Abfrage für mehrere Schnittstellen dar.

Syntax

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

Member

pIID

Ein Zeiger auf einen Schnittstellenbezeichner.

pItf

Ein Zeiger auf die in pIID angeforderte Schnittstelle. Dieser Member muss bei der Eingabe NULL sein.

hr

Der Rückgabewert des QueryInterface-Aufrufs , um die angeforderte Schnittstelle zu suchen. Häufige Rückgabewerte sind S_OK und E_NOINTERFACE. Dieses Element muss bei der Eingabe 0 sein.

Hinweise

Um die Netzwerkleistung zu optimieren, verwenden die meisten Remoteaktivierungsfunktionen ein Array von MULTI_QI-Strukturen und nicht nur eine einzelne IID als Eingabe und einen einzelnen Zeiger auf die angeforderte Schnittstelle im Objekt als Ausgabe, ebenso wie lokale Aktivierungsfunktionen. Dadurch kann eine Reihe von Zeigern auf Schnittstellen vom gleichen Objekt in einem einzigen Roundtrip zum Server zurückgegeben werden. In Netzwerkszenarien kann das Anfordern mehrerer Schnittstellen zum Zeitpunkt der Objekterstellung erheblich zeitsparend sein, wenn eine Reihe von Aufrufen von QueryInterface für eindeutige Schnittstellen verwendet wird, die jeweils einen Roundtrip zum Server erfordern.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [Desktop-Apps | UWP-Apps]
Kopfzeile objidlbase.h (include Objidl.h)

Weitere Informationen

CoCreateInstanceEx

CoGetInstanceFromFile

CoGetInstanceFromIStorage

IMultiQI