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。
有关更多信息,请参见 VARIANTARG、 Implementing the IDispatch Interface、 IDispatch::Invoke和 COM错误代码结构 在 Windows SDK。
示例
为 COleDispatchDriver::CreateDispatch参见示例。
要求
Header: afxdisp.h