Add some GUIDs from the win2k DDK that are used for USB devices.
[wine] / include / activscp.h
1 /*** Autogenerated by WIDL 0.1 from activscp.idl - Do not edit ***/
2 #include <rpc.h>
3 #include <rpcndr.h>
4
5 #ifndef __WIDL_ACTIVSCP_H
6 #define __WIDL_ACTIVSCP_H
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 #include <ocidl.h>
11 #include <oleidl.h>
12 #include <oaidl.h>
13 typedef enum tagSCRIPTSTATE {
14     SCRIPTSTATE_UNINITIALIZED = 0,
15     SCRIPTSTATE_STARTED = 1,
16     SCRIPTSTATE_CONNECTED = 2,
17     SCRIPTSTATE_DISCONNECTED = 3,
18     SCRIPTSTATE_CLOSED = 4,
19     SCRIPTSTATE_INITIALIZED = 5
20 } SCRIPTSTATE;
21
22 typedef enum tagSCRIPTTHREADSTATE {
23     SCRIPTTHREADSTATE_NOTINSCRIPT = 0,
24     SCRIPTTHREADSTATE_RUNNING = 1
25 } SCRIPTTHREADSTATE;
26
27 typedef DWORD SCRIPTTHREADID;
28
29 #define SCRIPTTHREADID_CURRENT ((SCRIPTTHREADID)-1)
30 #define SCRIPTTHREADID_BASE ((SCRIPTTHREADID)-2)
31 #define SCRIPTTHREADID_ALL ((SCRIPTTHREADID)-3)
32 #define SCRIPTITEM_ISVISIBLE           0x00000002
33 #define SCRIPTITEM_ISSOURCE            0x00000004
34 #define SCRIPTITEM_GLOBALMEMBERS       0x00000008
35 #define SCRIPTITEM_ISPERSISTENT        0x00000040
36 #define SCRIPTITEM_CODEONLY            0x00000200
37 #define SCRIPTITEM_NOCODE              0x00000400
38 #define SCRIPTITEM_ALL_FLAGS           (SCRIPTITEM_ISSOURCE | \
39                                         SCRIPTITEM_ISVISIBLE | \
40                                         SCRIPTITEM_ISPERSISTENT | \
41                                         SCRIPTITEM_GLOBALMEMBERS | \
42                                         SCRIPTITEM_NOCODE | \
43                                         SCRIPTITEM_CODEONLY)
44 #define SCRIPTTYPELIB_ISCONTROL        0x00000010
45 #define SCRIPTTYPELIB_ISPERSISTENT     0x00000040
46 #define SCRIPTTYPELIB_ALL_FLAGS        (SCRIPTTEXT_ISCONTROL | SCRIPTTYPELIB_ISPERSISTENT)
47 #define SCRIPTTEXT_DELAYEXECUTION      0x00000001
48 #define SCRIPTTEXT_ISVISIBLE           0x00000002
49 #define SCRIPTTEXT_ISEXPRESSION        0x00000020
50 #define SCRIPTTEXT_ISPERSISTENT        0x00000040
51 #define SCRIPTTEXT_HOSTMANAGESSOURCE   0x00000080
52 #define SCRIPTTEXT_ALL_FLAGS           (SCRIPTTEXT_DELAYEXECUTION | \
53                                         SCRIPTTEXT_ISVISIBLE | \
54                                         SCRIPTTEXT_ISEXPRESSION | \
55                                         SCRIPTTEXT_ISPERSISTENT | \
56                                         SCRIPTTEXT_HOSTMANAGESSOURCE)
57 #define SCRIPTPROC_HOSTMANAGESSOURCE   0x00000080
58 #define SCRIPTPROC_IMPLICIT_THIS       0x00000100
59 #define SCRIPTPROC_IMPLICIT_PARENTS    0x00000200
60 #define SCRIPTPROC_ALL_FLAGS           (SCRIPTPROC_HOSTMANAGESSOURCE | \
61                                         SCRIPTPROC_IMPLICIT_THIS | \
62                                         SCRIPTPROC_IMPLICIT_PARENTS)
63 #define SCRIPTINFO_IUNKNOWN            0x00000001
64 #define SCRIPTINFO_ITYPEINFO           0x00000002
65 #define SCRIPTINFO_ALL_FLAGS           (SCRIPTINFO_IUNKNOWN | SCRIPTINFO_ITYPEINFO)
66 #define SCRIPTINTERRUPT_DEBUG          0x00000001
67 #define SCRIPTINTERRUPT_RAISEEXCEPTION 0x00000002
68 #define SCRIPTINTERRUPT_ALL_FLAGS      (SCRIPTINTERRUPT_DEBUG | SCRIPTINTERRUPT_RAISEEXCEPTION)
69 #define SCRIPTSTAT_STATEMENT_COUNT      1
70 #define SCRIPTSTAT_INSTRUCTION_COUNT    2
71 #define SCRIPTSTAT_INTSTRUCTION_TIME    3
72 #define SCRIPTSTAT_TOTAL_TIME           4
73 #ifndef __IActiveScriptError_FWD_DEFINED__
74 #define __IActiveScriptError_FWD_DEFINED__
75 typedef struct IActiveScriptError IActiveScriptError;
76 #endif
77
78 /*****************************************************************************
79  * IActiveScriptError interface
80  */
81 #ifndef __IActiveScriptError_INTERFACE_DEFINED__
82 #define __IActiveScriptError_INTERFACE_DEFINED__
83
84 DEFINE_GUID(IID_IActiveScriptError, 0xeae1ba61, 0xa4ed, 0x11cf, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64);
85 #if defined(__cplusplus) && !defined(CINTERFACE)
86 struct IActiveScriptError : public IUnknown
87 {
88     virtual HRESULT STDMETHODCALLTYPE GetExceptionInfo(
89         EXCEPINFO* pexcepinfo) = 0;
90
91     virtual HRESULT STDMETHODCALLTYPE GetSourcePosition(
92         DWORD* pdwSourceContext,
93         ULONG* pulLineNumber,
94         LONG* plCharacterPosition) = 0;
95
96     virtual HRESULT STDMETHODCALLTYPE GetSourceLineText(
97         BSTR* pbstrSourceLine) = 0;
98
99 };
100 #else
101 typedef struct IActiveScriptErrorVtbl IActiveScriptErrorVtbl;
102 struct IActiveScriptError {
103     const IActiveScriptErrorVtbl* lpVtbl;
104 };
105 struct IActiveScriptErrorVtbl {
106     ICOM_MSVTABLE_COMPAT_FIELDS
107
108     /*** IUnknown methods ***/
109     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
110         IActiveScriptError* This,
111         REFIID riid,
112         void** ppvObject);
113
114     ULONG (STDMETHODCALLTYPE *AddRef)(
115         IActiveScriptError* This);
116
117     ULONG (STDMETHODCALLTYPE *Release)(
118         IActiveScriptError* This);
119
120     /*** IActiveScriptError methods ***/
121     HRESULT (STDMETHODCALLTYPE *GetExceptionInfo)(
122         IActiveScriptError* This,
123         EXCEPINFO* pexcepinfo);
124
125     HRESULT (STDMETHODCALLTYPE *GetSourcePosition)(
126         IActiveScriptError* This,
127         DWORD* pdwSourceContext,
128         ULONG* pulLineNumber,
129         LONG* plCharacterPosition);
130
131     HRESULT (STDMETHODCALLTYPE *GetSourceLineText)(
132         IActiveScriptError* This,
133         BSTR* pbstrSourceLine);
134
135 };
136
137 #ifdef COBJMACROS
138 /*** IUnknown methods ***/
139 #define IActiveScriptError_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
140 #define IActiveScriptError_AddRef(p) (p)->lpVtbl->AddRef(p)
141 #define IActiveScriptError_Release(p) (p)->lpVtbl->Release(p)
142 /*** IActiveScriptError methods ***/
143 #define IActiveScriptError_GetExceptionInfo(p,a) (p)->lpVtbl->GetExceptionInfo(p,a)
144 #define IActiveScriptError_GetSourcePosition(p,a,b,c) (p)->lpVtbl->GetSourcePosition(p,a,b,c)
145 #define IActiveScriptError_GetSourceLineText(p,a) (p)->lpVtbl->GetSourceLineText(p,a)
146 #endif
147
148 #endif
149
150 #define IActiveScriptError_METHODS \
151     ICOM_MSVTABLE_COMPAT_FIELDS \
152     /*** IUnknown methods ***/ \
153     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
154     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
155     STDMETHOD_(ULONG,Release)(THIS) PURE; \
156     /*** IActiveScriptError methods ***/ \
157     STDMETHOD_(HRESULT,GetExceptionInfo)(THIS_ EXCEPINFO* pexcepinfo) PURE; \
158     STDMETHOD_(HRESULT,GetSourcePosition)(THIS_ DWORD* pdwSourceContext, ULONG* pulLineNumber, LONG* plCharacterPosition) PURE; \
159     STDMETHOD_(HRESULT,GetSourceLineText)(THIS_ BSTR* pbstrSourceLine) PURE;
160
161 HRESULT CALLBACK IActiveScriptError_GetExceptionInfo_Proxy(
162     IActiveScriptError* This,
163     EXCEPINFO* pexcepinfo);
164 void __RPC_STUB IActiveScriptError_GetExceptionInfo_Stub(
165     struct IRpcStubBuffer* This,
166     struct IRpcChannelBuffer* pRpcChannelBuffer,
167     PRPC_MESSAGE pRpcMessage,
168     DWORD* pdwStubPhase);
169 HRESULT CALLBACK IActiveScriptError_GetSourcePosition_Proxy(
170     IActiveScriptError* This,
171     DWORD* pdwSourceContext,
172     ULONG* pulLineNumber,
173     LONG* plCharacterPosition);
174 void __RPC_STUB IActiveScriptError_GetSourcePosition_Stub(
175     struct IRpcStubBuffer* This,
176     struct IRpcChannelBuffer* pRpcChannelBuffer,
177     PRPC_MESSAGE pRpcMessage,
178     DWORD* pdwStubPhase);
179 HRESULT CALLBACK IActiveScriptError_GetSourceLineText_Proxy(
180     IActiveScriptError* This,
181     BSTR* pbstrSourceLine);
182 void __RPC_STUB IActiveScriptError_GetSourceLineText_Stub(
183     struct IRpcStubBuffer* This,
184     struct IRpcChannelBuffer* pRpcChannelBuffer,
185     PRPC_MESSAGE pRpcMessage,
186     DWORD* pdwStubPhase);
187
188 #endif  /* __IActiveScriptError_INTERFACE_DEFINED__ */
189
190 #ifndef __IActiveScriptSite_FWD_DEFINED__
191 #define __IActiveScriptSite_FWD_DEFINED__
192 typedef struct IActiveScriptSite IActiveScriptSite;
193 #endif
194
195 /*****************************************************************************
196  * IActiveScriptSite interface
197  */
198 #ifndef __IActiveScriptSite_INTERFACE_DEFINED__
199 #define __IActiveScriptSite_INTERFACE_DEFINED__
200
201 DEFINE_GUID(IID_IActiveScriptSite, 0xdb01a1e3, 0xa42b, 0x11cf, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64);
202 #if defined(__cplusplus) && !defined(CINTERFACE)
203 struct IActiveScriptSite : public IUnknown
204 {
205     virtual HRESULT STDMETHODCALLTYPE GetLCID(
206         LCID* plcid) = 0;
207
208     virtual HRESULT STDMETHODCALLTYPE GetItemInfo(
209         LPCOLESTR pstrName,
210         DWORD dwReturnMask,
211         IUnknown** ppiunkItem,
212         ITypeInfo** ppti) = 0;
213
214     virtual HRESULT STDMETHODCALLTYPE GetDocVersionString(
215         BSTR* pbstrVersion) = 0;
216
217     virtual HRESULT STDMETHODCALLTYPE OnScriptTerminate(
218         const VARIANT* pvarResult,
219         const EXCEPINFO* pexcepinfo) = 0;
220
221     virtual HRESULT STDMETHODCALLTYPE OnStateChange(
222         SCRIPTSTATE ssScriptState) = 0;
223
224     virtual HRESULT STDMETHODCALLTYPE OnScriptError(
225         IActiveScriptError* pscripterror) = 0;
226
227     virtual HRESULT STDMETHODCALLTYPE OnEnterScript(
228         ) = 0;
229
230     virtual HRESULT STDMETHODCALLTYPE OnLeaveScript(
231         ) = 0;
232
233 };
234 #else
235 typedef struct IActiveScriptSiteVtbl IActiveScriptSiteVtbl;
236 struct IActiveScriptSite {
237     const IActiveScriptSiteVtbl* lpVtbl;
238 };
239 struct IActiveScriptSiteVtbl {
240     ICOM_MSVTABLE_COMPAT_FIELDS
241
242     /*** IUnknown methods ***/
243     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
244         IActiveScriptSite* This,
245         REFIID riid,
246         void** ppvObject);
247
248     ULONG (STDMETHODCALLTYPE *AddRef)(
249         IActiveScriptSite* This);
250
251     ULONG (STDMETHODCALLTYPE *Release)(
252         IActiveScriptSite* This);
253
254     /*** IActiveScriptSite methods ***/
255     HRESULT (STDMETHODCALLTYPE *GetLCID)(
256         IActiveScriptSite* This,
257         LCID* plcid);
258
259     HRESULT (STDMETHODCALLTYPE *GetItemInfo)(
260         IActiveScriptSite* This,
261         LPCOLESTR pstrName,
262         DWORD dwReturnMask,
263         IUnknown** ppiunkItem,
264         ITypeInfo** ppti);
265
266     HRESULT (STDMETHODCALLTYPE *GetDocVersionString)(
267         IActiveScriptSite* This,
268         BSTR* pbstrVersion);
269
270     HRESULT (STDMETHODCALLTYPE *OnScriptTerminate)(
271         IActiveScriptSite* This,
272         const VARIANT* pvarResult,
273         const EXCEPINFO* pexcepinfo);
274
275     HRESULT (STDMETHODCALLTYPE *OnStateChange)(
276         IActiveScriptSite* This,
277         SCRIPTSTATE ssScriptState);
278
279     HRESULT (STDMETHODCALLTYPE *OnScriptError)(
280         IActiveScriptSite* This,
281         IActiveScriptError* pscripterror);
282
283     HRESULT (STDMETHODCALLTYPE *OnEnterScript)(
284         IActiveScriptSite* This);
285
286     HRESULT (STDMETHODCALLTYPE *OnLeaveScript)(
287         IActiveScriptSite* This);
288
289 };
290
291 #ifdef COBJMACROS
292 /*** IUnknown methods ***/
293 #define IActiveScriptSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
294 #define IActiveScriptSite_AddRef(p) (p)->lpVtbl->AddRef(p)
295 #define IActiveScriptSite_Release(p) (p)->lpVtbl->Release(p)
296 /*** IActiveScriptSite methods ***/
297 #define IActiveScriptSite_GetLCID(p,a) (p)->lpVtbl->GetLCID(p,a)
298 #define IActiveScriptSite_GetItemInfo(p,a,b,c,d) (p)->lpVtbl->GetItemInfo(p,a,b,c,d)
299 #define IActiveScriptSite_GetDocVersionString(p,a) (p)->lpVtbl->GetDocVersionString(p,a)
300 #define IActiveScriptSite_OnScriptTerminate(p,a,b) (p)->lpVtbl->OnScriptTerminate(p,a,b)
301 #define IActiveScriptSite_OnStateChange(p,a) (p)->lpVtbl->OnStateChange(p,a)
302 #define IActiveScriptSite_OnScriptError(p,a) (p)->lpVtbl->OnScriptError(p,a)
303 #define IActiveScriptSite_OnEnterScript(p) (p)->lpVtbl->OnEnterScript(p)
304 #define IActiveScriptSite_OnLeaveScript(p) (p)->lpVtbl->OnLeaveScript(p)
305 #endif
306
307 #endif
308
309 #define IActiveScriptSite_METHODS \
310     ICOM_MSVTABLE_COMPAT_FIELDS \
311     /*** IUnknown methods ***/ \
312     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
313     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
314     STDMETHOD_(ULONG,Release)(THIS) PURE; \
315     /*** IActiveScriptSite methods ***/ \
316     STDMETHOD_(HRESULT,GetLCID)(THIS_ LCID* plcid) PURE; \
317     STDMETHOD_(HRESULT,GetItemInfo)(THIS_ LPCOLESTR pstrName, DWORD dwReturnMask, IUnknown** ppiunkItem, ITypeInfo** ppti) PURE; \
318     STDMETHOD_(HRESULT,GetDocVersionString)(THIS_ BSTR* pbstrVersion) PURE; \
319     STDMETHOD_(HRESULT,OnScriptTerminate)(THIS_ const VARIANT* pvarResult, const EXCEPINFO* pexcepinfo) PURE; \
320     STDMETHOD_(HRESULT,OnStateChange)(THIS_ SCRIPTSTATE ssScriptState) PURE; \
321     STDMETHOD_(HRESULT,OnScriptError)(THIS_ IActiveScriptError* pscripterror) PURE; \
322     STDMETHOD_(HRESULT,OnEnterScript)(THIS) PURE; \
323     STDMETHOD_(HRESULT,OnLeaveScript)(THIS) PURE;
324
325 HRESULT CALLBACK IActiveScriptSite_GetLCID_Proxy(
326     IActiveScriptSite* This,
327     LCID* plcid);
328 void __RPC_STUB IActiveScriptSite_GetLCID_Stub(
329     struct IRpcStubBuffer* This,
330     struct IRpcChannelBuffer* pRpcChannelBuffer,
331     PRPC_MESSAGE pRpcMessage,
332     DWORD* pdwStubPhase);
333 HRESULT CALLBACK IActiveScriptSite_GetItemInfo_Proxy(
334     IActiveScriptSite* This,
335     LPCOLESTR pstrName,
336     DWORD dwReturnMask,
337     IUnknown** ppiunkItem,
338     ITypeInfo** ppti);
339 void __RPC_STUB IActiveScriptSite_GetItemInfo_Stub(
340     struct IRpcStubBuffer* This,
341     struct IRpcChannelBuffer* pRpcChannelBuffer,
342     PRPC_MESSAGE pRpcMessage,
343     DWORD* pdwStubPhase);
344 HRESULT CALLBACK IActiveScriptSite_GetDocVersionString_Proxy(
345     IActiveScriptSite* This,
346     BSTR* pbstrVersion);
347 void __RPC_STUB IActiveScriptSite_GetDocVersionString_Stub(
348     struct IRpcStubBuffer* This,
349     struct IRpcChannelBuffer* pRpcChannelBuffer,
350     PRPC_MESSAGE pRpcMessage,
351     DWORD* pdwStubPhase);
352 HRESULT CALLBACK IActiveScriptSite_OnScriptTerminate_Proxy(
353     IActiveScriptSite* This,
354     const VARIANT* pvarResult,
355     const EXCEPINFO* pexcepinfo);
356 void __RPC_STUB IActiveScriptSite_OnScriptTerminate_Stub(
357     struct IRpcStubBuffer* This,
358     struct IRpcChannelBuffer* pRpcChannelBuffer,
359     PRPC_MESSAGE pRpcMessage,
360     DWORD* pdwStubPhase);
361 HRESULT CALLBACK IActiveScriptSite_OnStateChange_Proxy(
362     IActiveScriptSite* This,
363     SCRIPTSTATE ssScriptState);
364 void __RPC_STUB IActiveScriptSite_OnStateChange_Stub(
365     struct IRpcStubBuffer* This,
366     struct IRpcChannelBuffer* pRpcChannelBuffer,
367     PRPC_MESSAGE pRpcMessage,
368     DWORD* pdwStubPhase);
369 HRESULT CALLBACK IActiveScriptSite_OnScriptError_Proxy(
370     IActiveScriptSite* This,
371     IActiveScriptError* pscripterror);
372 void __RPC_STUB IActiveScriptSite_OnScriptError_Stub(
373     struct IRpcStubBuffer* This,
374     struct IRpcChannelBuffer* pRpcChannelBuffer,
375     PRPC_MESSAGE pRpcMessage,
376     DWORD* pdwStubPhase);
377 HRESULT CALLBACK IActiveScriptSite_OnEnterScript_Proxy(
378     IActiveScriptSite* This);
379 void __RPC_STUB IActiveScriptSite_OnEnterScript_Stub(
380     struct IRpcStubBuffer* This,
381     struct IRpcChannelBuffer* pRpcChannelBuffer,
382     PRPC_MESSAGE pRpcMessage,
383     DWORD* pdwStubPhase);
384 HRESULT CALLBACK IActiveScriptSite_OnLeaveScript_Proxy(
385     IActiveScriptSite* This);
386 void __RPC_STUB IActiveScriptSite_OnLeaveScript_Stub(
387     struct IRpcStubBuffer* This,
388     struct IRpcChannelBuffer* pRpcChannelBuffer,
389     PRPC_MESSAGE pRpcMessage,
390     DWORD* pdwStubPhase);
391
392 #endif  /* __IActiveScriptSite_INTERFACE_DEFINED__ */
393
394 typedef IActiveScriptSite *PIActiveScriptSite;
395 #ifndef __IActiveScriptSiteWindow_FWD_DEFINED__
396 #define __IActiveScriptSiteWindow_FWD_DEFINED__
397 typedef struct IActiveScriptSiteWindow IActiveScriptSiteWindow;
398 #endif
399
400 /*****************************************************************************
401  * IActiveScriptSiteWindow interface
402  */
403 #ifndef __IActiveScriptSiteWindow_INTERFACE_DEFINED__
404 #define __IActiveScriptSiteWindow_INTERFACE_DEFINED__
405
406 DEFINE_GUID(IID_IActiveScriptSiteWindow, 0xd10f6761, 0x83e9, 0x11cf, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64);
407 #if defined(__cplusplus) && !defined(CINTERFACE)
408 struct IActiveScriptSiteWindow : public IUnknown
409 {
410     virtual HRESULT STDMETHODCALLTYPE GetWindow(
411         HWND* phwnd) = 0;
412
413     virtual HRESULT STDMETHODCALLTYPE EnableModeless(
414         BOOL fEnable) = 0;
415
416 };
417 #else
418 typedef struct IActiveScriptSiteWindowVtbl IActiveScriptSiteWindowVtbl;
419 struct IActiveScriptSiteWindow {
420     const IActiveScriptSiteWindowVtbl* lpVtbl;
421 };
422 struct IActiveScriptSiteWindowVtbl {
423     ICOM_MSVTABLE_COMPAT_FIELDS
424
425     /*** IUnknown methods ***/
426     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
427         IActiveScriptSiteWindow* This,
428         REFIID riid,
429         void** ppvObject);
430
431     ULONG (STDMETHODCALLTYPE *AddRef)(
432         IActiveScriptSiteWindow* This);
433
434     ULONG (STDMETHODCALLTYPE *Release)(
435         IActiveScriptSiteWindow* This);
436
437     /*** IActiveScriptSiteWindow methods ***/
438     HRESULT (STDMETHODCALLTYPE *GetWindow)(
439         IActiveScriptSiteWindow* This,
440         HWND* phwnd);
441
442     HRESULT (STDMETHODCALLTYPE *EnableModeless)(
443         IActiveScriptSiteWindow* This,
444         BOOL fEnable);
445
446 };
447
448 #ifdef COBJMACROS
449 /*** IUnknown methods ***/
450 #define IActiveScriptSiteWindow_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
451 #define IActiveScriptSiteWindow_AddRef(p) (p)->lpVtbl->AddRef(p)
452 #define IActiveScriptSiteWindow_Release(p) (p)->lpVtbl->Release(p)
453 /*** IActiveScriptSiteWindow methods ***/
454 #define IActiveScriptSiteWindow_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
455 #define IActiveScriptSiteWindow_EnableModeless(p,a) (p)->lpVtbl->EnableModeless(p,a)
456 #endif
457
458 #endif
459
460 #define IActiveScriptSiteWindow_METHODS \
461     ICOM_MSVTABLE_COMPAT_FIELDS \
462     /*** IUnknown methods ***/ \
463     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
464     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
465     STDMETHOD_(ULONG,Release)(THIS) PURE; \
466     /*** IActiveScriptSiteWindow methods ***/ \
467     STDMETHOD_(HRESULT,GetWindow)(THIS_ HWND* phwnd) PURE; \
468     STDMETHOD_(HRESULT,EnableModeless)(THIS_ BOOL fEnable) PURE;
469
470 HRESULT CALLBACK IActiveScriptSiteWindow_GetWindow_Proxy(
471     IActiveScriptSiteWindow* This,
472     HWND* phwnd);
473 void __RPC_STUB IActiveScriptSiteWindow_GetWindow_Stub(
474     struct IRpcStubBuffer* This,
475     struct IRpcChannelBuffer* pRpcChannelBuffer,
476     PRPC_MESSAGE pRpcMessage,
477     DWORD* pdwStubPhase);
478 HRESULT CALLBACK IActiveScriptSiteWindow_EnableModeless_Proxy(
479     IActiveScriptSiteWindow* This,
480     BOOL fEnable);
481 void __RPC_STUB IActiveScriptSiteWindow_EnableModeless_Stub(
482     struct IRpcStubBuffer* This,
483     struct IRpcChannelBuffer* pRpcChannelBuffer,
484     PRPC_MESSAGE pRpcMessage,
485     DWORD* pdwStubPhase);
486
487 #endif  /* __IActiveScriptSiteWindow_INTERFACE_DEFINED__ */
488
489 #ifndef __IActiveScriptSiteInterruptPoll_FWD_DEFINED__
490 #define __IActiveScriptSiteInterruptPoll_FWD_DEFINED__
491 typedef struct IActiveScriptSiteInterruptPoll IActiveScriptSiteInterruptPoll;
492 #endif
493
494 /*****************************************************************************
495  * IActiveScriptSiteInterruptPoll interface
496  */
497 #ifndef __IActiveScriptSiteInterruptPoll_INTERFACE_DEFINED__
498 #define __IActiveScriptSiteInterruptPoll_INTERFACE_DEFINED__
499
500 DEFINE_GUID(IID_IActiveScriptSiteInterruptPoll, 0x539698a0, 0xcdca, 0x11cf, 0xa5,0xeb, 0x00,0xaa,0x00,0x47,0xa0,0x63);
501 #if defined(__cplusplus) && !defined(CINTERFACE)
502 struct IActiveScriptSiteInterruptPoll : public IUnknown
503 {
504     virtual HRESULT STDMETHODCALLTYPE QueryContinue(
505         ) = 0;
506
507 };
508 #else
509 typedef struct IActiveScriptSiteInterruptPollVtbl IActiveScriptSiteInterruptPollVtbl;
510 struct IActiveScriptSiteInterruptPoll {
511     const IActiveScriptSiteInterruptPollVtbl* lpVtbl;
512 };
513 struct IActiveScriptSiteInterruptPollVtbl {
514     ICOM_MSVTABLE_COMPAT_FIELDS
515
516     /*** IUnknown methods ***/
517     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
518         IActiveScriptSiteInterruptPoll* This,
519         REFIID riid,
520         void** ppvObject);
521
522     ULONG (STDMETHODCALLTYPE *AddRef)(
523         IActiveScriptSiteInterruptPoll* This);
524
525     ULONG (STDMETHODCALLTYPE *Release)(
526         IActiveScriptSiteInterruptPoll* This);
527
528     /*** IActiveScriptSiteInterruptPoll methods ***/
529     HRESULT (STDMETHODCALLTYPE *QueryContinue)(
530         IActiveScriptSiteInterruptPoll* This);
531
532 };
533
534 #ifdef COBJMACROS
535 /*** IUnknown methods ***/
536 #define IActiveScriptSiteInterruptPoll_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
537 #define IActiveScriptSiteInterruptPoll_AddRef(p) (p)->lpVtbl->AddRef(p)
538 #define IActiveScriptSiteInterruptPoll_Release(p) (p)->lpVtbl->Release(p)
539 /*** IActiveScriptSiteInterruptPoll methods ***/
540 #define IActiveScriptSiteInterruptPoll_QueryContinue(p) (p)->lpVtbl->QueryContinue(p)
541 #endif
542
543 #endif
544
545 #define IActiveScriptSiteInterruptPoll_METHODS \
546     ICOM_MSVTABLE_COMPAT_FIELDS \
547     /*** IUnknown methods ***/ \
548     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
549     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
550     STDMETHOD_(ULONG,Release)(THIS) PURE; \
551     /*** IActiveScriptSiteInterruptPoll methods ***/ \
552     STDMETHOD_(HRESULT,QueryContinue)(THIS) PURE;
553
554 HRESULT CALLBACK IActiveScriptSiteInterruptPoll_QueryContinue_Proxy(
555     IActiveScriptSiteInterruptPoll* This);
556 void __RPC_STUB IActiveScriptSiteInterruptPoll_QueryContinue_Stub(
557     struct IRpcStubBuffer* This,
558     struct IRpcChannelBuffer* pRpcChannelBuffer,
559     PRPC_MESSAGE pRpcMessage,
560     DWORD* pdwStubPhase);
561
562 #endif  /* __IActiveScriptSiteInterruptPoll_INTERFACE_DEFINED__ */
563
564 #ifndef __IActiveScript_FWD_DEFINED__
565 #define __IActiveScript_FWD_DEFINED__
566 typedef struct IActiveScript IActiveScript;
567 #endif
568
569 /*****************************************************************************
570  * IActiveScript interface
571  */
572 #ifndef __IActiveScript_INTERFACE_DEFINED__
573 #define __IActiveScript_INTERFACE_DEFINED__
574
575 DEFINE_GUID(IID_IActiveScript, 0xbb1a2ae1, 0xa4f9, 0x11cf, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64);
576 #if defined(__cplusplus) && !defined(CINTERFACE)
577 struct IActiveScript : public IUnknown
578 {
579     virtual HRESULT STDMETHODCALLTYPE SetScriptSite(
580         IActiveScriptSite* pass) = 0;
581
582     virtual HRESULT STDMETHODCALLTYPE GetScriptSite(
583         REFIID riid,
584         void** ppvObject) = 0;
585
586     virtual HRESULT STDMETHODCALLTYPE SetScriptState(
587         SCRIPTSTATE ss) = 0;
588
589     virtual HRESULT STDMETHODCALLTYPE GetScriptState(
590         SCRIPTSTATE* pssState) = 0;
591
592     virtual HRESULT STDMETHODCALLTYPE Close(
593         ) = 0;
594
595     virtual HRESULT STDMETHODCALLTYPE AddNamedItem(
596         LPCOLESTR pstrName,
597         DWORD dwFlags) = 0;
598
599     virtual HRESULT STDMETHODCALLTYPE AddTypeLib(
600         REFGUID rguidTypeLib,
601         DWORD dwMajor,
602         DWORD dwMinor,
603         DWORD dwFlags) = 0;
604
605     virtual HRESULT STDMETHODCALLTYPE GetScriptDispatch(
606         LPCOLESTR pstrItemName,
607         IDispatch** ppdisp) = 0;
608
609     virtual HRESULT STDMETHODCALLTYPE GetCurrentScriptThreadID(
610         SCRIPTTHREADID* pstidThread) = 0;
611
612     virtual HRESULT STDMETHODCALLTYPE GetScriptThreadID(
613         DWORD dwWin32ThreadId,
614         SCRIPTTHREADID* pstidThread) = 0;
615
616     virtual HRESULT STDMETHODCALLTYPE GetScriptThreadState(
617         SCRIPTTHREADID stidThread,
618         SCRIPTTHREADSTATE* pstsState) = 0;
619
620     virtual HRESULT STDMETHODCALLTYPE InterruptScriptThread(
621         SCRIPTTHREADID stidThread,
622         const EXCEPINFO* pexcepinfo,
623         DWORD dwFlags) = 0;
624
625     virtual HRESULT STDMETHODCALLTYPE Clone(
626         IActiveScript** ppscript) = 0;
627
628 };
629 #else
630 typedef struct IActiveScriptVtbl IActiveScriptVtbl;
631 struct IActiveScript {
632     const IActiveScriptVtbl* lpVtbl;
633 };
634 struct IActiveScriptVtbl {
635     ICOM_MSVTABLE_COMPAT_FIELDS
636
637     /*** IUnknown methods ***/
638     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
639         IActiveScript* This,
640         REFIID riid,
641         void** ppvObject);
642
643     ULONG (STDMETHODCALLTYPE *AddRef)(
644         IActiveScript* This);
645
646     ULONG (STDMETHODCALLTYPE *Release)(
647         IActiveScript* This);
648
649     /*** IActiveScript methods ***/
650     HRESULT (STDMETHODCALLTYPE *SetScriptSite)(
651         IActiveScript* This,
652         IActiveScriptSite* pass);
653
654     HRESULT (STDMETHODCALLTYPE *GetScriptSite)(
655         IActiveScript* This,
656         REFIID riid,
657         void** ppvObject);
658
659     HRESULT (STDMETHODCALLTYPE *SetScriptState)(
660         IActiveScript* This,
661         SCRIPTSTATE ss);
662
663     HRESULT (STDMETHODCALLTYPE *GetScriptState)(
664         IActiveScript* This,
665         SCRIPTSTATE* pssState);
666
667     HRESULT (STDMETHODCALLTYPE *Close)(
668         IActiveScript* This);
669
670     HRESULT (STDMETHODCALLTYPE *AddNamedItem)(
671         IActiveScript* This,
672         LPCOLESTR pstrName,
673         DWORD dwFlags);
674
675     HRESULT (STDMETHODCALLTYPE *AddTypeLib)(
676         IActiveScript* This,
677         REFGUID rguidTypeLib,
678         DWORD dwMajor,
679         DWORD dwMinor,
680         DWORD dwFlags);
681
682     HRESULT (STDMETHODCALLTYPE *GetScriptDispatch)(
683         IActiveScript* This,
684         LPCOLESTR pstrItemName,
685         IDispatch** ppdisp);
686
687     HRESULT (STDMETHODCALLTYPE *GetCurrentScriptThreadID)(
688         IActiveScript* This,
689         SCRIPTTHREADID* pstidThread);
690
691     HRESULT (STDMETHODCALLTYPE *GetScriptThreadID)(
692         IActiveScript* This,
693         DWORD dwWin32ThreadId,
694         SCRIPTTHREADID* pstidThread);
695
696     HRESULT (STDMETHODCALLTYPE *GetScriptThreadState)(
697         IActiveScript* This,
698         SCRIPTTHREADID stidThread,
699         SCRIPTTHREADSTATE* pstsState);
700
701     HRESULT (STDMETHODCALLTYPE *InterruptScriptThread)(
702         IActiveScript* This,
703         SCRIPTTHREADID stidThread,
704         const EXCEPINFO* pexcepinfo,
705         DWORD dwFlags);
706
707     HRESULT (STDMETHODCALLTYPE *Clone)(
708         IActiveScript* This,
709         IActiveScript** ppscript);
710
711 };
712
713 #ifdef COBJMACROS
714 /*** IUnknown methods ***/
715 #define IActiveScript_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
716 #define IActiveScript_AddRef(p) (p)->lpVtbl->AddRef(p)
717 #define IActiveScript_Release(p) (p)->lpVtbl->Release(p)
718 /*** IActiveScript methods ***/
719 #define IActiveScript_SetScriptSite(p,a) (p)->lpVtbl->SetScriptSite(p,a)
720 #define IActiveScript_GetScriptSite(p,a,b) (p)->lpVtbl->GetScriptSite(p,a,b)
721 #define IActiveScript_SetScriptState(p,a) (p)->lpVtbl->SetScriptState(p,a)
722 #define IActiveScript_GetScriptState(p,a) (p)->lpVtbl->GetScriptState(p,a)
723 #define IActiveScript_Close(p) (p)->lpVtbl->Close(p)
724 #define IActiveScript_AddNamedItem(p,a,b) (p)->lpVtbl->AddNamedItem(p,a,b)
725 #define IActiveScript_AddTypeLib(p,a,b,c,d) (p)->lpVtbl->AddTypeLib(p,a,b,c,d)
726 #define IActiveScript_GetScriptDispatch(p,a,b) (p)->lpVtbl->GetScriptDispatch(p,a,b)
727 #define IActiveScript_GetCurrentScriptThreadID(p,a) (p)->lpVtbl->GetCurrentScriptThreadID(p,a)
728 #define IActiveScript_GetScriptThreadID(p,a,b) (p)->lpVtbl->GetScriptThreadID(p,a,b)
729 #define IActiveScript_GetScriptThreadState(p,a,b) (p)->lpVtbl->GetScriptThreadState(p,a,b)
730 #define IActiveScript_InterruptScriptThread(p,a,b,c) (p)->lpVtbl->InterruptScriptThread(p,a,b,c)
731 #define IActiveScript_Clone(p,a) (p)->lpVtbl->Clone(p,a)
732 #endif
733
734 #endif
735
736 #define IActiveScript_METHODS \
737     ICOM_MSVTABLE_COMPAT_FIELDS \
738     /*** IUnknown methods ***/ \
739     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
740     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
741     STDMETHOD_(ULONG,Release)(THIS) PURE; \
742     /*** IActiveScript methods ***/ \
743     STDMETHOD_(HRESULT,SetScriptSite)(THIS_ IActiveScriptSite* pass) PURE; \
744     STDMETHOD_(HRESULT,GetScriptSite)(THIS_ REFIID riid, void** ppvObject) PURE; \
745     STDMETHOD_(HRESULT,SetScriptState)(THIS_ SCRIPTSTATE ss) PURE; \
746     STDMETHOD_(HRESULT,GetScriptState)(THIS_ SCRIPTSTATE* pssState) PURE; \
747     STDMETHOD_(HRESULT,Close)(THIS) PURE; \
748     STDMETHOD_(HRESULT,AddNamedItem)(THIS_ LPCOLESTR pstrName, DWORD dwFlags) PURE; \
749     STDMETHOD_(HRESULT,AddTypeLib)(THIS_ REFGUID rguidTypeLib, DWORD dwMajor, DWORD dwMinor, DWORD dwFlags) PURE; \
750     STDMETHOD_(HRESULT,GetScriptDispatch)(THIS_ LPCOLESTR pstrItemName, IDispatch** ppdisp) PURE; \
751     STDMETHOD_(HRESULT,GetCurrentScriptThreadID)(THIS_ SCRIPTTHREADID* pstidThread) PURE; \
752     STDMETHOD_(HRESULT,GetScriptThreadID)(THIS_ DWORD dwWin32ThreadId, SCRIPTTHREADID* pstidThread) PURE; \
753     STDMETHOD_(HRESULT,GetScriptThreadState)(THIS_ SCRIPTTHREADID stidThread, SCRIPTTHREADSTATE* pstsState) PURE; \
754     STDMETHOD_(HRESULT,InterruptScriptThread)(THIS_ SCRIPTTHREADID stidThread, const EXCEPINFO* pexcepinfo, DWORD dwFlags) PURE; \
755     STDMETHOD_(HRESULT,Clone)(THIS_ IActiveScript** ppscript) PURE;
756
757 HRESULT CALLBACK IActiveScript_SetScriptSite_Proxy(
758     IActiveScript* This,
759     IActiveScriptSite* pass);
760 void __RPC_STUB IActiveScript_SetScriptSite_Stub(
761     struct IRpcStubBuffer* This,
762     struct IRpcChannelBuffer* pRpcChannelBuffer,
763     PRPC_MESSAGE pRpcMessage,
764     DWORD* pdwStubPhase);
765 HRESULT CALLBACK IActiveScript_GetScriptSite_Proxy(
766     IActiveScript* This,
767     REFIID riid,
768     void** ppvObject);
769 void __RPC_STUB IActiveScript_GetScriptSite_Stub(
770     struct IRpcStubBuffer* This,
771     struct IRpcChannelBuffer* pRpcChannelBuffer,
772     PRPC_MESSAGE pRpcMessage,
773     DWORD* pdwStubPhase);
774 HRESULT CALLBACK IActiveScript_SetScriptState_Proxy(
775     IActiveScript* This,
776     SCRIPTSTATE ss);
777 void __RPC_STUB IActiveScript_SetScriptState_Stub(
778     struct IRpcStubBuffer* This,
779     struct IRpcChannelBuffer* pRpcChannelBuffer,
780     PRPC_MESSAGE pRpcMessage,
781     DWORD* pdwStubPhase);
782 HRESULT CALLBACK IActiveScript_GetScriptState_Proxy(
783     IActiveScript* This,
784     SCRIPTSTATE* pssState);
785 void __RPC_STUB IActiveScript_GetScriptState_Stub(
786     struct IRpcStubBuffer* This,
787     struct IRpcChannelBuffer* pRpcChannelBuffer,
788     PRPC_MESSAGE pRpcMessage,
789     DWORD* pdwStubPhase);
790 HRESULT CALLBACK IActiveScript_Close_Proxy(
791     IActiveScript* This);
792 void __RPC_STUB IActiveScript_Close_Stub(
793     struct IRpcStubBuffer* This,
794     struct IRpcChannelBuffer* pRpcChannelBuffer,
795     PRPC_MESSAGE pRpcMessage,
796     DWORD* pdwStubPhase);
797 HRESULT CALLBACK IActiveScript_AddNamedItem_Proxy(
798     IActiveScript* This,
799     LPCOLESTR pstrName,
800     DWORD dwFlags);
801 void __RPC_STUB IActiveScript_AddNamedItem_Stub(
802     struct IRpcStubBuffer* This,
803     struct IRpcChannelBuffer* pRpcChannelBuffer,
804     PRPC_MESSAGE pRpcMessage,
805     DWORD* pdwStubPhase);
806 HRESULT CALLBACK IActiveScript_AddTypeLib_Proxy(
807     IActiveScript* This,
808     REFGUID rguidTypeLib,
809     DWORD dwMajor,
810     DWORD dwMinor,
811     DWORD dwFlags);
812 void __RPC_STUB IActiveScript_AddTypeLib_Stub(
813     struct IRpcStubBuffer* This,
814     struct IRpcChannelBuffer* pRpcChannelBuffer,
815     PRPC_MESSAGE pRpcMessage,
816     DWORD* pdwStubPhase);
817 HRESULT CALLBACK IActiveScript_GetScriptDispatch_Proxy(
818     IActiveScript* This,
819     LPCOLESTR pstrItemName,
820     IDispatch** ppdisp);
821 void __RPC_STUB IActiveScript_GetScriptDispatch_Stub(
822     struct IRpcStubBuffer* This,
823     struct IRpcChannelBuffer* pRpcChannelBuffer,
824     PRPC_MESSAGE pRpcMessage,
825     DWORD* pdwStubPhase);
826 HRESULT CALLBACK IActiveScript_GetCurrentScriptThreadID_Proxy(
827     IActiveScript* This,
828     SCRIPTTHREADID* pstidThread);
829 void __RPC_STUB IActiveScript_GetCurrentScriptThreadID_Stub(
830     struct IRpcStubBuffer* This,
831     struct IRpcChannelBuffer* pRpcChannelBuffer,
832     PRPC_MESSAGE pRpcMessage,
833     DWORD* pdwStubPhase);
834 HRESULT CALLBACK IActiveScript_GetScriptThreadID_Proxy(
835     IActiveScript* This,
836     DWORD dwWin32ThreadId,
837     SCRIPTTHREADID* pstidThread);
838 void __RPC_STUB IActiveScript_GetScriptThreadID_Stub(
839     struct IRpcStubBuffer* This,
840     struct IRpcChannelBuffer* pRpcChannelBuffer,
841     PRPC_MESSAGE pRpcMessage,
842     DWORD* pdwStubPhase);
843 HRESULT CALLBACK IActiveScript_GetScriptThreadState_Proxy(
844     IActiveScript* This,
845     SCRIPTTHREADID stidThread,
846     SCRIPTTHREADSTATE* pstsState);
847 void __RPC_STUB IActiveScript_GetScriptThreadState_Stub(
848     struct IRpcStubBuffer* This,
849     struct IRpcChannelBuffer* pRpcChannelBuffer,
850     PRPC_MESSAGE pRpcMessage,
851     DWORD* pdwStubPhase);
852 HRESULT CALLBACK IActiveScript_InterruptScriptThread_Proxy(
853     IActiveScript* This,
854     SCRIPTTHREADID stidThread,
855     const EXCEPINFO* pexcepinfo,
856     DWORD dwFlags);
857 void __RPC_STUB IActiveScript_InterruptScriptThread_Stub(
858     struct IRpcStubBuffer* This,
859     struct IRpcChannelBuffer* pRpcChannelBuffer,
860     PRPC_MESSAGE pRpcMessage,
861     DWORD* pdwStubPhase);
862 HRESULT CALLBACK IActiveScript_Clone_Proxy(
863     IActiveScript* This,
864     IActiveScript** ppscript);
865 void __RPC_STUB IActiveScript_Clone_Stub(
866     struct IRpcStubBuffer* This,
867     struct IRpcChannelBuffer* pRpcChannelBuffer,
868     PRPC_MESSAGE pRpcMessage,
869     DWORD* pdwStubPhase);
870
871 #endif  /* __IActiveScript_INTERFACE_DEFINED__ */
872
873 typedef IActiveScript *PIActiveScript;
874 #ifndef __IActiveScriptParse_FWD_DEFINED__
875 #define __IActiveScriptParse_FWD_DEFINED__
876 typedef struct IActiveScriptParse IActiveScriptParse;
877 #endif
878
879 /*****************************************************************************
880  * IActiveScriptParse interface
881  */
882 #ifndef __IActiveScriptParse_INTERFACE_DEFINED__
883 #define __IActiveScriptParse_INTERFACE_DEFINED__
884
885 DEFINE_GUID(IID_IActiveScriptParse, 0xbb1a2ae2, 0xa4f9, 0x11cf, 0x8f,0x20, 0x00,0x80,0x5f,0x2c,0xd0,0x64);
886 #if defined(__cplusplus) && !defined(CINTERFACE)
887 struct IActiveScriptParse : public IUnknown
888 {
889     virtual HRESULT STDMETHODCALLTYPE InitNew(
890         ) = 0;
891
892     virtual HRESULT STDMETHODCALLTYPE AddScriptlet(
893         LPCOLESTR pstrDefaultName,
894         LPCOLESTR pstrCode,
895         LPCOLESTR pstrItemName,
896         LPCOLESTR pstrSubItemName,
897         LPCOLESTR pstrEventName,
898         LPCOLESTR pstrDelimiter,
899         DWORD dwSourceContextCookie,
900         ULONG ulStartingLineNumber,
901         DWORD dwFlags,
902         BSTR* pbstrName,
903         EXCEPINFO* pexcepinfo) = 0;
904
905     virtual HRESULT STDMETHODCALLTYPE ParseScriptText(
906         LPCOLESTR pstrCode,
907         LPCOLESTR pstrItemName,
908         IUnknown* punkContext,
909         LPCOLESTR pstrDelimiter,
910         DWORD dwSourceContextCookie,
911         ULONG ulStartingLineNumber,
912         DWORD dwFlags,
913         VARIANT* pvarResult,
914         EXCEPINFO* pexcepinfo) = 0;
915
916 };
917 #else
918 typedef struct IActiveScriptParseVtbl IActiveScriptParseVtbl;
919 struct IActiveScriptParse {
920     const IActiveScriptParseVtbl* lpVtbl;
921 };
922 struct IActiveScriptParseVtbl {
923     ICOM_MSVTABLE_COMPAT_FIELDS
924
925     /*** IUnknown methods ***/
926     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
927         IActiveScriptParse* This,
928         REFIID riid,
929         void** ppvObject);
930
931     ULONG (STDMETHODCALLTYPE *AddRef)(
932         IActiveScriptParse* This);
933
934     ULONG (STDMETHODCALLTYPE *Release)(
935         IActiveScriptParse* This);
936
937     /*** IActiveScriptParse methods ***/
938     HRESULT (STDMETHODCALLTYPE *InitNew)(
939         IActiveScriptParse* This);
940
941     HRESULT (STDMETHODCALLTYPE *AddScriptlet)(
942         IActiveScriptParse* This,
943         LPCOLESTR pstrDefaultName,
944         LPCOLESTR pstrCode,
945         LPCOLESTR pstrItemName,
946         LPCOLESTR pstrSubItemName,
947         LPCOLESTR pstrEventName,
948         LPCOLESTR pstrDelimiter,
949         DWORD dwSourceContextCookie,
950         ULONG ulStartingLineNumber,
951         DWORD dwFlags,
952         BSTR* pbstrName,
953         EXCEPINFO* pexcepinfo);
954
955     HRESULT (STDMETHODCALLTYPE *ParseScriptText)(
956         IActiveScriptParse* This,
957         LPCOLESTR pstrCode,
958         LPCOLESTR pstrItemName,
959         IUnknown* punkContext,
960         LPCOLESTR pstrDelimiter,
961         DWORD dwSourceContextCookie,
962         ULONG ulStartingLineNumber,
963         DWORD dwFlags,
964         VARIANT* pvarResult,
965         EXCEPINFO* pexcepinfo);
966
967 };
968
969 #ifdef COBJMACROS
970 /*** IUnknown methods ***/
971 #define IActiveScriptParse_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
972 #define IActiveScriptParse_AddRef(p) (p)->lpVtbl->AddRef(p)
973 #define IActiveScriptParse_Release(p) (p)->lpVtbl->Release(p)
974 /*** IActiveScriptParse methods ***/
975 #define IActiveScriptParse_InitNew(p) (p)->lpVtbl->InitNew(p)
976 #define IActiveScriptParse_AddScriptlet(p,a,b,c,d,e,f,g,h,i,j,k) (p)->lpVtbl->AddScriptlet(p,a,b,c,d,e,f,g,h,i,j,k)
977 #define IActiveScriptParse_ParseScriptText(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->ParseScriptText(p,a,b,c,d,e,f,g,h,i)
978 #endif
979
980 #endif
981
982 #define IActiveScriptParse_METHODS \
983     ICOM_MSVTABLE_COMPAT_FIELDS \
984     /*** IUnknown methods ***/ \
985     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
986     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
987     STDMETHOD_(ULONG,Release)(THIS) PURE; \
988     /*** IActiveScriptParse methods ***/ \
989     STDMETHOD_(HRESULT,InitNew)(THIS) PURE; \
990     STDMETHOD_(HRESULT,AddScriptlet)(THIS_ LPCOLESTR pstrDefaultName, LPCOLESTR pstrCode, LPCOLESTR pstrItemName, LPCOLESTR pstrSubItemName, LPCOLESTR pstrEventName, LPCOLESTR pstrDelimiter, DWORD dwSourceContextCookie, ULONG ulStartingLineNumber, DWORD dwFlags, BSTR* pbstrName, EXCEPINFO* pexcepinfo) PURE; \
991     STDMETHOD_(HRESULT,ParseScriptText)(THIS_ LPCOLESTR pstrCode, LPCOLESTR pstrItemName, IUnknown* punkContext, LPCOLESTR pstrDelimiter, DWORD dwSourceContextCookie, ULONG ulStartingLineNumber, DWORD dwFlags, VARIANT* pvarResult, EXCEPINFO* pexcepinfo) PURE;
992
993 HRESULT CALLBACK IActiveScriptParse_InitNew_Proxy(
994     IActiveScriptParse* This);
995 void __RPC_STUB IActiveScriptParse_InitNew_Stub(
996     struct IRpcStubBuffer* This,
997     struct IRpcChannelBuffer* pRpcChannelBuffer,
998     PRPC_MESSAGE pRpcMessage,
999     DWORD* pdwStubPhase);
1000 HRESULT CALLBACK IActiveScriptParse_AddScriptlet_Proxy(
1001     IActiveScriptParse* This,
1002     LPCOLESTR pstrDefaultName,
1003     LPCOLESTR pstrCode,
1004     LPCOLESTR pstrItemName,
1005     LPCOLESTR pstrSubItemName,
1006     LPCOLESTR pstrEventName,
1007     LPCOLESTR pstrDelimiter,
1008     DWORD dwSourceContextCookie,
1009     ULONG ulStartingLineNumber,
1010     DWORD dwFlags,
1011     BSTR* pbstrName,
1012     EXCEPINFO* pexcepinfo);
1013 void __RPC_STUB IActiveScriptParse_AddScriptlet_Stub(
1014     struct IRpcStubBuffer* This,
1015     struct IRpcChannelBuffer* pRpcChannelBuffer,
1016     PRPC_MESSAGE pRpcMessage,
1017     DWORD* pdwStubPhase);
1018 HRESULT CALLBACK IActiveScriptParse_ParseScriptText_Proxy(
1019     IActiveScriptParse* This,
1020     LPCOLESTR pstrCode,
1021     LPCOLESTR pstrItemName,
1022     IUnknown* punkContext,
1023     LPCOLESTR pstrDelimiter,
1024     DWORD dwSourceContextCookie,
1025     ULONG ulStartingLineNumber,
1026     DWORD dwFlags,
1027     VARIANT* pvarResult,
1028     EXCEPINFO* pexcepinfo);
1029 void __RPC_STUB IActiveScriptParse_ParseScriptText_Stub(
1030     struct IRpcStubBuffer* This,
1031     struct IRpcChannelBuffer* pRpcChannelBuffer,
1032     PRPC_MESSAGE pRpcMessage,
1033     DWORD* pdwStubPhase);
1034
1035 #endif  /* __IActiveScriptParse_INTERFACE_DEFINED__ */
1036
1037 typedef IActiveScriptParse *PIActiveScriptParse;
1038 #ifndef __IActiveScriptParseProcedureOld_FWD_DEFINED__
1039 #define __IActiveScriptParseProcedureOld_FWD_DEFINED__
1040 typedef struct IActiveScriptParseProcedureOld IActiveScriptParseProcedureOld;
1041 #endif
1042
1043 /*****************************************************************************
1044  * IActiveScriptParseProcedureOld interface
1045  */
1046 #ifndef __IActiveScriptParseProcedureOld_INTERFACE_DEFINED__
1047 #define __IActiveScriptParseProcedureOld_INTERFACE_DEFINED__
1048
1049 DEFINE_GUID(IID_IActiveScriptParseProcedureOld, 0x1cff0050, 0x6fdd, 0x11d0, 0x93,0x28, 0x00,0xa0,0xc9,0x0d,0xca,0xa9);
1050 #if defined(__cplusplus) && !defined(CINTERFACE)
1051 struct IActiveScriptParseProcedureOld : public IUnknown
1052 {
1053     virtual HRESULT STDMETHODCALLTYPE ParseProcedureText(
1054         LPCOLESTR pstrCode,
1055         LPCOLESTR pstrFormalParams,
1056         LPCOLESTR pstrItemName,
1057         IUnknown* punkContext,
1058         LPCOLESTR pstrDelimiter,
1059         DWORD dwSourceContextCookie,
1060         ULONG ulStartingLineNumber,
1061         DWORD dwFlags,
1062         IDispatch** ppdisp) = 0;
1063
1064 };
1065 #else
1066 typedef struct IActiveScriptParseProcedureOldVtbl IActiveScriptParseProcedureOldVtbl;
1067 struct IActiveScriptParseProcedureOld {
1068     const IActiveScriptParseProcedureOldVtbl* lpVtbl;
1069 };
1070 struct IActiveScriptParseProcedureOldVtbl {
1071     ICOM_MSVTABLE_COMPAT_FIELDS
1072
1073     /*** IUnknown methods ***/
1074     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1075         IActiveScriptParseProcedureOld* This,
1076         REFIID riid,
1077         void** ppvObject);
1078
1079     ULONG (STDMETHODCALLTYPE *AddRef)(
1080         IActiveScriptParseProcedureOld* This);
1081
1082     ULONG (STDMETHODCALLTYPE *Release)(
1083         IActiveScriptParseProcedureOld* This);
1084
1085     /*** IActiveScriptParseProcedureOld methods ***/
1086     HRESULT (STDMETHODCALLTYPE *ParseProcedureText)(
1087         IActiveScriptParseProcedureOld* This,
1088         LPCOLESTR pstrCode,
1089         LPCOLESTR pstrFormalParams,
1090         LPCOLESTR pstrItemName,
1091         IUnknown* punkContext,
1092         LPCOLESTR pstrDelimiter,
1093         DWORD dwSourceContextCookie,
1094         ULONG ulStartingLineNumber,
1095         DWORD dwFlags,
1096         IDispatch** ppdisp);
1097
1098 };
1099
1100 #ifdef COBJMACROS
1101 /*** IUnknown methods ***/
1102 #define IActiveScriptParseProcedureOld_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1103 #define IActiveScriptParseProcedureOld_AddRef(p) (p)->lpVtbl->AddRef(p)
1104 #define IActiveScriptParseProcedureOld_Release(p) (p)->lpVtbl->Release(p)
1105 /*** IActiveScriptParseProcedureOld methods ***/
1106 #define IActiveScriptParseProcedureOld_ParseProcedureText(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->ParseProcedureText(p,a,b,c,d,e,f,g,h,i)
1107 #endif
1108
1109 #endif
1110
1111 #define IActiveScriptParseProcedureOld_METHODS \
1112     ICOM_MSVTABLE_COMPAT_FIELDS \
1113     /*** IUnknown methods ***/ \
1114     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1115     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1116     STDMETHOD_(ULONG,Release)(THIS) PURE; \
1117     /*** IActiveScriptParseProcedureOld methods ***/ \
1118     STDMETHOD_(HRESULT,ParseProcedureText)(THIS_ LPCOLESTR pstrCode, LPCOLESTR pstrFormalParams, LPCOLESTR pstrItemName, IUnknown* punkContext, LPCOLESTR pstrDelimiter, DWORD dwSourceContextCookie, ULONG ulStartingLineNumber, DWORD dwFlags, IDispatch** ppdisp) PURE;
1119
1120 HRESULT CALLBACK IActiveScriptParseProcedureOld_ParseProcedureText_Proxy(
1121     IActiveScriptParseProcedureOld* This,
1122     LPCOLESTR pstrCode,
1123     LPCOLESTR pstrFormalParams,
1124     LPCOLESTR pstrItemName,
1125     IUnknown* punkContext,
1126     LPCOLESTR pstrDelimiter,
1127     DWORD dwSourceContextCookie,
1128     ULONG ulStartingLineNumber,
1129     DWORD dwFlags,
1130     IDispatch** ppdisp);
1131 void __RPC_STUB IActiveScriptParseProcedureOld_ParseProcedureText_Stub(
1132     struct IRpcStubBuffer* This,
1133     struct IRpcChannelBuffer* pRpcChannelBuffer,
1134     PRPC_MESSAGE pRpcMessage,
1135     DWORD* pdwStubPhase);
1136
1137 #endif  /* __IActiveScriptParseProcedureOld_INTERFACE_DEFINED__ */
1138
1139 #ifndef __IActiveScriptParseProcedure_FWD_DEFINED__
1140 #define __IActiveScriptParseProcedure_FWD_DEFINED__
1141 typedef struct IActiveScriptParseProcedure IActiveScriptParseProcedure;
1142 #endif
1143
1144 /*****************************************************************************
1145  * IActiveScriptParseProcedure interface
1146  */
1147 #ifndef __IActiveScriptParseProcedure_INTERFACE_DEFINED__
1148 #define __IActiveScriptParseProcedure_INTERFACE_DEFINED__
1149
1150 DEFINE_GUID(IID_IActiveScriptParseProcedure, 0xaa5b6a80, 0xb834, 0x11d0, 0x93,0x2f, 0x00,0xa0,0xc9,0x0d,0xca,0xa9);
1151 #if defined(__cplusplus) && !defined(CINTERFACE)
1152 struct IActiveScriptParseProcedure : public IUnknown
1153 {
1154     virtual HRESULT STDMETHODCALLTYPE ParseProcedureText(
1155         LPCOLESTR pstrCode,
1156         LPCOLESTR pstrFormalParams,
1157         LPCOLESTR pstrProcedureName,
1158         LPCOLESTR pstrItemName,
1159         IUnknown* punkContext,
1160         LPCOLESTR pstrDelimiter,
1161         DWORD dwSourceContextCookie,
1162         ULONG ulStartingLineNumber,
1163         DWORD dwFlags,
1164         IDispatch** ppdisp) = 0;
1165
1166 };
1167 #else
1168 typedef struct IActiveScriptParseProcedureVtbl IActiveScriptParseProcedureVtbl;
1169 struct IActiveScriptParseProcedure {
1170     const IActiveScriptParseProcedureVtbl* lpVtbl;
1171 };
1172 struct IActiveScriptParseProcedureVtbl {
1173     ICOM_MSVTABLE_COMPAT_FIELDS
1174
1175     /*** IUnknown methods ***/
1176     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1177         IActiveScriptParseProcedure* This,
1178         REFIID riid,
1179         void** ppvObject);
1180
1181     ULONG (STDMETHODCALLTYPE *AddRef)(
1182         IActiveScriptParseProcedure* This);
1183
1184     ULONG (STDMETHODCALLTYPE *Release)(
1185         IActiveScriptParseProcedure* This);
1186
1187     /*** IActiveScriptParseProcedure methods ***/
1188     HRESULT (STDMETHODCALLTYPE *ParseProcedureText)(
1189         IActiveScriptParseProcedure* This,
1190         LPCOLESTR pstrCode,
1191         LPCOLESTR pstrFormalParams,
1192         LPCOLESTR pstrProcedureName,
1193         LPCOLESTR pstrItemName,
1194         IUnknown* punkContext,
1195         LPCOLESTR pstrDelimiter,
1196         DWORD dwSourceContextCookie,
1197         ULONG ulStartingLineNumber,
1198         DWORD dwFlags,
1199         IDispatch** ppdisp);
1200
1201 };
1202
1203 #ifdef COBJMACROS
1204 /*** IUnknown methods ***/
1205 #define IActiveScriptParseProcedure_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1206 #define IActiveScriptParseProcedure_AddRef(p) (p)->lpVtbl->AddRef(p)
1207 #define IActiveScriptParseProcedure_Release(p) (p)->lpVtbl->Release(p)
1208 /*** IActiveScriptParseProcedure methods ***/
1209 #define IActiveScriptParseProcedure_ParseProcedureText(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->ParseProcedureText(p,a,b,c,d,e,f,g,h,i,j)
1210 #endif
1211
1212 #endif
1213
1214 #define IActiveScriptParseProcedure_METHODS \
1215     ICOM_MSVTABLE_COMPAT_FIELDS \
1216     /*** IUnknown methods ***/ \
1217     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1218     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1219     STDMETHOD_(ULONG,Release)(THIS) PURE; \
1220     /*** IActiveScriptParseProcedure methods ***/ \
1221     STDMETHOD_(HRESULT,ParseProcedureText)(THIS_ LPCOLESTR pstrCode, LPCOLESTR pstrFormalParams, LPCOLESTR pstrProcedureName, LPCOLESTR pstrItemName, IUnknown* punkContext, LPCOLESTR pstrDelimiter, DWORD dwSourceContextCookie, ULONG ulStartingLineNumber, DWORD dwFlags, IDispatch** ppdisp) PURE;
1222
1223 HRESULT CALLBACK IActiveScriptParseProcedure_ParseProcedureText_Proxy(
1224     IActiveScriptParseProcedure* This,
1225     LPCOLESTR pstrCode,
1226     LPCOLESTR pstrFormalParams,
1227     LPCOLESTR pstrProcedureName,
1228     LPCOLESTR pstrItemName,
1229     IUnknown* punkContext,
1230     LPCOLESTR pstrDelimiter,
1231     DWORD dwSourceContextCookie,
1232     ULONG ulStartingLineNumber,
1233     DWORD dwFlags,
1234     IDispatch** ppdisp);
1235 void __RPC_STUB IActiveScriptParseProcedure_ParseProcedureText_Stub(
1236     struct IRpcStubBuffer* This,
1237     struct IRpcChannelBuffer* pRpcChannelBuffer,
1238     PRPC_MESSAGE pRpcMessage,
1239     DWORD* pdwStubPhase);
1240
1241 #endif  /* __IActiveScriptParseProcedure_INTERFACE_DEFINED__ */
1242
1243 #ifndef __IBindEventHandler_FWD_DEFINED__
1244 #define __IBindEventHandler_FWD_DEFINED__
1245 typedef struct IBindEventHandler IBindEventHandler;
1246 #endif
1247
1248 /*****************************************************************************
1249  * IBindEventHandler interface
1250  */
1251 #ifndef __IBindEventHandler_INTERFACE_DEFINED__
1252 #define __IBindEventHandler_INTERFACE_DEFINED__
1253
1254 DEFINE_GUID(IID_IBindEventHandler, 0x63cdbcb0, 0xc1b1, 0x11d0, 0x93,0x36, 0x00,0xa0,0xc9,0x0d,0xca,0xa9);
1255 #if defined(__cplusplus) && !defined(CINTERFACE)
1256 struct IBindEventHandler : public IUnknown
1257 {
1258     virtual HRESULT STDMETHODCALLTYPE BindHandler(
1259         LPCOLESTR pstrEvent,
1260         IDispatch* pdisp) = 0;
1261
1262 };
1263 #else
1264 typedef struct IBindEventHandlerVtbl IBindEventHandlerVtbl;
1265 struct IBindEventHandler {
1266     const IBindEventHandlerVtbl* lpVtbl;
1267 };
1268 struct IBindEventHandlerVtbl {
1269     ICOM_MSVTABLE_COMPAT_FIELDS
1270
1271     /*** IUnknown methods ***/
1272     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1273         IBindEventHandler* This,
1274         REFIID riid,
1275         void** ppvObject);
1276
1277     ULONG (STDMETHODCALLTYPE *AddRef)(
1278         IBindEventHandler* This);
1279
1280     ULONG (STDMETHODCALLTYPE *Release)(
1281         IBindEventHandler* This);
1282
1283     /*** IBindEventHandler methods ***/
1284     HRESULT (STDMETHODCALLTYPE *BindHandler)(
1285         IBindEventHandler* This,
1286         LPCOLESTR pstrEvent,
1287         IDispatch* pdisp);
1288
1289 };
1290
1291 #ifdef COBJMACROS
1292 /*** IUnknown methods ***/
1293 #define IBindEventHandler_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1294 #define IBindEventHandler_AddRef(p) (p)->lpVtbl->AddRef(p)
1295 #define IBindEventHandler_Release(p) (p)->lpVtbl->Release(p)
1296 /*** IBindEventHandler methods ***/
1297 #define IBindEventHandler_BindHandler(p,a,b) (p)->lpVtbl->BindHandler(p,a,b)
1298 #endif
1299
1300 #endif
1301
1302 #define IBindEventHandler_METHODS \
1303     ICOM_MSVTABLE_COMPAT_FIELDS \
1304     /*** IUnknown methods ***/ \
1305     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1306     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1307     STDMETHOD_(ULONG,Release)(THIS) PURE; \
1308     /*** IBindEventHandler methods ***/ \
1309     STDMETHOD_(HRESULT,BindHandler)(THIS_ LPCOLESTR pstrEvent, IDispatch* pdisp) PURE;
1310
1311 HRESULT CALLBACK IBindEventHandler_BindHandler_Proxy(
1312     IBindEventHandler* This,
1313     LPCOLESTR pstrEvent,
1314     IDispatch* pdisp);
1315 void __RPC_STUB IBindEventHandler_BindHandler_Stub(
1316     struct IRpcStubBuffer* This,
1317     struct IRpcChannelBuffer* pRpcChannelBuffer,
1318     PRPC_MESSAGE pRpcMessage,
1319     DWORD* pdwStubPhase);
1320
1321 #endif  /* __IBindEventHandler_INTERFACE_DEFINED__ */
1322
1323 #ifndef __IActiveScriptStats_FWD_DEFINED__
1324 #define __IActiveScriptStats_FWD_DEFINED__
1325 typedef struct IActiveScriptStats IActiveScriptStats;
1326 #endif
1327
1328 /*****************************************************************************
1329  * IActiveScriptStats interface
1330  */
1331 #ifndef __IActiveScriptStats_INTERFACE_DEFINED__
1332 #define __IActiveScriptStats_INTERFACE_DEFINED__
1333
1334 DEFINE_GUID(IID_IActiveScriptStats, 0xb8da6310, 0xe19b, 0x11d0, 0x93,0x3c, 0x00,0xa0,0xc9,0x0d,0xca,0xa9);
1335 #if defined(__cplusplus) && !defined(CINTERFACE)
1336 struct IActiveScriptStats : public IUnknown
1337 {
1338     virtual HRESULT STDMETHODCALLTYPE GetStat(
1339         DWORD stid,
1340         ULONG* pluHi,
1341         ULONG* pluLo) = 0;
1342
1343     virtual HRESULT STDMETHODCALLTYPE GetStatEx(
1344         REFGUID guid,
1345         ULONG* pluHi,
1346         ULONG* pluLo) = 0;
1347
1348     virtual HRESULT STDMETHODCALLTYPE ResetStats(
1349         ) = 0;
1350
1351 };
1352 #else
1353 typedef struct IActiveScriptStatsVtbl IActiveScriptStatsVtbl;
1354 struct IActiveScriptStats {
1355     const IActiveScriptStatsVtbl* lpVtbl;
1356 };
1357 struct IActiveScriptStatsVtbl {
1358     ICOM_MSVTABLE_COMPAT_FIELDS
1359
1360     /*** IUnknown methods ***/
1361     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1362         IActiveScriptStats* This,
1363         REFIID riid,
1364         void** ppvObject);
1365
1366     ULONG (STDMETHODCALLTYPE *AddRef)(
1367         IActiveScriptStats* This);
1368
1369     ULONG (STDMETHODCALLTYPE *Release)(
1370         IActiveScriptStats* This);
1371
1372     /*** IActiveScriptStats methods ***/
1373     HRESULT (STDMETHODCALLTYPE *GetStat)(
1374         IActiveScriptStats* This,
1375         DWORD stid,
1376         ULONG* pluHi,
1377         ULONG* pluLo);
1378
1379     HRESULT (STDMETHODCALLTYPE *GetStatEx)(
1380         IActiveScriptStats* This,
1381         REFGUID guid,
1382         ULONG* pluHi,
1383         ULONG* pluLo);
1384
1385     HRESULT (STDMETHODCALLTYPE *ResetStats)(
1386         IActiveScriptStats* This);
1387
1388 };
1389
1390 #ifdef COBJMACROS
1391 /*** IUnknown methods ***/
1392 #define IActiveScriptStats_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1393 #define IActiveScriptStats_AddRef(p) (p)->lpVtbl->AddRef(p)
1394 #define IActiveScriptStats_Release(p) (p)->lpVtbl->Release(p)
1395 /*** IActiveScriptStats methods ***/
1396 #define IActiveScriptStats_GetStat(p,a,b,c) (p)->lpVtbl->GetStat(p,a,b,c)
1397 #define IActiveScriptStats_GetStatEx(p,a,b,c) (p)->lpVtbl->GetStatEx(p,a,b,c)
1398 #define IActiveScriptStats_ResetStats(p) (p)->lpVtbl->ResetStats(p)
1399 #endif
1400
1401 #endif
1402
1403 #define IActiveScriptStats_METHODS \
1404     ICOM_MSVTABLE_COMPAT_FIELDS \
1405     /*** IUnknown methods ***/ \
1406     STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1407     STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1408     STDMETHOD_(ULONG,Release)(THIS) PURE; \
1409     /*** IActiveScriptStats methods ***/ \
1410     STDMETHOD_(HRESULT,GetStat)(THIS_ DWORD stid, ULONG* pluHi, ULONG* pluLo) PURE; \
1411     STDMETHOD_(HRESULT,GetStatEx)(THIS_ REFGUID guid, ULONG* pluHi, ULONG* pluLo) PURE; \
1412     STDMETHOD_(HRESULT,ResetStats)(THIS) PURE;
1413
1414 HRESULT CALLBACK IActiveScriptStats_GetStat_Proxy(
1415     IActiveScriptStats* This,
1416     DWORD stid,
1417     ULONG* pluHi,
1418     ULONG* pluLo);
1419 void __RPC_STUB IActiveScriptStats_GetStat_Stub(
1420     struct IRpcStubBuffer* This,
1421     struct IRpcChannelBuffer* pRpcChannelBuffer,
1422     PRPC_MESSAGE pRpcMessage,
1423     DWORD* pdwStubPhase);
1424 HRESULT CALLBACK IActiveScriptStats_GetStatEx_Proxy(
1425     IActiveScriptStats* This,
1426     REFGUID guid,
1427     ULONG* pluHi,
1428     ULONG* pluLo);
1429 void __RPC_STUB IActiveScriptStats_GetStatEx_Stub(
1430     struct IRpcStubBuffer* This,
1431     struct IRpcChannelBuffer* pRpcChannelBuffer,
1432     PRPC_MESSAGE pRpcMessage,
1433     DWORD* pdwStubPhase);
1434 HRESULT CALLBACK IActiveScriptStats_ResetStats_Proxy(
1435     IActiveScriptStats* This);
1436 void __RPC_STUB IActiveScriptStats_ResetStats_Stub(
1437     struct IRpcStubBuffer* This,
1438     struct IRpcChannelBuffer* pRpcChannelBuffer,
1439     PRPC_MESSAGE pRpcMessage,
1440     DWORD* pdwStubPhase);
1441
1442 #endif  /* __IActiveScriptStats_INTERFACE_DEFINED__ */
1443
1444 #ifdef __cplusplus
1445 }
1446 #endif
1447 #endif /* __WIDL_ACTIVSCP_H */