1cpp_quote("/**") 2cpp_quote(" * This file is part of the mingw-w64 runtime package.") 3cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.") 4cpp_quote(" */") 5cpp_quote("") 6 7interface IDispatchEx; 8interface IDispError; 9interface IVariantChangeType; 10 11#ifndef DO_NO_IMPORTS 12import "ocidl.idl"; 13import "oleidl.idl"; 14import "oaidl.idl"; 15import "servprov.idl"; 16#endif 17 18cpp_quote("#ifndef DISPEX_H_") 19cpp_quote("#define DISPEX_H_") 20cpp_quote("") 21cpp_quote("#include <winapifamily.h>") 22cpp_quote("") 23cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") 24cpp_quote("") 25cpp_quote("#include \"servprov.h\"") 26cpp_quote("") 27cpp_quote("#ifndef _NO_DISPATCHEX_GUIDS") 28cpp_quote("") 29 30cpp_quote("DEFINE_GUID(SID_VariantConversion, 0x1f101481, 0xbccd, 0x11d0, 0x93, 0x36, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);") 31cpp_quote("DEFINE_GUID(SID_GetCaller, 0x4717cc40, 0xbcb9, 0x11d0, 0x93, 0x36, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);") 32cpp_quote("DEFINE_GUID(SID_ProvideRuntimeContext, 0x74a5040c, 0xdd0c, 0x48f0, 0xac, 0x85, 0x19, 0x4c, 0x32, 0x59, 0x18, 0xa);") 33cpp_quote("") 34cpp_quote("#define SID_GetScriptSite IID_IActiveScriptSite") 35cpp_quote("#endif") 36cpp_quote("") 37cpp_quote("#ifndef _NO_DISPATCHEX_CONSTS") 38cpp_quote("") 39cpp_quote("#define fdexNameCaseSensitive 0x1") 40cpp_quote("#define fdexNameEnsure 0x2") 41cpp_quote("#define fdexNameImplicit 0x4") 42cpp_quote("#define fdexNameCaseInsensitive 0x8") 43cpp_quote("#define fdexNameInternal 0x10") 44cpp_quote("#define fdexNameNoDynamicProperties 0x20") 45cpp_quote("") 46cpp_quote("#define fdexPropCanGet 0x1") 47cpp_quote("#define fdexPropCannotGet 0x2") 48cpp_quote("#define fdexPropCanPut 0x4") 49cpp_quote("#define fdexPropCannotPut 0x8") 50cpp_quote("#define fdexPropCanPutRef 0x10") 51cpp_quote("#define fdexPropCannotPutRef 0x20") 52cpp_quote("#define fdexPropNoSideEffects 0x40") 53cpp_quote("#define fdexPropDynamicType 0x80") 54cpp_quote("#define fdexPropCanCall 0x100") 55cpp_quote("#define fdexPropCannotCall 0x200") 56cpp_quote("#define fdexPropCanConstruct 0x400") 57cpp_quote("#define fdexPropCannotConstruct 0x800") 58cpp_quote("#define fdexPropCanSourceEvents 0x1000") 59cpp_quote("#define fdexPropCannotSourceEvents 0x02000") 60cpp_quote("") 61cpp_quote("#define grfdexPropCanAll (fdexPropCanGet | fdexPropCanPut | fdexPropCanPutRef | fdexPropCanCall | fdexPropCanConstruct | fdexPropCanSourceEvents)") 62cpp_quote("#define grfdexPropCannotAll (fdexPropCannotGet | fdexPropCannotPut | fdexPropCannotPutRef | fdexPropCannotCall | fdexPropCannotConstruct | fdexPropCannotSourceEvents)") 63cpp_quote("#define grfdexPropExtraAll (fdexPropNoSideEffects | fdexPropDynamicType)") 64cpp_quote("#define grfdexPropAll (grfdexPropCanAll | grfdexPropCannotAll | grfdexPropExtraAll)") 65cpp_quote("") 66cpp_quote("#define fdexEnumDefault 0x1") 67cpp_quote("#define fdexEnumAll 0x2") 68cpp_quote("") 69cpp_quote("#define DISPATCH_CONSTRUCT 0x4000") 70cpp_quote("#define DISPID_THIS (-613)") 71cpp_quote("#define DISPID_STARTENUM DISPID_UNKNOWN") 72cpp_quote("#endif") 73cpp_quote("") 74 75[object, uuid (a6ef9860-c720-11d0-9337-00a0c90dcaa9), pointer_default (unique)] 76interface IDispatchEx : IDispatch { 77 HRESULT GetDispID ([in] BSTR bstrName,[in] DWORD grfdex,[out] DISPID *pid); 78 [local] HRESULT InvokeEx ([in] DISPID id,[in] LCID lcid,[in] WORD wFlags,[in] DISPPARAMS *pdp,[out] VARIANT *pvarRes,[out] EXCEPINFO *pei,[in, unique] IServiceProvider *pspCaller); 79 [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); 80 HRESULT DeleteMemberByName ([in] BSTR bstrName,[in] DWORD grfdex); 81 HRESULT DeleteMemberByDispID ([in] DISPID id); 82 HRESULT GetMemberProperties ([in] DISPID id,[in] DWORD grfdexFetch,[out] DWORD *pgrfdex); 83 HRESULT GetMemberName ([in] DISPID id,[out] BSTR *pbstrName); 84 HRESULT GetNextDispID ([in] DWORD grfdex,[in] DISPID id,[out] DISPID *pid); 85 HRESULT GetNameSpaceParent ([out] IUnknown **ppunk); 86}; 87 88[object, uuid (a6ef9861-c720-11d0-9337-00a0c90dcaa9), pointer_default (unique)] 89interface IDispError : IUnknown { 90 HRESULT QueryErrorInfo ([in] GUID guidErrorType,[out] IDispError **ppde); 91 HRESULT GetNext ([out] IDispError **ppde); 92 HRESULT GetHresult ([out] HRESULT *phr); 93 HRESULT GetSource ([out] BSTR *pbstrSource); 94 HRESULT GetHelpInfo ([out] BSTR *pbstrFileName,[out] DWORD *pdwContext); 95 HRESULT GetDescription ([out] BSTR *pbstrDescription); 96}; 97 98[object, uuid (a6ef9862-c720-11d0-9337-00a0c90dcaa9), pointer_default (unique)] 99interface IVariantChangeType : IUnknown { 100 HRESULT ChangeType ([in, out, unique] VARIANT *pvarDst,[in, unique] VARIANT *pvarSrc,[in] LCID lcid,[in] VARTYPE vtNew); 101}; 102 103[object, uuid (ca04b7e6-0d21-11d1-8cc5-00c04fc2b085), pointer_default (unique)] 104interface IObjectIdentity : IUnknown { 105 HRESULT IsEqualObject ([in] IUnknown *punk); 106}; 107 108[object, uuid (c5598e60-b307-11d1-b27d-006008c3fbfb), pointer_default (unique)] 109interface ICanHandleException : IUnknown { 110 HRESULT CanHandleException ([in] EXCEPINFO *pExcepInfo,[in] VARIANT *pvar); 111}; 112 113[object, uuid (10e2414a-ec59-49d2-bc51-5add2c36febc), pointer_default (unique)] 114interface IProvideRuntimeContext : IUnknown { 115 HRESULT GetCurrentSourceContext ([out] DWORD_PTR *pdwContext,[out] VARIANT_BOOL *pfExecutingGlobalCode); 116}; 117 118cpp_quote("#endif") 119cpp_quote("#endif") 120