Partager via


Interface ICallIndirect (callobj.h)

Appelle un objet avec une référence indirecte aux arguments d’appel, plutôt que l’appel direct traditionnel. Une instance d’ICallIndirect prend en charge les appels indirects pour un seul ID d’interface.

Héritage

L’interface ICallIndirect hérite de l’interface IUnknown. ICallIndirect a également les types de membres suivants :

Méthodes

L’interface ICallIndirect possède ces méthodes.

 
ICallIndirect ::CallIndirect

Appelle l’une des méthodes de l’interface avec une référence indirecte aux arguments de l’appel.
ICallIndirect ::GetIID

Récupère l’ID d’interface pris en charge par cette implémentation ICallIndirect.
ICallIndirect ::GetMethodInfo

Récupère des informations sur la méthode d’interface à partir du cadre d’appel.
ICallIndirect ::GetStackSize

Récupère le nombre d’octets qui doivent être extraits de la pile pour retourner à partir d’un appel de la méthode.

Remarques

La sémantique détaillée réelle de l’exécution d’un appel indirect est indépendante de l’interface ICallIndirect elle-même ; ils sont spécifiques à l’implémentation de l’interface. Par exemple, les implémentations d’ICallIndirect trouvées dans les intercepteurs d’appels effectuent l’appel en construisant et en plaçant les instance ICallFrameFrame appropriés, puis en appelant ICallFrameEvents ::OnCall dans le récepteur inscrit. D’autres implémentations peuvent effectuer une analyse appropriée des arguments d’appel, puis transférer l’appel à un objet spécifique réel, probablement un objet précédemment inscrit auprès de ICallIndirect à l’aide de certains moyens spécifiques à l’implémentation.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête callobj.h

Voir aussi

ICallInterceptor