master
  1/*** Autogenerated by WIDL 10.4 from include/dispex.idl - Do not edit ***/
  2
  3#ifdef _WIN32
  4#ifndef __REQUIRED_RPCNDR_H_VERSION__
  5#define __REQUIRED_RPCNDR_H_VERSION__ 475
  6#endif
  7#include <rpc.h>
  8#include <rpcndr.h>
  9#endif
 10
 11#ifndef COM_NO_WINDOWS_H
 12#include <windows.h>
 13#include <ole2.h>
 14#endif
 15
 16#ifndef __dispex_h__
 17#define __dispex_h__
 18
 19/* Forward declarations */
 20
 21#ifndef __IDispatchEx_FWD_DEFINED__
 22#define __IDispatchEx_FWD_DEFINED__
 23typedef interface IDispatchEx IDispatchEx;
 24#ifdef __cplusplus
 25interface IDispatchEx;
 26#endif /* __cplusplus */
 27#endif
 28
 29#ifndef __IDispError_FWD_DEFINED__
 30#define __IDispError_FWD_DEFINED__
 31typedef interface IDispError IDispError;
 32#ifdef __cplusplus
 33interface IDispError;
 34#endif /* __cplusplus */
 35#endif
 36
 37#ifndef __IVariantChangeType_FWD_DEFINED__
 38#define __IVariantChangeType_FWD_DEFINED__
 39typedef interface IVariantChangeType IVariantChangeType;
 40#ifdef __cplusplus
 41interface IVariantChangeType;
 42#endif /* __cplusplus */
 43#endif
 44
 45#ifndef __IObjectIdentity_FWD_DEFINED__
 46#define __IObjectIdentity_FWD_DEFINED__
 47typedef interface IObjectIdentity IObjectIdentity;
 48#ifdef __cplusplus
 49interface IObjectIdentity;
 50#endif /* __cplusplus */
 51#endif
 52
 53#ifndef __ICanHandleException_FWD_DEFINED__
 54#define __ICanHandleException_FWD_DEFINED__
 55typedef interface ICanHandleException ICanHandleException;
 56#ifdef __cplusplus
 57interface ICanHandleException;
 58#endif /* __cplusplus */
 59#endif
 60
 61#ifndef __IProvideRuntimeContext_FWD_DEFINED__
 62#define __IProvideRuntimeContext_FWD_DEFINED__
 63typedef interface IProvideRuntimeContext IProvideRuntimeContext;
 64#ifdef __cplusplus
 65interface IProvideRuntimeContext;
 66#endif /* __cplusplus */
 67#endif
 68
 69/* Headers for imported files */
 70
 71#include <ocidl.h>
 72#include <oleidl.h>
 73#include <oaidl.h>
 74#include <servprov.h>
 75
 76#ifdef __cplusplus
 77extern "C" {
 78#endif
 79
 80/**
 81 * This file is part of the mingw-w64 runtime package.
 82 * No warranty is given; refer to the file DISCLAIMER within this package.
 83 */
 84
 85#ifndef __IDispatchEx_FWD_DEFINED__
 86#define __IDispatchEx_FWD_DEFINED__
 87typedef interface IDispatchEx IDispatchEx;
 88#ifdef __cplusplus
 89interface IDispatchEx;
 90#endif /* __cplusplus */
 91#endif
 92
 93#ifndef __IDispError_FWD_DEFINED__
 94#define __IDispError_FWD_DEFINED__
 95typedef interface IDispError IDispError;
 96#ifdef __cplusplus
 97interface IDispError;
 98#endif /* __cplusplus */
 99#endif
100
101#ifndef __IVariantChangeType_FWD_DEFINED__
102#define __IVariantChangeType_FWD_DEFINED__
103typedef interface IVariantChangeType IVariantChangeType;
104#ifdef __cplusplus
105interface IVariantChangeType;
106#endif /* __cplusplus */
107#endif
108
109#ifndef DISPEX_H_
110#define DISPEX_H_
111
112#include <winapifamily.h>
113
114#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
115
116#include "servprov.h"
117
118#ifndef _NO_DISPATCHEX_GUIDS
119
120DEFINE_GUID(SID_VariantConversion, 0x1f101481, 0xbccd, 0x11d0, 0x93, 0x36, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
121DEFINE_GUID(SID_GetCaller, 0x4717cc40, 0xbcb9, 0x11d0, 0x93, 0x36, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
122DEFINE_GUID(SID_ProvideRuntimeContext, 0x74a5040c, 0xdd0c, 0x48f0, 0xac, 0x85, 0x19, 0x4c, 0x32, 0x59, 0x18, 0xa);
123
124#define SID_GetScriptSite IID_IActiveScriptSite
125#endif
126
127#ifndef _NO_DISPATCHEX_CONSTS
128
129#define fdexNameCaseSensitive 0x1
130#define fdexNameEnsure 0x2
131#define fdexNameImplicit 0x4
132#define fdexNameCaseInsensitive 0x8
133#define fdexNameInternal 0x10
134#define fdexNameNoDynamicProperties 0x20
135
136#define fdexPropCanGet 0x1
137#define fdexPropCannotGet 0x2
138#define fdexPropCanPut 0x4
139#define fdexPropCannotPut 0x8
140#define fdexPropCanPutRef 0x10
141#define fdexPropCannotPutRef 0x20
142#define fdexPropNoSideEffects 0x40
143#define fdexPropDynamicType 0x80
144#define fdexPropCanCall 0x100
145#define fdexPropCannotCall 0x200
146#define fdexPropCanConstruct 0x400
147#define fdexPropCannotConstruct 0x800
148#define fdexPropCanSourceEvents 0x1000
149#define fdexPropCannotSourceEvents 0x02000
150
151#define grfdexPropCanAll (fdexPropCanGet | fdexPropCanPut | fdexPropCanPutRef | fdexPropCanCall | fdexPropCanConstruct | fdexPropCanSourceEvents)
152#define grfdexPropCannotAll (fdexPropCannotGet | fdexPropCannotPut | fdexPropCannotPutRef | fdexPropCannotCall | fdexPropCannotConstruct | fdexPropCannotSourceEvents)
153#define grfdexPropExtraAll (fdexPropNoSideEffects | fdexPropDynamicType)
154#define grfdexPropAll (grfdexPropCanAll | grfdexPropCannotAll | grfdexPropExtraAll)
155
156#define fdexEnumDefault 0x1
157#define fdexEnumAll 0x2
158
159#define DISPATCH_CONSTRUCT 0x4000
160#define DISPID_THIS (-613)
161#define DISPID_STARTENUM DISPID_UNKNOWN
162#endif
163
164/*****************************************************************************
165 * IDispatchEx interface
166 */
167#ifndef __IDispatchEx_INTERFACE_DEFINED__
168#define __IDispatchEx_INTERFACE_DEFINED__
169
170DEFINE_GUID(IID_IDispatchEx, 0xa6ef9860, 0xc720, 0x11d0, 0x93,0x37, 0x00,0xa0,0xc9,0x0d,0xca,0xa9);
171#if defined(__cplusplus) && !defined(CINTERFACE)
172MIDL_INTERFACE("a6ef9860-c720-11d0-9337-00a0c90dcaa9")
173IDispatchEx : public IDispatch
174{
175    virtual HRESULT STDMETHODCALLTYPE GetDispID(
176        BSTR bstrName,
177        DWORD grfdex,
178        DISPID *pid) = 0;
179
180    virtual HRESULT STDMETHODCALLTYPE InvokeEx(
181        DISPID id,
182        LCID lcid,
183        WORD wFlags,
184        DISPPARAMS *pdp,
185        VARIANT *pvarRes,
186        EXCEPINFO *pei,
187        IServiceProvider *pspCaller) = 0;
188
189    virtual HRESULT STDMETHODCALLTYPE DeleteMemberByName(
190        BSTR bstrName,
191        DWORD grfdex) = 0;
192
193    virtual HRESULT STDMETHODCALLTYPE DeleteMemberByDispID(
194        DISPID id) = 0;
195
196    virtual HRESULT STDMETHODCALLTYPE GetMemberProperties(
197        DISPID id,
198        DWORD grfdexFetch,
199        DWORD *pgrfdex) = 0;
200
201    virtual HRESULT STDMETHODCALLTYPE GetMemberName(
202        DISPID id,
203        BSTR *pbstrName) = 0;
204
205    virtual HRESULT STDMETHODCALLTYPE GetNextDispID(
206        DWORD grfdex,
207        DISPID id,
208        DISPID *pid) = 0;
209
210    virtual HRESULT STDMETHODCALLTYPE GetNameSpaceParent(
211        IUnknown **ppunk) = 0;
212
213};
214#ifdef __CRT_UUID_DECL
215__CRT_UUID_DECL(IDispatchEx, 0xa6ef9860, 0xc720, 0x11d0, 0x93,0x37, 0x00,0xa0,0xc9,0x0d,0xca,0xa9)
216#endif
217#else
218typedef struct IDispatchExVtbl {
219    BEGIN_INTERFACE
220
221    /*** IUnknown methods ***/
222    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
223        IDispatchEx *This,
224        REFIID riid,
225        void **ppvObject);
226
227    ULONG (STDMETHODCALLTYPE *AddRef)(
228        IDispatchEx *This);
229
230    ULONG (STDMETHODCALLTYPE *Release)(
231        IDispatchEx *This);
232
233    /*** IDispatch methods ***/
234    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
235        IDispatchEx *This,
236        UINT *pctinfo);
237
238    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
239        IDispatchEx *This,
240        UINT iTInfo,
241        LCID lcid,
242        ITypeInfo **ppTInfo);
243
244    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
245        IDispatchEx *This,
246        REFIID riid,
247        LPOLESTR *rgszNames,
248        UINT cNames,
249        LCID lcid,
250        DISPID *rgDispId);
251
252    HRESULT (STDMETHODCALLTYPE *Invoke)(
253        IDispatchEx *This,
254        DISPID dispIdMember,
255        REFIID riid,
256        LCID lcid,
257        WORD wFlags,
258        DISPPARAMS *pDispParams,
259        VARIANT *pVarResult,
260        EXCEPINFO *pExcepInfo,
261        UINT *puArgErr);
262
263    /*** IDispatchEx methods ***/
264    HRESULT (STDMETHODCALLTYPE *GetDispID)(
265        IDispatchEx *This,
266        BSTR bstrName,
267        DWORD grfdex,
268        DISPID *pid);
269
270    HRESULT (STDMETHODCALLTYPE *InvokeEx)(
271        IDispatchEx *This,
272        DISPID id,
273        LCID lcid,
274        WORD wFlags,
275        DISPPARAMS *pdp,
276        VARIANT *pvarRes,
277        EXCEPINFO *pei,
278        IServiceProvider *pspCaller);
279
280    HRESULT (STDMETHODCALLTYPE *DeleteMemberByName)(
281        IDispatchEx *This,
282        BSTR bstrName,
283        DWORD grfdex);
284
285    HRESULT (STDMETHODCALLTYPE *DeleteMemberByDispID)(
286        IDispatchEx *This,
287        DISPID id);
288
289    HRESULT (STDMETHODCALLTYPE *GetMemberProperties)(
290        IDispatchEx *This,
291        DISPID id,
292        DWORD grfdexFetch,
293        DWORD *pgrfdex);
294
295    HRESULT (STDMETHODCALLTYPE *GetMemberName)(
296        IDispatchEx *This,
297        DISPID id,
298        BSTR *pbstrName);
299
300    HRESULT (STDMETHODCALLTYPE *GetNextDispID)(
301        IDispatchEx *This,
302        DWORD grfdex,
303        DISPID id,
304        DISPID *pid);
305
306    HRESULT (STDMETHODCALLTYPE *GetNameSpaceParent)(
307        IDispatchEx *This,
308        IUnknown **ppunk);
309
310    END_INTERFACE
311} IDispatchExVtbl;
312
313interface IDispatchEx {
314    CONST_VTBL IDispatchExVtbl* lpVtbl;
315};
316
317#ifdef COBJMACROS
318#ifndef WIDL_C_INLINE_WRAPPERS
319/*** IUnknown methods ***/
320#define IDispatchEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
321#define IDispatchEx_AddRef(This) (This)->lpVtbl->AddRef(This)
322#define IDispatchEx_Release(This) (This)->lpVtbl->Release(This)
323/*** IDispatch methods ***/
324#define IDispatchEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
325#define IDispatchEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
326#define IDispatchEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
327#define IDispatchEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
328/*** IDispatchEx methods ***/
329#define IDispatchEx_GetDispID(This,bstrName,grfdex,pid) (This)->lpVtbl->GetDispID(This,bstrName,grfdex,pid)
330#define IDispatchEx_InvokeEx(This,id,lcid,wFlags,pdp,pvarRes,pei,pspCaller) (This)->lpVtbl->InvokeEx(This,id,lcid,wFlags,pdp,pvarRes,pei,pspCaller)
331#define IDispatchEx_DeleteMemberByName(This,bstrName,grfdex) (This)->lpVtbl->DeleteMemberByName(This,bstrName,grfdex)
332#define IDispatchEx_DeleteMemberByDispID(This,id) (This)->lpVtbl->DeleteMemberByDispID(This,id)
333#define IDispatchEx_GetMemberProperties(This,id,grfdexFetch,pgrfdex) (This)->lpVtbl->GetMemberProperties(This,id,grfdexFetch,pgrfdex)
334#define IDispatchEx_GetMemberName(This,id,pbstrName) (This)->lpVtbl->GetMemberName(This,id,pbstrName)
335#define IDispatchEx_GetNextDispID(This,grfdex,id,pid) (This)->lpVtbl->GetNextDispID(This,grfdex,id,pid)
336#define IDispatchEx_GetNameSpaceParent(This,ppunk) (This)->lpVtbl->GetNameSpaceParent(This,ppunk)
337#else
338/*** IUnknown methods ***/
339static inline HRESULT IDispatchEx_QueryInterface(IDispatchEx* This,REFIID riid,void **ppvObject) {
340    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
341}
342static inline ULONG IDispatchEx_AddRef(IDispatchEx* This) {
343    return This->lpVtbl->AddRef(This);
344}
345static inline ULONG IDispatchEx_Release(IDispatchEx* This) {
346    return This->lpVtbl->Release(This);
347}
348/*** IDispatch methods ***/
349static inline HRESULT IDispatchEx_GetTypeInfoCount(IDispatchEx* This,UINT *pctinfo) {
350    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
351}
352static inline HRESULT IDispatchEx_GetTypeInfo(IDispatchEx* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
353    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
354}
355static inline HRESULT IDispatchEx_GetIDsOfNames(IDispatchEx* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
356    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
357}
358static inline HRESULT IDispatchEx_Invoke(IDispatchEx* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
359    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
360}
361/*** IDispatchEx methods ***/
362static inline HRESULT IDispatchEx_GetDispID(IDispatchEx* This,BSTR bstrName,DWORD grfdex,DISPID *pid) {
363    return This->lpVtbl->GetDispID(This,bstrName,grfdex,pid);
364}
365static inline HRESULT IDispatchEx_InvokeEx(IDispatchEx* This,DISPID id,LCID lcid,WORD wFlags,DISPPARAMS *pdp,VARIANT *pvarRes,EXCEPINFO *pei,IServiceProvider *pspCaller) {
366    return This->lpVtbl->InvokeEx(This,id,lcid,wFlags,pdp,pvarRes,pei,pspCaller);
367}
368static inline HRESULT IDispatchEx_DeleteMemberByName(IDispatchEx* This,BSTR bstrName,DWORD grfdex) {
369    return This->lpVtbl->DeleteMemberByName(This,bstrName,grfdex);
370}
371static inline HRESULT IDispatchEx_DeleteMemberByDispID(IDispatchEx* This,DISPID id) {
372    return This->lpVtbl->DeleteMemberByDispID(This,id);
373}
374static inline HRESULT IDispatchEx_GetMemberProperties(IDispatchEx* This,DISPID id,DWORD grfdexFetch,DWORD *pgrfdex) {
375    return This->lpVtbl->GetMemberProperties(This,id,grfdexFetch,pgrfdex);
376}
377static inline HRESULT IDispatchEx_GetMemberName(IDispatchEx* This,DISPID id,BSTR *pbstrName) {
378    return This->lpVtbl->GetMemberName(This,id,pbstrName);
379}
380static inline HRESULT IDispatchEx_GetNextDispID(IDispatchEx* This,DWORD grfdex,DISPID id,DISPID *pid) {
381    return This->lpVtbl->GetNextDispID(This,grfdex,id,pid);
382}
383static inline HRESULT IDispatchEx_GetNameSpaceParent(IDispatchEx* This,IUnknown **ppunk) {
384    return This->lpVtbl->GetNameSpaceParent(This,ppunk);
385}
386#endif
387#endif
388
389#endif
390
391HRESULT STDMETHODCALLTYPE IDispatchEx_RemoteInvokeEx_Proxy(
392    IDispatchEx* This,
393    DISPID id,
394    LCID lcid,
395    DWORD dwFlags,
396    DISPPARAMS *pdp,
397    VARIANT *pvarRes,
398    EXCEPINFO *pei,
399    IServiceProvider *pspCaller,
400    UINT cvarRefArg,
401    UINT *rgiRefArg,
402    VARIANT *rgvarRefArg);
403void __RPC_STUB IDispatchEx_RemoteInvokeEx_Stub(
404    IRpcStubBuffer* This,
405    IRpcChannelBuffer* pRpcChannelBuffer,
406    PRPC_MESSAGE pRpcMessage,
407    DWORD* pdwStubPhase);
408HRESULT CALLBACK IDispatchEx_InvokeEx_Proxy(
409    IDispatchEx* This,
410    DISPID id,
411    LCID lcid,
412    WORD wFlags,
413    DISPPARAMS *pdp,
414    VARIANT *pvarRes,
415    EXCEPINFO *pei,
416    IServiceProvider *pspCaller);
417HRESULT __RPC_STUB IDispatchEx_InvokeEx_Stub(
418    IDispatchEx* This,
419    DISPID id,
420    LCID lcid,
421    DWORD dwFlags,
422    DISPPARAMS *pdp,
423    VARIANT *pvarRes,
424    EXCEPINFO *pei,
425    IServiceProvider *pspCaller,
426    UINT cvarRefArg,
427    UINT *rgiRefArg,
428    VARIANT *rgvarRefArg);
429
430#endif  /* __IDispatchEx_INTERFACE_DEFINED__ */
431
432/*****************************************************************************
433 * IDispError interface
434 */
435#ifndef __IDispError_INTERFACE_DEFINED__
436#define __IDispError_INTERFACE_DEFINED__
437
438DEFINE_GUID(IID_IDispError, 0xa6ef9861, 0xc720, 0x11d0, 0x93,0x37, 0x00,0xa0,0xc9,0x0d,0xca,0xa9);
439#if defined(__cplusplus) && !defined(CINTERFACE)
440MIDL_INTERFACE("a6ef9861-c720-11d0-9337-00a0c90dcaa9")
441IDispError : public IUnknown
442{
443    virtual HRESULT STDMETHODCALLTYPE QueryErrorInfo(
444        GUID guidErrorType,
445        IDispError **ppde) = 0;
446
447    virtual HRESULT STDMETHODCALLTYPE GetNext(
448        IDispError **ppde) = 0;
449
450    virtual HRESULT STDMETHODCALLTYPE GetHresult(
451        HRESULT *phr) = 0;
452
453    virtual HRESULT STDMETHODCALLTYPE GetSource(
454        BSTR *pbstrSource) = 0;
455
456    virtual HRESULT STDMETHODCALLTYPE GetHelpInfo(
457        BSTR *pbstrFileName,
458        DWORD *pdwContext) = 0;
459
460    virtual HRESULT STDMETHODCALLTYPE GetDescription(
461        BSTR *pbstrDescription) = 0;
462
463};
464#ifdef __CRT_UUID_DECL
465__CRT_UUID_DECL(IDispError, 0xa6ef9861, 0xc720, 0x11d0, 0x93,0x37, 0x00,0xa0,0xc9,0x0d,0xca,0xa9)
466#endif
467#else
468typedef struct IDispErrorVtbl {
469    BEGIN_INTERFACE
470
471    /*** IUnknown methods ***/
472    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
473        IDispError *This,
474        REFIID riid,
475        void **ppvObject);
476
477    ULONG (STDMETHODCALLTYPE *AddRef)(
478        IDispError *This);
479
480    ULONG (STDMETHODCALLTYPE *Release)(
481        IDispError *This);
482
483    /*** IDispError methods ***/
484    HRESULT (STDMETHODCALLTYPE *QueryErrorInfo)(
485        IDispError *This,
486        GUID guidErrorType,
487        IDispError **ppde);
488
489    HRESULT (STDMETHODCALLTYPE *GetNext)(
490        IDispError *This,
491        IDispError **ppde);
492
493    HRESULT (STDMETHODCALLTYPE *GetHresult)(
494        IDispError *This,
495        HRESULT *phr);
496
497    HRESULT (STDMETHODCALLTYPE *GetSource)(
498        IDispError *This,
499        BSTR *pbstrSource);
500
501    HRESULT (STDMETHODCALLTYPE *GetHelpInfo)(
502        IDispError *This,
503        BSTR *pbstrFileName,
504        DWORD *pdwContext);
505
506    HRESULT (STDMETHODCALLTYPE *GetDescription)(
507        IDispError *This,
508        BSTR *pbstrDescription);
509
510    END_INTERFACE
511} IDispErrorVtbl;
512
513interface IDispError {
514    CONST_VTBL IDispErrorVtbl* lpVtbl;
515};
516
517#ifdef COBJMACROS
518#ifndef WIDL_C_INLINE_WRAPPERS
519/*** IUnknown methods ***/
520#define IDispError_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
521#define IDispError_AddRef(This) (This)->lpVtbl->AddRef(This)
522#define IDispError_Release(This) (This)->lpVtbl->Release(This)
523/*** IDispError methods ***/
524#define IDispError_QueryErrorInfo(This,guidErrorType,ppde) (This)->lpVtbl->QueryErrorInfo(This,guidErrorType,ppde)
525#define IDispError_GetNext(This,ppde) (This)->lpVtbl->GetNext(This,ppde)
526#define IDispError_GetHresult(This,phr) (This)->lpVtbl->GetHresult(This,phr)
527#define IDispError_GetSource(This,pbstrSource) (This)->lpVtbl->GetSource(This,pbstrSource)
528#define IDispError_GetHelpInfo(This,pbstrFileName,pdwContext) (This)->lpVtbl->GetHelpInfo(This,pbstrFileName,pdwContext)
529#define IDispError_GetDescription(This,pbstrDescription) (This)->lpVtbl->GetDescription(This,pbstrDescription)
530#else
531/*** IUnknown methods ***/
532static inline HRESULT IDispError_QueryInterface(IDispError* This,REFIID riid,void **ppvObject) {
533    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
534}
535static inline ULONG IDispError_AddRef(IDispError* This) {
536    return This->lpVtbl->AddRef(This);
537}
538static inline ULONG IDispError_Release(IDispError* This) {
539    return This->lpVtbl->Release(This);
540}
541/*** IDispError methods ***/
542static inline HRESULT IDispError_QueryErrorInfo(IDispError* This,GUID guidErrorType,IDispError **ppde) {
543    return This->lpVtbl->QueryErrorInfo(This,guidErrorType,ppde);
544}
545static inline HRESULT IDispError_GetNext(IDispError* This,IDispError **ppde) {
546    return This->lpVtbl->GetNext(This,ppde);
547}
548static inline HRESULT IDispError_GetHresult(IDispError* This,HRESULT *phr) {
549    return This->lpVtbl->GetHresult(This,phr);
550}
551static inline HRESULT IDispError_GetSource(IDispError* This,BSTR *pbstrSource) {
552    return This->lpVtbl->GetSource(This,pbstrSource);
553}
554static inline HRESULT IDispError_GetHelpInfo(IDispError* This,BSTR *pbstrFileName,DWORD *pdwContext) {
555    return This->lpVtbl->GetHelpInfo(This,pbstrFileName,pdwContext);
556}
557static inline HRESULT IDispError_GetDescription(IDispError* This,BSTR *pbstrDescription) {
558    return This->lpVtbl->GetDescription(This,pbstrDescription);
559}
560#endif
561#endif
562
563#endif
564
565
566#endif  /* __IDispError_INTERFACE_DEFINED__ */
567
568/*****************************************************************************
569 * IVariantChangeType interface
570 */
571#ifndef __IVariantChangeType_INTERFACE_DEFINED__
572#define __IVariantChangeType_INTERFACE_DEFINED__
573
574DEFINE_GUID(IID_IVariantChangeType, 0xa6ef9862, 0xc720, 0x11d0, 0x93,0x37, 0x00,0xa0,0xc9,0x0d,0xca,0xa9);
575#if defined(__cplusplus) && !defined(CINTERFACE)
576MIDL_INTERFACE("a6ef9862-c720-11d0-9337-00a0c90dcaa9")
577IVariantChangeType : public IUnknown
578{
579    virtual HRESULT STDMETHODCALLTYPE ChangeType(
580        VARIANT *pvarDst,
581        VARIANT *pvarSrc,
582        LCID lcid,
583        VARTYPE vtNew) = 0;
584
585};
586#ifdef __CRT_UUID_DECL
587__CRT_UUID_DECL(IVariantChangeType, 0xa6ef9862, 0xc720, 0x11d0, 0x93,0x37, 0x00,0xa0,0xc9,0x0d,0xca,0xa9)
588#endif
589#else
590typedef struct IVariantChangeTypeVtbl {
591    BEGIN_INTERFACE
592
593    /*** IUnknown methods ***/
594    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
595        IVariantChangeType *This,
596        REFIID riid,
597        void **ppvObject);
598
599    ULONG (STDMETHODCALLTYPE *AddRef)(
600        IVariantChangeType *This);
601
602    ULONG (STDMETHODCALLTYPE *Release)(
603        IVariantChangeType *This);
604
605    /*** IVariantChangeType methods ***/
606    HRESULT (STDMETHODCALLTYPE *ChangeType)(
607        IVariantChangeType *This,
608        VARIANT *pvarDst,
609        VARIANT *pvarSrc,
610        LCID lcid,
611        VARTYPE vtNew);
612
613    END_INTERFACE
614} IVariantChangeTypeVtbl;
615
616interface IVariantChangeType {
617    CONST_VTBL IVariantChangeTypeVtbl* lpVtbl;
618};
619
620#ifdef COBJMACROS
621#ifndef WIDL_C_INLINE_WRAPPERS
622/*** IUnknown methods ***/
623#define IVariantChangeType_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
624#define IVariantChangeType_AddRef(This) (This)->lpVtbl->AddRef(This)
625#define IVariantChangeType_Release(This) (This)->lpVtbl->Release(This)
626/*** IVariantChangeType methods ***/
627#define IVariantChangeType_ChangeType(This,pvarDst,pvarSrc,lcid,vtNew) (This)->lpVtbl->ChangeType(This,pvarDst,pvarSrc,lcid,vtNew)
628#else
629/*** IUnknown methods ***/
630static inline HRESULT IVariantChangeType_QueryInterface(IVariantChangeType* This,REFIID riid,void **ppvObject) {
631    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
632}
633static inline ULONG IVariantChangeType_AddRef(IVariantChangeType* This) {
634    return This->lpVtbl->AddRef(This);
635}
636static inline ULONG IVariantChangeType_Release(IVariantChangeType* This) {
637    return This->lpVtbl->Release(This);
638}
639/*** IVariantChangeType methods ***/
640static inline HRESULT IVariantChangeType_ChangeType(IVariantChangeType* This,VARIANT *pvarDst,VARIANT *pvarSrc,LCID lcid,VARTYPE vtNew) {
641    return This->lpVtbl->ChangeType(This,pvarDst,pvarSrc,lcid,vtNew);
642}
643#endif
644#endif
645
646#endif
647
648
649#endif  /* __IVariantChangeType_INTERFACE_DEFINED__ */
650
651/*****************************************************************************
652 * IObjectIdentity interface
653 */
654#ifndef __IObjectIdentity_INTERFACE_DEFINED__
655#define __IObjectIdentity_INTERFACE_DEFINED__
656
657DEFINE_GUID(IID_IObjectIdentity, 0xca04b7e6, 0x0d21, 0x11d1, 0x8c,0xc5, 0x00,0xc0,0x4f,0xc2,0xb0,0x85);
658#if defined(__cplusplus) && !defined(CINTERFACE)
659MIDL_INTERFACE("ca04b7e6-0d21-11d1-8cc5-00c04fc2b085")
660IObjectIdentity : public IUnknown
661{
662    virtual HRESULT STDMETHODCALLTYPE IsEqualObject(
663        IUnknown *punk) = 0;
664
665};
666#ifdef __CRT_UUID_DECL
667__CRT_UUID_DECL(IObjectIdentity, 0xca04b7e6, 0x0d21, 0x11d1, 0x8c,0xc5, 0x00,0xc0,0x4f,0xc2,0xb0,0x85)
668#endif
669#else
670typedef struct IObjectIdentityVtbl {
671    BEGIN_INTERFACE
672
673    /*** IUnknown methods ***/
674    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
675        IObjectIdentity *This,
676        REFIID riid,
677        void **ppvObject);
678
679    ULONG (STDMETHODCALLTYPE *AddRef)(
680        IObjectIdentity *This);
681
682    ULONG (STDMETHODCALLTYPE *Release)(
683        IObjectIdentity *This);
684
685    /*** IObjectIdentity methods ***/
686    HRESULT (STDMETHODCALLTYPE *IsEqualObject)(
687        IObjectIdentity *This,
688        IUnknown *punk);
689
690    END_INTERFACE
691} IObjectIdentityVtbl;
692
693interface IObjectIdentity {
694    CONST_VTBL IObjectIdentityVtbl* lpVtbl;
695};
696
697#ifdef COBJMACROS
698#ifndef WIDL_C_INLINE_WRAPPERS
699/*** IUnknown methods ***/
700#define IObjectIdentity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
701#define IObjectIdentity_AddRef(This) (This)->lpVtbl->AddRef(This)
702#define IObjectIdentity_Release(This) (This)->lpVtbl->Release(This)
703/*** IObjectIdentity methods ***/
704#define IObjectIdentity_IsEqualObject(This,punk) (This)->lpVtbl->IsEqualObject(This,punk)
705#else
706/*** IUnknown methods ***/
707static inline HRESULT IObjectIdentity_QueryInterface(IObjectIdentity* This,REFIID riid,void **ppvObject) {
708    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
709}
710static inline ULONG IObjectIdentity_AddRef(IObjectIdentity* This) {
711    return This->lpVtbl->AddRef(This);
712}
713static inline ULONG IObjectIdentity_Release(IObjectIdentity* This) {
714    return This->lpVtbl->Release(This);
715}
716/*** IObjectIdentity methods ***/
717static inline HRESULT IObjectIdentity_IsEqualObject(IObjectIdentity* This,IUnknown *punk) {
718    return This->lpVtbl->IsEqualObject(This,punk);
719}
720#endif
721#endif
722
723#endif
724
725
726#endif  /* __IObjectIdentity_INTERFACE_DEFINED__ */
727
728/*****************************************************************************
729 * ICanHandleException interface
730 */
731#ifndef __ICanHandleException_INTERFACE_DEFINED__
732#define __ICanHandleException_INTERFACE_DEFINED__
733
734DEFINE_GUID(IID_ICanHandleException, 0xc5598e60, 0xb307, 0x11d1, 0xb2,0x7d, 0x00,0x60,0x08,0xc3,0xfb,0xfb);
735#if defined(__cplusplus) && !defined(CINTERFACE)
736MIDL_INTERFACE("c5598e60-b307-11d1-b27d-006008c3fbfb")
737ICanHandleException : public IUnknown
738{
739    virtual HRESULT STDMETHODCALLTYPE CanHandleException(
740        EXCEPINFO *pExcepInfo,
741        VARIANT *pvar) = 0;
742
743};
744#ifdef __CRT_UUID_DECL
745__CRT_UUID_DECL(ICanHandleException, 0xc5598e60, 0xb307, 0x11d1, 0xb2,0x7d, 0x00,0x60,0x08,0xc3,0xfb,0xfb)
746#endif
747#else
748typedef struct ICanHandleExceptionVtbl {
749    BEGIN_INTERFACE
750
751    /*** IUnknown methods ***/
752    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
753        ICanHandleException *This,
754        REFIID riid,
755        void **ppvObject);
756
757    ULONG (STDMETHODCALLTYPE *AddRef)(
758        ICanHandleException *This);
759
760    ULONG (STDMETHODCALLTYPE *Release)(
761        ICanHandleException *This);
762
763    /*** ICanHandleException methods ***/
764    HRESULT (STDMETHODCALLTYPE *CanHandleException)(
765        ICanHandleException *This,
766        EXCEPINFO *pExcepInfo,
767        VARIANT *pvar);
768
769    END_INTERFACE
770} ICanHandleExceptionVtbl;
771
772interface ICanHandleException {
773    CONST_VTBL ICanHandleExceptionVtbl* lpVtbl;
774};
775
776#ifdef COBJMACROS
777#ifndef WIDL_C_INLINE_WRAPPERS
778/*** IUnknown methods ***/
779#define ICanHandleException_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
780#define ICanHandleException_AddRef(This) (This)->lpVtbl->AddRef(This)
781#define ICanHandleException_Release(This) (This)->lpVtbl->Release(This)
782/*** ICanHandleException methods ***/
783#define ICanHandleException_CanHandleException(This,pExcepInfo,pvar) (This)->lpVtbl->CanHandleException(This,pExcepInfo,pvar)
784#else
785/*** IUnknown methods ***/
786static inline HRESULT ICanHandleException_QueryInterface(ICanHandleException* This,REFIID riid,void **ppvObject) {
787    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
788}
789static inline ULONG ICanHandleException_AddRef(ICanHandleException* This) {
790    return This->lpVtbl->AddRef(This);
791}
792static inline ULONG ICanHandleException_Release(ICanHandleException* This) {
793    return This->lpVtbl->Release(This);
794}
795/*** ICanHandleException methods ***/
796static inline HRESULT ICanHandleException_CanHandleException(ICanHandleException* This,EXCEPINFO *pExcepInfo,VARIANT *pvar) {
797    return This->lpVtbl->CanHandleException(This,pExcepInfo,pvar);
798}
799#endif
800#endif
801
802#endif
803
804
805#endif  /* __ICanHandleException_INTERFACE_DEFINED__ */
806
807/*****************************************************************************
808 * IProvideRuntimeContext interface
809 */
810#ifndef __IProvideRuntimeContext_INTERFACE_DEFINED__
811#define __IProvideRuntimeContext_INTERFACE_DEFINED__
812
813DEFINE_GUID(IID_IProvideRuntimeContext, 0x10e2414a, 0xec59, 0x49d2, 0xbc,0x51, 0x5a,0xdd,0x2c,0x36,0xfe,0xbc);
814#if defined(__cplusplus) && !defined(CINTERFACE)
815MIDL_INTERFACE("10e2414a-ec59-49d2-bc51-5add2c36febc")
816IProvideRuntimeContext : public IUnknown
817{
818    virtual HRESULT STDMETHODCALLTYPE GetCurrentSourceContext(
819        DWORD_PTR *pdwContext,
820        VARIANT_BOOL *pfExecutingGlobalCode) = 0;
821
822};
823#ifdef __CRT_UUID_DECL
824__CRT_UUID_DECL(IProvideRuntimeContext, 0x10e2414a, 0xec59, 0x49d2, 0xbc,0x51, 0x5a,0xdd,0x2c,0x36,0xfe,0xbc)
825#endif
826#else
827typedef struct IProvideRuntimeContextVtbl {
828    BEGIN_INTERFACE
829
830    /*** IUnknown methods ***/
831    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
832        IProvideRuntimeContext *This,
833        REFIID riid,
834        void **ppvObject);
835
836    ULONG (STDMETHODCALLTYPE *AddRef)(
837        IProvideRuntimeContext *This);
838
839    ULONG (STDMETHODCALLTYPE *Release)(
840        IProvideRuntimeContext *This);
841
842    /*** IProvideRuntimeContext methods ***/
843    HRESULT (STDMETHODCALLTYPE *GetCurrentSourceContext)(
844        IProvideRuntimeContext *This,
845        DWORD_PTR *pdwContext,
846        VARIANT_BOOL *pfExecutingGlobalCode);
847
848    END_INTERFACE
849} IProvideRuntimeContextVtbl;
850
851interface IProvideRuntimeContext {
852    CONST_VTBL IProvideRuntimeContextVtbl* lpVtbl;
853};
854
855#ifdef COBJMACROS
856#ifndef WIDL_C_INLINE_WRAPPERS
857/*** IUnknown methods ***/
858#define IProvideRuntimeContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
859#define IProvideRuntimeContext_AddRef(This) (This)->lpVtbl->AddRef(This)
860#define IProvideRuntimeContext_Release(This) (This)->lpVtbl->Release(This)
861/*** IProvideRuntimeContext methods ***/
862#define IProvideRuntimeContext_GetCurrentSourceContext(This,pdwContext,pfExecutingGlobalCode) (This)->lpVtbl->GetCurrentSourceContext(This,pdwContext,pfExecutingGlobalCode)
863#else
864/*** IUnknown methods ***/
865static inline HRESULT IProvideRuntimeContext_QueryInterface(IProvideRuntimeContext* This,REFIID riid,void **ppvObject) {
866    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
867}
868static inline ULONG IProvideRuntimeContext_AddRef(IProvideRuntimeContext* This) {
869    return This->lpVtbl->AddRef(This);
870}
871static inline ULONG IProvideRuntimeContext_Release(IProvideRuntimeContext* This) {
872    return This->lpVtbl->Release(This);
873}
874/*** IProvideRuntimeContext methods ***/
875static inline HRESULT IProvideRuntimeContext_GetCurrentSourceContext(IProvideRuntimeContext* This,DWORD_PTR *pdwContext,VARIANT_BOOL *pfExecutingGlobalCode) {
876    return This->lpVtbl->GetCurrentSourceContext(This,pdwContext,pfExecutingGlobalCode);
877}
878#endif
879#endif
880
881#endif
882
883
884#endif  /* __IProvideRuntimeContext_INTERFACE_DEFINED__ */
885
886#endif
887#endif
888/* Begin additional prototypes for all interfaces */
889
890ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
891unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
892unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
893void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
894ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
895unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
896unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
897void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
898
899/* End additional prototypes */
900
901#ifdef __cplusplus
902}
903#endif
904
905#endif /* __dispex_h__ */