DispInvoke

Prototypes

HRESULT DispInvoke(IDispatch *pIDispatch, ITypeInfo *pITypeInfo, DISPID IdentifiantMethode, USHORT Options, DISPPARAMS *TablesParametres, VARIANT *Resultat, EXCEPINFO *Exception, UINT *NumeroParametreEnErreur);

Description

Exécute dynamiquement la méthode identifiée par IdentifiantMethode sur l'objet pIDispatch du type pITypeInfo.

Les paramètres sont transmis via le tableau TablesParametres et le résultat de l'appel est rangé dans Resultat.

Si l'exécution de la méthode est en échec alors :

Exemple

#include <windows.h>
#include <winbase.h>
#include <ole2.h>

IDispatch *pIDispatch;
ITypeInfo *pITypeInfo;
DISPID IdentifiantMethode;
DISPPARAMS TablesParametres[255];
VARIANT Resultat;
EXCEPINFO Exception;
UINT NumeroParametreEnErreur;

...
memset(Resultat,0,sizeof(VARIANT));
memset(Exception,0,sizeof(EXCEPINFO));
NumeroParametreEnErreur=0;
if (DispInvoke(pIDispatch, pITypeInfo, IdentifiantMethode, DISPATCH_METHOD, TablesParametres, &Resultat, &Exception, &NumeroParametreEnErreur)!=S_OK)
...

Avertissement

Le résultat est S_OK en cas de succès.

Voir aussi

DispGetIdsOfNames pour retrouver les identifiants de la méthode et de ses paramètres à partir de leur noms.