Reference

DispInvoke(3w)

NAME

DispInvoke (OLEAUT32.30)

SYNOPSIS

HRESULT DispInvoke
(
VOID* _this,
ITypeInfo* ptinfo,
DISPID dispidMember,
USHORT wFlags,
DISPPARAMS* pparams,
VARIANT* pvarResult,
EXCEPINFO* pexcepinfo,
UINT* puArgErr
)

PARAMS

_this [In] Object to call method on.

ptinfo [In] Object type info.

dispidMember [In] DISPID of the member (e.g. from GetIDsOfNames(3w)).

wFlags [In] Kind of method call (DISPATCH_ flags from "oaidl.h").

pparams [In] Array of method arguments.

pvarResult [Out] Destination for the result of the call.

pexcepinfo [Out] Destination for exception information.

puArgErr [Out] Destination for bad argument.

DESCRIPTION

Call an object method using the information from its type library.

RETURNS

Success: S_OK.

Failure: Returns DISP_E_EXCEPTION and updates pexcepinfo if an exception occurs. DISP_E_BADPARAMCOUNT if the number of parameters is incorrect. DISP_E_MEMBERNOTFOUND if the method does not exist. puArgErr is updated if a parameter error (see notes) occurs. Otherwise, returns the result of calling ITypeInfo_Invoke(3w).

NOTES

Parameter errors include the following:

DISP_E_BADVARTYPE

E_INVALIDARG An argument was invalid

DISP_E_TYPEMISMATCH,

DISP_E_OVERFLOW An argument was valid but could not be coerced

DISP_E_PARAMNOTOPTIONAL A non optional parameter was not passed

DISP_E_PARAMNOTFOUND A parameter was passed that was not expected by the method

This call defers to ITypeInfo_Invoke(3w).

IMPLEMENTATION

Declared in "oleauto.h".

Implemented in "dlls/oleaut32/dispatch.c".

Debug channel "ole".

History