COleDispatchDriver::InvokeHelper
Вызывает метод или свойство объекта dwDispID, в контексте, определенном заданными wFlags.
void AFX_CDECL InvokeHelper(
DISPID dwDispID,
WORD wFlags,
VARTYPE vtRet,
void* pvRet,
const BYTE* pbParamInfo,
...
);
Параметры
dwDispID
Указывает метод или свойство, который необходимо вызвать.wFlags
Флаги, описывающий контекст вызова IDispatch::Invoke. . Список возможных значений см. в описании параметра wFlags в IDispatch::Invoke в Windows SDK.vtRet
Указывает тип возвращаемого значения. Для возможных значений см. в подразделе "Примечания".pvRet
Адрес переменной, которая будет принимать значения свойства или возвращаемого значения. Она должна соответствовать типу, указанному vtRet.pbParamInfo
Указатель на null- завершенной строке байтов, определяющий типы параметров после pbParamInfo....
Переменное число параметров типов, определенных в pbParamInfo.
Заметки
Параметр pbParamInfo определяет типы параметров, переданных методу или свойству. Список аргументов переменной длины представляется ... в объявлении синтаксиса.
Возможные значения для аргумента vtRet берутся из перечисления VARENUM. Ниже приведены возможные значения:
Символ |
Возвращаемый тип |
---|---|
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