: IDispatch
{
HRESULT GetDispID(
[in] BSTR bstrName,
[in] DWORD grfdex,
[out] DISPID *pid);
[local]
HRESULT InvokeEx(
[in, annotation("__in")] DISPID id,
[in, annotation("__in")] LCID lcid,
[in, annotation("__in")] WORD wFlags,
[in, annotation("__in")] DISPPARAMS *pdp,
[out, annotation("__out_opt")] VARIANT *pvarRes,
[out, annotation("__out_opt")] EXCEPINFO *pei,
[in, unique, annotation("__in_opt")] IServiceProvider *pspCaller);
[call_as(InvokeEx)]
HRESULT RemoteInvokeEx(
[in] DISPID id,
[in] LCID lcid,
[in] DWORD dwFlags,
[in] DISPPARAMS *pdp,
[out] VARIANT *pvarRes,
[out] EXCEPINFO *pei,
[in, unique] IServiceProvider *pspCaller,
[in] UINT cvarRefArg,
[in, size_is(cvarRefArg)] UINT *rgiRefArg,
[in, out, size_is(cvarRefArg)] VARIANT *rgvarRefArg);
HRESULT DeleteMemberByName(
[in] BSTR bstrName,
[in] DWORD grfdex);
HRESULT DeleteMemberByDispID(
[in] DISPID id);
HRESULT GetMemberProperties(
[in] DISPID id,
[in] DWORD grfdexFetch,
[out] DWORD *pgrfdex);
HRESULT GetMemberName(
[in] DISPID id,
[out] BSTR *pbstrName);
HRESULT GetNextDispID(
[in] DWORD grfdex,
[in] DISPID id,
[out] DISPID *pid);
HRESULT GetNameSpaceParent([out] IUnknown **ppunk);
}