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