DispInvoke.3w

Langue: en

Version: Jun 2009 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

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

Defined in "oleauto.h".

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

Debug channel "ole".