1 /*** Autogenerated by WIDL 1.6 from include/activaut.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 __activaut_h__
16 #define __activaut_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __IScriptNode_FWD_DEFINED__
21 #define __IScriptNode_FWD_DEFINED__
22 typedef interface IScriptNode IScriptNode;
23 #endif
24 
25 #ifndef __IScriptEntry_FWD_DEFINED__
26 #define __IScriptEntry_FWD_DEFINED__
27 typedef interface IScriptEntry IScriptEntry;
28 #endif
29 
30 #ifndef __IScriptScriptlet_FWD_DEFINED__
31 #define __IScriptScriptlet_FWD_DEFINED__
32 typedef interface IScriptScriptlet IScriptScriptlet;
33 #endif
34 
35 #ifndef __IActiveScriptAuthor_FWD_DEFINED__
36 #define __IActiveScriptAuthor_FWD_DEFINED__
37 typedef interface IActiveScriptAuthor IActiveScriptAuthor;
38 #endif
39 
40 #ifndef __IActiveScriptAuthorProcedure_FWD_DEFINED__
41 #define __IActiveScriptAuthorProcedure_FWD_DEFINED__
42 typedef interface IActiveScriptAuthorProcedure IActiveScriptAuthorProcedure;
43 #endif
44 
45 /* Headers for imported files */
46 
47 #include <ocidl.h>
48 #include <oleidl.h>
49 #include <oaidl.h>
50 
51 #ifdef __cplusplus
52 extern "C" {
53 #endif
54 
55 /**
56  * This file is part of the mingw-w64 runtime package.
57  * No warranty is given; refer to the file DISCLAIMER within this package.
58  */
59 
60 #include <winapifamily.h>
61 
62 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
63 
64 #ifndef __ActivAut_h
65 #define __ActivAut_h
66 
67 
68 #ifndef _NO_AUTHOR_GUIDS
69 DEFINE_GUID(CATID_ActiveScriptAuthor, 0xaee2a92, 0xbcbb, 0x11d0, 0x8c, 0x72, 0x0, 0xc0, 0x4f, 0xc2, 0xb0, 0x85);
70 #endif
71 
72 const DWORD fasaPreferInternalHandler = 1;
73 const DWORD fasaSupportInternalHandler = 2;
74 const DWORD fasaCaseSensitive = 4;
75 
76 const DWORD SCRIPT_CMPL_NOLIST = 0;
77 const DWORD SCRIPT_CMPL_MEMBERLIST = 1;
78 const DWORD SCRIPT_CMPL_ENUMLIST = 2;
79 const DWORD SCRIPT_CMPL_PARAMTIP = 4;
80 const DWORD SCRIPT_CMPL_GLOBALLIST = 8;
81 
82 const DWORD SCRIPT_CMPL_ENUM_TRIGGER = 1;
83 const DWORD SCRIPT_CMPL_MEMBER_TRIGGER = 2;
84 const DWORD SCRIPT_CMPL_PARAM_TRIGGER = 3;
85 const DWORD SCRIPT_CMPL_COMMIT = 4;
86 
87 const DWORD GETATTRTYPE_NORMAL = 0;
88 const DWORD GETATTRTYPE_DEPSCAN = 1;
89 
90 const DWORD GETATTRFLAG_THIS = 0x100;
91 const DWORD GETATTRFLAG_HUMANTEXT = 0x8000;
92 
93 const DWORD SOURCETEXT_ATTR_IDENTIFIER = 0x100;
94 const DWORD SOURCETEXT_ATTR_MEMBERLOOKUP = 0x200;
95 const DWORD SOURCETEXT_ATTR_THIS = 0x400;
96 const DWORD SOURCETEXT_ATTR_HUMANTEXT = 0x8000;
97 
98 #ifndef __IActiveScriptAuthor_FWD_DEFINED__
99 #define __IActiveScriptAuthor_FWD_DEFINED__
100 typedef interface IActiveScriptAuthor IActiveScriptAuthor;
101 #endif
102 
103 #ifndef __IScriptNode_FWD_DEFINED__
104 #define __IScriptNode_FWD_DEFINED__
105 typedef interface IScriptNode IScriptNode;
106 #endif
107 
108 #ifndef __IScriptEntry_FWD_DEFINED__
109 #define __IScriptEntry_FWD_DEFINED__
110 typedef interface IScriptEntry IScriptEntry;
111 #endif
112 
113 #ifndef __IScriptScriptlet_FWD_DEFINED__
114 #define __IScriptScriptlet_FWD_DEFINED__
115 typedef interface IScriptScriptlet IScriptScriptlet;
116 #endif
117 
118 typedef WORD SOURCE_TEXT_ATTR;
119 /*****************************************************************************
120  * IScriptNode interface
121  */
122 #ifndef __IScriptNode_INTERFACE_DEFINED__
123 #define __IScriptNode_INTERFACE_DEFINED__
124 
125 DEFINE_GUID(IID_IScriptNode, 0x0aee2a94, 0xbcbb, 0x11d0, 0x8c,0x72, 0x00,0xc0,0x4f,0xc2,0xb0,0x85);
126 #if defined(__cplusplus) && !defined(CINTERFACE)
127 MIDL_INTERFACE("0aee2a94-bcbb-11d0-8c72-00c04fc2b085")
128 IScriptNode : public IUnknown
129 {
130     virtual HRESULT STDMETHODCALLTYPE Alive(
131         ) = 0;
132 
133     virtual HRESULT STDMETHODCALLTYPE Delete(
134         ) = 0;
135 
136     virtual HRESULT STDMETHODCALLTYPE GetParent(
137         IScriptNode **ppsnParent) = 0;
138 
139     virtual HRESULT STDMETHODCALLTYPE GetIndexInParent(
140         ULONG *pisn) = 0;
141 
142     virtual HRESULT STDMETHODCALLTYPE GetCookie(
143         DWORD *pdwCookie) = 0;
144 
145     virtual HRESULT STDMETHODCALLTYPE GetNumberOfChildren(
146         ULONG *pcsn) = 0;
147 
148     virtual HRESULT STDMETHODCALLTYPE GetChild(
149         ULONG isn,
150         IScriptNode **ppsn) = 0;
151 
152     virtual HRESULT STDMETHODCALLTYPE GetLanguage(
153         BSTR *pbstr) = 0;
154 
155     virtual HRESULT STDMETHODCALLTYPE CreateChildEntry(
156         ULONG isn,
157         DWORD dwCookie,
158         LPCOLESTR pszDelimiter,
159         IScriptEntry **ppse) = 0;
160 
161     virtual HRESULT STDMETHODCALLTYPE CreateChildHandler(
162         LPCOLESTR pszDefaultName,
163         LPCOLESTR *prgpszNames,
164         ULONG cpszNames,
165         LPCOLESTR pszEvent,
166         LPCOLESTR pszDelimiter,
167         ITypeInfo *ptiSignature,
168         ULONG iMethodSignature,
169         ULONG isn,
170         DWORD dwCookie,
171         IScriptEntry **ppse) = 0;
172 
173 };
174 #ifdef __CRT_UUID_DECL
175 __CRT_UUID_DECL(IScriptNode, 0x0aee2a94, 0xbcbb, 0x11d0, 0x8c,0x72, 0x00,0xc0,0x4f,0xc2,0xb0,0x85)
176 #endif
177 #else
178 typedef struct IScriptNodeVtbl {
179     BEGIN_INTERFACE
180 
181     /*** IUnknown methods ***/
182     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
183         IScriptNode* This,
184         REFIID riid,
185         void **ppvObject);
186 
187     ULONG (STDMETHODCALLTYPE *AddRef)(
188         IScriptNode* This);
189 
190     ULONG (STDMETHODCALLTYPE *Release)(
191         IScriptNode* This);
192 
193     /*** IScriptNode methods ***/
194     HRESULT (STDMETHODCALLTYPE *Alive)(
195         IScriptNode* This);
196 
197     HRESULT (STDMETHODCALLTYPE *Delete)(
198         IScriptNode* This);
199 
200     HRESULT (STDMETHODCALLTYPE *GetParent)(
201         IScriptNode* This,
202         IScriptNode **ppsnParent);
203 
204     HRESULT (STDMETHODCALLTYPE *GetIndexInParent)(
205         IScriptNode* This,
206         ULONG *pisn);
207 
208     HRESULT (STDMETHODCALLTYPE *GetCookie)(
209         IScriptNode* This,
210         DWORD *pdwCookie);
211 
212     HRESULT (STDMETHODCALLTYPE *GetNumberOfChildren)(
213         IScriptNode* This,
214         ULONG *pcsn);
215 
216     HRESULT (STDMETHODCALLTYPE *GetChild)(
217         IScriptNode* This,
218         ULONG isn,
219         IScriptNode **ppsn);
220 
221     HRESULT (STDMETHODCALLTYPE *GetLanguage)(
222         IScriptNode* This,
223         BSTR *pbstr);
224 
225     HRESULT (STDMETHODCALLTYPE *CreateChildEntry)(
226         IScriptNode* This,
227         ULONG isn,
228         DWORD dwCookie,
229         LPCOLESTR pszDelimiter,
230         IScriptEntry **ppse);
231 
232     HRESULT (STDMETHODCALLTYPE *CreateChildHandler)(
233         IScriptNode* This,
234         LPCOLESTR pszDefaultName,
235         LPCOLESTR *prgpszNames,
236         ULONG cpszNames,
237         LPCOLESTR pszEvent,
238         LPCOLESTR pszDelimiter,
239         ITypeInfo *ptiSignature,
240         ULONG iMethodSignature,
241         ULONG isn,
242         DWORD dwCookie,
243         IScriptEntry **ppse);
244 
245     END_INTERFACE
246 } IScriptNodeVtbl;
247 interface IScriptNode {
248     CONST_VTBL IScriptNodeVtbl* lpVtbl;
249 };
250 
251 #ifdef COBJMACROS
252 #ifndef WIDL_C_INLINE_WRAPPERS
253 /*** IUnknown methods ***/
254 #define IScriptNode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
255 #define IScriptNode_AddRef(This) (This)->lpVtbl->AddRef(This)
256 #define IScriptNode_Release(This) (This)->lpVtbl->Release(This)
257 /*** IScriptNode methods ***/
258 #define IScriptNode_Alive(This) (This)->lpVtbl->Alive(This)
259 #define IScriptNode_Delete(This) (This)->lpVtbl->Delete(This)
260 #define IScriptNode_GetParent(This,ppsnParent) (This)->lpVtbl->GetParent(This,ppsnParent)
261 #define IScriptNode_GetIndexInParent(This,pisn) (This)->lpVtbl->GetIndexInParent(This,pisn)
262 #define IScriptNode_GetCookie(This,pdwCookie) (This)->lpVtbl->GetCookie(This,pdwCookie)
263 #define IScriptNode_GetNumberOfChildren(This,pcsn) (This)->lpVtbl->GetNumberOfChildren(This,pcsn)
264 #define IScriptNode_GetChild(This,isn,ppsn) (This)->lpVtbl->GetChild(This,isn,ppsn)
265 #define IScriptNode_GetLanguage(This,pbstr) (This)->lpVtbl->GetLanguage(This,pbstr)
266 #define IScriptNode_CreateChildEntry(This,isn,dwCookie,pszDelimiter,ppse) (This)->lpVtbl->CreateChildEntry(This,isn,dwCookie,pszDelimiter,ppse)
267 #define IScriptNode_CreateChildHandler(This,pszDefaultName,prgpszNames,cpszNames,pszEvent,pszDelimiter,ptiSignature,iMethodSignature,isn,dwCookie,ppse) (This)->lpVtbl->CreateChildHandler(This,pszDefaultName,prgpszNames,cpszNames,pszEvent,pszDelimiter,ptiSignature,iMethodSignature,isn,dwCookie,ppse)
268 #else
269 /*** IUnknown methods ***/
270 static FORCEINLINE HRESULT IScriptNode_QueryInterface(IScriptNode* This,REFIID riid,void **ppvObject) {
271     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
272 }
273 static FORCEINLINE ULONG IScriptNode_AddRef(IScriptNode* This) {
274     return This->lpVtbl->AddRef(This);
275 }
276 static FORCEINLINE ULONG IScriptNode_Release(IScriptNode* This) {
277     return This->lpVtbl->Release(This);
278 }
279 /*** IScriptNode methods ***/
280 static FORCEINLINE HRESULT IScriptNode_Alive(IScriptNode* This) {
281     return This->lpVtbl->Alive(This);
282 }
283 static FORCEINLINE HRESULT IScriptNode_Delete(IScriptNode* This) {
284     return This->lpVtbl->Delete(This);
285 }
286 static FORCEINLINE HRESULT IScriptNode_GetParent(IScriptNode* This,IScriptNode **ppsnParent) {
287     return This->lpVtbl->GetParent(This,ppsnParent);
288 }
289 static FORCEINLINE HRESULT IScriptNode_GetIndexInParent(IScriptNode* This,ULONG *pisn) {
290     return This->lpVtbl->GetIndexInParent(This,pisn);
291 }
292 static FORCEINLINE HRESULT IScriptNode_GetCookie(IScriptNode* This,DWORD *pdwCookie) {
293     return This->lpVtbl->GetCookie(This,pdwCookie);
294 }
295 static FORCEINLINE HRESULT IScriptNode_GetNumberOfChildren(IScriptNode* This,ULONG *pcsn) {
296     return This->lpVtbl->GetNumberOfChildren(This,pcsn);
297 }
298 static FORCEINLINE HRESULT IScriptNode_GetChild(IScriptNode* This,ULONG isn,IScriptNode **ppsn) {
299     return This->lpVtbl->GetChild(This,isn,ppsn);
300 }
301 static FORCEINLINE HRESULT IScriptNode_GetLanguage(IScriptNode* This,BSTR *pbstr) {
302     return This->lpVtbl->GetLanguage(This,pbstr);
303 }
304 static FORCEINLINE HRESULT IScriptNode_CreateChildEntry(IScriptNode* This,ULONG isn,DWORD dwCookie,LPCOLESTR pszDelimiter,IScriptEntry **ppse) {
305     return This->lpVtbl->CreateChildEntry(This,isn,dwCookie,pszDelimiter,ppse);
306 }
307 static FORCEINLINE HRESULT IScriptNode_CreateChildHandler(IScriptNode* This,LPCOLESTR pszDefaultName,LPCOLESTR *prgpszNames,ULONG cpszNames,LPCOLESTR pszEvent,LPCOLESTR pszDelimiter,ITypeInfo *ptiSignature,ULONG iMethodSignature,ULONG isn,DWORD dwCookie,IScriptEntry **ppse) {
308     return This->lpVtbl->CreateChildHandler(This,pszDefaultName,prgpszNames,cpszNames,pszEvent,pszDelimiter,ptiSignature,iMethodSignature,isn,dwCookie,ppse);
309 }
310 #endif
311 #endif
312 
313 #endif
314 
315 HRESULT STDMETHODCALLTYPE IScriptNode_Alive_Proxy(
316     IScriptNode* This);
317 void __RPC_STUB IScriptNode_Alive_Stub(
318     IRpcStubBuffer* This,
319     IRpcChannelBuffer* pRpcChannelBuffer,
320     PRPC_MESSAGE pRpcMessage,
321     DWORD* pdwStubPhase);
322 HRESULT STDMETHODCALLTYPE IScriptNode_Delete_Proxy(
323     IScriptNode* This);
324 void __RPC_STUB IScriptNode_Delete_Stub(
325     IRpcStubBuffer* This,
326     IRpcChannelBuffer* pRpcChannelBuffer,
327     PRPC_MESSAGE pRpcMessage,
328     DWORD* pdwStubPhase);
329 HRESULT STDMETHODCALLTYPE IScriptNode_GetParent_Proxy(
330     IScriptNode* This,
331     IScriptNode **ppsnParent);
332 void __RPC_STUB IScriptNode_GetParent_Stub(
333     IRpcStubBuffer* This,
334     IRpcChannelBuffer* pRpcChannelBuffer,
335     PRPC_MESSAGE pRpcMessage,
336     DWORD* pdwStubPhase);
337 HRESULT STDMETHODCALLTYPE IScriptNode_GetIndexInParent_Proxy(
338     IScriptNode* This,
339     ULONG *pisn);
340 void __RPC_STUB IScriptNode_GetIndexInParent_Stub(
341     IRpcStubBuffer* This,
342     IRpcChannelBuffer* pRpcChannelBuffer,
343     PRPC_MESSAGE pRpcMessage,
344     DWORD* pdwStubPhase);
345 HRESULT STDMETHODCALLTYPE IScriptNode_GetCookie_Proxy(
346     IScriptNode* This,
347     DWORD *pdwCookie);
348 void __RPC_STUB IScriptNode_GetCookie_Stub(
349     IRpcStubBuffer* This,
350     IRpcChannelBuffer* pRpcChannelBuffer,
351     PRPC_MESSAGE pRpcMessage,
352     DWORD* pdwStubPhase);
353 HRESULT STDMETHODCALLTYPE IScriptNode_GetNumberOfChildren_Proxy(
354     IScriptNode* This,
355     ULONG *pcsn);
356 void __RPC_STUB IScriptNode_GetNumberOfChildren_Stub(
357     IRpcStubBuffer* This,
358     IRpcChannelBuffer* pRpcChannelBuffer,
359     PRPC_MESSAGE pRpcMessage,
360     DWORD* pdwStubPhase);
361 HRESULT STDMETHODCALLTYPE IScriptNode_GetChild_Proxy(
362     IScriptNode* This,
363     ULONG isn,
364     IScriptNode **ppsn);
365 void __RPC_STUB IScriptNode_GetChild_Stub(
366     IRpcStubBuffer* This,
367     IRpcChannelBuffer* pRpcChannelBuffer,
368     PRPC_MESSAGE pRpcMessage,
369     DWORD* pdwStubPhase);
370 HRESULT STDMETHODCALLTYPE IScriptNode_GetLanguage_Proxy(
371     IScriptNode* This,
372     BSTR *pbstr);
373 void __RPC_STUB IScriptNode_GetLanguage_Stub(
374     IRpcStubBuffer* This,
375     IRpcChannelBuffer* pRpcChannelBuffer,
376     PRPC_MESSAGE pRpcMessage,
377     DWORD* pdwStubPhase);
378 HRESULT STDMETHODCALLTYPE IScriptNode_CreateChildEntry_Proxy(
379     IScriptNode* This,
380     ULONG isn,
381     DWORD dwCookie,
382     LPCOLESTR pszDelimiter,
383     IScriptEntry **ppse);
384 void __RPC_STUB IScriptNode_CreateChildEntry_Stub(
385     IRpcStubBuffer* This,
386     IRpcChannelBuffer* pRpcChannelBuffer,
387     PRPC_MESSAGE pRpcMessage,
388     DWORD* pdwStubPhase);
389 HRESULT STDMETHODCALLTYPE IScriptNode_CreateChildHandler_Proxy(
390     IScriptNode* This,
391     LPCOLESTR pszDefaultName,
392     LPCOLESTR *prgpszNames,
393     ULONG cpszNames,
394     LPCOLESTR pszEvent,
395     LPCOLESTR pszDelimiter,
396     ITypeInfo *ptiSignature,
397     ULONG iMethodSignature,
398     ULONG isn,
399     DWORD dwCookie,
400     IScriptEntry **ppse);
401 void __RPC_STUB IScriptNode_CreateChildHandler_Stub(
402     IRpcStubBuffer* This,
403     IRpcChannelBuffer* pRpcChannelBuffer,
404     PRPC_MESSAGE pRpcMessage,
405     DWORD* pdwStubPhase);
406 
407 #endif  /* __IScriptNode_INTERFACE_DEFINED__ */
408 
409 /*****************************************************************************
410  * IScriptEntry interface
411  */
412 #ifndef __IScriptEntry_INTERFACE_DEFINED__
413 #define __IScriptEntry_INTERFACE_DEFINED__
414 
415 DEFINE_GUID(IID_IScriptEntry, 0x0aee2a95, 0xbcbb, 0x11d0, 0x8c,0x72, 0x00,0xc0,0x4f,0xc2,0xb0,0x85);
416 #if defined(__cplusplus) && !defined(CINTERFACE)
417 MIDL_INTERFACE("0aee2a95-bcbb-11d0-8c72-00c04fc2b085")
418 IScriptEntry : public IScriptNode
419 {
420     virtual HRESULT STDMETHODCALLTYPE GetText(
421         BSTR *pbstr) = 0;
422 
423     virtual HRESULT STDMETHODCALLTYPE SetText(
424         LPCOLESTR psz) = 0;
425 
426     virtual HRESULT STDMETHODCALLTYPE GetBody(
427         BSTR *pbstr) = 0;
428 
429     virtual HRESULT STDMETHODCALLTYPE SetBody(
430         LPCOLESTR psz) = 0;
431 
432     virtual HRESULT STDMETHODCALLTYPE GetName(
433         BSTR *pbstr) = 0;
434 
435     virtual HRESULT STDMETHODCALLTYPE SetName(
436         LPCOLESTR psz) = 0;
437 
438     virtual HRESULT STDMETHODCALLTYPE GetItemName(
439         BSTR *pbstr) = 0;
440 
441     virtual HRESULT STDMETHODCALLTYPE SetItemName(
442         LPCOLESTR psz) = 0;
443 
444     virtual HRESULT STDMETHODCALLTYPE GetSignature(
445         ITypeInfo **ppti,
446         ULONG *piMethod) = 0;
447 
448     virtual HRESULT STDMETHODCALLTYPE SetSignature(
449         ITypeInfo *pti,
450         ULONG iMethod) = 0;
451 
452     virtual HRESULT STDMETHODCALLTYPE GetRange(
453         ULONG *pichMin,
454         ULONG *pcch) = 0;
455 
456 };
457 #ifdef __CRT_UUID_DECL
458 __CRT_UUID_DECL(IScriptEntry, 0x0aee2a95, 0xbcbb, 0x11d0, 0x8c,0x72, 0x00,0xc0,0x4f,0xc2,0xb0,0x85)
459 #endif
460 #else
461 typedef struct IScriptEntryVtbl {
462     BEGIN_INTERFACE
463 
464     /*** IUnknown methods ***/
465     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
466         IScriptEntry* This,
467         REFIID riid,
468         void **ppvObject);
469 
470     ULONG (STDMETHODCALLTYPE *AddRef)(
471         IScriptEntry* This);
472 
473     ULONG (STDMETHODCALLTYPE *Release)(
474         IScriptEntry* This);
475 
476     /*** IScriptNode methods ***/
477     HRESULT (STDMETHODCALLTYPE *Alive)(
478         IScriptEntry* This);
479 
480     HRESULT (STDMETHODCALLTYPE *Delete)(
481         IScriptEntry* This);
482 
483     HRESULT (STDMETHODCALLTYPE *GetParent)(
484         IScriptEntry* This,
485         IScriptNode **ppsnParent);
486 
487     HRESULT (STDMETHODCALLTYPE *GetIndexInParent)(
488         IScriptEntry* This,
489         ULONG *pisn);
490 
491     HRESULT (STDMETHODCALLTYPE *GetCookie)(
492         IScriptEntry* This,
493         DWORD *pdwCookie);
494 
495     HRESULT (STDMETHODCALLTYPE *GetNumberOfChildren)(
496         IScriptEntry* This,
497         ULONG *pcsn);
498 
499     HRESULT (STDMETHODCALLTYPE *GetChild)(
500         IScriptEntry* This,
501         ULONG isn,
502         IScriptNode **ppsn);
503 
504     HRESULT (STDMETHODCALLTYPE *GetLanguage)(
505         IScriptEntry* This,
506         BSTR *pbstr);
507 
508     HRESULT (STDMETHODCALLTYPE *CreateChildEntry)(
509         IScriptEntry* This,
510         ULONG isn,
511         DWORD dwCookie,
512         LPCOLESTR pszDelimiter,
513         IScriptEntry **ppse);
514 
515     HRESULT (STDMETHODCALLTYPE *CreateChildHandler)(
516         IScriptEntry* This,
517         LPCOLESTR pszDefaultName,
518         LPCOLESTR *prgpszNames,
519         ULONG cpszNames,
520         LPCOLESTR pszEvent,
521         LPCOLESTR pszDelimiter,
522         ITypeInfo *ptiSignature,
523         ULONG iMethodSignature,
524         ULONG isn,
525         DWORD dwCookie,
526         IScriptEntry **ppse);
527 
528     /*** IScriptEntry methods ***/
529     HRESULT (STDMETHODCALLTYPE *GetText)(
530         IScriptEntry* This,
531         BSTR *pbstr);
532 
533     HRESULT (STDMETHODCALLTYPE *SetText)(
534         IScriptEntry* This,
535         LPCOLESTR psz);
536 
537     HRESULT (STDMETHODCALLTYPE *GetBody)(
538         IScriptEntry* This,
539         BSTR *pbstr);
540 
541     HRESULT (STDMETHODCALLTYPE *SetBody)(
542         IScriptEntry* This,
543         LPCOLESTR psz);
544 
545     HRESULT (STDMETHODCALLTYPE *GetName)(
546         IScriptEntry* This,
547         BSTR *pbstr);
548 
549     HRESULT (STDMETHODCALLTYPE *SetName)(
550         IScriptEntry* This,
551         LPCOLESTR psz);
552 
553     HRESULT (STDMETHODCALLTYPE *GetItemName)(
554         IScriptEntry* This,
555         BSTR *pbstr);
556 
557     HRESULT (STDMETHODCALLTYPE *SetItemName)(
558         IScriptEntry* This,
559         LPCOLESTR psz);
560 
561     HRESULT (STDMETHODCALLTYPE *GetSignature)(
562         IScriptEntry* This,
563         ITypeInfo **ppti,
564         ULONG *piMethod);
565 
566     HRESULT (STDMETHODCALLTYPE *SetSignature)(
567         IScriptEntry* This,
568         ITypeInfo *pti,
569         ULONG iMethod);
570 
571     HRESULT (STDMETHODCALLTYPE *GetRange)(
572         IScriptEntry* This,
573         ULONG *pichMin,
574         ULONG *pcch);
575 
576     END_INTERFACE
577 } IScriptEntryVtbl;
578 interface IScriptEntry {
579     CONST_VTBL IScriptEntryVtbl* lpVtbl;
580 };
581 
582 #ifdef COBJMACROS
583 #ifndef WIDL_C_INLINE_WRAPPERS
584 /*** IUnknown methods ***/
585 #define IScriptEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
586 #define IScriptEntry_AddRef(This) (This)->lpVtbl->AddRef(This)
587 #define IScriptEntry_Release(This) (This)->lpVtbl->Release(This)
588 /*** IScriptNode methods ***/
589 #define IScriptEntry_Alive(This) (This)->lpVtbl->Alive(This)
590 #define IScriptEntry_Delete(This) (This)->lpVtbl->Delete(This)
591 #define IScriptEntry_GetParent(This,ppsnParent) (This)->lpVtbl->GetParent(This,ppsnParent)
592 #define IScriptEntry_GetIndexInParent(This,pisn) (This)->lpVtbl->GetIndexInParent(This,pisn)
593 #define IScriptEntry_GetCookie(This,pdwCookie) (This)->lpVtbl->GetCookie(This,pdwCookie)
594 #define IScriptEntry_GetNumberOfChildren(This,pcsn) (This)->lpVtbl->GetNumberOfChildren(This,pcsn)
595 #define IScriptEntry_GetChild(This,isn,ppsn) (This)->lpVtbl->GetChild(This,isn,ppsn)
596 #define IScriptEntry_GetLanguage(This,pbstr) (This)->lpVtbl->GetLanguage(This,pbstr)
597 #define IScriptEntry_CreateChildEntry(This,isn,dwCookie,pszDelimiter,ppse) (This)->lpVtbl->CreateChildEntry(This,isn,dwCookie,pszDelimiter,ppse)
598 #define IScriptEntry_CreateChildHandler(This,pszDefaultName,prgpszNames,cpszNames,pszEvent,pszDelimiter,ptiSignature,iMethodSignature,isn,dwCookie,ppse) (This)->lpVtbl->CreateChildHandler(This,pszDefaultName,prgpszNames,cpszNames,pszEvent,pszDelimiter,ptiSignature,iMethodSignature,isn,dwCookie,ppse)
599 /*** IScriptEntry methods ***/
600 #define IScriptEntry_GetText(This,pbstr) (This)->lpVtbl->GetText(This,pbstr)
601 #define IScriptEntry_SetText(This,psz) (This)->lpVtbl->SetText(This,psz)
602 #define IScriptEntry_GetBody(This,pbstr) (This)->lpVtbl->GetBody(This,pbstr)
603 #define IScriptEntry_SetBody(This,psz) (This)->lpVtbl->SetBody(This,psz)
604 #define IScriptEntry_GetName(This,pbstr) (This)->lpVtbl->GetName(This,pbstr)
605 #define IScriptEntry_SetName(This,psz) (This)->lpVtbl->SetName(This,psz)
606 #define IScriptEntry_GetItemName(This,pbstr) (This)->lpVtbl->GetItemName(This,pbstr)
607 #define IScriptEntry_SetItemName(This,psz) (This)->lpVtbl->SetItemName(This,psz)
608 #define IScriptEntry_GetSignature(This,ppti,piMethod) (This)->lpVtbl->GetSignature(This,ppti,piMethod)
609 #define IScriptEntry_SetSignature(This,pti,iMethod) (This)->lpVtbl->SetSignature(This,pti,iMethod)
610 #define IScriptEntry_GetRange(This,pichMin,pcch) (This)->lpVtbl->GetRange(This,pichMin,pcch)
611 #else
612 /*** IUnknown methods ***/
613 static FORCEINLINE HRESULT IScriptEntry_QueryInterface(IScriptEntry* This,REFIID riid,void **ppvObject) {
614     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
615 }
616 static FORCEINLINE ULONG IScriptEntry_AddRef(IScriptEntry* This) {
617     return This->lpVtbl->AddRef(This);
618 }
619 static FORCEINLINE ULONG IScriptEntry_Release(IScriptEntry* This) {
620     return This->lpVtbl->Release(This);
621 }
622 /*** IScriptNode methods ***/
623 static FORCEINLINE HRESULT IScriptEntry_Alive(IScriptEntry* This) {
624     return This->lpVtbl->Alive(This);
625 }
626 static FORCEINLINE HRESULT IScriptEntry_Delete(IScriptEntry* This) {
627     return This->lpVtbl->Delete(This);
628 }
629 static FORCEINLINE HRESULT IScriptEntry_GetParent(IScriptEntry* This,IScriptNode **ppsnParent) {
630     return This->lpVtbl->GetParent(This,ppsnParent);
631 }
632 static FORCEINLINE HRESULT IScriptEntry_GetIndexInParent(IScriptEntry* This,ULONG *pisn) {
633     return This->lpVtbl->GetIndexInParent(This,pisn);
634 }
635 static FORCEINLINE HRESULT IScriptEntry_GetCookie(IScriptEntry* This,DWORD *pdwCookie) {
636     return This->lpVtbl->GetCookie(This,pdwCookie);
637 }
638 static FORCEINLINE HRESULT IScriptEntry_GetNumberOfChildren(IScriptEntry* This,ULONG *pcsn) {
639     return This->lpVtbl->GetNumberOfChildren(This,pcsn);
640 }
641 static FORCEINLINE HRESULT IScriptEntry_GetChild(IScriptEntry* This,ULONG isn,IScriptNode **ppsn) {
642     return This->lpVtbl->GetChild(This,isn,ppsn);
643 }
644 static FORCEINLINE HRESULT IScriptEntry_GetLanguage(IScriptEntry* This,BSTR *pbstr) {
645     return This->lpVtbl->GetLanguage(This,pbstr);
646 }
647 static FORCEINLINE HRESULT IScriptEntry_CreateChildEntry(IScriptEntry* This,ULONG isn,DWORD dwCookie,LPCOLESTR pszDelimiter,IScriptEntry **ppse) {
648     return This->lpVtbl->CreateChildEntry(This,isn,dwCookie,pszDelimiter,ppse);
649 }
650 static FORCEINLINE HRESULT IScriptEntry_CreateChildHandler(IScriptEntry* This,LPCOLESTR pszDefaultName,LPCOLESTR *prgpszNames,ULONG cpszNames,LPCOLESTR pszEvent,LPCOLESTR pszDelimiter,ITypeInfo *ptiSignature,ULONG iMethodSignature,ULONG isn,DWORD dwCookie,IScriptEntry **ppse) {
651     return This->lpVtbl->CreateChildHandler(This,pszDefaultName,prgpszNames,cpszNames,pszEvent,pszDelimiter,ptiSignature,iMethodSignature,isn,dwCookie,ppse);
652 }
653 /*** IScriptEntry methods ***/
654 static FORCEINLINE HRESULT IScriptEntry_GetText(IScriptEntry* This,BSTR *pbstr) {
655     return This->lpVtbl->GetText(This,pbstr);
656 }
657 static FORCEINLINE HRESULT IScriptEntry_SetText(IScriptEntry* This,LPCOLESTR psz) {
658     return This->lpVtbl->SetText(This,psz);
659 }
660 static FORCEINLINE HRESULT IScriptEntry_GetBody(IScriptEntry* This,BSTR *pbstr) {
661     return This->lpVtbl->GetBody(This,pbstr);
662 }
663 static FORCEINLINE HRESULT IScriptEntry_SetBody(IScriptEntry* This,LPCOLESTR psz) {
664     return This->lpVtbl->SetBody(This,psz);
665 }
666 static FORCEINLINE HRESULT IScriptEntry_GetName(IScriptEntry* This,BSTR *pbstr) {
667     return This->lpVtbl->GetName(This,pbstr);
668 }
669 static FORCEINLINE HRESULT IScriptEntry_SetName(IScriptEntry* This,LPCOLESTR psz) {
670     return This->lpVtbl->SetName(This,psz);
671 }
672 static FORCEINLINE HRESULT IScriptEntry_GetItemName(IScriptEntry* This,BSTR *pbstr) {
673     return This->lpVtbl->GetItemName(This,pbstr);
674 }
675 static FORCEINLINE HRESULT IScriptEntry_SetItemName(IScriptEntry* This,LPCOLESTR psz) {
676     return This->lpVtbl->SetItemName(This,psz);
677 }
678 static FORCEINLINE HRESULT IScriptEntry_GetSignature(IScriptEntry* This,ITypeInfo **ppti,ULONG *piMethod) {
679     return This->lpVtbl->GetSignature(This,ppti,piMethod);
680 }
681 static FORCEINLINE HRESULT IScriptEntry_SetSignature(IScriptEntry* This,ITypeInfo *pti,ULONG iMethod) {
682     return This->lpVtbl->SetSignature(This,pti,iMethod);
683 }
684 static FORCEINLINE HRESULT IScriptEntry_GetRange(IScriptEntry* This,ULONG *pichMin,ULONG *pcch) {
685     return This->lpVtbl->GetRange(This,pichMin,pcch);
686 }
687 #endif
688 #endif
689 
690 #endif
691 
692 HRESULT STDMETHODCALLTYPE IScriptEntry_GetText_Proxy(
693     IScriptEntry* This,
694     BSTR *pbstr);
695 void __RPC_STUB IScriptEntry_GetText_Stub(
696     IRpcStubBuffer* This,
697     IRpcChannelBuffer* pRpcChannelBuffer,
698     PRPC_MESSAGE pRpcMessage,
699     DWORD* pdwStubPhase);
700 HRESULT STDMETHODCALLTYPE IScriptEntry_SetText_Proxy(
701     IScriptEntry* This,
702     LPCOLESTR psz);
703 void __RPC_STUB IScriptEntry_SetText_Stub(
704     IRpcStubBuffer* This,
705     IRpcChannelBuffer* pRpcChannelBuffer,
706     PRPC_MESSAGE pRpcMessage,
707     DWORD* pdwStubPhase);
708 HRESULT STDMETHODCALLTYPE IScriptEntry_GetBody_Proxy(
709     IScriptEntry* This,
710     BSTR *pbstr);
711 void __RPC_STUB IScriptEntry_GetBody_Stub(
712     IRpcStubBuffer* This,
713     IRpcChannelBuffer* pRpcChannelBuffer,
714     PRPC_MESSAGE pRpcMessage,
715     DWORD* pdwStubPhase);
716 HRESULT STDMETHODCALLTYPE IScriptEntry_SetBody_Proxy(
717     IScriptEntry* This,
718     LPCOLESTR psz);
719 void __RPC_STUB IScriptEntry_SetBody_Stub(
720     IRpcStubBuffer* This,
721     IRpcChannelBuffer* pRpcChannelBuffer,
722     PRPC_MESSAGE pRpcMessage,
723     DWORD* pdwStubPhase);
724 HRESULT STDMETHODCALLTYPE IScriptEntry_GetName_Proxy(
725     IScriptEntry* This,
726     BSTR *pbstr);
727 void __RPC_STUB IScriptEntry_GetName_Stub(
728     IRpcStubBuffer* This,
729     IRpcChannelBuffer* pRpcChannelBuffer,
730     PRPC_MESSAGE pRpcMessage,
731     DWORD* pdwStubPhase);
732 HRESULT STDMETHODCALLTYPE IScriptEntry_SetName_Proxy(
733     IScriptEntry* This,
734     LPCOLESTR psz);
735 void __RPC_STUB IScriptEntry_SetName_Stub(
736     IRpcStubBuffer* This,
737     IRpcChannelBuffer* pRpcChannelBuffer,
738     PRPC_MESSAGE pRpcMessage,
739     DWORD* pdwStubPhase);
740 HRESULT STDMETHODCALLTYPE IScriptEntry_GetItemName_Proxy(
741     IScriptEntry* This,
742     BSTR *pbstr);
743 void __RPC_STUB IScriptEntry_GetItemName_Stub(
744     IRpcStubBuffer* This,
745     IRpcChannelBuffer* pRpcChannelBuffer,
746     PRPC_MESSAGE pRpcMessage,
747     DWORD* pdwStubPhase);
748 HRESULT STDMETHODCALLTYPE IScriptEntry_SetItemName_Proxy(
749     IScriptEntry* This,
750     LPCOLESTR psz);
751 void __RPC_STUB IScriptEntry_SetItemName_Stub(
752     IRpcStubBuffer* This,
753     IRpcChannelBuffer* pRpcChannelBuffer,
754     PRPC_MESSAGE pRpcMessage,
755     DWORD* pdwStubPhase);
756 HRESULT STDMETHODCALLTYPE IScriptEntry_GetSignature_Proxy(
757     IScriptEntry* This,
758     ITypeInfo **ppti,
759     ULONG *piMethod);
760 void __RPC_STUB IScriptEntry_GetSignature_Stub(
761     IRpcStubBuffer* This,
762     IRpcChannelBuffer* pRpcChannelBuffer,
763     PRPC_MESSAGE pRpcMessage,
764     DWORD* pdwStubPhase);
765 HRESULT STDMETHODCALLTYPE IScriptEntry_SetSignature_Proxy(
766     IScriptEntry* This,
767     ITypeInfo *pti,
768     ULONG iMethod);
769 void __RPC_STUB IScriptEntry_SetSignature_Stub(
770     IRpcStubBuffer* This,
771     IRpcChannelBuffer* pRpcChannelBuffer,
772     PRPC_MESSAGE pRpcMessage,
773     DWORD* pdwStubPhase);
774 HRESULT STDMETHODCALLTYPE IScriptEntry_GetRange_Proxy(
775     IScriptEntry* This,
776     ULONG *pichMin,
777     ULONG *pcch);
778 void __RPC_STUB IScriptEntry_GetRange_Stub(
779     IRpcStubBuffer* This,
780     IRpcChannelBuffer* pRpcChannelBuffer,
781     PRPC_MESSAGE pRpcMessage,
782     DWORD* pdwStubPhase);
783 
784 #endif  /* __IScriptEntry_INTERFACE_DEFINED__ */
785 
786 /*****************************************************************************
787  * IScriptScriptlet interface
788  */
789 #ifndef __IScriptScriptlet_INTERFACE_DEFINED__
790 #define __IScriptScriptlet_INTERFACE_DEFINED__
791 
792 DEFINE_GUID(IID_IScriptScriptlet, 0x0aee2a96, 0xbcbb, 0x11d0, 0x8c,0x72, 0x00,0xc0,0x4f,0xc2,0xb0,0x85);
793 #if defined(__cplusplus) && !defined(CINTERFACE)
794 MIDL_INTERFACE("0aee2a96-bcbb-11d0-8c72-00c04fc2b085")
795 IScriptScriptlet : public IScriptEntry
796 {
797     virtual HRESULT STDMETHODCALLTYPE GetSubItemName(
798         BSTR *pbstr) = 0;
799 
800     virtual HRESULT STDMETHODCALLTYPE SetSubItemName(
801         LPCOLESTR psz) = 0;
802 
803     virtual HRESULT STDMETHODCALLTYPE GetEventName(
804         BSTR *pbstr) = 0;
805 
806     virtual HRESULT STDMETHODCALLTYPE SetEventName(
807         LPCOLESTR psz) = 0;
808 
809     virtual HRESULT STDMETHODCALLTYPE GetSimpleEventName(
810         BSTR *pbstr) = 0;
811 
812     virtual HRESULT STDMETHODCALLTYPE SetSimpleEventName(
813         LPCOLESTR psz) = 0;
814 
815 };
816 #ifdef __CRT_UUID_DECL
817 __CRT_UUID_DECL(IScriptScriptlet, 0x0aee2a96, 0xbcbb, 0x11d0, 0x8c,0x72, 0x00,0xc0,0x4f,0xc2,0xb0,0x85)
818 #endif
819 #else
820 typedef struct IScriptScriptletVtbl {
821     BEGIN_INTERFACE
822 
823     /*** IUnknown methods ***/
824     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
825         IScriptScriptlet* This,
826         REFIID riid,
827         void **ppvObject);
828 
829     ULONG (STDMETHODCALLTYPE *AddRef)(
830         IScriptScriptlet* This);
831 
832     ULONG (STDMETHODCALLTYPE *Release)(
833         IScriptScriptlet* This);
834 
835     /*** IScriptNode methods ***/
836     HRESULT (STDMETHODCALLTYPE *Alive)(
837         IScriptScriptlet* This);
838 
839     HRESULT (STDMETHODCALLTYPE *Delete)(
840         IScriptScriptlet* This);
841 
842     HRESULT (STDMETHODCALLTYPE *GetParent)(
843         IScriptScriptlet* This,
844         IScriptNode **ppsnParent);
845 
846     HRESULT (STDMETHODCALLTYPE *GetIndexInParent)(
847         IScriptScriptlet* This,
848         ULONG *pisn);
849 
850     HRESULT (STDMETHODCALLTYPE *GetCookie)(
851         IScriptScriptlet* This,
852         DWORD *pdwCookie);
853 
854     HRESULT (STDMETHODCALLTYPE *GetNumberOfChildren)(
855         IScriptScriptlet* This,
856         ULONG *pcsn);
857 
858     HRESULT (STDMETHODCALLTYPE *GetChild)(
859         IScriptScriptlet* This,
860         ULONG isn,
861         IScriptNode **ppsn);
862 
863     HRESULT (STDMETHODCALLTYPE *GetLanguage)(
864         IScriptScriptlet* This,
865         BSTR *pbstr);
866 
867     HRESULT (STDMETHODCALLTYPE *CreateChildEntry)(
868         IScriptScriptlet* This,
869         ULONG isn,
870         DWORD dwCookie,
871         LPCOLESTR pszDelimiter,
872         IScriptEntry **ppse);
873 
874     HRESULT (STDMETHODCALLTYPE *CreateChildHandler)(
875         IScriptScriptlet* This,
876         LPCOLESTR pszDefaultName,
877         LPCOLESTR *prgpszNames,
878         ULONG cpszNames,
879         LPCOLESTR pszEvent,
880         LPCOLESTR pszDelimiter,
881         ITypeInfo *ptiSignature,
882         ULONG iMethodSignature,
883         ULONG isn,
884         DWORD dwCookie,
885         IScriptEntry **ppse);
886 
887     /*** IScriptEntry methods ***/
888     HRESULT (STDMETHODCALLTYPE *GetText)(
889         IScriptScriptlet* This,
890         BSTR *pbstr);
891 
892     HRESULT (STDMETHODCALLTYPE *SetText)(
893         IScriptScriptlet* This,
894         LPCOLESTR psz);
895 
896     HRESULT (STDMETHODCALLTYPE *GetBody)(
897         IScriptScriptlet* This,
898         BSTR *pbstr);
899 
900     HRESULT (STDMETHODCALLTYPE *SetBody)(
901         IScriptScriptlet* This,
902         LPCOLESTR psz);
903 
904     HRESULT (STDMETHODCALLTYPE *GetName)(
905         IScriptScriptlet* This,
906         BSTR *pbstr);
907 
908     HRESULT (STDMETHODCALLTYPE *SetName)(
909         IScriptScriptlet* This,
910         LPCOLESTR psz);
911 
912     HRESULT (STDMETHODCALLTYPE *GetItemName)(
913         IScriptScriptlet* This,
914         BSTR *pbstr);
915 
916     HRESULT (STDMETHODCALLTYPE *SetItemName)(
917         IScriptScriptlet* This,
918         LPCOLESTR psz);
919 
920     HRESULT (STDMETHODCALLTYPE *GetSignature)(
921         IScriptScriptlet* This,
922         ITypeInfo **ppti,
923         ULONG *piMethod);
924 
925     HRESULT (STDMETHODCALLTYPE *SetSignature)(
926         IScriptScriptlet* This,
927         ITypeInfo *pti,
928         ULONG iMethod);
929 
930     HRESULT (STDMETHODCALLTYPE *GetRange)(
931         IScriptScriptlet* This,
932         ULONG *pichMin,
933         ULONG *pcch);
934 
935     /*** IScriptScriptlet methods ***/
936     HRESULT (STDMETHODCALLTYPE *GetSubItemName)(
937         IScriptScriptlet* This,
938         BSTR *pbstr);
939 
940     HRESULT (STDMETHODCALLTYPE *SetSubItemName)(
941         IScriptScriptlet* This,
942         LPCOLESTR psz);
943 
944     HRESULT (STDMETHODCALLTYPE *GetEventName)(
945         IScriptScriptlet* This,
946         BSTR *pbstr);
947 
948     HRESULT (STDMETHODCALLTYPE *SetEventName)(
949         IScriptScriptlet* This,
950         LPCOLESTR psz);
951 
952     HRESULT (STDMETHODCALLTYPE *GetSimpleEventName)(
953         IScriptScriptlet* This,
954         BSTR *pbstr);
955 
956     HRESULT (STDMETHODCALLTYPE *SetSimpleEventName)(
957         IScriptScriptlet* This,
958         LPCOLESTR psz);
959 
960     END_INTERFACE
961 } IScriptScriptletVtbl;
962 interface IScriptScriptlet {
963     CONST_VTBL IScriptScriptletVtbl* lpVtbl;
964 };
965 
966 #ifdef COBJMACROS
967 #ifndef WIDL_C_INLINE_WRAPPERS
968 /*** IUnknown methods ***/
969 #define IScriptScriptlet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
970 #define IScriptScriptlet_AddRef(This) (This)->lpVtbl->AddRef(This)
971 #define IScriptScriptlet_Release(This) (This)->lpVtbl->Release(This)
972 /*** IScriptNode methods ***/
973 #define IScriptScriptlet_Alive(This) (This)->lpVtbl->Alive(This)
974 #define IScriptScriptlet_Delete(This) (This)->lpVtbl->Delete(This)
975 #define IScriptScriptlet_GetParent(This,ppsnParent) (This)->lpVtbl->GetParent(This,ppsnParent)
976 #define IScriptScriptlet_GetIndexInParent(This,pisn) (This)->lpVtbl->GetIndexInParent(This,pisn)
977 #define IScriptScriptlet_GetCookie(This,pdwCookie) (This)->lpVtbl->GetCookie(This,pdwCookie)
978 #define IScriptScriptlet_GetNumberOfChildren(This,pcsn) (This)->lpVtbl->GetNumberOfChildren(This,pcsn)
979 #define IScriptScriptlet_GetChild(This,isn,ppsn) (This)->lpVtbl->GetChild(This,isn,ppsn)
980 #define IScriptScriptlet_GetLanguage(This,pbstr) (This)->lpVtbl->GetLanguage(This,pbstr)
981 #define IScriptScriptlet_CreateChildEntry(This,isn,dwCookie,pszDelimiter,ppse) (This)->lpVtbl->CreateChildEntry(This,isn,dwCookie,pszDelimiter,ppse)
982 #define IScriptScriptlet_CreateChildHandler(This,pszDefaultName,prgpszNames,cpszNames,pszEvent,pszDelimiter,ptiSignature,iMethodSignature,isn,dwCookie,ppse) (This)->lpVtbl->CreateChildHandler(This,pszDefaultName,prgpszNames,cpszNames,pszEvent,pszDelimiter,ptiSignature,iMethodSignature,isn,dwCookie,ppse)
983 /*** IScriptEntry methods ***/
984 #define IScriptScriptlet_GetText(This,pbstr) (This)->lpVtbl->GetText(This,pbstr)
985 #define IScriptScriptlet_SetText(This,psz) (This)->lpVtbl->SetText(This,psz)
986 #define IScriptScriptlet_GetBody(This,pbstr) (This)->lpVtbl->GetBody(This,pbstr)
987 #define IScriptScriptlet_SetBody(This,psz) (This)->lpVtbl->SetBody(This,psz)
988 #define IScriptScriptlet_GetName(This,pbstr) (This)->lpVtbl->GetName(This,pbstr)
989 #define IScriptScriptlet_SetName(This,psz) (This)->lpVtbl->SetName(This,psz)
990 #define IScriptScriptlet_GetItemName(This,pbstr) (This)->lpVtbl->GetItemName(This,pbstr)
991 #define IScriptScriptlet_SetItemName(This,psz) (This)->lpVtbl->SetItemName(This,psz)
992 #define IScriptScriptlet_GetSignature(This,ppti,piMethod) (This)->lpVtbl->GetSignature(This,ppti,piMethod)
993 #define IScriptScriptlet_SetSignature(This,pti,iMethod) (This)->lpVtbl->SetSignature(This,pti,iMethod)
994 #define IScriptScriptlet_GetRange(This,pichMin,pcch) (This)->lpVtbl->GetRange(This,pichMin,pcch)
995 /*** IScriptScriptlet methods ***/
996 #define IScriptScriptlet_GetSubItemName(This,pbstr) (This)->lpVtbl->GetSubItemName(This,pbstr)
997 #define IScriptScriptlet_SetSubItemName(This,psz) (This)->lpVtbl->SetSubItemName(This,psz)
998 #define IScriptScriptlet_GetEventName(This,pbstr) (This)->lpVtbl->GetEventName(This,pbstr)
999 #define IScriptScriptlet_SetEventName(This,psz) (This)->lpVtbl->SetEventName(This,psz)
1000 #define IScriptScriptlet_GetSimpleEventName(This,pbstr) (This)->lpVtbl->GetSimpleEventName(This,pbstr)
1001 #define IScriptScriptlet_SetSimpleEventName(This,psz) (This)->lpVtbl->SetSimpleEventName(This,psz)
1002 #else
1003 /*** IUnknown methods ***/
1004 static FORCEINLINE HRESULT IScriptScriptlet_QueryInterface(IScriptScriptlet* This,REFIID riid,void **ppvObject) {
1005     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1006 }
1007 static FORCEINLINE ULONG IScriptScriptlet_AddRef(IScriptScriptlet* This) {
1008     return This->lpVtbl->AddRef(This);
1009 }
1010 static FORCEINLINE ULONG IScriptScriptlet_Release(IScriptScriptlet* This) {
1011     return This->lpVtbl->Release(This);
1012 }
1013 /*** IScriptNode methods ***/
1014 static FORCEINLINE HRESULT IScriptScriptlet_Alive(IScriptScriptlet* This) {
1015     return This->lpVtbl->Alive(This);
1016 }
1017 static FORCEINLINE HRESULT IScriptScriptlet_Delete(IScriptScriptlet* This) {
1018     return This->lpVtbl->Delete(This);
1019 }
1020 static FORCEINLINE HRESULT IScriptScriptlet_GetParent(IScriptScriptlet* This,IScriptNode **ppsnParent) {
1021     return This->lpVtbl->GetParent(This,ppsnParent);
1022 }
1023 static FORCEINLINE HRESULT IScriptScriptlet_GetIndexInParent(IScriptScriptlet* This,ULONG *pisn) {
1024     return This->lpVtbl->GetIndexInParent(This,pisn);
1025 }
1026 static FORCEINLINE HRESULT IScriptScriptlet_GetCookie(IScriptScriptlet* This,DWORD *pdwCookie) {
1027     return This->lpVtbl->GetCookie(This,pdwCookie);
1028 }
1029 static FORCEINLINE HRESULT IScriptScriptlet_GetNumberOfChildren(IScriptScriptlet* This,ULONG *pcsn) {
1030     return This->lpVtbl->GetNumberOfChildren(This,pcsn);
1031 }
1032 static FORCEINLINE HRESULT IScriptScriptlet_GetChild(IScriptScriptlet* This,ULONG isn,IScriptNode **ppsn) {
1033     return This->lpVtbl->GetChild(This,isn,ppsn);
1034 }
1035 static FORCEINLINE HRESULT IScriptScriptlet_GetLanguage(IScriptScriptlet* This,BSTR *pbstr) {
1036     return This->lpVtbl->GetLanguage(This,pbstr);
1037 }
1038 static FORCEINLINE HRESULT IScriptScriptlet_CreateChildEntry(IScriptScriptlet* This,ULONG isn,DWORD dwCookie,LPCOLESTR pszDelimiter,IScriptEntry **ppse) {
1039     return This->lpVtbl->CreateChildEntry(This,isn,dwCookie,pszDelimiter,ppse);
1040 }
1041 static FORCEINLINE HRESULT IScriptScriptlet_CreateChildHandler(IScriptScriptlet* This,LPCOLESTR pszDefaultName,LPCOLESTR *prgpszNames,ULONG cpszNames,LPCOLESTR pszEvent,LPCOLESTR pszDelimiter,ITypeInfo *ptiSignature,ULONG iMethodSignature,ULONG isn,DWORD dwCookie,IScriptEntry **ppse) {
1042     return This->lpVtbl->CreateChildHandler(This,pszDefaultName,prgpszNames,cpszNames,pszEvent,pszDelimiter,ptiSignature,iMethodSignature,isn,dwCookie,ppse);
1043 }
1044 /*** IScriptEntry methods ***/
1045 static FORCEINLINE HRESULT IScriptScriptlet_GetText(IScriptScriptlet* This,BSTR *pbstr) {
1046     return This->lpVtbl->GetText(This,pbstr);
1047 }
1048 static FORCEINLINE HRESULT IScriptScriptlet_SetText(IScriptScriptlet* This,LPCOLESTR psz) {
1049     return This->lpVtbl->SetText(This,psz);
1050 }
1051 static FORCEINLINE HRESULT IScriptScriptlet_GetBody(IScriptScriptlet* This,BSTR *pbstr) {
1052     return This->lpVtbl->GetBody(This,pbstr);
1053 }
1054 static FORCEINLINE HRESULT IScriptScriptlet_SetBody(IScriptScriptlet* This,LPCOLESTR psz) {
1055     return This->lpVtbl->SetBody(This,psz);
1056 }
1057 static FORCEINLINE HRESULT IScriptScriptlet_GetName(IScriptScriptlet* This,BSTR *pbstr) {
1058     return This->lpVtbl->GetName(This,pbstr);
1059 }
1060 static FORCEINLINE HRESULT IScriptScriptlet_SetName(IScriptScriptlet* This,LPCOLESTR psz) {
1061     return This->lpVtbl->SetName(This,psz);
1062 }
1063 static FORCEINLINE HRESULT IScriptScriptlet_GetItemName(IScriptScriptlet* This,BSTR *pbstr) {
1064     return This->lpVtbl->GetItemName(This,pbstr);
1065 }
1066 static FORCEINLINE HRESULT IScriptScriptlet_SetItemName(IScriptScriptlet* This,LPCOLESTR psz) {
1067     return This->lpVtbl->SetItemName(This,psz);
1068 }
1069 static FORCEINLINE HRESULT IScriptScriptlet_GetSignature(IScriptScriptlet* This,ITypeInfo **ppti,ULONG *piMethod) {
1070     return This->lpVtbl->GetSignature(This,ppti,piMethod);
1071 }
1072 static FORCEINLINE HRESULT IScriptScriptlet_SetSignature(IScriptScriptlet* This,ITypeInfo *pti,ULONG iMethod) {
1073     return This->lpVtbl->SetSignature(This,pti,iMethod);
1074 }
1075 static FORCEINLINE HRESULT IScriptScriptlet_GetRange(IScriptScriptlet* This,ULONG *pichMin,ULONG *pcch) {
1076     return This->lpVtbl->GetRange(This,pichMin,pcch);
1077 }
1078 /*** IScriptScriptlet methods ***/
1079 static FORCEINLINE HRESULT IScriptScriptlet_GetSubItemName(IScriptScriptlet* This,BSTR *pbstr) {
1080     return This->lpVtbl->GetSubItemName(This,pbstr);
1081 }
1082 static FORCEINLINE HRESULT IScriptScriptlet_SetSubItemName(IScriptScriptlet* This,LPCOLESTR psz) {
1083     return This->lpVtbl->SetSubItemName(This,psz);
1084 }
1085 static FORCEINLINE HRESULT IScriptScriptlet_GetEventName(IScriptScriptlet* This,BSTR *pbstr) {
1086     return This->lpVtbl->GetEventName(This,pbstr);
1087 }
1088 static FORCEINLINE HRESULT IScriptScriptlet_SetEventName(IScriptScriptlet* This,LPCOLESTR psz) {
1089     return This->lpVtbl->SetEventName(This,psz);
1090 }
1091 static FORCEINLINE HRESULT IScriptScriptlet_GetSimpleEventName(IScriptScriptlet* This,BSTR *pbstr) {
1092     return This->lpVtbl->GetSimpleEventName(This,pbstr);
1093 }
1094 static FORCEINLINE HRESULT IScriptScriptlet_SetSimpleEventName(IScriptScriptlet* This,LPCOLESTR psz) {
1095     return This->lpVtbl->SetSimpleEventName(This,psz);
1096 }
1097 #endif
1098 #endif
1099 
1100 #endif
1101 
1102 HRESULT STDMETHODCALLTYPE IScriptScriptlet_GetSubItemName_Proxy(
1103     IScriptScriptlet* This,
1104     BSTR *pbstr);
1105 void __RPC_STUB IScriptScriptlet_GetSubItemName_Stub(
1106     IRpcStubBuffer* This,
1107     IRpcChannelBuffer* pRpcChannelBuffer,
1108     PRPC_MESSAGE pRpcMessage,
1109     DWORD* pdwStubPhase);
1110 HRESULT STDMETHODCALLTYPE IScriptScriptlet_SetSubItemName_Proxy(
1111     IScriptScriptlet* This,
1112     LPCOLESTR psz);
1113 void __RPC_STUB IScriptScriptlet_SetSubItemName_Stub(
1114     IRpcStubBuffer* This,
1115     IRpcChannelBuffer* pRpcChannelBuffer,
1116     PRPC_MESSAGE pRpcMessage,
1117     DWORD* pdwStubPhase);
1118 HRESULT STDMETHODCALLTYPE IScriptScriptlet_GetEventName_Proxy(
1119     IScriptScriptlet* This,
1120     BSTR *pbstr);
1121 void __RPC_STUB IScriptScriptlet_GetEventName_Stub(
1122     IRpcStubBuffer* This,
1123     IRpcChannelBuffer* pRpcChannelBuffer,
1124     PRPC_MESSAGE pRpcMessage,
1125     DWORD* pdwStubPhase);
1126 HRESULT STDMETHODCALLTYPE IScriptScriptlet_SetEventName_Proxy(
1127     IScriptScriptlet* This,
1128     LPCOLESTR psz);
1129 void __RPC_STUB IScriptScriptlet_SetEventName_Stub(
1130     IRpcStubBuffer* This,
1131     IRpcChannelBuffer* pRpcChannelBuffer,
1132     PRPC_MESSAGE pRpcMessage,
1133     DWORD* pdwStubPhase);
1134 HRESULT STDMETHODCALLTYPE IScriptScriptlet_GetSimpleEventName_Proxy(
1135     IScriptScriptlet* This,
1136     BSTR *pbstr);
1137 void __RPC_STUB IScriptScriptlet_GetSimpleEventName_Stub(
1138     IRpcStubBuffer* This,
1139     IRpcChannelBuffer* pRpcChannelBuffer,
1140     PRPC_MESSAGE pRpcMessage,
1141     DWORD* pdwStubPhase);
1142 HRESULT STDMETHODCALLTYPE IScriptScriptlet_SetSimpleEventName_Proxy(
1143     IScriptScriptlet* This,
1144     LPCOLESTR psz);
1145 void __RPC_STUB IScriptScriptlet_SetSimpleEventName_Stub(
1146     IRpcStubBuffer* This,
1147     IRpcChannelBuffer* pRpcChannelBuffer,
1148     PRPC_MESSAGE pRpcMessage,
1149     DWORD* pdwStubPhase);
1150 
1151 #endif  /* __IScriptScriptlet_INTERFACE_DEFINED__ */
1152 
1153 /*****************************************************************************
1154  * IActiveScriptAuthor interface
1155  */
1156 #ifndef __IActiveScriptAuthor_INTERFACE_DEFINED__
1157 #define __IActiveScriptAuthor_INTERFACE_DEFINED__
1158 
1159 DEFINE_GUID(IID_IActiveScriptAuthor, 0x9c109da0, 0x7006, 0x11d1, 0xb3,0x6c, 0x00,0xa0,0xc9,0x11,0xe8,0xb2);
1160 #if defined(__cplusplus) && !defined(CINTERFACE)
1161 MIDL_INTERFACE("9c109da0-7006-11d1-b36c-00a0c911e8b2")
1162 IActiveScriptAuthor : public IUnknown
1163 {
1164     virtual HRESULT STDMETHODCALLTYPE AddNamedItem(
1165         LPCOLESTR pszName,
1166         DWORD dwFlags,
1167         IDispatch *pdisp) = 0;
1168 
1169     virtual HRESULT STDMETHODCALLTYPE AddScriptlet(
1170         LPCOLESTR pszDefaultName,
1171         LPCOLESTR pszCode,
1172         LPCOLESTR pszItemName,
1173         LPCOLESTR pszSubItemName,
1174         LPCOLESTR pszEventName,
1175         LPCOLESTR pszDelimiter,
1176         DWORD dwCookie,
1177         DWORD dwFlags) = 0;
1178 
1179     virtual HRESULT STDMETHODCALLTYPE ParseScriptText(
1180         LPCOLESTR pszCode,
1181         LPCOLESTR pszItemName,
1182         LPCOLESTR pszDelimiter,
1183         DWORD dwCookie,
1184         DWORD dwFlags) = 0;
1185 
1186     virtual HRESULT STDMETHODCALLTYPE GetScriptTextAttributes(
1187         LPCOLESTR pszCode,
1188         ULONG cch,
1189         LPCOLESTR pszDelimiter,
1190         DWORD dwFlags,
1191         SOURCE_TEXT_ATTR *pattr) = 0;
1192 
1193     virtual HRESULT STDMETHODCALLTYPE GetScriptletTextAttributes(
1194         LPCOLESTR pszCode,
1195         ULONG cch,
1196         LPCOLESTR pszDelimiter,
1197         DWORD dwFlags,
1198         SOURCE_TEXT_ATTR *pattr) = 0;
1199 
1200     virtual HRESULT STDMETHODCALLTYPE GetRoot(
1201         IScriptNode **ppsp) = 0;
1202 
1203     virtual HRESULT STDMETHODCALLTYPE GetLanguageFlags(
1204         DWORD *pgrfasa) = 0;
1205 
1206     virtual HRESULT STDMETHODCALLTYPE GetEventHandler(
1207         IDispatch *pdisp,
1208         LPCOLESTR pszItem,
1209         LPCOLESTR pszSubItem,
1210         LPCOLESTR pszEvent,
1211         IScriptEntry **ppse) = 0;
1212 
1213     virtual HRESULT STDMETHODCALLTYPE RemoveNamedItem(
1214         LPCOLESTR pszName) = 0;
1215 
1216     virtual HRESULT STDMETHODCALLTYPE AddTypeLib(
1217         REFGUID rguidTypeLib,
1218         DWORD dwMajor,
1219         DWORD dwMinor,
1220         DWORD dwFlags) = 0;
1221 
1222     virtual HRESULT STDMETHODCALLTYPE RemoveTypeLib(
1223         REFGUID rguidTypeLib,
1224         DWORD dwMajor,
1225         DWORD dwMinor) = 0;
1226 
1227     virtual HRESULT STDMETHODCALLTYPE GetChars(
1228         DWORD fRequestedList,
1229         BSTR *pbstrChars) = 0;
1230 
1231     virtual HRESULT STDMETHODCALLTYPE GetInfoFromContext(
1232         LPCOLESTR pszCode,
1233         ULONG cchCode,
1234         ULONG ichCurrentPosition,
1235         DWORD dwListTypesRequested,
1236         DWORD *pdwListTypesProvided,
1237         ULONG *pichListAnchorPosition,
1238         ULONG *pichFuncAnchorPosition,
1239         MEMBERID *pmemid,
1240         LONG *piCurrentParameter,
1241         IUnknown **ppunk) = 0;
1242 
1243     virtual HRESULT STDMETHODCALLTYPE IsCommitChar(
1244         OLECHAR ch,
1245         WINBOOL *pfcommit) = 0;
1246 
1247 };
1248 #ifdef __CRT_UUID_DECL
1249 __CRT_UUID_DECL(IActiveScriptAuthor, 0x9c109da0, 0x7006, 0x11d1, 0xb3,0x6c, 0x00,0xa0,0xc9,0x11,0xe8,0xb2)
1250 #endif
1251 #else
1252 typedef struct IActiveScriptAuthorVtbl {
1253     BEGIN_INTERFACE
1254 
1255     /*** IUnknown methods ***/
1256     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1257         IActiveScriptAuthor* This,
1258         REFIID riid,
1259         void **ppvObject);
1260 
1261     ULONG (STDMETHODCALLTYPE *AddRef)(
1262         IActiveScriptAuthor* This);
1263 
1264     ULONG (STDMETHODCALLTYPE *Release)(
1265         IActiveScriptAuthor* This);
1266 
1267     /*** IActiveScriptAuthor methods ***/
1268     HRESULT (STDMETHODCALLTYPE *AddNamedItem)(
1269         IActiveScriptAuthor* This,
1270         LPCOLESTR pszName,
1271         DWORD dwFlags,
1272         IDispatch *pdisp);
1273 
1274     HRESULT (STDMETHODCALLTYPE *AddScriptlet)(
1275         IActiveScriptAuthor* This,
1276         LPCOLESTR pszDefaultName,
1277         LPCOLESTR pszCode,
1278         LPCOLESTR pszItemName,
1279         LPCOLESTR pszSubItemName,
1280         LPCOLESTR pszEventName,
1281         LPCOLESTR pszDelimiter,
1282         DWORD dwCookie,
1283         DWORD dwFlags);
1284 
1285     HRESULT (STDMETHODCALLTYPE *ParseScriptText)(
1286         IActiveScriptAuthor* This,
1287         LPCOLESTR pszCode,
1288         LPCOLESTR pszItemName,
1289         LPCOLESTR pszDelimiter,
1290         DWORD dwCookie,
1291         DWORD dwFlags);
1292 
1293     HRESULT (STDMETHODCALLTYPE *GetScriptTextAttributes)(
1294         IActiveScriptAuthor* This,
1295         LPCOLESTR pszCode,
1296         ULONG cch,
1297         LPCOLESTR pszDelimiter,
1298         DWORD dwFlags,
1299         SOURCE_TEXT_ATTR *pattr);
1300 
1301     HRESULT (STDMETHODCALLTYPE *GetScriptletTextAttributes)(
1302         IActiveScriptAuthor* This,
1303         LPCOLESTR pszCode,
1304         ULONG cch,
1305         LPCOLESTR pszDelimiter,
1306         DWORD dwFlags,
1307         SOURCE_TEXT_ATTR *pattr);
1308 
1309     HRESULT (STDMETHODCALLTYPE *GetRoot)(
1310         IActiveScriptAuthor* This,
1311         IScriptNode **ppsp);
1312 
1313     HRESULT (STDMETHODCALLTYPE *GetLanguageFlags)(
1314         IActiveScriptAuthor* This,
1315         DWORD *pgrfasa);
1316 
1317     HRESULT (STDMETHODCALLTYPE *GetEventHandler)(
1318         IActiveScriptAuthor* This,
1319         IDispatch *pdisp,
1320         LPCOLESTR pszItem,
1321         LPCOLESTR pszSubItem,
1322         LPCOLESTR pszEvent,
1323         IScriptEntry **ppse);
1324 
1325     HRESULT (STDMETHODCALLTYPE *RemoveNamedItem)(
1326         IActiveScriptAuthor* This,
1327         LPCOLESTR pszName);
1328 
1329     HRESULT (STDMETHODCALLTYPE *AddTypeLib)(
1330         IActiveScriptAuthor* This,
1331         REFGUID rguidTypeLib,
1332         DWORD dwMajor,
1333         DWORD dwMinor,
1334         DWORD dwFlags);
1335 
1336     HRESULT (STDMETHODCALLTYPE *RemoveTypeLib)(
1337         IActiveScriptAuthor* This,
1338         REFGUID rguidTypeLib,
1339         DWORD dwMajor,
1340         DWORD dwMinor);
1341 
1342     HRESULT (STDMETHODCALLTYPE *GetChars)(
1343         IActiveScriptAuthor* This,
1344         DWORD fRequestedList,
1345         BSTR *pbstrChars);
1346 
1347     HRESULT (STDMETHODCALLTYPE *GetInfoFromContext)(
1348         IActiveScriptAuthor* This,
1349         LPCOLESTR pszCode,
1350         ULONG cchCode,
1351         ULONG ichCurrentPosition,
1352         DWORD dwListTypesRequested,
1353         DWORD *pdwListTypesProvided,
1354         ULONG *pichListAnchorPosition,
1355         ULONG *pichFuncAnchorPosition,
1356         MEMBERID *pmemid,
1357         LONG *piCurrentParameter,
1358         IUnknown **ppunk);
1359 
1360     HRESULT (STDMETHODCALLTYPE *IsCommitChar)(
1361         IActiveScriptAuthor* This,
1362         OLECHAR ch,
1363         WINBOOL *pfcommit);
1364 
1365     END_INTERFACE
1366 } IActiveScriptAuthorVtbl;
1367 interface IActiveScriptAuthor {
1368     CONST_VTBL IActiveScriptAuthorVtbl* lpVtbl;
1369 };
1370 
1371 #ifdef COBJMACROS
1372 #ifndef WIDL_C_INLINE_WRAPPERS
1373 /*** IUnknown methods ***/
1374 #define IActiveScriptAuthor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1375 #define IActiveScriptAuthor_AddRef(This) (This)->lpVtbl->AddRef(This)
1376 #define IActiveScriptAuthor_Release(This) (This)->lpVtbl->Release(This)
1377 /*** IActiveScriptAuthor methods ***/
1378 #define IActiveScriptAuthor_AddNamedItem(This,pszName,dwFlags,pdisp) (This)->lpVtbl->AddNamedItem(This,pszName,dwFlags,pdisp)
1379 #define IActiveScriptAuthor_AddScriptlet(This,pszDefaultName,pszCode,pszItemName,pszSubItemName,pszEventName,pszDelimiter,dwCookie,dwFlags) (This)->lpVtbl->AddScriptlet(This,pszDefaultName,pszCode,pszItemName,pszSubItemName,pszEventName,pszDelimiter,dwCookie,dwFlags)
1380 #define IActiveScriptAuthor_ParseScriptText(This,pszCode,pszItemName,pszDelimiter,dwCookie,dwFlags) (This)->lpVtbl->ParseScriptText(This,pszCode,pszItemName,pszDelimiter,dwCookie,dwFlags)
1381 #define IActiveScriptAuthor_GetScriptTextAttributes(This,pszCode,cch,pszDelimiter,dwFlags,pattr) (This)->lpVtbl->GetScriptTextAttributes(This,pszCode,cch,pszDelimiter,dwFlags,pattr)
1382 #define IActiveScriptAuthor_GetScriptletTextAttributes(This,pszCode,cch,pszDelimiter,dwFlags,pattr) (This)->lpVtbl->GetScriptletTextAttributes(This,pszCode,cch,pszDelimiter,dwFlags,pattr)
1383 #define IActiveScriptAuthor_GetRoot(This,ppsp) (This)->lpVtbl->GetRoot(This,ppsp)
1384 #define IActiveScriptAuthor_GetLanguageFlags(This,pgrfasa) (This)->lpVtbl->GetLanguageFlags(This,pgrfasa)
1385 #define IActiveScriptAuthor_GetEventHandler(This,pdisp,pszItem,pszSubItem,pszEvent,ppse) (This)->lpVtbl->GetEventHandler(This,pdisp,pszItem,pszSubItem,pszEvent,ppse)
1386 #define IActiveScriptAuthor_RemoveNamedItem(This,pszName) (This)->lpVtbl->RemoveNamedItem(This,pszName)
1387 #define IActiveScriptAuthor_AddTypeLib(This,rguidTypeLib,dwMajor,dwMinor,dwFlags) (This)->lpVtbl->AddTypeLib(This,rguidTypeLib,dwMajor,dwMinor,dwFlags)
1388 #define IActiveScriptAuthor_RemoveTypeLib(This,rguidTypeLib,dwMajor,dwMinor) (This)->lpVtbl->RemoveTypeLib(This,rguidTypeLib,dwMajor,dwMinor)
1389 #define IActiveScriptAuthor_GetChars(This,fRequestedList,pbstrChars) (This)->lpVtbl->GetChars(This,fRequestedList,pbstrChars)
1390 #define IActiveScriptAuthor_GetInfoFromContext(This,pszCode,cchCode,ichCurrentPosition,dwListTypesRequested,pdwListTypesProvided,pichListAnchorPosition,pichFuncAnchorPosition,pmemid,piCurrentParameter,ppunk) (This)->lpVtbl->GetInfoFromContext(This,pszCode,cchCode,ichCurrentPosition,dwListTypesRequested,pdwListTypesProvided,pichListAnchorPosition,pichFuncAnchorPosition,pmemid,piCurrentParameter,ppunk)
1391 #define IActiveScriptAuthor_IsCommitChar(This,ch,pfcommit) (This)->lpVtbl->IsCommitChar(This,ch,pfcommit)
1392 #else
1393 /*** IUnknown methods ***/
1394 static FORCEINLINE HRESULT IActiveScriptAuthor_QueryInterface(IActiveScriptAuthor* This,REFIID riid,void **ppvObject) {
1395     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1396 }
1397 static FORCEINLINE ULONG IActiveScriptAuthor_AddRef(IActiveScriptAuthor* This) {
1398     return This->lpVtbl->AddRef(This);
1399 }
1400 static FORCEINLINE ULONG IActiveScriptAuthor_Release(IActiveScriptAuthor* This) {
1401     return This->lpVtbl->Release(This);
1402 }
1403 /*** IActiveScriptAuthor methods ***/
1404 static FORCEINLINE HRESULT IActiveScriptAuthor_AddNamedItem(IActiveScriptAuthor* This,LPCOLESTR pszName,DWORD dwFlags,IDispatch *pdisp) {
1405     return This->lpVtbl->AddNamedItem(This,pszName,dwFlags,pdisp);
1406 }
1407 static FORCEINLINE HRESULT IActiveScriptAuthor_AddScriptlet(IActiveScriptAuthor* This,LPCOLESTR pszDefaultName,LPCOLESTR pszCode,LPCOLESTR pszItemName,LPCOLESTR pszSubItemName,LPCOLESTR pszEventName,LPCOLESTR pszDelimiter,DWORD dwCookie,DWORD dwFlags) {
1408     return This->lpVtbl->AddScriptlet(This,pszDefaultName,pszCode,pszItemName,pszSubItemName,pszEventName,pszDelimiter,dwCookie,dwFlags);
1409 }
1410 static FORCEINLINE HRESULT IActiveScriptAuthor_ParseScriptText(IActiveScriptAuthor* This,LPCOLESTR pszCode,LPCOLESTR pszItemName,LPCOLESTR pszDelimiter,DWORD dwCookie,DWORD dwFlags) {
1411     return This->lpVtbl->ParseScriptText(This,pszCode,pszItemName,pszDelimiter,dwCookie,dwFlags);
1412 }
1413 static FORCEINLINE HRESULT IActiveScriptAuthor_GetScriptTextAttributes(IActiveScriptAuthor* This,LPCOLESTR pszCode,ULONG cch,LPCOLESTR pszDelimiter,DWORD dwFlags,SOURCE_TEXT_ATTR *pattr) {
1414     return This->lpVtbl->GetScriptTextAttributes(This,pszCode,cch,pszDelimiter,dwFlags,pattr);
1415 }
1416 static FORCEINLINE HRESULT IActiveScriptAuthor_GetScriptletTextAttributes(IActiveScriptAuthor* This,LPCOLESTR pszCode,ULONG cch,LPCOLESTR pszDelimiter,DWORD dwFlags,SOURCE_TEXT_ATTR *pattr) {
1417     return This->lpVtbl->GetScriptletTextAttributes(This,pszCode,cch,pszDelimiter,dwFlags,pattr);
1418 }
1419 static FORCEINLINE HRESULT IActiveScriptAuthor_GetRoot(IActiveScriptAuthor* This,IScriptNode **ppsp) {
1420     return This->lpVtbl->GetRoot(This,ppsp);
1421 }
1422 static FORCEINLINE HRESULT IActiveScriptAuthor_GetLanguageFlags(IActiveScriptAuthor* This,DWORD *pgrfasa) {
1423     return This->lpVtbl->GetLanguageFlags(This,pgrfasa);
1424 }
1425 static FORCEINLINE HRESULT IActiveScriptAuthor_GetEventHandler(IActiveScriptAuthor* This,IDispatch *pdisp,LPCOLESTR pszItem,LPCOLESTR pszSubItem,LPCOLESTR pszEvent,IScriptEntry **ppse) {
1426     return This->lpVtbl->GetEventHandler(This,pdisp,pszItem,pszSubItem,pszEvent,ppse);
1427 }
1428 static FORCEINLINE HRESULT IActiveScriptAuthor_RemoveNamedItem(IActiveScriptAuthor* This,LPCOLESTR pszName) {
1429     return This->lpVtbl->RemoveNamedItem(This,pszName);
1430 }
1431 static FORCEINLINE HRESULT IActiveScriptAuthor_AddTypeLib(IActiveScriptAuthor* This,REFGUID rguidTypeLib,DWORD dwMajor,DWORD dwMinor,DWORD dwFlags) {
1432     return This->lpVtbl->AddTypeLib(This,rguidTypeLib,dwMajor,dwMinor,dwFlags);
1433 }
1434 static FORCEINLINE HRESULT IActiveScriptAuthor_RemoveTypeLib(IActiveScriptAuthor* This,REFGUID rguidTypeLib,DWORD dwMajor,DWORD dwMinor) {
1435     return This->lpVtbl->RemoveTypeLib(This,rguidTypeLib,dwMajor,dwMinor);
1436 }
1437 static FORCEINLINE HRESULT IActiveScriptAuthor_GetChars(IActiveScriptAuthor* This,DWORD fRequestedList,BSTR *pbstrChars) {
1438     return This->lpVtbl->GetChars(This,fRequestedList,pbstrChars);
1439 }
1440 static FORCEINLINE HRESULT IActiveScriptAuthor_GetInfoFromContext(IActiveScriptAuthor* This,LPCOLESTR pszCode,ULONG cchCode,ULONG ichCurrentPosition,DWORD dwListTypesRequested,DWORD *pdwListTypesProvided,ULONG *pichListAnchorPosition,ULONG *pichFuncAnchorPosition,MEMBERID *pmemid,LONG *piCurrentParameter,IUnknown **ppunk) {
1441     return This->lpVtbl->GetInfoFromContext(This,pszCode,cchCode,ichCurrentPosition,dwListTypesRequested,pdwListTypesProvided,pichListAnchorPosition,pichFuncAnchorPosition,pmemid,piCurrentParameter,ppunk);
1442 }
1443 static FORCEINLINE HRESULT IActiveScriptAuthor_IsCommitChar(IActiveScriptAuthor* This,OLECHAR ch,WINBOOL *pfcommit) {
1444     return This->lpVtbl->IsCommitChar(This,ch,pfcommit);
1445 }
1446 #endif
1447 #endif
1448 
1449 #endif
1450 
1451 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_AddNamedItem_Proxy(
1452     IActiveScriptAuthor* This,
1453     LPCOLESTR pszName,
1454     DWORD dwFlags,
1455     IDispatch *pdisp);
1456 void __RPC_STUB IActiveScriptAuthor_AddNamedItem_Stub(
1457     IRpcStubBuffer* This,
1458     IRpcChannelBuffer* pRpcChannelBuffer,
1459     PRPC_MESSAGE pRpcMessage,
1460     DWORD* pdwStubPhase);
1461 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_AddScriptlet_Proxy(
1462     IActiveScriptAuthor* This,
1463     LPCOLESTR pszDefaultName,
1464     LPCOLESTR pszCode,
1465     LPCOLESTR pszItemName,
1466     LPCOLESTR pszSubItemName,
1467     LPCOLESTR pszEventName,
1468     LPCOLESTR pszDelimiter,
1469     DWORD dwCookie,
1470     DWORD dwFlags);
1471 void __RPC_STUB IActiveScriptAuthor_AddScriptlet_Stub(
1472     IRpcStubBuffer* This,
1473     IRpcChannelBuffer* pRpcChannelBuffer,
1474     PRPC_MESSAGE pRpcMessage,
1475     DWORD* pdwStubPhase);
1476 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_ParseScriptText_Proxy(
1477     IActiveScriptAuthor* This,
1478     LPCOLESTR pszCode,
1479     LPCOLESTR pszItemName,
1480     LPCOLESTR pszDelimiter,
1481     DWORD dwCookie,
1482     DWORD dwFlags);
1483 void __RPC_STUB IActiveScriptAuthor_ParseScriptText_Stub(
1484     IRpcStubBuffer* This,
1485     IRpcChannelBuffer* pRpcChannelBuffer,
1486     PRPC_MESSAGE pRpcMessage,
1487     DWORD* pdwStubPhase);
1488 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_GetScriptTextAttributes_Proxy(
1489     IActiveScriptAuthor* This,
1490     LPCOLESTR pszCode,
1491     ULONG cch,
1492     LPCOLESTR pszDelimiter,
1493     DWORD dwFlags,
1494     SOURCE_TEXT_ATTR *pattr);
1495 void __RPC_STUB IActiveScriptAuthor_GetScriptTextAttributes_Stub(
1496     IRpcStubBuffer* This,
1497     IRpcChannelBuffer* pRpcChannelBuffer,
1498     PRPC_MESSAGE pRpcMessage,
1499     DWORD* pdwStubPhase);
1500 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_GetScriptletTextAttributes_Proxy(
1501     IActiveScriptAuthor* This,
1502     LPCOLESTR pszCode,
1503     ULONG cch,
1504     LPCOLESTR pszDelimiter,
1505     DWORD dwFlags,
1506     SOURCE_TEXT_ATTR *pattr);
1507 void __RPC_STUB IActiveScriptAuthor_GetScriptletTextAttributes_Stub(
1508     IRpcStubBuffer* This,
1509     IRpcChannelBuffer* pRpcChannelBuffer,
1510     PRPC_MESSAGE pRpcMessage,
1511     DWORD* pdwStubPhase);
1512 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_GetRoot_Proxy(
1513     IActiveScriptAuthor* This,
1514     IScriptNode **ppsp);
1515 void __RPC_STUB IActiveScriptAuthor_GetRoot_Stub(
1516     IRpcStubBuffer* This,
1517     IRpcChannelBuffer* pRpcChannelBuffer,
1518     PRPC_MESSAGE pRpcMessage,
1519     DWORD* pdwStubPhase);
1520 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_GetLanguageFlags_Proxy(
1521     IActiveScriptAuthor* This,
1522     DWORD *pgrfasa);
1523 void __RPC_STUB IActiveScriptAuthor_GetLanguageFlags_Stub(
1524     IRpcStubBuffer* This,
1525     IRpcChannelBuffer* pRpcChannelBuffer,
1526     PRPC_MESSAGE pRpcMessage,
1527     DWORD* pdwStubPhase);
1528 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_GetEventHandler_Proxy(
1529     IActiveScriptAuthor* This,
1530     IDispatch *pdisp,
1531     LPCOLESTR pszItem,
1532     LPCOLESTR pszSubItem,
1533     LPCOLESTR pszEvent,
1534     IScriptEntry **ppse);
1535 void __RPC_STUB IActiveScriptAuthor_GetEventHandler_Stub(
1536     IRpcStubBuffer* This,
1537     IRpcChannelBuffer* pRpcChannelBuffer,
1538     PRPC_MESSAGE pRpcMessage,
1539     DWORD* pdwStubPhase);
1540 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_RemoveNamedItem_Proxy(
1541     IActiveScriptAuthor* This,
1542     LPCOLESTR pszName);
1543 void __RPC_STUB IActiveScriptAuthor_RemoveNamedItem_Stub(
1544     IRpcStubBuffer* This,
1545     IRpcChannelBuffer* pRpcChannelBuffer,
1546     PRPC_MESSAGE pRpcMessage,
1547     DWORD* pdwStubPhase);
1548 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_AddTypeLib_Proxy(
1549     IActiveScriptAuthor* This,
1550     REFGUID rguidTypeLib,
1551     DWORD dwMajor,
1552     DWORD dwMinor,
1553     DWORD dwFlags);
1554 void __RPC_STUB IActiveScriptAuthor_AddTypeLib_Stub(
1555     IRpcStubBuffer* This,
1556     IRpcChannelBuffer* pRpcChannelBuffer,
1557     PRPC_MESSAGE pRpcMessage,
1558     DWORD* pdwStubPhase);
1559 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_RemoveTypeLib_Proxy(
1560     IActiveScriptAuthor* This,
1561     REFGUID rguidTypeLib,
1562     DWORD dwMajor,
1563     DWORD dwMinor);
1564 void __RPC_STUB IActiveScriptAuthor_RemoveTypeLib_Stub(
1565     IRpcStubBuffer* This,
1566     IRpcChannelBuffer* pRpcChannelBuffer,
1567     PRPC_MESSAGE pRpcMessage,
1568     DWORD* pdwStubPhase);
1569 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_GetChars_Proxy(
1570     IActiveScriptAuthor* This,
1571     DWORD fRequestedList,
1572     BSTR *pbstrChars);
1573 void __RPC_STUB IActiveScriptAuthor_GetChars_Stub(
1574     IRpcStubBuffer* This,
1575     IRpcChannelBuffer* pRpcChannelBuffer,
1576     PRPC_MESSAGE pRpcMessage,
1577     DWORD* pdwStubPhase);
1578 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_GetInfoFromContext_Proxy(
1579     IActiveScriptAuthor* This,
1580     LPCOLESTR pszCode,
1581     ULONG cchCode,
1582     ULONG ichCurrentPosition,
1583     DWORD dwListTypesRequested,
1584     DWORD *pdwListTypesProvided,
1585     ULONG *pichListAnchorPosition,
1586     ULONG *pichFuncAnchorPosition,
1587     MEMBERID *pmemid,
1588     LONG *piCurrentParameter,
1589     IUnknown **ppunk);
1590 void __RPC_STUB IActiveScriptAuthor_GetInfoFromContext_Stub(
1591     IRpcStubBuffer* This,
1592     IRpcChannelBuffer* pRpcChannelBuffer,
1593     PRPC_MESSAGE pRpcMessage,
1594     DWORD* pdwStubPhase);
1595 HRESULT STDMETHODCALLTYPE IActiveScriptAuthor_IsCommitChar_Proxy(
1596     IActiveScriptAuthor* This,
1597     OLECHAR ch,
1598     WINBOOL *pfcommit);
1599 void __RPC_STUB IActiveScriptAuthor_IsCommitChar_Stub(
1600     IRpcStubBuffer* This,
1601     IRpcChannelBuffer* pRpcChannelBuffer,
1602     PRPC_MESSAGE pRpcMessage,
1603     DWORD* pdwStubPhase);
1604 
1605 #endif  /* __IActiveScriptAuthor_INTERFACE_DEFINED__ */
1606 
1607 /*****************************************************************************
1608  * IActiveScriptAuthorProcedure interface
1609  */
1610 #ifndef __IActiveScriptAuthorProcedure_INTERFACE_DEFINED__
1611 #define __IActiveScriptAuthorProcedure_INTERFACE_DEFINED__
1612 
1613 DEFINE_GUID(IID_IActiveScriptAuthorProcedure, 0x7e2d4b70, 0xbd9a, 0x11d0, 0x93,0x36, 0x00,0xa0,0xc9,0x0d,0xca,0xa9);
1614 #if defined(__cplusplus) && !defined(CINTERFACE)
1615 MIDL_INTERFACE("7e2d4b70-bd9a-11d0-9336-00a0c90dcaa9")
1616 IActiveScriptAuthorProcedure : public IUnknown
1617 {
1618     virtual HRESULT STDMETHODCALLTYPE ParseProcedureText(
1619         LPCOLESTR pszCode,
1620         LPCOLESTR pszFormalParams,
1621         LPCOLESTR pszProcedureName,
1622         LPCOLESTR pszItemName,
1623         LPCOLESTR pszDelimiter,
1624         DWORD dwCookie,
1625         DWORD dwFlags,
1626         IDispatch *pdispFor) = 0;
1627 
1628 };
1629 #ifdef __CRT_UUID_DECL
1630 __CRT_UUID_DECL(IActiveScriptAuthorProcedure, 0x7e2d4b70, 0xbd9a, 0x11d0, 0x93,0x36, 0x00,0xa0,0xc9,0x0d,0xca,0xa9)
1631 #endif
1632 #else
1633 typedef struct IActiveScriptAuthorProcedureVtbl {
1634     BEGIN_INTERFACE
1635 
1636     /*** IUnknown methods ***/
1637     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1638         IActiveScriptAuthorProcedure* This,
1639         REFIID riid,
1640         void **ppvObject);
1641 
1642     ULONG (STDMETHODCALLTYPE *AddRef)(
1643         IActiveScriptAuthorProcedure* This);
1644 
1645     ULONG (STDMETHODCALLTYPE *Release)(
1646         IActiveScriptAuthorProcedure* This);
1647 
1648     /*** IActiveScriptAuthorProcedure methods ***/
1649     HRESULT (STDMETHODCALLTYPE *ParseProcedureText)(
1650         IActiveScriptAuthorProcedure* This,
1651         LPCOLESTR pszCode,
1652         LPCOLESTR pszFormalParams,
1653         LPCOLESTR pszProcedureName,
1654         LPCOLESTR pszItemName,
1655         LPCOLESTR pszDelimiter,
1656         DWORD dwCookie,
1657         DWORD dwFlags,
1658         IDispatch *pdispFor);
1659 
1660     END_INTERFACE
1661 } IActiveScriptAuthorProcedureVtbl;
1662 interface IActiveScriptAuthorProcedure {
1663     CONST_VTBL IActiveScriptAuthorProcedureVtbl* lpVtbl;
1664 };
1665 
1666 #ifdef COBJMACROS
1667 #ifndef WIDL_C_INLINE_WRAPPERS
1668 /*** IUnknown methods ***/
1669 #define IActiveScriptAuthorProcedure_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1670 #define IActiveScriptAuthorProcedure_AddRef(This) (This)->lpVtbl->AddRef(This)
1671 #define IActiveScriptAuthorProcedure_Release(This) (This)->lpVtbl->Release(This)
1672 /*** IActiveScriptAuthorProcedure methods ***/
1673 #define IActiveScriptAuthorProcedure_ParseProcedureText(This,pszCode,pszFormalParams,pszProcedureName,pszItemName,pszDelimiter,dwCookie,dwFlags,pdispFor) (This)->lpVtbl->ParseProcedureText(This,pszCode,pszFormalParams,pszProcedureName,pszItemName,pszDelimiter,dwCookie,dwFlags,pdispFor)
1674 #else
1675 /*** IUnknown methods ***/
1676 static FORCEINLINE HRESULT IActiveScriptAuthorProcedure_QueryInterface(IActiveScriptAuthorProcedure* This,REFIID riid,void **ppvObject) {
1677     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1678 }
1679 static FORCEINLINE ULONG IActiveScriptAuthorProcedure_AddRef(IActiveScriptAuthorProcedure* This) {
1680     return This->lpVtbl->AddRef(This);
1681 }
1682 static FORCEINLINE ULONG IActiveScriptAuthorProcedure_Release(IActiveScriptAuthorProcedure* This) {
1683     return This->lpVtbl->Release(This);
1684 }
1685 /*** IActiveScriptAuthorProcedure methods ***/
1686 static FORCEINLINE HRESULT IActiveScriptAuthorProcedure_ParseProcedureText(IActiveScriptAuthorProcedure* This,LPCOLESTR pszCode,LPCOLESTR pszFormalParams,LPCOLESTR pszProcedureName,LPCOLESTR pszItemName,LPCOLESTR pszDelimiter,DWORD dwCookie,DWORD dwFlags,IDispatch *pdispFor) {
1687     return This->lpVtbl->ParseProcedureText(This,pszCode,pszFormalParams,pszProcedureName,pszItemName,pszDelimiter,dwCookie,dwFlags,pdispFor);
1688 }
1689 #endif
1690 #endif
1691 
1692 #endif
1693 
1694 HRESULT STDMETHODCALLTYPE IActiveScriptAuthorProcedure_ParseProcedureText_Proxy(
1695     IActiveScriptAuthorProcedure* This,
1696     LPCOLESTR pszCode,
1697     LPCOLESTR pszFormalParams,
1698     LPCOLESTR pszProcedureName,
1699     LPCOLESTR pszItemName,
1700     LPCOLESTR pszDelimiter,
1701     DWORD dwCookie,
1702     DWORD dwFlags,
1703     IDispatch *pdispFor);
1704 void __RPC_STUB IActiveScriptAuthorProcedure_ParseProcedureText_Stub(
1705     IRpcStubBuffer* This,
1706     IRpcChannelBuffer* pRpcChannelBuffer,
1707     PRPC_MESSAGE pRpcMessage,
1708     DWORD* pdwStubPhase);
1709 
1710 #endif  /* __IActiveScriptAuthorProcedure_INTERFACE_DEFINED__ */
1711 
1712 #endif
1713 
1714 #endif
1715 /* Begin additional prototypes for all interfaces */
1716 
1717 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
1718 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
1719 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
1720 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
1721 
1722 /* End additional prototypes */
1723 
1724 #ifdef __cplusplus
1725 }
1726 #endif
1727 
1728 #endif /* __activaut_h__ */
1729