COleDispatchDriver::InvokeHelper

调用 dwDispID或属性指定的对象的方法,在 wFlags指定的上下文。

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

参数

  • dwDispID
    标识要调用的方法或属性。

  • wFlags
    描述调用上下文的标志传递给 IDispatch::Invoke。 . 有关可能值列表,请参见。IDispatch::Invoke 的 wFlags 参数在 Windows SDK。

  • vtRet
    指定返回值的类型。 有关可能的值,请参见"备注"节。

  • pvRet
    将接收属性值或返回值变量的地址。 它必须与 vtRet指定的类型。

  • pbParamInfo
    为字节一个Null结尾的字符串的指针指定参数的类型。pbParamInfo之后。

  • ...
    变量参数列表在 pbParamInfo指定的,的类型。

备注

pbParamInfo 参数指定参数的类型传递给方法或属性。 变量参数列表由语法声明的 ... 表示。

vtRet 参数的可能值从 VARENUM 枚举中采用。 可能值如下:

符号

Return Type

VT_EMPTY

void

VT_I2

short

VT_I4

long

VT_R4

float

VT_R8

double

VT_CY

CY

VT_DATE

DATE

VT_BSTR

BSTR

VT_DISPATCH

LPDISPATCH

VT_ERROR

SCODE

VT_BOOL

BOOL

VT_VARIANT

VARIANT

VT_UNKNOWN

LPUNKNOWN

pbParamInfo 参数是空格分隔的列表 VTS_ 常数。 一个或多个值,由空格分隔。(不是逗号),指定函数的参数列表。 可能值列表与 EVENT_CUSTOM 宏。

此功能将参数转换为 VARIANTARG 值,然后调用 IDispatch::Invoke 方法。 如果对 Invoke 的调用失败,此功能将引发异常。 如果 SCODE (状态代码)。IDispatch::Invoke 返回一 DISP_E_EXCEPTION,此函数引发 COleException 对象;否则会引发 COleDispatchException

有关更多信息,请参见 VARIANTARGImplementing the IDispatch InterfaceIDispatch::InvokeCOM错误代码结构 在 Windows SDK。

示例

COleDispatchDriver::CreateDispatch参见示例。

要求

Header: afxdisp.h

请参见

参考

COleDispatchDriver选件类

层次结构图

COleException选件类

COleDispatchException选件类