Share via


Interfaz ICallIndirect (callobj.h)

Invoca un objeto con una referencia indirecta a los argumentos de invocaciones, en lugar de la llamada directa tradicional. Una instancia de ICallIndirect admite invocaciones indirectas solo para un identificador de interfaz.

Herencia

La interfaz ICallIndirect hereda de la interfaz IUnknown . ICallIndirect también tiene estos tipos de miembros:

Métodos

La interfaz ICallIndirect tiene estos métodos.

 
ICallIndirect::CallIndirect

Invoca uno de los métodos de la interfaz con una referencia indirecta a los argumentos de la invocación.
ICallIndirect::GetIID

Recupera el identificador de interfaz admitido por esta implementación de ICallIndirect.
ICallIndirect::GetMethodInfo

Recupera información sobre el método de interfaz del marco de llamada.
ICallIndirect::GetStackSize

Recupera el número de bytes que se deben extraer de la pila para devolver de una invocación del método .

Comentarios

La semántica detallada real de cómo llevar a cabo una llamada indirecta es independiente de la propia interfaz ICallIndirect ; en su lugar son específicos de la implementación de la interfaz. Por ejemplo, las implementaciones de ICallIndirect encontradas en los interceptores de llamadas llevan a cabo la llamada mediante la construcción y la instancia de ICallFrame adecuada y, a continuación, invocando ICallFrameEvents::OnCall en el receptor registrado. Otras implementaciones pueden hacer algún munging adecuado de los argumentos de invocaciones y, a continuación, reenviar la llamada a algún objeto específico real, presumiblemente uno registrado anteriormente con ICallIndirect mediante algunos medios específicos de la implementación.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado callobj.h

Consulte también

ICallInterceptor