Freigeben über


ICallIndirect-Schnittstelle (callobj.h)

Ruft ein -Objekt mit einem indirekten Verweis auf die Aufrufargumente anstelle des herkömmlichen direkten Aufrufs auf. Eine instance von ICallIndirect unterstützt indirekte Aufrufe nur für eine Schnittstellen-ID.

Vererbung

Die ICallIndirect-Schnittstelle erbt von der IUnknown-Schnittstelle . ICallIndirect verfügt auch über folgende Arten von Membern:

Methoden

Die ICallIndirect-Schnittstelle verfügt über diese Methoden.

 
ICallIndirect::CallIndirect

Ruft eine der Methoden in der -Schnittstelle mit einem indirekten Verweis auf die Argumente des Aufrufs auf.
ICallIndirect::GetIID

Ruft die von dieser ICallIndirect-Implementierung unterstützte Schnittstellen-ID ab.
ICallIndirect::GetMethodInfo

Ruft Informationen zur Schnittstellenmethode aus dem Aufrufframe ab.
ICallIndirect::GetStackSize

Ruft die Anzahl der Bytes ab, die aus dem Stapel geknallt werden sollen, um von einem Aufruf der -Methode zurückzugeben.

Hinweise

Die tatsächliche detaillierte Semantik der Ausführung eines indirekten Aufrufs ist unabhängig von der ICallIndirect-Schnittstelle selbst; sie sind stattdessen spezifisch für die Implementierung der Schnittstelle. Beispielsweise führen Implementierungen von ICallIndirect, die in Anruf-Interceptors gefunden wurden, den Aufruf durch, indem sie den entsprechenden ICallFrame-instance erstellen und dann ICallFrameEvents::OnCall in der registrierten Senke aufrufen. Andere Implementierungen können die Aufrufargumente in angemessener Weise munging durchführen und dann den Aufruf an ein tatsächliches spezifisches Objekt weiterleiten, vermutlich eines, das zuvor mit implementierungsspezifischen Mitteln bei ICallIndirect registriert wurde.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile callobj.h

Weitere Informationen

ICallInterceptor