Partager via


COleDispatchDriver::InvokeHelper

Appelle la méthode ou la propriété de l'objet spécifié par dwDispID, dans le contexte spécifié par wFlags.

void AFX_CDECL InvokeHelper( 
   DISPID dwDispID, 
   WORD wFlags, 
   VARTYPE vtRet, 
   void* pvRet, 
   const BYTE* pbParamInfo, 
   ...  
);

Paramètres

  • dwDispID
    Identifie la méthode ou la propriété à appeler.

  • wFlags
    Balises décrivant le contexte de l'appel à IDispatch::Invoke. . Pour obtenir la liste des valeurs possibles, consultez le paramètre d' wFlags dans IDispatch::Invoke dans Kit de développement logiciel Windows.

  • vtRet
    Spécifie le type de la valeur de retour. Pour les valeurs possibles, consultez la section Notes.

  • pvRet
    Adresse de la variable qui reçoit la valeur de propriété ou la valeur de retour. Elle doit correspondre au type spécifié par vtRet.

  • pbParamInfo
    Pointeur vers une chaîne terminée par le caractère NULL des octets spécifier les types des paramètres suivants pbParamInfo.

  • ...
    Liste variable de paramètres, les types spécifiés dans pbParamInfo.

Notes

Le paramètre d' pbParamInfo spécifie les types des paramètres passés à la méthode ou la propriété. La liste d'arguments variable est représentée par ... dans la déclaration de syntaxe.

Les valeurs possibles pour l'argument d' vtRet sont prises de l'énumération d' VARENUM . Les valeurs possibles sont les suivantes :

Symbole

Return Type

VT_EMPTY

void

VT_I2

short

VT_I4

long

VT_R4

float

VT_R8

double

VT_CY

LA CY

VT_DATE

DATE

VT_BSTR

BSTR

VT_DISPATCH

LPDISPATCH

VT_ERROR

SCODE

VT_BOOL

BOOL

VT_VARIANT

VARIANT

VT_UNKNOWN

LPUNKNOWN

L'argument d' pbParamInfo est une liste séparée espace de constantes de VTS_ . Un ou plusieurs de ces valeurs, séparés par des espaces (pas virgules), spécifie la liste de paramètres de la fonction. Les valeurs possibles sont répertoriées avec la macro d' EVENT_CUSTOM .

Cette fonction convertit les paramètres des valeurs de VARIANTARG , puis appelle la méthode d' IDispatch::Invoke . Si l'appel à Invoke échoue, cette fonction lève une exception. Si SCODE (code d'état) se a retourné par IDispatch::Invoke est DISP_E_EXCEPTION, lève de cette fonction un objet de COleException ; sinon il lève COleDispatchException.

Pour plus d'informations, consultez VARIANTARG, Implementing the IDispatch Interface, IDispatch::Invoke, et le structure de codes d'erreur de COM dans Kit de développement logiciel Windows.

Exemple

Consultez l'exemple pour COleDispatchDriver::CreateDispatch.

Configuration requise

Header: afxdisp.h

Voir aussi

Référence

COleDispatchDriver, classe

Graphique de la hiérarchie

COleException, classe

COleDispatchException, classe