1 /*** Autogenerated by WIDL 1.6 from include/exdisp.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 __exdisp_h__
16 #define __exdisp_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __IWebBrowser_FWD_DEFINED__
21 #define __IWebBrowser_FWD_DEFINED__
22 typedef interface IWebBrowser IWebBrowser;
23 #endif
24 
25 #ifndef __DWebBrowserEvents_FWD_DEFINED__
26 #define __DWebBrowserEvents_FWD_DEFINED__
27 typedef interface DWebBrowserEvents DWebBrowserEvents;
28 #endif
29 
30 #ifndef __IWebBrowserApp_FWD_DEFINED__
31 #define __IWebBrowserApp_FWD_DEFINED__
32 typedef interface IWebBrowserApp IWebBrowserApp;
33 #endif
34 
35 #ifndef __IWebBrowser2_FWD_DEFINED__
36 #define __IWebBrowser2_FWD_DEFINED__
37 typedef interface IWebBrowser2 IWebBrowser2;
38 #endif
39 
40 #ifndef __DWebBrowserEvents2_FWD_DEFINED__
41 #define __DWebBrowserEvents2_FWD_DEFINED__
42 typedef interface DWebBrowserEvents2 DWebBrowserEvents2;
43 #endif
44 
45 #ifndef __WebBrowser_V1_FWD_DEFINED__
46 #define __WebBrowser_V1_FWD_DEFINED__
47 #ifdef __cplusplus
48 typedef class WebBrowser_V1 WebBrowser_V1;
49 #else
50 typedef struct WebBrowser_V1 WebBrowser_V1;
51 #endif /* defined __cplusplus */
52 #endif /* defined __WebBrowser_V1_FWD_DEFINED__ */
53 
54 #ifndef __WebBrowser_FWD_DEFINED__
55 #define __WebBrowser_FWD_DEFINED__
56 #ifdef __cplusplus
57 typedef class WebBrowser WebBrowser;
58 #else
59 typedef struct WebBrowser WebBrowser;
60 #endif /* defined __cplusplus */
61 #endif /* defined __WebBrowser_FWD_DEFINED__ */
62 
63 #ifndef __InternetExplorer_FWD_DEFINED__
64 #define __InternetExplorer_FWD_DEFINED__
65 #ifdef __cplusplus
66 typedef class InternetExplorer InternetExplorer;
67 #else
68 typedef struct InternetExplorer InternetExplorer;
69 #endif /* defined __cplusplus */
70 #endif /* defined __InternetExplorer_FWD_DEFINED__ */
71 
72 #ifndef __ShellBrowserWindow_FWD_DEFINED__
73 #define __ShellBrowserWindow_FWD_DEFINED__
74 #ifdef __cplusplus
75 typedef class ShellBrowserWindow ShellBrowserWindow;
76 #else
77 typedef struct ShellBrowserWindow ShellBrowserWindow;
78 #endif /* defined __cplusplus */
79 #endif /* defined __ShellBrowserWindow_FWD_DEFINED__ */
80 
81 #ifndef __DShellWindowsEvents_FWD_DEFINED__
82 #define __DShellWindowsEvents_FWD_DEFINED__
83 typedef interface DShellWindowsEvents DShellWindowsEvents;
84 #endif
85 
86 #ifndef __IShellWindows_FWD_DEFINED__
87 #define __IShellWindows_FWD_DEFINED__
88 typedef interface IShellWindows IShellWindows;
89 #endif
90 
91 #ifndef __ShellWindows_FWD_DEFINED__
92 #define __ShellWindows_FWD_DEFINED__
93 #ifdef __cplusplus
94 typedef class ShellWindows ShellWindows;
95 #else
96 typedef struct ShellWindows ShellWindows;
97 #endif /* defined __cplusplus */
98 #endif /* defined __ShellWindows_FWD_DEFINED__ */
99 
100 #ifndef __IShellUIHelper_FWD_DEFINED__
101 #define __IShellUIHelper_FWD_DEFINED__
102 typedef interface IShellUIHelper IShellUIHelper;
103 #endif
104 
105 #ifndef __IShellUIHelper2_FWD_DEFINED__
106 #define __IShellUIHelper2_FWD_DEFINED__
107 typedef interface IShellUIHelper2 IShellUIHelper2;
108 #endif
109 
110 #ifndef __ShellUIHelper_FWD_DEFINED__
111 #define __ShellUIHelper_FWD_DEFINED__
112 #ifdef __cplusplus
113 typedef class ShellUIHelper ShellUIHelper;
114 #else
115 typedef struct ShellUIHelper ShellUIHelper;
116 #endif /* defined __cplusplus */
117 #endif /* defined __ShellUIHelper_FWD_DEFINED__ */
118 
119 #ifndef __DShellNameSpaceEvents_FWD_DEFINED__
120 #define __DShellNameSpaceEvents_FWD_DEFINED__
121 typedef interface DShellNameSpaceEvents DShellNameSpaceEvents;
122 #endif
123 
124 #ifndef __IShellFavoritesNameSpace_FWD_DEFINED__
125 #define __IShellFavoritesNameSpace_FWD_DEFINED__
126 typedef interface IShellFavoritesNameSpace IShellFavoritesNameSpace;
127 #endif
128 
129 #ifndef __IShellNameSpace_FWD_DEFINED__
130 #define __IShellNameSpace_FWD_DEFINED__
131 typedef interface IShellNameSpace IShellNameSpace;
132 #endif
133 
134 #ifndef __ShellShellNameSpace_FWD_DEFINED__
135 #define __ShellShellNameSpace_FWD_DEFINED__
136 #ifdef __cplusplus
137 typedef class ShellShellNameSpace ShellShellNameSpace;
138 #else
139 typedef struct ShellShellNameSpace ShellShellNameSpace;
140 #endif /* defined __cplusplus */
141 #endif /* defined __ShellShellNameSpace_FWD_DEFINED__ */
142 
143 #ifndef __ShellNameSpace_FWD_DEFINED__
144 #define __ShellNameSpace_FWD_DEFINED__
145 #ifdef __cplusplus
146 typedef class ShellNameSpace ShellNameSpace;
147 #else
148 typedef struct ShellNameSpace ShellNameSpace;
149 #endif /* defined __cplusplus */
150 #endif /* defined __ShellNameSpace_FWD_DEFINED__ */
151 
152 #ifndef __IScriptErrorList_FWD_DEFINED__
153 #define __IScriptErrorList_FWD_DEFINED__
154 typedef interface IScriptErrorList IScriptErrorList;
155 #endif
156 
157 #ifndef __CScriptErrorList_FWD_DEFINED__
158 #define __CScriptErrorList_FWD_DEFINED__
159 #ifdef __cplusplus
160 typedef class CScriptErrorList CScriptErrorList;
161 #else
162 typedef struct CScriptErrorList CScriptErrorList;
163 #endif /* defined __cplusplus */
164 #endif /* defined __CScriptErrorList_FWD_DEFINED__ */
165 
166 #ifndef __ISearch_FWD_DEFINED__
167 #define __ISearch_FWD_DEFINED__
168 typedef interface ISearch ISearch;
169 #endif
170 
171 #ifndef __ISearches_FWD_DEFINED__
172 #define __ISearches_FWD_DEFINED__
173 typedef interface ISearches ISearches;
174 #endif
175 
176 #ifndef __ISearchAssistantOC_FWD_DEFINED__
177 #define __ISearchAssistantOC_FWD_DEFINED__
178 typedef interface ISearchAssistantOC ISearchAssistantOC;
179 #endif
180 
181 #ifndef __ISearchAssistantOC2_FWD_DEFINED__
182 #define __ISearchAssistantOC2_FWD_DEFINED__
183 typedef interface ISearchAssistantOC2 ISearchAssistantOC2;
184 #endif
185 
186 #ifndef __ISearchAssistantOC3_FWD_DEFINED__
187 #define __ISearchAssistantOC3_FWD_DEFINED__
188 typedef interface ISearchAssistantOC3 ISearchAssistantOC3;
189 #endif
190 
191 #ifndef ___SearchAssistantEvents_FWD_DEFINED__
192 #define ___SearchAssistantEvents_FWD_DEFINED__
193 typedef interface _SearchAssistantEvents _SearchAssistantEvents;
194 #endif
195 
196 #ifndef __ShellSearchAssistantOC_FWD_DEFINED__
197 #define __ShellSearchAssistantOC_FWD_DEFINED__
198 #ifdef __cplusplus
199 typedef class ShellSearchAssistantOC ShellSearchAssistantOC;
200 #else
201 typedef struct ShellSearchAssistantOC ShellSearchAssistantOC;
202 #endif /* defined __cplusplus */
203 #endif /* defined __ShellSearchAssistantOC_FWD_DEFINED__ */
204 
205 #ifndef __SearchAssistantOC_FWD_DEFINED__
206 #define __SearchAssistantOC_FWD_DEFINED__
207 #ifdef __cplusplus
208 typedef class SearchAssistantOC SearchAssistantOC;
209 #else
210 typedef struct SearchAssistantOC SearchAssistantOC;
211 #endif /* defined __cplusplus */
212 #endif /* defined __SearchAssistantOC_FWD_DEFINED__ */
213 
214 /* Headers for imported files */
215 
216 #include <ocidl.h>
217 #include <docobj.h>
218 
219 #ifdef __cplusplus
220 extern "C" {
221 #endif
222 
223 #ifdef WINE_NO_UNICODE_MACROS
224 #undef FindText
225 #endif
226 
227 DEFINE_GUID(LIBID_SHDocVw, 0xeab22ac0, 0x30c1, 0x11cf, 0xa7,0xeb, 0x00,0x00,0xc0,0x5b,0xae,0x0b);
228 
229 /*****************************************************************************
230  * IWebBrowser interface
231  */
232 #ifndef __IWebBrowser_INTERFACE_DEFINED__
233 #define __IWebBrowser_INTERFACE_DEFINED__
234 
235 typedef enum BrowserNavConstants {
236     navOpenInNewWindow = 0x1,
237     navNoHistory = 0x2,
238     navNoReadFromCache = 0x4,
239     navNoWriteToCache = 0x8,
240     navAllowAutosearch = 0x10,
241     navBrowserBar = 0x20,
242     navHyperlink = 0x40,
243     navEnforceRestricted = 0x80
244 } BrowserNavConstants;
245 typedef enum RefreshConstants {
246     REFRESH_NORMAL = 0,
247     REFRESH_IFEXPIRED = 1,
248     REFRESH_COMPLETELY = 3
249 } RefreshConstants;
250 DEFINE_GUID(IID_IWebBrowser, 0xeab22ac1, 0x30c1, 0x11cf, 0xa7,0xeb, 0x00,0x00,0xc0,0x5b,0xae,0x0b);
251 #if defined(__cplusplus) && !defined(CINTERFACE)
252 MIDL_INTERFACE("eab22ac1-30c1-11cf-a7eb-0000c05bae0b")
253 IWebBrowser : public IDispatch
254 {
255     virtual HRESULT STDMETHODCALLTYPE GoBack(
256         ) = 0;
257 
258     virtual HRESULT STDMETHODCALLTYPE GoForward(
259         ) = 0;
260 
261     virtual HRESULT STDMETHODCALLTYPE GoHome(
262         ) = 0;
263 
264     virtual HRESULT STDMETHODCALLTYPE GoSearch(
265         ) = 0;
266 
267     virtual HRESULT STDMETHODCALLTYPE Navigate(
268         BSTR URL,
269         VARIANT *Flags,
270         VARIANT *TargetFrameName,
271         VARIANT *PostData,
272         VARIANT *Headers) = 0;
273 
274     virtual HRESULT STDMETHODCALLTYPE Refresh(
275         ) = 0;
276 
277     virtual HRESULT STDMETHODCALLTYPE Refresh2(
278         VARIANT *Level) = 0;
279 
280     virtual HRESULT STDMETHODCALLTYPE Stop(
281         ) = 0;
282 
283     virtual HRESULT STDMETHODCALLTYPE get_Application(
284         IDispatch **ppDisp) = 0;
285 
286     virtual HRESULT STDMETHODCALLTYPE get_Parent(
287         IDispatch **ppDisp) = 0;
288 
289     virtual HRESULT STDMETHODCALLTYPE get_Container(
290         IDispatch **ppDisp) = 0;
291 
292     virtual HRESULT STDMETHODCALLTYPE get_Document(
293         IDispatch **ppDisp) = 0;
294 
295     virtual HRESULT STDMETHODCALLTYPE get_TopLevelContainer(
296         VARIANT_BOOL *pBool) = 0;
297 
298     virtual HRESULT STDMETHODCALLTYPE get_Type(
299         BSTR *Type) = 0;
300 
301     virtual HRESULT STDMETHODCALLTYPE get_Left(
302         LONG *pl) = 0;
303 
304     virtual HRESULT STDMETHODCALLTYPE put_Left(
305         LONG Left) = 0;
306 
307     virtual HRESULT STDMETHODCALLTYPE get_Top(
308         LONG *pl) = 0;
309 
310     virtual HRESULT STDMETHODCALLTYPE put_Top(
311         LONG Top) = 0;
312 
313     virtual HRESULT STDMETHODCALLTYPE get_Width(
314         LONG *pl) = 0;
315 
316     virtual HRESULT STDMETHODCALLTYPE put_Width(
317         LONG Width) = 0;
318 
319     virtual HRESULT STDMETHODCALLTYPE get_Height(
320         LONG *pl) = 0;
321 
322     virtual HRESULT STDMETHODCALLTYPE put_Height(
323         LONG Height) = 0;
324 
325     virtual HRESULT STDMETHODCALLTYPE get_LocationName(
326         BSTR *LocationName) = 0;
327 
328     virtual HRESULT STDMETHODCALLTYPE get_LocationURL(
329         BSTR *LocationURL) = 0;
330 
331     virtual HRESULT STDMETHODCALLTYPE get_Busy(
332         VARIANT_BOOL *pBool) = 0;
333 
334 };
335 #ifdef __CRT_UUID_DECL
336 __CRT_UUID_DECL(IWebBrowser, 0xeab22ac1, 0x30c1, 0x11cf, 0xa7,0xeb, 0x00,0x00,0xc0,0x5b,0xae,0x0b)
337 #endif
338 #else
339 typedef struct IWebBrowserVtbl {
340     BEGIN_INTERFACE
341 
342     /*** IUnknown methods ***/
343     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
344         IWebBrowser* This,
345         REFIID riid,
346         void **ppvObject);
347 
348     ULONG (STDMETHODCALLTYPE *AddRef)(
349         IWebBrowser* This);
350 
351     ULONG (STDMETHODCALLTYPE *Release)(
352         IWebBrowser* This);
353 
354     /*** IDispatch methods ***/
355     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
356         IWebBrowser* This,
357         UINT *pctinfo);
358 
359     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
360         IWebBrowser* This,
361         UINT iTInfo,
362         LCID lcid,
363         ITypeInfo **ppTInfo);
364 
365     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
366         IWebBrowser* This,
367         REFIID riid,
368         LPOLESTR *rgszNames,
369         UINT cNames,
370         LCID lcid,
371         DISPID *rgDispId);
372 
373     HRESULT (STDMETHODCALLTYPE *Invoke)(
374         IWebBrowser* This,
375         DISPID dispIdMember,
376         REFIID riid,
377         LCID lcid,
378         WORD wFlags,
379         DISPPARAMS *pDispParams,
380         VARIANT *pVarResult,
381         EXCEPINFO *pExcepInfo,
382         UINT *puArgErr);
383 
384     /*** IWebBrowser methods ***/
385     HRESULT (STDMETHODCALLTYPE *GoBack)(
386         IWebBrowser* This);
387 
388     HRESULT (STDMETHODCALLTYPE *GoForward)(
389         IWebBrowser* This);
390 
391     HRESULT (STDMETHODCALLTYPE *GoHome)(
392         IWebBrowser* This);
393 
394     HRESULT (STDMETHODCALLTYPE *GoSearch)(
395         IWebBrowser* This);
396 
397     HRESULT (STDMETHODCALLTYPE *Navigate)(
398         IWebBrowser* This,
399         BSTR URL,
400         VARIANT *Flags,
401         VARIANT *TargetFrameName,
402         VARIANT *PostData,
403         VARIANT *Headers);
404 
405     HRESULT (STDMETHODCALLTYPE *Refresh)(
406         IWebBrowser* This);
407 
408     HRESULT (STDMETHODCALLTYPE *Refresh2)(
409         IWebBrowser* This,
410         VARIANT *Level);
411 
412     HRESULT (STDMETHODCALLTYPE *Stop)(
413         IWebBrowser* This);
414 
415     HRESULT (STDMETHODCALLTYPE *get_Application)(
416         IWebBrowser* This,
417         IDispatch **ppDisp);
418 
419     HRESULT (STDMETHODCALLTYPE *get_Parent)(
420         IWebBrowser* This,
421         IDispatch **ppDisp);
422 
423     HRESULT (STDMETHODCALLTYPE *get_Container)(
424         IWebBrowser* This,
425         IDispatch **ppDisp);
426 
427     HRESULT (STDMETHODCALLTYPE *get_Document)(
428         IWebBrowser* This,
429         IDispatch **ppDisp);
430 
431     HRESULT (STDMETHODCALLTYPE *get_TopLevelContainer)(
432         IWebBrowser* This,
433         VARIANT_BOOL *pBool);
434 
435     HRESULT (STDMETHODCALLTYPE *get_Type)(
436         IWebBrowser* This,
437         BSTR *Type);
438 
439     HRESULT (STDMETHODCALLTYPE *get_Left)(
440         IWebBrowser* This,
441         LONG *pl);
442 
443     HRESULT (STDMETHODCALLTYPE *put_Left)(
444         IWebBrowser* This,
445         LONG Left);
446 
447     HRESULT (STDMETHODCALLTYPE *get_Top)(
448         IWebBrowser* This,
449         LONG *pl);
450 
451     HRESULT (STDMETHODCALLTYPE *put_Top)(
452         IWebBrowser* This,
453         LONG Top);
454 
455     HRESULT (STDMETHODCALLTYPE *get_Width)(
456         IWebBrowser* This,
457         LONG *pl);
458 
459     HRESULT (STDMETHODCALLTYPE *put_Width)(
460         IWebBrowser* This,
461         LONG Width);
462 
463     HRESULT (STDMETHODCALLTYPE *get_Height)(
464         IWebBrowser* This,
465         LONG *pl);
466 
467     HRESULT (STDMETHODCALLTYPE *put_Height)(
468         IWebBrowser* This,
469         LONG Height);
470 
471     HRESULT (STDMETHODCALLTYPE *get_LocationName)(
472         IWebBrowser* This,
473         BSTR *LocationName);
474 
475     HRESULT (STDMETHODCALLTYPE *get_LocationURL)(
476         IWebBrowser* This,
477         BSTR *LocationURL);
478 
479     HRESULT (STDMETHODCALLTYPE *get_Busy)(
480         IWebBrowser* This,
481         VARIANT_BOOL *pBool);
482 
483     END_INTERFACE
484 } IWebBrowserVtbl;
485 interface IWebBrowser {
486     CONST_VTBL IWebBrowserVtbl* lpVtbl;
487 };
488 
489 #ifdef COBJMACROS
490 #ifndef WIDL_C_INLINE_WRAPPERS
491 /*** IUnknown methods ***/
492 #define IWebBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
493 #define IWebBrowser_AddRef(This) (This)->lpVtbl->AddRef(This)
494 #define IWebBrowser_Release(This) (This)->lpVtbl->Release(This)
495 /*** IDispatch methods ***/
496 #define IWebBrowser_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
497 #define IWebBrowser_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
498 #define IWebBrowser_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
499 #define IWebBrowser_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
500 /*** IWebBrowser methods ***/
501 #define IWebBrowser_GoBack(This) (This)->lpVtbl->GoBack(This)
502 #define IWebBrowser_GoForward(This) (This)->lpVtbl->GoForward(This)
503 #define IWebBrowser_GoHome(This) (This)->lpVtbl->GoHome(This)
504 #define IWebBrowser_GoSearch(This) (This)->lpVtbl->GoSearch(This)
505 #define IWebBrowser_Navigate(This,URL,Flags,TargetFrameName,PostData,Headers) (This)->lpVtbl->Navigate(This,URL,Flags,TargetFrameName,PostData,Headers)
506 #define IWebBrowser_Refresh(This) (This)->lpVtbl->Refresh(This)
507 #define IWebBrowser_Refresh2(This,Level) (This)->lpVtbl->Refresh2(This,Level)
508 #define IWebBrowser_Stop(This) (This)->lpVtbl->Stop(This)
509 #define IWebBrowser_get_Application(This,ppDisp) (This)->lpVtbl->get_Application(This,ppDisp)
510 #define IWebBrowser_get_Parent(This,ppDisp) (This)->lpVtbl->get_Parent(This,ppDisp)
511 #define IWebBrowser_get_Container(This,ppDisp) (This)->lpVtbl->get_Container(This,ppDisp)
512 #define IWebBrowser_get_Document(This,ppDisp) (This)->lpVtbl->get_Document(This,ppDisp)
513 #define IWebBrowser_get_TopLevelContainer(This,pBool) (This)->lpVtbl->get_TopLevelContainer(This,pBool)
514 #define IWebBrowser_get_Type(This,Type) (This)->lpVtbl->get_Type(This,Type)
515 #define IWebBrowser_get_Left(This,pl) (This)->lpVtbl->get_Left(This,pl)
516 #define IWebBrowser_put_Left(This,Left) (This)->lpVtbl->put_Left(This,Left)
517 #define IWebBrowser_get_Top(This,pl) (This)->lpVtbl->get_Top(This,pl)
518 #define IWebBrowser_put_Top(This,Top) (This)->lpVtbl->put_Top(This,Top)
519 #define IWebBrowser_get_Width(This,pl) (This)->lpVtbl->get_Width(This,pl)
520 #define IWebBrowser_put_Width(This,Width) (This)->lpVtbl->put_Width(This,Width)
521 #define IWebBrowser_get_Height(This,pl) (This)->lpVtbl->get_Height(This,pl)
522 #define IWebBrowser_put_Height(This,Height) (This)->lpVtbl->put_Height(This,Height)
523 #define IWebBrowser_get_LocationName(This,LocationName) (This)->lpVtbl->get_LocationName(This,LocationName)
524 #define IWebBrowser_get_LocationURL(This,LocationURL) (This)->lpVtbl->get_LocationURL(This,LocationURL)
525 #define IWebBrowser_get_Busy(This,pBool) (This)->lpVtbl->get_Busy(This,pBool)
526 #else
527 /*** IUnknown methods ***/
528 static FORCEINLINE HRESULT IWebBrowser_QueryInterface(IWebBrowser* This,REFIID riid,void **ppvObject) {
529     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
530 }
531 static FORCEINLINE ULONG IWebBrowser_AddRef(IWebBrowser* This) {
532     return This->lpVtbl->AddRef(This);
533 }
534 static FORCEINLINE ULONG IWebBrowser_Release(IWebBrowser* This) {
535     return This->lpVtbl->Release(This);
536 }
537 /*** IDispatch methods ***/
538 static FORCEINLINE HRESULT IWebBrowser_GetTypeInfoCount(IWebBrowser* This,UINT *pctinfo) {
539     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
540 }
541 static FORCEINLINE HRESULT IWebBrowser_GetTypeInfo(IWebBrowser* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
542     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
543 }
544 static FORCEINLINE HRESULT IWebBrowser_GetIDsOfNames(IWebBrowser* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
545     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
546 }
547 static FORCEINLINE HRESULT IWebBrowser_Invoke(IWebBrowser* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
548     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
549 }
550 /*** IWebBrowser methods ***/
551 static FORCEINLINE HRESULT IWebBrowser_GoBack(IWebBrowser* This) {
552     return This->lpVtbl->GoBack(This);
553 }
554 static FORCEINLINE HRESULT IWebBrowser_GoForward(IWebBrowser* This) {
555     return This->lpVtbl->GoForward(This);
556 }
557 static FORCEINLINE HRESULT IWebBrowser_GoHome(IWebBrowser* This) {
558     return This->lpVtbl->GoHome(This);
559 }
560 static FORCEINLINE HRESULT IWebBrowser_GoSearch(IWebBrowser* This) {
561     return This->lpVtbl->GoSearch(This);
562 }
563 static FORCEINLINE HRESULT IWebBrowser_Navigate(IWebBrowser* This,BSTR URL,VARIANT *Flags,VARIANT *TargetFrameName,VARIANT *PostData,VARIANT *Headers) {
564     return This->lpVtbl->Navigate(This,URL,Flags,TargetFrameName,PostData,Headers);
565 }
566 static FORCEINLINE HRESULT IWebBrowser_Refresh(IWebBrowser* This) {
567     return This->lpVtbl->Refresh(This);
568 }
569 static FORCEINLINE HRESULT IWebBrowser_Refresh2(IWebBrowser* This,VARIANT *Level) {
570     return This->lpVtbl->Refresh2(This,Level);
571 }
572 static FORCEINLINE HRESULT IWebBrowser_Stop(IWebBrowser* This) {
573     return This->lpVtbl->Stop(This);
574 }
575 static FORCEINLINE HRESULT IWebBrowser_get_Application(IWebBrowser* This,IDispatch **ppDisp) {
576     return This->lpVtbl->get_Application(This,ppDisp);
577 }
578 static FORCEINLINE HRESULT IWebBrowser_get_Parent(IWebBrowser* This,IDispatch **ppDisp) {
579     return This->lpVtbl->get_Parent(This,ppDisp);
580 }
581 static FORCEINLINE HRESULT IWebBrowser_get_Container(IWebBrowser* This,IDispatch **ppDisp) {
582     return This->lpVtbl->get_Container(This,ppDisp);
583 }
584 static FORCEINLINE HRESULT IWebBrowser_get_Document(IWebBrowser* This,IDispatch **ppDisp) {
585     return This->lpVtbl->get_Document(This,ppDisp);
586 }
587 static FORCEINLINE HRESULT IWebBrowser_get_TopLevelContainer(IWebBrowser* This,VARIANT_BOOL *pBool) {
588     return This->lpVtbl->get_TopLevelContainer(This,pBool);
589 }
590 static FORCEINLINE HRESULT IWebBrowser_get_Type(IWebBrowser* This,BSTR *Type) {
591     return This->lpVtbl->get_Type(This,Type);
592 }
593 static FORCEINLINE HRESULT IWebBrowser_get_Left(IWebBrowser* This,LONG *pl) {
594     return This->lpVtbl->get_Left(This,pl);
595 }
596 static FORCEINLINE HRESULT IWebBrowser_put_Left(IWebBrowser* This,LONG Left) {
597     return This->lpVtbl->put_Left(This,Left);
598 }
599 static FORCEINLINE HRESULT IWebBrowser_get_Top(IWebBrowser* This,LONG *pl) {
600     return This->lpVtbl->get_Top(This,pl);
601 }
602 static FORCEINLINE HRESULT IWebBrowser_put_Top(IWebBrowser* This,LONG Top) {
603     return This->lpVtbl->put_Top(This,Top);
604 }
605 static FORCEINLINE HRESULT IWebBrowser_get_Width(IWebBrowser* This,LONG *pl) {
606     return This->lpVtbl->get_Width(This,pl);
607 }
608 static FORCEINLINE HRESULT IWebBrowser_put_Width(IWebBrowser* This,LONG Width) {
609     return This->lpVtbl->put_Width(This,Width);
610 }
611 static FORCEINLINE HRESULT IWebBrowser_get_Height(IWebBrowser* This,LONG *pl) {
612     return This->lpVtbl->get_Height(This,pl);
613 }
614 static FORCEINLINE HRESULT IWebBrowser_put_Height(IWebBrowser* This,LONG Height) {
615     return This->lpVtbl->put_Height(This,Height);
616 }
617 static FORCEINLINE HRESULT IWebBrowser_get_LocationName(IWebBrowser* This,BSTR *LocationName) {
618     return This->lpVtbl->get_LocationName(This,LocationName);
619 }
620 static FORCEINLINE HRESULT IWebBrowser_get_LocationURL(IWebBrowser* This,BSTR *LocationURL) {
621     return This->lpVtbl->get_LocationURL(This,LocationURL);
622 }
623 static FORCEINLINE HRESULT IWebBrowser_get_Busy(IWebBrowser* This,VARIANT_BOOL *pBool) {
624     return This->lpVtbl->get_Busy(This,pBool);
625 }
626 #endif
627 #endif
628 
629 #endif
630 
631 HRESULT STDMETHODCALLTYPE IWebBrowser_GoBack_Proxy(
632     IWebBrowser* This);
633 void __RPC_STUB IWebBrowser_GoBack_Stub(
634     IRpcStubBuffer* This,
635     IRpcChannelBuffer* pRpcChannelBuffer,
636     PRPC_MESSAGE pRpcMessage,
637     DWORD* pdwStubPhase);
638 HRESULT STDMETHODCALLTYPE IWebBrowser_GoForward_Proxy(
639     IWebBrowser* This);
640 void __RPC_STUB IWebBrowser_GoForward_Stub(
641     IRpcStubBuffer* This,
642     IRpcChannelBuffer* pRpcChannelBuffer,
643     PRPC_MESSAGE pRpcMessage,
644     DWORD* pdwStubPhase);
645 HRESULT STDMETHODCALLTYPE IWebBrowser_GoHome_Proxy(
646     IWebBrowser* This);
647 void __RPC_STUB IWebBrowser_GoHome_Stub(
648     IRpcStubBuffer* This,
649     IRpcChannelBuffer* pRpcChannelBuffer,
650     PRPC_MESSAGE pRpcMessage,
651     DWORD* pdwStubPhase);
652 HRESULT STDMETHODCALLTYPE IWebBrowser_GoSearch_Proxy(
653     IWebBrowser* This);
654 void __RPC_STUB IWebBrowser_GoSearch_Stub(
655     IRpcStubBuffer* This,
656     IRpcChannelBuffer* pRpcChannelBuffer,
657     PRPC_MESSAGE pRpcMessage,
658     DWORD* pdwStubPhase);
659 HRESULT STDMETHODCALLTYPE IWebBrowser_Navigate_Proxy(
660     IWebBrowser* This,
661     BSTR URL,
662     VARIANT *Flags,
663     VARIANT *TargetFrameName,
664     VARIANT *PostData,
665     VARIANT *Headers);
666 void __RPC_STUB IWebBrowser_Navigate_Stub(
667     IRpcStubBuffer* This,
668     IRpcChannelBuffer* pRpcChannelBuffer,
669     PRPC_MESSAGE pRpcMessage,
670     DWORD* pdwStubPhase);
671 HRESULT STDMETHODCALLTYPE IWebBrowser_Refresh_Proxy(
672     IWebBrowser* This);
673 void __RPC_STUB IWebBrowser_Refresh_Stub(
674     IRpcStubBuffer* This,
675     IRpcChannelBuffer* pRpcChannelBuffer,
676     PRPC_MESSAGE pRpcMessage,
677     DWORD* pdwStubPhase);
678 HRESULT STDMETHODCALLTYPE IWebBrowser_Refresh2_Proxy(
679     IWebBrowser* This,
680     VARIANT *Level);
681 void __RPC_STUB IWebBrowser_Refresh2_Stub(
682     IRpcStubBuffer* This,
683     IRpcChannelBuffer* pRpcChannelBuffer,
684     PRPC_MESSAGE pRpcMessage,
685     DWORD* pdwStubPhase);
686 HRESULT STDMETHODCALLTYPE IWebBrowser_Stop_Proxy(
687     IWebBrowser* This);
688 void __RPC_STUB IWebBrowser_Stop_Stub(
689     IRpcStubBuffer* This,
690     IRpcChannelBuffer* pRpcChannelBuffer,
691     PRPC_MESSAGE pRpcMessage,
692     DWORD* pdwStubPhase);
693 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Application_Proxy(
694     IWebBrowser* This,
695     IDispatch **ppDisp);
696 void __RPC_STUB IWebBrowser_get_Application_Stub(
697     IRpcStubBuffer* This,
698     IRpcChannelBuffer* pRpcChannelBuffer,
699     PRPC_MESSAGE pRpcMessage,
700     DWORD* pdwStubPhase);
701 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Parent_Proxy(
702     IWebBrowser* This,
703     IDispatch **ppDisp);
704 void __RPC_STUB IWebBrowser_get_Parent_Stub(
705     IRpcStubBuffer* This,
706     IRpcChannelBuffer* pRpcChannelBuffer,
707     PRPC_MESSAGE pRpcMessage,
708     DWORD* pdwStubPhase);
709 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Container_Proxy(
710     IWebBrowser* This,
711     IDispatch **ppDisp);
712 void __RPC_STUB IWebBrowser_get_Container_Stub(
713     IRpcStubBuffer* This,
714     IRpcChannelBuffer* pRpcChannelBuffer,
715     PRPC_MESSAGE pRpcMessage,
716     DWORD* pdwStubPhase);
717 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Document_Proxy(
718     IWebBrowser* This,
719     IDispatch **ppDisp);
720 void __RPC_STUB IWebBrowser_get_Document_Stub(
721     IRpcStubBuffer* This,
722     IRpcChannelBuffer* pRpcChannelBuffer,
723     PRPC_MESSAGE pRpcMessage,
724     DWORD* pdwStubPhase);
725 HRESULT STDMETHODCALLTYPE IWebBrowser_get_TopLevelContainer_Proxy(
726     IWebBrowser* This,
727     VARIANT_BOOL *pBool);
728 void __RPC_STUB IWebBrowser_get_TopLevelContainer_Stub(
729     IRpcStubBuffer* This,
730     IRpcChannelBuffer* pRpcChannelBuffer,
731     PRPC_MESSAGE pRpcMessage,
732     DWORD* pdwStubPhase);
733 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Type_Proxy(
734     IWebBrowser* This,
735     BSTR *Type);
736 void __RPC_STUB IWebBrowser_get_Type_Stub(
737     IRpcStubBuffer* This,
738     IRpcChannelBuffer* pRpcChannelBuffer,
739     PRPC_MESSAGE pRpcMessage,
740     DWORD* pdwStubPhase);
741 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Left_Proxy(
742     IWebBrowser* This,
743     LONG *pl);
744 void __RPC_STUB IWebBrowser_get_Left_Stub(
745     IRpcStubBuffer* This,
746     IRpcChannelBuffer* pRpcChannelBuffer,
747     PRPC_MESSAGE pRpcMessage,
748     DWORD* pdwStubPhase);
749 HRESULT STDMETHODCALLTYPE IWebBrowser_put_Left_Proxy(
750     IWebBrowser* This,
751     LONG Left);
752 void __RPC_STUB IWebBrowser_put_Left_Stub(
753     IRpcStubBuffer* This,
754     IRpcChannelBuffer* pRpcChannelBuffer,
755     PRPC_MESSAGE pRpcMessage,
756     DWORD* pdwStubPhase);
757 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Top_Proxy(
758     IWebBrowser* This,
759     LONG *pl);
760 void __RPC_STUB IWebBrowser_get_Top_Stub(
761     IRpcStubBuffer* This,
762     IRpcChannelBuffer* pRpcChannelBuffer,
763     PRPC_MESSAGE pRpcMessage,
764     DWORD* pdwStubPhase);
765 HRESULT STDMETHODCALLTYPE IWebBrowser_put_Top_Proxy(
766     IWebBrowser* This,
767     LONG Top);
768 void __RPC_STUB IWebBrowser_put_Top_Stub(
769     IRpcStubBuffer* This,
770     IRpcChannelBuffer* pRpcChannelBuffer,
771     PRPC_MESSAGE pRpcMessage,
772     DWORD* pdwStubPhase);
773 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Width_Proxy(
774     IWebBrowser* This,
775     LONG *pl);
776 void __RPC_STUB IWebBrowser_get_Width_Stub(
777     IRpcStubBuffer* This,
778     IRpcChannelBuffer* pRpcChannelBuffer,
779     PRPC_MESSAGE pRpcMessage,
780     DWORD* pdwStubPhase);
781 HRESULT STDMETHODCALLTYPE IWebBrowser_put_Width_Proxy(
782     IWebBrowser* This,
783     LONG Width);
784 void __RPC_STUB IWebBrowser_put_Width_Stub(
785     IRpcStubBuffer* This,
786     IRpcChannelBuffer* pRpcChannelBuffer,
787     PRPC_MESSAGE pRpcMessage,
788     DWORD* pdwStubPhase);
789 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Height_Proxy(
790     IWebBrowser* This,
791     LONG *pl);
792 void __RPC_STUB IWebBrowser_get_Height_Stub(
793     IRpcStubBuffer* This,
794     IRpcChannelBuffer* pRpcChannelBuffer,
795     PRPC_MESSAGE pRpcMessage,
796     DWORD* pdwStubPhase);
797 HRESULT STDMETHODCALLTYPE IWebBrowser_put_Height_Proxy(
798     IWebBrowser* This,
799     LONG Height);
800 void __RPC_STUB IWebBrowser_put_Height_Stub(
801     IRpcStubBuffer* This,
802     IRpcChannelBuffer* pRpcChannelBuffer,
803     PRPC_MESSAGE pRpcMessage,
804     DWORD* pdwStubPhase);
805 HRESULT STDMETHODCALLTYPE IWebBrowser_get_LocationName_Proxy(
806     IWebBrowser* This,
807     BSTR *LocationName);
808 void __RPC_STUB IWebBrowser_get_LocationName_Stub(
809     IRpcStubBuffer* This,
810     IRpcChannelBuffer* pRpcChannelBuffer,
811     PRPC_MESSAGE pRpcMessage,
812     DWORD* pdwStubPhase);
813 HRESULT STDMETHODCALLTYPE IWebBrowser_get_LocationURL_Proxy(
814     IWebBrowser* This,
815     BSTR *LocationURL);
816 void __RPC_STUB IWebBrowser_get_LocationURL_Stub(
817     IRpcStubBuffer* This,
818     IRpcChannelBuffer* pRpcChannelBuffer,
819     PRPC_MESSAGE pRpcMessage,
820     DWORD* pdwStubPhase);
821 HRESULT STDMETHODCALLTYPE IWebBrowser_get_Busy_Proxy(
822     IWebBrowser* This,
823     VARIANT_BOOL *pBool);
824 void __RPC_STUB IWebBrowser_get_Busy_Stub(
825     IRpcStubBuffer* This,
826     IRpcChannelBuffer* pRpcChannelBuffer,
827     PRPC_MESSAGE pRpcMessage,
828     DWORD* pdwStubPhase);
829 
830 #endif  /* __IWebBrowser_INTERFACE_DEFINED__ */
831 
832 /*****************************************************************************
833  * DWebBrowserEvents dispinterface
834  */
835 #ifndef __DWebBrowserEvents_DISPINTERFACE_DEFINED__
836 #define __DWebBrowserEvents_DISPINTERFACE_DEFINED__
837 
838 DEFINE_GUID(DIID_DWebBrowserEvents, 0xeab22ac2, 0x30c1, 0x11cf, 0xa7,0xeb, 0x00,0x00,0xc0,0x5b,0xae,0x0b);
839 #if defined(__cplusplus) && !defined(CINTERFACE)
840 MIDL_INTERFACE("eab22ac2-30c1-11cf-a7eb-0000c05bae0b")
841 DWebBrowserEvents : public IDispatch
842 {
843 };
844 #ifdef __CRT_UUID_DECL
845 __CRT_UUID_DECL(DWebBrowserEvents, 0xeab22ac2, 0x30c1, 0x11cf, 0xa7,0xeb, 0x00,0x00,0xc0,0x5b,0xae,0x0b)
846 #endif
847 #else
848 typedef struct DWebBrowserEventsVtbl {
849     BEGIN_INTERFACE
850 
851     /*** IUnknown methods ***/
852     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
853         DWebBrowserEvents* This,
854         REFIID riid,
855         void **ppvObject);
856 
857     ULONG (STDMETHODCALLTYPE *AddRef)(
858         DWebBrowserEvents* This);
859 
860     ULONG (STDMETHODCALLTYPE *Release)(
861         DWebBrowserEvents* This);
862 
863     /*** IDispatch methods ***/
864     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
865         DWebBrowserEvents* This,
866         UINT *pctinfo);
867 
868     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
869         DWebBrowserEvents* This,
870         UINT iTInfo,
871         LCID lcid,
872         ITypeInfo **ppTInfo);
873 
874     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
875         DWebBrowserEvents* This,
876         REFIID riid,
877         LPOLESTR *rgszNames,
878         UINT cNames,
879         LCID lcid,
880         DISPID *rgDispId);
881 
882     HRESULT (STDMETHODCALLTYPE *Invoke)(
883         DWebBrowserEvents* This,
884         DISPID dispIdMember,
885         REFIID riid,
886         LCID lcid,
887         WORD wFlags,
888         DISPPARAMS *pDispParams,
889         VARIANT *pVarResult,
890         EXCEPINFO *pExcepInfo,
891         UINT *puArgErr);
892 
893     END_INTERFACE
894 } DWebBrowserEventsVtbl;
895 interface DWebBrowserEvents {
896     CONST_VTBL DWebBrowserEventsVtbl* lpVtbl;
897 };
898 
899 #ifdef COBJMACROS
900 #ifndef WIDL_C_INLINE_WRAPPERS
901 /*** IUnknown methods ***/
902 #define DWebBrowserEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
903 #define DWebBrowserEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
904 #define DWebBrowserEvents_Release(This) (This)->lpVtbl->Release(This)
905 /*** IDispatch methods ***/
906 #define DWebBrowserEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
907 #define DWebBrowserEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
908 #define DWebBrowserEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
909 #define DWebBrowserEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
910 #else
911 /*** IUnknown methods ***/
912 static FORCEINLINE HRESULT DWebBrowserEvents_QueryInterface(DWebBrowserEvents* This,REFIID riid,void **ppvObject) {
913     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
914 }
915 static FORCEINLINE ULONG DWebBrowserEvents_AddRef(DWebBrowserEvents* This) {
916     return This->lpVtbl->AddRef(This);
917 }
918 static FORCEINLINE ULONG DWebBrowserEvents_Release(DWebBrowserEvents* This) {
919     return This->lpVtbl->Release(This);
920 }
921 /*** IDispatch methods ***/
922 static FORCEINLINE HRESULT DWebBrowserEvents_GetTypeInfoCount(DWebBrowserEvents* This,UINT *pctinfo) {
923     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
924 }
925 static FORCEINLINE HRESULT DWebBrowserEvents_GetTypeInfo(DWebBrowserEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
926     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
927 }
928 static FORCEINLINE HRESULT DWebBrowserEvents_GetIDsOfNames(DWebBrowserEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
929     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
930 }
931 static FORCEINLINE HRESULT DWebBrowserEvents_Invoke(DWebBrowserEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
932     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
933 }
934 #endif
935 #endif
936 
937 #endif
938 
939 #endif  /* __DWebBrowserEvents_DISPINTERFACE_DEFINED__ */
940 
941 typedef enum CommandStateChangeConstants {
942     CSC_UPDATECOMMANDS = -1,
943     CSC_NAVIGATEFORWARD = 1,
944     CSC_NAVIGATEBACK = 2
945 } CommandStateChangeConstants;
946 /*****************************************************************************
947  * IWebBrowserApp interface
948  */
949 #ifndef __IWebBrowserApp_INTERFACE_DEFINED__
950 #define __IWebBrowserApp_INTERFACE_DEFINED__
951 
952 DEFINE_GUID(IID_IWebBrowserApp, 0x0002df05, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
953 #if defined(__cplusplus) && !defined(CINTERFACE)
954 MIDL_INTERFACE("0002df05-0000-0000-c000-000000000046")
955 IWebBrowserApp : public IWebBrowser
956 {
957     virtual HRESULT STDMETHODCALLTYPE Quit(
958         ) = 0;
959 
960     virtual HRESULT STDMETHODCALLTYPE ClientToWindow(
961         int *pcx,
962         int *pcy) = 0;
963 
964     virtual HRESULT STDMETHODCALLTYPE PutProperty(
965         BSTR Property,
966         VARIANT vtValue) = 0;
967 
968     virtual HRESULT STDMETHODCALLTYPE GetProperty(
969         BSTR Property,
970         VARIANT *pvtValue) = 0;
971 
972     virtual HRESULT STDMETHODCALLTYPE get_Name(
973         BSTR *Name) = 0;
974 
975     virtual HRESULT STDMETHODCALLTYPE get_HWND(
976         SHANDLE_PTR *pHWND) = 0;
977 
978     virtual HRESULT STDMETHODCALLTYPE get_FullName(
979         BSTR *FullName) = 0;
980 
981     virtual HRESULT STDMETHODCALLTYPE get_Path(
982         BSTR *Path) = 0;
983 
984     virtual HRESULT STDMETHODCALLTYPE get_Visible(
985         VARIANT_BOOL *pBool) = 0;
986 
987     virtual HRESULT STDMETHODCALLTYPE put_Visible(
988         VARIANT_BOOL Value) = 0;
989 
990     virtual HRESULT STDMETHODCALLTYPE get_StatusBar(
991         VARIANT_BOOL *pBool) = 0;
992 
993     virtual HRESULT STDMETHODCALLTYPE put_StatusBar(
994         VARIANT_BOOL Value) = 0;
995 
996     virtual HRESULT STDMETHODCALLTYPE get_StatusText(
997         BSTR *StatusText) = 0;
998 
999     virtual HRESULT STDMETHODCALLTYPE put_StatusText(
1000         BSTR StatusText) = 0;
1001 
1002     virtual HRESULT STDMETHODCALLTYPE get_ToolBar(
1003         int *Value) = 0;
1004 
1005     virtual HRESULT STDMETHODCALLTYPE put_ToolBar(
1006         int Value) = 0;
1007 
1008     virtual HRESULT STDMETHODCALLTYPE get_MenuBar(
1009         VARIANT_BOOL *Value) = 0;
1010 
1011     virtual HRESULT STDMETHODCALLTYPE put_MenuBar(
1012         VARIANT_BOOL Value) = 0;
1013 
1014     virtual HRESULT STDMETHODCALLTYPE get_FullScreen(
1015         VARIANT_BOOL *pbFullScreen) = 0;
1016 
1017     virtual HRESULT STDMETHODCALLTYPE put_FullScreen(
1018         VARIANT_BOOL bFullScreen) = 0;
1019 
1020 };
1021 #ifdef __CRT_UUID_DECL
1022 __CRT_UUID_DECL(IWebBrowserApp, 0x0002df05, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
1023 #endif
1024 #else
1025 typedef struct IWebBrowserAppVtbl {
1026     BEGIN_INTERFACE
1027 
1028     /*** IUnknown methods ***/
1029     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1030         IWebBrowserApp* This,
1031         REFIID riid,
1032         void **ppvObject);
1033 
1034     ULONG (STDMETHODCALLTYPE *AddRef)(
1035         IWebBrowserApp* This);
1036 
1037     ULONG (STDMETHODCALLTYPE *Release)(
1038         IWebBrowserApp* This);
1039 
1040     /*** IDispatch methods ***/
1041     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1042         IWebBrowserApp* This,
1043         UINT *pctinfo);
1044 
1045     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1046         IWebBrowserApp* This,
1047         UINT iTInfo,
1048         LCID lcid,
1049         ITypeInfo **ppTInfo);
1050 
1051     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1052         IWebBrowserApp* This,
1053         REFIID riid,
1054         LPOLESTR *rgszNames,
1055         UINT cNames,
1056         LCID lcid,
1057         DISPID *rgDispId);
1058 
1059     HRESULT (STDMETHODCALLTYPE *Invoke)(
1060         IWebBrowserApp* This,
1061         DISPID dispIdMember,
1062         REFIID riid,
1063         LCID lcid,
1064         WORD wFlags,
1065         DISPPARAMS *pDispParams,
1066         VARIANT *pVarResult,
1067         EXCEPINFO *pExcepInfo,
1068         UINT *puArgErr);
1069 
1070     /*** IWebBrowser methods ***/
1071     HRESULT (STDMETHODCALLTYPE *GoBack)(
1072         IWebBrowserApp* This);
1073 
1074     HRESULT (STDMETHODCALLTYPE *GoForward)(
1075         IWebBrowserApp* This);
1076 
1077     HRESULT (STDMETHODCALLTYPE *GoHome)(
1078         IWebBrowserApp* This);
1079 
1080     HRESULT (STDMETHODCALLTYPE *GoSearch)(
1081         IWebBrowserApp* This);
1082 
1083     HRESULT (STDMETHODCALLTYPE *Navigate)(
1084         IWebBrowserApp* This,
1085         BSTR URL,
1086         VARIANT *Flags,
1087         VARIANT *TargetFrameName,
1088         VARIANT *PostData,
1089         VARIANT *Headers);
1090 
1091     HRESULT (STDMETHODCALLTYPE *Refresh)(
1092         IWebBrowserApp* This);
1093 
1094     HRESULT (STDMETHODCALLTYPE *Refresh2)(
1095         IWebBrowserApp* This,
1096         VARIANT *Level);
1097 
1098     HRESULT (STDMETHODCALLTYPE *Stop)(
1099         IWebBrowserApp* This);
1100 
1101     HRESULT (STDMETHODCALLTYPE *get_Application)(
1102         IWebBrowserApp* This,
1103         IDispatch **ppDisp);
1104 
1105     HRESULT (STDMETHODCALLTYPE *get_Parent)(
1106         IWebBrowserApp* This,
1107         IDispatch **ppDisp);
1108 
1109     HRESULT (STDMETHODCALLTYPE *get_Container)(
1110         IWebBrowserApp* This,
1111         IDispatch **ppDisp);
1112 
1113     HRESULT (STDMETHODCALLTYPE *get_Document)(
1114         IWebBrowserApp* This,
1115         IDispatch **ppDisp);
1116 
1117     HRESULT (STDMETHODCALLTYPE *get_TopLevelContainer)(
1118         IWebBrowserApp* This,
1119         VARIANT_BOOL *pBool);
1120 
1121     HRESULT (STDMETHODCALLTYPE *get_Type)(
1122         IWebBrowserApp* This,
1123         BSTR *Type);
1124 
1125     HRESULT (STDMETHODCALLTYPE *get_Left)(
1126         IWebBrowserApp* This,
1127         LONG *pl);
1128 
1129     HRESULT (STDMETHODCALLTYPE *put_Left)(
1130         IWebBrowserApp* This,
1131         LONG Left);
1132 
1133     HRESULT (STDMETHODCALLTYPE *get_Top)(
1134         IWebBrowserApp* This,
1135         LONG *pl);
1136 
1137     HRESULT (STDMETHODCALLTYPE *put_Top)(
1138         IWebBrowserApp* This,
1139         LONG Top);
1140 
1141     HRESULT (STDMETHODCALLTYPE *get_Width)(
1142         IWebBrowserApp* This,
1143         LONG *pl);
1144 
1145     HRESULT (STDMETHODCALLTYPE *put_Width)(
1146         IWebBrowserApp* This,
1147         LONG Width);
1148 
1149     HRESULT (STDMETHODCALLTYPE *get_Height)(
1150         IWebBrowserApp* This,
1151         LONG *pl);
1152 
1153     HRESULT (STDMETHODCALLTYPE *put_Height)(
1154         IWebBrowserApp* This,
1155         LONG Height);
1156 
1157     HRESULT (STDMETHODCALLTYPE *get_LocationName)(
1158         IWebBrowserApp* This,
1159         BSTR *LocationName);
1160 
1161     HRESULT (STDMETHODCALLTYPE *get_LocationURL)(
1162         IWebBrowserApp* This,
1163         BSTR *LocationURL);
1164 
1165     HRESULT (STDMETHODCALLTYPE *get_Busy)(
1166         IWebBrowserApp* This,
1167         VARIANT_BOOL *pBool);
1168 
1169     /*** IWebBrowserApp methods ***/
1170     HRESULT (STDMETHODCALLTYPE *Quit)(
1171         IWebBrowserApp* This);
1172 
1173     HRESULT (STDMETHODCALLTYPE *ClientToWindow)(
1174         IWebBrowserApp* This,
1175         int *pcx,
1176         int *pcy);
1177 
1178     HRESULT (STDMETHODCALLTYPE *PutProperty)(
1179         IWebBrowserApp* This,
1180         BSTR Property,
1181         VARIANT vtValue);
1182 
1183     HRESULT (STDMETHODCALLTYPE *GetProperty)(
1184         IWebBrowserApp* This,
1185         BSTR Property,
1186         VARIANT *pvtValue);
1187 
1188     HRESULT (STDMETHODCALLTYPE *get_Name)(
1189         IWebBrowserApp* This,
1190         BSTR *Name);
1191 
1192     HRESULT (STDMETHODCALLTYPE *get_HWND)(
1193         IWebBrowserApp* This,
1194         SHANDLE_PTR *pHWND);
1195 
1196     HRESULT (STDMETHODCALLTYPE *get_FullName)(
1197         IWebBrowserApp* This,
1198         BSTR *FullName);
1199 
1200     HRESULT (STDMETHODCALLTYPE *get_Path)(
1201         IWebBrowserApp* This,
1202         BSTR *Path);
1203 
1204     HRESULT (STDMETHODCALLTYPE *get_Visible)(
1205         IWebBrowserApp* This,
1206         VARIANT_BOOL *pBool);
1207 
1208     HRESULT (STDMETHODCALLTYPE *put_Visible)(
1209         IWebBrowserApp* This,
1210         VARIANT_BOOL Value);
1211 
1212     HRESULT (STDMETHODCALLTYPE *get_StatusBar)(
1213         IWebBrowserApp* This,
1214         VARIANT_BOOL *pBool);
1215 
1216     HRESULT (STDMETHODCALLTYPE *put_StatusBar)(
1217         IWebBrowserApp* This,
1218         VARIANT_BOOL Value);
1219 
1220     HRESULT (STDMETHODCALLTYPE *get_StatusText)(
1221         IWebBrowserApp* This,
1222         BSTR *StatusText);
1223 
1224     HRESULT (STDMETHODCALLTYPE *put_StatusText)(
1225         IWebBrowserApp* This,
1226         BSTR StatusText);
1227 
1228     HRESULT (STDMETHODCALLTYPE *get_ToolBar)(
1229         IWebBrowserApp* This,
1230         int *Value);
1231 
1232     HRESULT (STDMETHODCALLTYPE *put_ToolBar)(
1233         IWebBrowserApp* This,
1234         int Value);
1235 
1236     HRESULT (STDMETHODCALLTYPE *get_MenuBar)(
1237         IWebBrowserApp* This,
1238         VARIANT_BOOL *Value);
1239 
1240     HRESULT (STDMETHODCALLTYPE *put_MenuBar)(
1241         IWebBrowserApp* This,
1242         VARIANT_BOOL Value);
1243 
1244     HRESULT (STDMETHODCALLTYPE *get_FullScreen)(
1245         IWebBrowserApp* This,
1246         VARIANT_BOOL *pbFullScreen);
1247 
1248     HRESULT (STDMETHODCALLTYPE *put_FullScreen)(
1249         IWebBrowserApp* This,
1250         VARIANT_BOOL bFullScreen);
1251 
1252     END_INTERFACE
1253 } IWebBrowserAppVtbl;
1254 interface IWebBrowserApp {
1255     CONST_VTBL IWebBrowserAppVtbl* lpVtbl;
1256 };
1257 
1258 #ifdef COBJMACROS
1259 #ifndef WIDL_C_INLINE_WRAPPERS
1260 /*** IUnknown methods ***/
1261 #define IWebBrowserApp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1262 #define IWebBrowserApp_AddRef(This) (This)->lpVtbl->AddRef(This)
1263 #define IWebBrowserApp_Release(This) (This)->lpVtbl->Release(This)
1264 /*** IDispatch methods ***/
1265 #define IWebBrowserApp_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1266 #define IWebBrowserApp_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1267 #define IWebBrowserApp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1268 #define IWebBrowserApp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1269 /*** IWebBrowser methods ***/
1270 #define IWebBrowserApp_GoBack(This) (This)->lpVtbl->GoBack(This)
1271 #define IWebBrowserApp_GoForward(This) (This)->lpVtbl->GoForward(This)
1272 #define IWebBrowserApp_GoHome(This) (This)->lpVtbl->GoHome(This)
1273 #define IWebBrowserApp_GoSearch(This) (This)->lpVtbl->GoSearch(This)
1274 #define IWebBrowserApp_Navigate(This,URL,Flags,TargetFrameName,PostData,Headers) (This)->lpVtbl->Navigate(This,URL,Flags,TargetFrameName,PostData,Headers)
1275 #define IWebBrowserApp_Refresh(This) (This)->lpVtbl->Refresh(This)
1276 #define IWebBrowserApp_Refresh2(This,Level) (This)->lpVtbl->Refresh2(This,Level)
1277 #define IWebBrowserApp_Stop(This) (This)->lpVtbl->Stop(This)
1278 #define IWebBrowserApp_get_Application(This,ppDisp) (This)->lpVtbl->get_Application(This,ppDisp)
1279 #define IWebBrowserApp_get_Parent(This,ppDisp) (This)->lpVtbl->get_Parent(This,ppDisp)
1280 #define IWebBrowserApp_get_Container(This,ppDisp) (This)->lpVtbl->get_Container(This,ppDisp)
1281 #define IWebBrowserApp_get_Document(This,ppDisp) (This)->lpVtbl->get_Document(This,ppDisp)
1282 #define IWebBrowserApp_get_TopLevelContainer(This,pBool) (This)->lpVtbl->get_TopLevelContainer(This,pBool)
1283 #define IWebBrowserApp_get_Type(This,Type) (This)->lpVtbl->get_Type(This,Type)
1284 #define IWebBrowserApp_get_Left(This,pl) (This)->lpVtbl->get_Left(This,pl)
1285 #define IWebBrowserApp_put_Left(This,Left) (This)->lpVtbl->put_Left(This,Left)
1286 #define IWebBrowserApp_get_Top(This,pl) (This)->lpVtbl->get_Top(This,pl)
1287 #define IWebBrowserApp_put_Top(This,Top) (This)->lpVtbl->put_Top(This,Top)
1288 #define IWebBrowserApp_get_Width(This,pl) (This)->lpVtbl->get_Width(This,pl)
1289 #define IWebBrowserApp_put_Width(This,Width) (This)->lpVtbl->put_Width(This,Width)
1290 #define IWebBrowserApp_get_Height(This,pl) (This)->lpVtbl->get_Height(This,pl)
1291 #define IWebBrowserApp_put_Height(This,Height) (This)->lpVtbl->put_Height(This,Height)
1292 #define IWebBrowserApp_get_LocationName(This,LocationName) (This)->lpVtbl->get_LocationName(This,LocationName)
1293 #define IWebBrowserApp_get_LocationURL(This,LocationURL) (This)->lpVtbl->get_LocationURL(This,LocationURL)
1294 #define IWebBrowserApp_get_Busy(This,pBool) (This)->lpVtbl->get_Busy(This,pBool)
1295 /*** IWebBrowserApp methods ***/
1296 #define IWebBrowserApp_Quit(This) (This)->lpVtbl->Quit(This)
1297 #define IWebBrowserApp_ClientToWindow(This,pcx,pcy) (This)->lpVtbl->ClientToWindow(This,pcx,pcy)
1298 #define IWebBrowserApp_PutProperty(This,Property,vtValue) (This)->lpVtbl->PutProperty(This,Property,vtValue)
1299 #define IWebBrowserApp_GetProperty(This,Property,pvtValue) (This)->lpVtbl->GetProperty(This,Property,pvtValue)
1300 #define IWebBrowserApp_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
1301 #define IWebBrowserApp_get_HWND(This,pHWND) (This)->lpVtbl->get_HWND(This,pHWND)
1302 #define IWebBrowserApp_get_FullName(This,FullName) (This)->lpVtbl->get_FullName(This,FullName)
1303 #define IWebBrowserApp_get_Path(This,Path) (This)->lpVtbl->get_Path(This,Path)
1304 #define IWebBrowserApp_get_Visible(This,pBool) (This)->lpVtbl->get_Visible(This,pBool)
1305 #define IWebBrowserApp_put_Visible(This,Value) (This)->lpVtbl->put_Visible(This,Value)
1306 #define IWebBrowserApp_get_StatusBar(This,pBool) (This)->lpVtbl->get_StatusBar(This,pBool)
1307 #define IWebBrowserApp_put_StatusBar(This,Value) (This)->lpVtbl->put_StatusBar(This,Value)
1308 #define IWebBrowserApp_get_StatusText(This,StatusText) (This)->lpVtbl->get_StatusText(This,StatusText)
1309 #define IWebBrowserApp_put_StatusText(This,StatusText) (This)->lpVtbl->put_StatusText(This,StatusText)
1310 #define IWebBrowserApp_get_ToolBar(This,Value) (This)->lpVtbl->get_ToolBar(This,Value)
1311 #define IWebBrowserApp_put_ToolBar(This,Value) (This)->lpVtbl->put_ToolBar(This,Value)
1312 #define IWebBrowserApp_get_MenuBar(This,Value) (This)->lpVtbl->get_MenuBar(This,Value)
1313 #define IWebBrowserApp_put_MenuBar(This,Value) (This)->lpVtbl->put_MenuBar(This,Value)
1314 #define IWebBrowserApp_get_FullScreen(This,pbFullScreen) (This)->lpVtbl->get_FullScreen(This,pbFullScreen)
1315 #define IWebBrowserApp_put_FullScreen(This,bFullScreen) (This)->lpVtbl->put_FullScreen(This,bFullScreen)
1316 #else
1317 /*** IUnknown methods ***/
1318 static FORCEINLINE HRESULT IWebBrowserApp_QueryInterface(IWebBrowserApp* This,REFIID riid,void **ppvObject) {
1319     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1320 }
1321 static FORCEINLINE ULONG IWebBrowserApp_AddRef(IWebBrowserApp* This) {
1322     return This->lpVtbl->AddRef(This);
1323 }
1324 static FORCEINLINE ULONG IWebBrowserApp_Release(IWebBrowserApp* This) {
1325     return This->lpVtbl->Release(This);
1326 }
1327 /*** IDispatch methods ***/
1328 static FORCEINLINE HRESULT IWebBrowserApp_GetTypeInfoCount(IWebBrowserApp* This,UINT *pctinfo) {
1329     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1330 }
1331 static FORCEINLINE HRESULT IWebBrowserApp_GetTypeInfo(IWebBrowserApp* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1332     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1333 }
1334 static FORCEINLINE HRESULT IWebBrowserApp_GetIDsOfNames(IWebBrowserApp* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1335     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1336 }
1337 static FORCEINLINE HRESULT IWebBrowserApp_Invoke(IWebBrowserApp* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1338     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1339 }
1340 /*** IWebBrowser methods ***/
1341 static FORCEINLINE HRESULT IWebBrowserApp_GoBack(IWebBrowserApp* This) {
1342     return This->lpVtbl->GoBack(This);
1343 }
1344 static FORCEINLINE HRESULT IWebBrowserApp_GoForward(IWebBrowserApp* This) {
1345     return This->lpVtbl->GoForward(This);
1346 }
1347 static FORCEINLINE HRESULT IWebBrowserApp_GoHome(IWebBrowserApp* This) {
1348     return This->lpVtbl->GoHome(This);
1349 }
1350 static FORCEINLINE HRESULT IWebBrowserApp_GoSearch(IWebBrowserApp* This) {
1351     return This->lpVtbl->GoSearch(This);
1352 }
1353 static FORCEINLINE HRESULT IWebBrowserApp_Navigate(IWebBrowserApp* This,BSTR URL,VARIANT *Flags,VARIANT *TargetFrameName,VARIANT *PostData,VARIANT *Headers) {
1354     return This->lpVtbl->Navigate(This,URL,Flags,TargetFrameName,PostData,Headers);
1355 }
1356 static FORCEINLINE HRESULT IWebBrowserApp_Refresh(IWebBrowserApp* This) {
1357     return This->lpVtbl->Refresh(This);
1358 }
1359 static FORCEINLINE HRESULT IWebBrowserApp_Refresh2(IWebBrowserApp* This,VARIANT *Level) {
1360     return This->lpVtbl->Refresh2(This,Level);
1361 }
1362 static FORCEINLINE HRESULT IWebBrowserApp_Stop(IWebBrowserApp* This) {
1363     return This->lpVtbl->Stop(This);
1364 }
1365 static FORCEINLINE HRESULT IWebBrowserApp_get_Application(IWebBrowserApp* This,IDispatch **ppDisp) {
1366     return This->lpVtbl->get_Application(This,ppDisp);
1367 }
1368 static FORCEINLINE HRESULT IWebBrowserApp_get_Parent(IWebBrowserApp* This,IDispatch **ppDisp) {
1369     return This->lpVtbl->get_Parent(This,ppDisp);
1370 }
1371 static FORCEINLINE HRESULT IWebBrowserApp_get_Container(IWebBrowserApp* This,IDispatch **ppDisp) {
1372     return This->lpVtbl->get_Container(This,ppDisp);
1373 }
1374 static FORCEINLINE HRESULT IWebBrowserApp_get_Document(IWebBrowserApp* This,IDispatch **ppDisp) {
1375     return This->lpVtbl->get_Document(This,ppDisp);
1376 }
1377 static FORCEINLINE HRESULT IWebBrowserApp_get_TopLevelContainer(IWebBrowserApp* This,VARIANT_BOOL *pBool) {
1378     return This->lpVtbl->get_TopLevelContainer(This,pBool);
1379 }
1380 static FORCEINLINE HRESULT IWebBrowserApp_get_Type(IWebBrowserApp* This,BSTR *Type) {
1381     return This->lpVtbl->get_Type(This,Type);
1382 }
1383 static FORCEINLINE HRESULT IWebBrowserApp_get_Left(IWebBrowserApp* This,LONG *pl) {
1384     return This->lpVtbl->get_Left(This,pl);
1385 }
1386 static FORCEINLINE HRESULT IWebBrowserApp_put_Left(IWebBrowserApp* This,LONG Left) {
1387     return This->lpVtbl->put_Left(This,Left);
1388 }
1389 static FORCEINLINE HRESULT IWebBrowserApp_get_Top(IWebBrowserApp* This,LONG *pl) {
1390     return This->lpVtbl->get_Top(This,pl);
1391 }
1392 static FORCEINLINE HRESULT IWebBrowserApp_put_Top(IWebBrowserApp* This,LONG Top) {
1393     return This->lpVtbl->put_Top(This,Top);
1394 }
1395 static FORCEINLINE HRESULT IWebBrowserApp_get_Width(IWebBrowserApp* This,LONG *pl) {
1396     return This->lpVtbl->get_Width(This,pl);
1397 }
1398 static FORCEINLINE HRESULT IWebBrowserApp_put_Width(IWebBrowserApp* This,LONG Width) {
1399     return This->lpVtbl->put_Width(This,Width);
1400 }
1401 static FORCEINLINE HRESULT IWebBrowserApp_get_Height(IWebBrowserApp* This,LONG *pl) {
1402     return This->lpVtbl->get_Height(This,pl);
1403 }
1404 static FORCEINLINE HRESULT IWebBrowserApp_put_Height(IWebBrowserApp* This,LONG Height) {
1405     return This->lpVtbl->put_Height(This,Height);
1406 }
1407 static FORCEINLINE HRESULT IWebBrowserApp_get_LocationName(IWebBrowserApp* This,BSTR *LocationName) {
1408     return This->lpVtbl->get_LocationName(This,LocationName);
1409 }
1410 static FORCEINLINE HRESULT IWebBrowserApp_get_LocationURL(IWebBrowserApp* This,BSTR *LocationURL) {
1411     return This->lpVtbl->get_LocationURL(This,LocationURL);
1412 }
1413 static FORCEINLINE HRESULT IWebBrowserApp_get_Busy(IWebBrowserApp* This,VARIANT_BOOL *pBool) {
1414     return This->lpVtbl->get_Busy(This,pBool);
1415 }
1416 /*** IWebBrowserApp methods ***/
1417 static FORCEINLINE HRESULT IWebBrowserApp_Quit(IWebBrowserApp* This) {
1418     return This->lpVtbl->Quit(This);
1419 }
1420 static FORCEINLINE HRESULT IWebBrowserApp_ClientToWindow(IWebBrowserApp* This,int *pcx,int *pcy) {
1421     return This->lpVtbl->ClientToWindow(This,pcx,pcy);
1422 }
1423 static FORCEINLINE HRESULT IWebBrowserApp_PutProperty(IWebBrowserApp* This,BSTR Property,VARIANT vtValue) {
1424     return This->lpVtbl->PutProperty(This,Property,vtValue);
1425 }
1426 static FORCEINLINE HRESULT IWebBrowserApp_GetProperty(IWebBrowserApp* This,BSTR Property,VARIANT *pvtValue) {
1427     return This->lpVtbl->GetProperty(This,Property,pvtValue);
1428 }
1429 static FORCEINLINE HRESULT IWebBrowserApp_get_Name(IWebBrowserApp* This,BSTR *Name) {
1430     return This->lpVtbl->get_Name(This,Name);
1431 }
1432 static FORCEINLINE HRESULT IWebBrowserApp_get_HWND(IWebBrowserApp* This,SHANDLE_PTR *pHWND) {
1433     return This->lpVtbl->get_HWND(This,pHWND);
1434 }
1435 static FORCEINLINE HRESULT IWebBrowserApp_get_FullName(IWebBrowserApp* This,BSTR *FullName) {
1436     return This->lpVtbl->get_FullName(This,FullName);
1437 }
1438 static FORCEINLINE HRESULT IWebBrowserApp_get_Path(IWebBrowserApp* This,BSTR *Path) {
1439     return This->lpVtbl->get_Path(This,Path);
1440 }
1441 static FORCEINLINE HRESULT IWebBrowserApp_get_Visible(IWebBrowserApp* This,VARIANT_BOOL *pBool) {
1442     return This->lpVtbl->get_Visible(This,pBool);
1443 }
1444 static FORCEINLINE HRESULT IWebBrowserApp_put_Visible(IWebBrowserApp* This,VARIANT_BOOL Value) {
1445     return This->lpVtbl->put_Visible(This,Value);
1446 }
1447 static FORCEINLINE HRESULT IWebBrowserApp_get_StatusBar(IWebBrowserApp* This,VARIANT_BOOL *pBool) {
1448     return This->lpVtbl->get_StatusBar(This,pBool);
1449 }
1450 static FORCEINLINE HRESULT IWebBrowserApp_put_StatusBar(IWebBrowserApp* This,VARIANT_BOOL Value) {
1451     return This->lpVtbl->put_StatusBar(This,Value);
1452 }
1453 static FORCEINLINE HRESULT IWebBrowserApp_get_StatusText(IWebBrowserApp* This,BSTR *StatusText) {
1454     return This->lpVtbl->get_StatusText(This,StatusText);
1455 }
1456 static FORCEINLINE HRESULT IWebBrowserApp_put_StatusText(IWebBrowserApp* This,BSTR StatusText) {
1457     return This->lpVtbl->put_StatusText(This,StatusText);
1458 }
1459 static FORCEINLINE HRESULT IWebBrowserApp_get_ToolBar(IWebBrowserApp* This,int *Value) {
1460     return This->lpVtbl->get_ToolBar(This,Value);
1461 }
1462 static FORCEINLINE HRESULT IWebBrowserApp_put_ToolBar(IWebBrowserApp* This,int Value) {
1463     return This->lpVtbl->put_ToolBar(This,Value);
1464 }
1465 static FORCEINLINE HRESULT IWebBrowserApp_get_MenuBar(IWebBrowserApp* This,VARIANT_BOOL *Value) {
1466     return This->lpVtbl->get_MenuBar(This,Value);
1467 }
1468 static FORCEINLINE HRESULT IWebBrowserApp_put_MenuBar(IWebBrowserApp* This,VARIANT_BOOL Value) {
1469     return This->lpVtbl->put_MenuBar(This,Value);
1470 }
1471 static FORCEINLINE HRESULT IWebBrowserApp_get_FullScreen(IWebBrowserApp* This,VARIANT_BOOL *pbFullScreen) {
1472     return This->lpVtbl->get_FullScreen(This,pbFullScreen);
1473 }
1474 static FORCEINLINE HRESULT IWebBrowserApp_put_FullScreen(IWebBrowserApp* This,VARIANT_BOOL bFullScreen) {
1475     return This->lpVtbl->put_FullScreen(This,bFullScreen);
1476 }
1477 #endif
1478 #endif
1479 
1480 #endif
1481 
1482 HRESULT STDMETHODCALLTYPE IWebBrowserApp_Quit_Proxy(
1483     IWebBrowserApp* This);
1484 void __RPC_STUB IWebBrowserApp_Quit_Stub(
1485     IRpcStubBuffer* This,
1486     IRpcChannelBuffer* pRpcChannelBuffer,
1487     PRPC_MESSAGE pRpcMessage,
1488     DWORD* pdwStubPhase);
1489 HRESULT STDMETHODCALLTYPE IWebBrowserApp_ClientToWindow_Proxy(
1490     IWebBrowserApp* This,
1491     int *pcx,
1492     int *pcy);
1493 void __RPC_STUB IWebBrowserApp_ClientToWindow_Stub(
1494     IRpcStubBuffer* This,
1495     IRpcChannelBuffer* pRpcChannelBuffer,
1496     PRPC_MESSAGE pRpcMessage,
1497     DWORD* pdwStubPhase);
1498 HRESULT STDMETHODCALLTYPE IWebBrowserApp_PutProperty_Proxy(
1499     IWebBrowserApp* This,
1500     BSTR Property,
1501     VARIANT vtValue);
1502 void __RPC_STUB IWebBrowserApp_PutProperty_Stub(
1503     IRpcStubBuffer* This,
1504     IRpcChannelBuffer* pRpcChannelBuffer,
1505     PRPC_MESSAGE pRpcMessage,
1506     DWORD* pdwStubPhase);
1507 HRESULT STDMETHODCALLTYPE IWebBrowserApp_GetProperty_Proxy(
1508     IWebBrowserApp* This,
1509     BSTR Property,
1510     VARIANT *pvtValue);
1511 void __RPC_STUB IWebBrowserApp_GetProperty_Stub(
1512     IRpcStubBuffer* This,
1513     IRpcChannelBuffer* pRpcChannelBuffer,
1514     PRPC_MESSAGE pRpcMessage,
1515     DWORD* pdwStubPhase);
1516 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_Name_Proxy(
1517     IWebBrowserApp* This,
1518     BSTR *Name);
1519 void __RPC_STUB IWebBrowserApp_get_Name_Stub(
1520     IRpcStubBuffer* This,
1521     IRpcChannelBuffer* pRpcChannelBuffer,
1522     PRPC_MESSAGE pRpcMessage,
1523     DWORD* pdwStubPhase);
1524 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_HWND_Proxy(
1525     IWebBrowserApp* This,
1526     SHANDLE_PTR *pHWND);
1527 void __RPC_STUB IWebBrowserApp_get_HWND_Stub(
1528     IRpcStubBuffer* This,
1529     IRpcChannelBuffer* pRpcChannelBuffer,
1530     PRPC_MESSAGE pRpcMessage,
1531     DWORD* pdwStubPhase);
1532 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_FullName_Proxy(
1533     IWebBrowserApp* This,
1534     BSTR *FullName);
1535 void __RPC_STUB IWebBrowserApp_get_FullName_Stub(
1536     IRpcStubBuffer* This,
1537     IRpcChannelBuffer* pRpcChannelBuffer,
1538     PRPC_MESSAGE pRpcMessage,
1539     DWORD* pdwStubPhase);
1540 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_Path_Proxy(
1541     IWebBrowserApp* This,
1542     BSTR *Path);
1543 void __RPC_STUB IWebBrowserApp_get_Path_Stub(
1544     IRpcStubBuffer* This,
1545     IRpcChannelBuffer* pRpcChannelBuffer,
1546     PRPC_MESSAGE pRpcMessage,
1547     DWORD* pdwStubPhase);
1548 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_Visible_Proxy(
1549     IWebBrowserApp* This,
1550     VARIANT_BOOL *pBool);
1551 void __RPC_STUB IWebBrowserApp_get_Visible_Stub(
1552     IRpcStubBuffer* This,
1553     IRpcChannelBuffer* pRpcChannelBuffer,
1554     PRPC_MESSAGE pRpcMessage,
1555     DWORD* pdwStubPhase);
1556 HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_Visible_Proxy(
1557     IWebBrowserApp* This,
1558     VARIANT_BOOL Value);
1559 void __RPC_STUB IWebBrowserApp_put_Visible_Stub(
1560     IRpcStubBuffer* This,
1561     IRpcChannelBuffer* pRpcChannelBuffer,
1562     PRPC_MESSAGE pRpcMessage,
1563     DWORD* pdwStubPhase);
1564 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_StatusBar_Proxy(
1565     IWebBrowserApp* This,
1566     VARIANT_BOOL *pBool);
1567 void __RPC_STUB IWebBrowserApp_get_StatusBar_Stub(
1568     IRpcStubBuffer* This,
1569     IRpcChannelBuffer* pRpcChannelBuffer,
1570     PRPC_MESSAGE pRpcMessage,
1571     DWORD* pdwStubPhase);
1572 HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_StatusBar_Proxy(
1573     IWebBrowserApp* This,
1574     VARIANT_BOOL Value);
1575 void __RPC_STUB IWebBrowserApp_put_StatusBar_Stub(
1576     IRpcStubBuffer* This,
1577     IRpcChannelBuffer* pRpcChannelBuffer,
1578     PRPC_MESSAGE pRpcMessage,
1579     DWORD* pdwStubPhase);
1580 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_StatusText_Proxy(
1581     IWebBrowserApp* This,
1582     BSTR *StatusText);
1583 void __RPC_STUB IWebBrowserApp_get_StatusText_Stub(
1584     IRpcStubBuffer* This,
1585     IRpcChannelBuffer* pRpcChannelBuffer,
1586     PRPC_MESSAGE pRpcMessage,
1587     DWORD* pdwStubPhase);
1588 HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_StatusText_Proxy(
1589     IWebBrowserApp* This,
1590     BSTR StatusText);
1591 void __RPC_STUB IWebBrowserApp_put_StatusText_Stub(
1592     IRpcStubBuffer* This,
1593     IRpcChannelBuffer* pRpcChannelBuffer,
1594     PRPC_MESSAGE pRpcMessage,
1595     DWORD* pdwStubPhase);
1596 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_ToolBar_Proxy(
1597     IWebBrowserApp* This,
1598     int *Value);
1599 void __RPC_STUB IWebBrowserApp_get_ToolBar_Stub(
1600     IRpcStubBuffer* This,
1601     IRpcChannelBuffer* pRpcChannelBuffer,
1602     PRPC_MESSAGE pRpcMessage,
1603     DWORD* pdwStubPhase);
1604 HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_ToolBar_Proxy(
1605     IWebBrowserApp* This,
1606     int Value);
1607 void __RPC_STUB IWebBrowserApp_put_ToolBar_Stub(
1608     IRpcStubBuffer* This,
1609     IRpcChannelBuffer* pRpcChannelBuffer,
1610     PRPC_MESSAGE pRpcMessage,
1611     DWORD* pdwStubPhase);
1612 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_MenuBar_Proxy(
1613     IWebBrowserApp* This,
1614     VARIANT_BOOL *Value);
1615 void __RPC_STUB IWebBrowserApp_get_MenuBar_Stub(
1616     IRpcStubBuffer* This,
1617     IRpcChannelBuffer* pRpcChannelBuffer,
1618     PRPC_MESSAGE pRpcMessage,
1619     DWORD* pdwStubPhase);
1620 HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_MenuBar_Proxy(
1621     IWebBrowserApp* This,
1622     VARIANT_BOOL Value);
1623 void __RPC_STUB IWebBrowserApp_put_MenuBar_Stub(
1624     IRpcStubBuffer* This,
1625     IRpcChannelBuffer* pRpcChannelBuffer,
1626     PRPC_MESSAGE pRpcMessage,
1627     DWORD* pdwStubPhase);
1628 HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_FullScreen_Proxy(
1629     IWebBrowserApp* This,
1630     VARIANT_BOOL *pbFullScreen);
1631 void __RPC_STUB IWebBrowserApp_get_FullScreen_Stub(
1632     IRpcStubBuffer* This,
1633     IRpcChannelBuffer* pRpcChannelBuffer,
1634     PRPC_MESSAGE pRpcMessage,
1635     DWORD* pdwStubPhase);
1636 HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_FullScreen_Proxy(
1637     IWebBrowserApp* This,
1638     VARIANT_BOOL bFullScreen);
1639 void __RPC_STUB IWebBrowserApp_put_FullScreen_Stub(
1640     IRpcStubBuffer* This,
1641     IRpcChannelBuffer* pRpcChannelBuffer,
1642     PRPC_MESSAGE pRpcMessage,
1643     DWORD* pdwStubPhase);
1644 
1645 #endif  /* __IWebBrowserApp_INTERFACE_DEFINED__ */
1646 
1647 /*****************************************************************************
1648  * IWebBrowser2 interface
1649  */
1650 #ifndef __IWebBrowser2_INTERFACE_DEFINED__
1651 #define __IWebBrowser2_INTERFACE_DEFINED__
1652 
1653 DEFINE_GUID(IID_IWebBrowser2, 0xd30c1661, 0xcdaf, 0x11d0, 0x8a,0x3e, 0x00,0xc0,0x4f,0xc9,0xe2,0x6e);
1654 #if defined(__cplusplus) && !defined(CINTERFACE)
1655 MIDL_INTERFACE("d30c1661-cdaf-11d0-8a3e-00c04fc9e26e")
1656 IWebBrowser2 : public IWebBrowserApp
1657 {
1658     virtual HRESULT STDMETHODCALLTYPE Navigate2(
1659         VARIANT *URL,
1660         VARIANT *Flags,
1661         VARIANT *TargetFrameName,
1662         VARIANT *PostData,
1663         VARIANT *Headers) = 0;
1664 
1665     virtual HRESULT STDMETHODCALLTYPE QueryStatusWB(
1666         OLECMDID cmdID,
1667         OLECMDF *pcmdf) = 0;
1668 
1669     virtual HRESULT STDMETHODCALLTYPE ExecWB(
1670         OLECMDID cmdID,
1671         OLECMDEXECOPT cmdexecopt,
1672         VARIANT *pvaIn,
1673         VARIANT *pvaOut) = 0;
1674 
1675     virtual HRESULT STDMETHODCALLTYPE ShowBrowserBar(
1676         VARIANT *pvaClsid,
1677         VARIANT *pvarShow,
1678         VARIANT *pvarSize) = 0;
1679 
1680     virtual HRESULT STDMETHODCALLTYPE get_ReadyState(
1681         READYSTATE *plReadyState) = 0;
1682 
1683     virtual HRESULT STDMETHODCALLTYPE get_Offline(
1684         VARIANT_BOOL *pbOffline) = 0;
1685 
1686     virtual HRESULT STDMETHODCALLTYPE put_Offline(
1687         VARIANT_BOOL bOffline) = 0;
1688 
1689     virtual HRESULT STDMETHODCALLTYPE get_Silent(
1690         VARIANT_BOOL *pbSilent) = 0;
1691 
1692     virtual HRESULT STDMETHODCALLTYPE put_Silent(
1693         VARIANT_BOOL bSilent) = 0;
1694 
1695     virtual HRESULT STDMETHODCALLTYPE get_RegisterAsBrowser(
1696         VARIANT_BOOL *pbRegister) = 0;
1697 
1698     virtual HRESULT STDMETHODCALLTYPE put_RegisterAsBrowser(
1699         VARIANT_BOOL bRegister) = 0;
1700 
1701     virtual HRESULT STDMETHODCALLTYPE get_RegisterAsDropTarget(
1702         VARIANT_BOOL *pbRegister) = 0;
1703 
1704     virtual HRESULT STDMETHODCALLTYPE put_RegisterAsDropTarget(
1705         VARIANT_BOOL bRegister) = 0;
1706 
1707     virtual HRESULT STDMETHODCALLTYPE get_TheaterMode(
1708         VARIANT_BOOL *pbRegister) = 0;
1709 
1710     virtual HRESULT STDMETHODCALLTYPE put_TheaterMode(
1711         VARIANT_BOOL bRegister) = 0;
1712 
1713     virtual HRESULT STDMETHODCALLTYPE get_AddressBar(
1714         VARIANT_BOOL *Value) = 0;
1715 
1716     virtual HRESULT STDMETHODCALLTYPE put_AddressBar(
1717         VARIANT_BOOL Value) = 0;
1718 
1719     virtual HRESULT STDMETHODCALLTYPE get_Resizable(
1720         VARIANT_BOOL *Value) = 0;
1721 
1722     virtual HRESULT STDMETHODCALLTYPE put_Resizable(
1723         VARIANT_BOOL Value) = 0;
1724 
1725 };
1726 #ifdef __CRT_UUID_DECL
1727 __CRT_UUID_DECL(IWebBrowser2, 0xd30c1661, 0xcdaf, 0x11d0, 0x8a,0x3e, 0x00,0xc0,0x4f,0xc9,0xe2,0x6e)
1728 #endif
1729 #else
1730 typedef struct IWebBrowser2Vtbl {
1731     BEGIN_INTERFACE
1732 
1733     /*** IUnknown methods ***/
1734     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1735         IWebBrowser2* This,
1736         REFIID riid,
1737         void **ppvObject);
1738 
1739     ULONG (STDMETHODCALLTYPE *AddRef)(
1740         IWebBrowser2* This);
1741 
1742     ULONG (STDMETHODCALLTYPE *Release)(
1743         IWebBrowser2* This);
1744 
1745     /*** IDispatch methods ***/
1746     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1747         IWebBrowser2* This,
1748         UINT *pctinfo);
1749 
1750     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1751         IWebBrowser2* This,
1752         UINT iTInfo,
1753         LCID lcid,
1754         ITypeInfo **ppTInfo);
1755 
1756     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1757         IWebBrowser2* This,
1758         REFIID riid,
1759         LPOLESTR *rgszNames,
1760         UINT cNames,
1761         LCID lcid,
1762         DISPID *rgDispId);
1763 
1764     HRESULT (STDMETHODCALLTYPE *Invoke)(
1765         IWebBrowser2* This,
1766         DISPID dispIdMember,
1767         REFIID riid,
1768         LCID lcid,
1769         WORD wFlags,
1770         DISPPARAMS *pDispParams,
1771         VARIANT *pVarResult,
1772         EXCEPINFO *pExcepInfo,
1773         UINT *puArgErr);
1774 
1775     /*** IWebBrowser methods ***/
1776     HRESULT (STDMETHODCALLTYPE *GoBack)(
1777         IWebBrowser2* This);
1778 
1779     HRESULT (STDMETHODCALLTYPE *GoForward)(
1780         IWebBrowser2* This);
1781 
1782     HRESULT (STDMETHODCALLTYPE *GoHome)(
1783         IWebBrowser2* This);
1784 
1785     HRESULT (STDMETHODCALLTYPE *GoSearch)(
1786         IWebBrowser2* This);
1787 
1788     HRESULT (STDMETHODCALLTYPE *Navigate)(
1789         IWebBrowser2* This,
1790         BSTR URL,
1791         VARIANT *Flags,
1792         VARIANT *TargetFrameName,
1793         VARIANT *PostData,
1794         VARIANT *Headers);
1795 
1796     HRESULT (STDMETHODCALLTYPE *Refresh)(
1797         IWebBrowser2* This);
1798 
1799     HRESULT (STDMETHODCALLTYPE *Refresh2)(
1800         IWebBrowser2* This,
1801         VARIANT *Level);
1802 
1803     HRESULT (STDMETHODCALLTYPE *Stop)(
1804         IWebBrowser2* This);
1805 
1806     HRESULT (STDMETHODCALLTYPE *get_Application)(
1807         IWebBrowser2* This,
1808         IDispatch **ppDisp);
1809 
1810     HRESULT (STDMETHODCALLTYPE *get_Parent)(
1811         IWebBrowser2* This,
1812         IDispatch **ppDisp);
1813 
1814     HRESULT (STDMETHODCALLTYPE *get_Container)(
1815         IWebBrowser2* This,
1816         IDispatch **ppDisp);
1817 
1818     HRESULT (STDMETHODCALLTYPE *get_Document)(
1819         IWebBrowser2* This,
1820         IDispatch **ppDisp);
1821 
1822     HRESULT (STDMETHODCALLTYPE *get_TopLevelContainer)(
1823         IWebBrowser2* This,
1824         VARIANT_BOOL *pBool);
1825 
1826     HRESULT (STDMETHODCALLTYPE *get_Type)(
1827         IWebBrowser2* This,
1828         BSTR *Type);
1829 
1830     HRESULT (STDMETHODCALLTYPE *get_Left)(
1831         IWebBrowser2* This,
1832         LONG *pl);
1833 
1834     HRESULT (STDMETHODCALLTYPE *put_Left)(
1835         IWebBrowser2* This,
1836         LONG Left);
1837 
1838     HRESULT (STDMETHODCALLTYPE *get_Top)(
1839         IWebBrowser2* This,
1840         LONG *pl);
1841 
1842     HRESULT (STDMETHODCALLTYPE *put_Top)(
1843         IWebBrowser2* This,
1844         LONG Top);
1845 
1846     HRESULT (STDMETHODCALLTYPE *get_Width)(
1847         IWebBrowser2* This,
1848         LONG *pl);
1849 
1850     HRESULT (STDMETHODCALLTYPE *put_Width)(
1851         IWebBrowser2* This,
1852         LONG Width);
1853 
1854     HRESULT (STDMETHODCALLTYPE *get_Height)(
1855         IWebBrowser2* This,
1856         LONG *pl);
1857 
1858     HRESULT (STDMETHODCALLTYPE *put_Height)(
1859         IWebBrowser2* This,
1860         LONG Height);
1861 
1862     HRESULT (STDMETHODCALLTYPE *get_LocationName)(
1863         IWebBrowser2* This,
1864         BSTR *LocationName);
1865 
1866     HRESULT (STDMETHODCALLTYPE *get_LocationURL)(
1867         IWebBrowser2* This,
1868         BSTR *LocationURL);
1869 
1870     HRESULT (STDMETHODCALLTYPE *get_Busy)(
1871         IWebBrowser2* This,
1872         VARIANT_BOOL *pBool);
1873 
1874     /*** IWebBrowserApp methods ***/
1875     HRESULT (STDMETHODCALLTYPE *Quit)(
1876         IWebBrowser2* This);
1877 
1878     HRESULT (STDMETHODCALLTYPE *ClientToWindow)(
1879         IWebBrowser2* This,
1880         int *pcx,
1881         int *pcy);
1882 
1883     HRESULT (STDMETHODCALLTYPE *PutProperty)(
1884         IWebBrowser2* This,
1885         BSTR Property,
1886         VARIANT vtValue);
1887 
1888     HRESULT (STDMETHODCALLTYPE *GetProperty)(
1889         IWebBrowser2* This,
1890         BSTR Property,
1891         VARIANT *pvtValue);
1892 
1893     HRESULT (STDMETHODCALLTYPE *get_Name)(
1894         IWebBrowser2* This,
1895         BSTR *Name);
1896 
1897     HRESULT (STDMETHODCALLTYPE *get_HWND)(
1898         IWebBrowser2* This,
1899         SHANDLE_PTR *pHWND);
1900 
1901     HRESULT (STDMETHODCALLTYPE *get_FullName)(
1902         IWebBrowser2* This,
1903         BSTR *FullName);
1904 
1905     HRESULT (STDMETHODCALLTYPE *get_Path)(
1906         IWebBrowser2* This,
1907         BSTR *Path);
1908 
1909     HRESULT (STDMETHODCALLTYPE *get_Visible)(
1910         IWebBrowser2* This,
1911         VARIANT_BOOL *pBool);
1912 
1913     HRESULT (STDMETHODCALLTYPE *put_Visible)(
1914         IWebBrowser2* This,
1915         VARIANT_BOOL Value);
1916 
1917     HRESULT (STDMETHODCALLTYPE *get_StatusBar)(
1918         IWebBrowser2* This,
1919         VARIANT_BOOL *pBool);
1920 
1921     HRESULT (STDMETHODCALLTYPE *put_StatusBar)(
1922         IWebBrowser2* This,
1923         VARIANT_BOOL Value);
1924 
1925     HRESULT (STDMETHODCALLTYPE *get_StatusText)(
1926         IWebBrowser2* This,
1927         BSTR *StatusText);
1928 
1929     HRESULT (STDMETHODCALLTYPE *put_StatusText)(
1930         IWebBrowser2* This,
1931         BSTR StatusText);
1932 
1933     HRESULT (STDMETHODCALLTYPE *get_ToolBar)(
1934         IWebBrowser2* This,
1935         int *Value);
1936 
1937     HRESULT (STDMETHODCALLTYPE *put_ToolBar)(
1938         IWebBrowser2* This,
1939         int Value);
1940 
1941     HRESULT (STDMETHODCALLTYPE *get_MenuBar)(
1942         IWebBrowser2* This,
1943         VARIANT_BOOL *Value);
1944 
1945     HRESULT (STDMETHODCALLTYPE *put_MenuBar)(
1946         IWebBrowser2* This,
1947         VARIANT_BOOL Value);
1948 
1949     HRESULT (STDMETHODCALLTYPE *get_FullScreen)(
1950         IWebBrowser2* This,
1951         VARIANT_BOOL *pbFullScreen);
1952 
1953     HRESULT (STDMETHODCALLTYPE *put_FullScreen)(
1954         IWebBrowser2* This,
1955         VARIANT_BOOL bFullScreen);
1956 
1957     /*** IWebBrowser2 methods ***/
1958     HRESULT (STDMETHODCALLTYPE *Navigate2)(
1959         IWebBrowser2* This,
1960         VARIANT *URL,
1961         VARIANT *Flags,
1962         VARIANT *TargetFrameName,
1963         VARIANT *PostData,
1964         VARIANT *Headers);
1965 
1966     HRESULT (STDMETHODCALLTYPE *QueryStatusWB)(
1967         IWebBrowser2* This,
1968         OLECMDID cmdID,
1969         OLECMDF *pcmdf);
1970 
1971     HRESULT (STDMETHODCALLTYPE *ExecWB)(
1972         IWebBrowser2* This,
1973         OLECMDID cmdID,
1974         OLECMDEXECOPT cmdexecopt,
1975         VARIANT *pvaIn,
1976         VARIANT *pvaOut);
1977 
1978     HRESULT (STDMETHODCALLTYPE *ShowBrowserBar)(
1979         IWebBrowser2* This,
1980         VARIANT *pvaClsid,
1981         VARIANT *pvarShow,
1982         VARIANT *pvarSize);
1983 
1984     HRESULT (STDMETHODCALLTYPE *get_ReadyState)(
1985         IWebBrowser2* This,
1986         READYSTATE *plReadyState);
1987 
1988     HRESULT (STDMETHODCALLTYPE *get_Offline)(
1989         IWebBrowser2* This,
1990         VARIANT_BOOL *pbOffline);
1991 
1992     HRESULT (STDMETHODCALLTYPE *put_Offline)(
1993         IWebBrowser2* This,
1994         VARIANT_BOOL bOffline);
1995 
1996     HRESULT (STDMETHODCALLTYPE *get_Silent)(
1997         IWebBrowser2* This,
1998         VARIANT_BOOL *pbSilent);
1999 
2000     HRESULT (STDMETHODCALLTYPE *put_Silent)(
2001         IWebBrowser2* This,
2002         VARIANT_BOOL bSilent);
2003 
2004     HRESULT (STDMETHODCALLTYPE *get_RegisterAsBrowser)(
2005         IWebBrowser2* This,
2006         VARIANT_BOOL *pbRegister);
2007 
2008     HRESULT (STDMETHODCALLTYPE *put_RegisterAsBrowser)(
2009         IWebBrowser2* This,
2010         VARIANT_BOOL bRegister);
2011 
2012     HRESULT (STDMETHODCALLTYPE *get_RegisterAsDropTarget)(
2013         IWebBrowser2* This,
2014         VARIANT_BOOL *pbRegister);
2015 
2016     HRESULT (STDMETHODCALLTYPE *put_RegisterAsDropTarget)(
2017         IWebBrowser2* This,
2018         VARIANT_BOOL bRegister);
2019 
2020     HRESULT (STDMETHODCALLTYPE *get_TheaterMode)(
2021         IWebBrowser2* This,
2022         VARIANT_BOOL *pbRegister);
2023 
2024     HRESULT (STDMETHODCALLTYPE *put_TheaterMode)(
2025         IWebBrowser2* This,
2026         VARIANT_BOOL bRegister);
2027 
2028     HRESULT (STDMETHODCALLTYPE *get_AddressBar)(
2029         IWebBrowser2* This,
2030         VARIANT_BOOL *Value);
2031 
2032     HRESULT (STDMETHODCALLTYPE *put_AddressBar)(
2033         IWebBrowser2* This,
2034         VARIANT_BOOL Value);
2035 
2036     HRESULT (STDMETHODCALLTYPE *get_Resizable)(
2037         IWebBrowser2* This,
2038         VARIANT_BOOL *Value);
2039 
2040     HRESULT (STDMETHODCALLTYPE *put_Resizable)(
2041         IWebBrowser2* This,
2042         VARIANT_BOOL Value);
2043 
2044     END_INTERFACE
2045 } IWebBrowser2Vtbl;
2046 interface IWebBrowser2 {
2047     CONST_VTBL IWebBrowser2Vtbl* lpVtbl;
2048 };
2049 
2050 #ifdef COBJMACROS
2051 #ifndef WIDL_C_INLINE_WRAPPERS
2052 /*** IUnknown methods ***/
2053 #define IWebBrowser2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2054 #define IWebBrowser2_AddRef(This) (This)->lpVtbl->AddRef(This)
2055 #define IWebBrowser2_Release(This) (This)->lpVtbl->Release(This)
2056 /*** IDispatch methods ***/
2057 #define IWebBrowser2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2058 #define IWebBrowser2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2059 #define IWebBrowser2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2060 #define IWebBrowser2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2061 /*** IWebBrowser methods ***/
2062 #define IWebBrowser2_GoBack(This) (This)->lpVtbl->GoBack(This)
2063 #define IWebBrowser2_GoForward(This) (This)->lpVtbl->GoForward(This)
2064 #define IWebBrowser2_GoHome(This) (This)->lpVtbl->GoHome(This)
2065 #define IWebBrowser2_GoSearch(This) (This)->lpVtbl->GoSearch(This)
2066 #define IWebBrowser2_Navigate(This,URL,Flags,TargetFrameName,PostData,Headers) (This)->lpVtbl->Navigate(This,URL,Flags,TargetFrameName,PostData,Headers)
2067 #define IWebBrowser2_Refresh(This) (This)->lpVtbl->Refresh(This)
2068 #define IWebBrowser2_Refresh2(This,Level) (This)->lpVtbl->Refresh2(This,Level)
2069 #define IWebBrowser2_Stop(This) (This)->lpVtbl->Stop(This)
2070 #define IWebBrowser2_get_Application(This,ppDisp) (This)->lpVtbl->get_Application(This,ppDisp)
2071 #define IWebBrowser2_get_Parent(This,ppDisp) (This)->lpVtbl->get_Parent(This,ppDisp)
2072 #define IWebBrowser2_get_Container(This,ppDisp) (This)->lpVtbl->get_Container(This,ppDisp)
2073 #define IWebBrowser2_get_Document(This,ppDisp) (This)->lpVtbl->get_Document(This,ppDisp)
2074 #define IWebBrowser2_get_TopLevelContainer(This,pBool) (This)->lpVtbl->get_TopLevelContainer(This,pBool)
2075 #define IWebBrowser2_get_Type(This,Type) (This)->lpVtbl->get_Type(This,Type)
2076 #define IWebBrowser2_get_Left(This,pl) (This)->lpVtbl->get_Left(This,pl)
2077 #define IWebBrowser2_put_Left(This,Left) (This)->lpVtbl->put_Left(This,Left)
2078 #define IWebBrowser2_get_Top(This,pl) (This)->lpVtbl->get_Top(This,pl)
2079 #define IWebBrowser2_put_Top(This,Top) (This)->lpVtbl->put_Top(This,Top)
2080 #define IWebBrowser2_get_Width(This,pl) (This)->lpVtbl->get_Width(This,pl)
2081 #define IWebBrowser2_put_Width(This,Width) (This)->lpVtbl->put_Width(This,Width)
2082 #define IWebBrowser2_get_Height(This,pl) (This)->lpVtbl->get_Height(This,pl)
2083 #define IWebBrowser2_put_Height(This,Height) (This)->lpVtbl->put_Height(This,Height)
2084 #define IWebBrowser2_get_LocationName(This,LocationName) (This)->lpVtbl->get_LocationName(This,LocationName)
2085 #define IWebBrowser2_get_LocationURL(This,LocationURL) (This)->lpVtbl->get_LocationURL(This,LocationURL)
2086 #define IWebBrowser2_get_Busy(This,pBool) (This)->lpVtbl->get_Busy(This,pBool)
2087 /*** IWebBrowserApp methods ***/
2088 #define IWebBrowser2_Quit(This) (This)->lpVtbl->Quit(This)
2089 #define IWebBrowser2_ClientToWindow(This,pcx,pcy) (This)->lpVtbl->ClientToWindow(This,pcx,pcy)
2090 #define IWebBrowser2_PutProperty(This,Property,vtValue) (This)->lpVtbl->PutProperty(This,Property,vtValue)
2091 #define IWebBrowser2_GetProperty(This,Property,pvtValue) (This)->lpVtbl->GetProperty(This,Property,pvtValue)
2092 #define IWebBrowser2_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
2093 #define IWebBrowser2_get_HWND(This,pHWND) (This)->lpVtbl->get_HWND(This,pHWND)
2094 #define IWebBrowser2_get_FullName(This,FullName) (This)->lpVtbl->get_FullName(This,FullName)
2095 #define IWebBrowser2_get_Path(This,Path) (This)->lpVtbl->get_Path(This,Path)
2096 #define IWebBrowser2_get_Visible(This,pBool) (This)->lpVtbl->get_Visible(This,pBool)
2097 #define IWebBrowser2_put_Visible(This,Value) (This)->lpVtbl->put_Visible(This,Value)
2098 #define IWebBrowser2_get_StatusBar(This,pBool) (This)->lpVtbl->get_StatusBar(This,pBool)
2099 #define IWebBrowser2_put_StatusBar(This,Value) (This)->lpVtbl->put_StatusBar(This,Value)
2100 #define IWebBrowser2_get_StatusText(This,StatusText) (This)->lpVtbl->get_StatusText(This,StatusText)
2101 #define IWebBrowser2_put_StatusText(This,StatusText) (This)->lpVtbl->put_StatusText(This,StatusText)
2102 #define IWebBrowser2_get_ToolBar(This,Value) (This)->lpVtbl->get_ToolBar(This,Value)
2103 #define IWebBrowser2_put_ToolBar(This,Value) (This)->lpVtbl->put_ToolBar(This,Value)
2104 #define IWebBrowser2_get_MenuBar(This,Value) (This)->lpVtbl->get_MenuBar(This,Value)
2105 #define IWebBrowser2_put_MenuBar(This,Value) (This)->lpVtbl->put_MenuBar(This,Value)
2106 #define IWebBrowser2_get_FullScreen(This,pbFullScreen) (This)->lpVtbl->get_FullScreen(This,pbFullScreen)
2107 #define IWebBrowser2_put_FullScreen(This,bFullScreen) (This)->lpVtbl->put_FullScreen(This,bFullScreen)
2108 /*** IWebBrowser2 methods ***/
2109 #define IWebBrowser2_Navigate2(This,URL,Flags,TargetFrameName,PostData,Headers) (This)->lpVtbl->Navigate2(This,URL,Flags,TargetFrameName,PostData,Headers)
2110 #define IWebBrowser2_QueryStatusWB(This,cmdID,pcmdf) (This)->lpVtbl->QueryStatusWB(This,cmdID,pcmdf)
2111 #define IWebBrowser2_ExecWB(This,cmdID,cmdexecopt,pvaIn,pvaOut) (This)->lpVtbl->ExecWB(This,cmdID,cmdexecopt,pvaIn,pvaOut)
2112 #define IWebBrowser2_ShowBrowserBar(This,pvaClsid,pvarShow,pvarSize) (This)->lpVtbl->ShowBrowserBar(This,pvaClsid,pvarShow,pvarSize)
2113 #define IWebBrowser2_get_ReadyState(This,plReadyState) (This)->lpVtbl->get_ReadyState(This,plReadyState)
2114 #define IWebBrowser2_get_Offline(This,pbOffline) (This)->lpVtbl->get_Offline(This,pbOffline)
2115 #define IWebBrowser2_put_Offline(This,bOffline) (This)->lpVtbl->put_Offline(This,bOffline)
2116 #define IWebBrowser2_get_Silent(This,pbSilent) (This)->lpVtbl->get_Silent(This,pbSilent)
2117 #define IWebBrowser2_put_Silent(This,bSilent) (This)->lpVtbl->put_Silent(This,bSilent)
2118 #define IWebBrowser2_get_RegisterAsBrowser(This,pbRegister) (This)->lpVtbl->get_RegisterAsBrowser(This,pbRegister)
2119 #define IWebBrowser2_put_RegisterAsBrowser(This,bRegister) (This)->lpVtbl->put_RegisterAsBrowser(This,bRegister)
2120 #define IWebBrowser2_get_RegisterAsDropTarget(This,pbRegister) (This)->lpVtbl->get_RegisterAsDropTarget(This,pbRegister)
2121 #define IWebBrowser2_put_RegisterAsDropTarget(This,bRegister) (This)->lpVtbl->put_RegisterAsDropTarget(This,bRegister)
2122 #define IWebBrowser2_get_TheaterMode(This,pbRegister) (This)->lpVtbl->get_TheaterMode(This,pbRegister)
2123 #define IWebBrowser2_put_TheaterMode(This,bRegister) (This)->lpVtbl->put_TheaterMode(This,bRegister)
2124 #define IWebBrowser2_get_AddressBar(This,Value) (This)->lpVtbl->get_AddressBar(This,Value)
2125 #define IWebBrowser2_put_AddressBar(This,Value) (This)->lpVtbl->put_AddressBar(This,Value)
2126 #define IWebBrowser2_get_Resizable(This,Value) (This)->lpVtbl->get_Resizable(This,Value)
2127 #define IWebBrowser2_put_Resizable(This,Value) (This)->lpVtbl->put_Resizable(This,Value)
2128 #else
2129 /*** IUnknown methods ***/
2130 static FORCEINLINE HRESULT IWebBrowser2_QueryInterface(IWebBrowser2* This,REFIID riid,void **ppvObject) {
2131     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2132 }
2133 static FORCEINLINE ULONG IWebBrowser2_AddRef(IWebBrowser2* This) {
2134     return This->lpVtbl->AddRef(This);
2135 }
2136 static FORCEINLINE ULONG IWebBrowser2_Release(IWebBrowser2* This) {
2137     return This->lpVtbl->Release(This);
2138 }
2139 /*** IDispatch methods ***/
2140 static FORCEINLINE HRESULT IWebBrowser2_GetTypeInfoCount(IWebBrowser2* This,UINT *pctinfo) {
2141     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2142 }
2143 static FORCEINLINE HRESULT IWebBrowser2_GetTypeInfo(IWebBrowser2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2144     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2145 }
2146 static FORCEINLINE HRESULT IWebBrowser2_GetIDsOfNames(IWebBrowser2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2147     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2148 }
2149 static FORCEINLINE HRESULT IWebBrowser2_Invoke(IWebBrowser2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2150     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2151 }
2152 /*** IWebBrowser methods ***/
2153 static FORCEINLINE HRESULT IWebBrowser2_GoBack(IWebBrowser2* This) {
2154     return This->lpVtbl->GoBack(This);
2155 }
2156 static FORCEINLINE HRESULT IWebBrowser2_GoForward(IWebBrowser2* This) {
2157     return This->lpVtbl->GoForward(This);
2158 }
2159 static FORCEINLINE HRESULT IWebBrowser2_GoHome(IWebBrowser2* This) {
2160     return This->lpVtbl->GoHome(This);
2161 }
2162 static FORCEINLINE HRESULT IWebBrowser2_GoSearch(IWebBrowser2* This) {
2163     return This->lpVtbl->GoSearch(This);
2164 }
2165 static FORCEINLINE HRESULT IWebBrowser2_Navigate(IWebBrowser2* This,BSTR URL,VARIANT *Flags,VARIANT *TargetFrameName,VARIANT *PostData,VARIANT *Headers) {
2166     return This->lpVtbl->Navigate(This,URL,Flags,TargetFrameName,PostData,Headers);
2167 }
2168 static FORCEINLINE HRESULT IWebBrowser2_Refresh(IWebBrowser2* This) {
2169     return This->lpVtbl->Refresh(This);
2170 }
2171 static FORCEINLINE HRESULT IWebBrowser2_Refresh2(IWebBrowser2* This,VARIANT *Level) {
2172     return This->lpVtbl->Refresh2(This,Level);
2173 }
2174 static FORCEINLINE HRESULT IWebBrowser2_Stop(IWebBrowser2* This) {
2175     return This->lpVtbl->Stop(This);
2176 }
2177 static FORCEINLINE HRESULT IWebBrowser2_get_Application(IWebBrowser2* This,IDispatch **ppDisp) {
2178     return This->lpVtbl->get_Application(This,ppDisp);
2179 }
2180 static FORCEINLINE HRESULT IWebBrowser2_get_Parent(IWebBrowser2* This,IDispatch **ppDisp) {
2181     return This->lpVtbl->get_Parent(This,ppDisp);
2182 }
2183 static FORCEINLINE HRESULT IWebBrowser2_get_Container(IWebBrowser2* This,IDispatch **ppDisp) {
2184     return This->lpVtbl->get_Container(This,ppDisp);
2185 }
2186 static FORCEINLINE HRESULT IWebBrowser2_get_Document(IWebBrowser2* This,IDispatch **ppDisp) {
2187     return This->lpVtbl->get_Document(This,ppDisp);
2188 }
2189 static FORCEINLINE HRESULT IWebBrowser2_get_TopLevelContainer(IWebBrowser2* This,VARIANT_BOOL *pBool) {
2190     return This->lpVtbl->get_TopLevelContainer(This,pBool);
2191 }
2192 static FORCEINLINE HRESULT IWebBrowser2_get_Type(IWebBrowser2* This,BSTR *Type) {
2193     return This->lpVtbl->get_Type(This,Type);
2194 }
2195 static FORCEINLINE HRESULT IWebBrowser2_get_Left(IWebBrowser2* This,LONG *pl) {
2196     return This->lpVtbl->get_Left(This,pl);
2197 }
2198 static FORCEINLINE HRESULT IWebBrowser2_put_Left(IWebBrowser2* This,LONG Left) {
2199     return This->lpVtbl->put_Left(This,Left);
2200 }
2201 static FORCEINLINE HRESULT IWebBrowser2_get_Top(IWebBrowser2* This,LONG *pl) {
2202     return This->lpVtbl->get_Top(This,pl);
2203 }
2204 static FORCEINLINE HRESULT IWebBrowser2_put_Top(IWebBrowser2* This,LONG Top) {
2205     return This->lpVtbl->put_Top(This,Top);
2206 }
2207 static FORCEINLINE HRESULT IWebBrowser2_get_Width(IWebBrowser2* This,LONG *pl) {
2208     return This->lpVtbl->get_Width(This,pl);
2209 }
2210 static FORCEINLINE HRESULT IWebBrowser2_put_Width(IWebBrowser2* This,LONG Width) {
2211     return This->lpVtbl->put_Width(This,Width);
2212 }
2213 static FORCEINLINE HRESULT IWebBrowser2_get_Height(IWebBrowser2* This,LONG *pl) {
2214     return This->lpVtbl->get_Height(This,pl);
2215 }
2216 static FORCEINLINE HRESULT IWebBrowser2_put_Height(IWebBrowser2* This,LONG Height) {
2217     return This->lpVtbl->put_Height(This,Height);
2218 }
2219 static FORCEINLINE HRESULT IWebBrowser2_get_LocationName(IWebBrowser2* This,BSTR *LocationName) {
2220     return This->lpVtbl->get_LocationName(This,LocationName);
2221 }
2222 static FORCEINLINE HRESULT IWebBrowser2_get_LocationURL(IWebBrowser2* This,BSTR *LocationURL) {
2223     return This->lpVtbl->get_LocationURL(This,LocationURL);
2224 }
2225 static FORCEINLINE HRESULT IWebBrowser2_get_Busy(IWebBrowser2* This,VARIANT_BOOL *pBool) {
2226     return This->lpVtbl->get_Busy(This,pBool);
2227 }
2228 /*** IWebBrowserApp methods ***/
2229 static FORCEINLINE HRESULT IWebBrowser2_Quit(IWebBrowser2* This) {
2230     return This->lpVtbl->Quit(This);
2231 }
2232 static FORCEINLINE HRESULT IWebBrowser2_ClientToWindow(IWebBrowser2* This,int *pcx,int *pcy) {
2233     return This->lpVtbl->ClientToWindow(This,pcx,pcy);
2234 }
2235 static FORCEINLINE HRESULT IWebBrowser2_PutProperty(IWebBrowser2* This,BSTR Property,VARIANT vtValue) {
2236     return This->lpVtbl->PutProperty(This,Property,vtValue);
2237 }
2238 static FORCEINLINE HRESULT IWebBrowser2_GetProperty(IWebBrowser2* This,BSTR Property,VARIANT *pvtValue) {
2239     return This->lpVtbl->GetProperty(This,Property,pvtValue);
2240 }
2241 static FORCEINLINE HRESULT IWebBrowser2_get_Name(IWebBrowser2* This,BSTR *Name) {
2242     return This->lpVtbl->get_Name(This,Name);
2243 }
2244 static FORCEINLINE HRESULT IWebBrowser2_get_HWND(IWebBrowser2* This,SHANDLE_PTR *pHWND) {
2245     return This->lpVtbl->get_HWND(This,pHWND);
2246 }
2247 static FORCEINLINE HRESULT IWebBrowser2_get_FullName(IWebBrowser2* This,BSTR *FullName) {
2248     return This->lpVtbl->get_FullName(This,FullName);
2249 }
2250 static FORCEINLINE HRESULT IWebBrowser2_get_Path(IWebBrowser2* This,BSTR *Path) {
2251     return This->lpVtbl->get_Path(This,Path);
2252 }
2253 static FORCEINLINE HRESULT IWebBrowser2_get_Visible(IWebBrowser2* This,VARIANT_BOOL *pBool) {
2254     return This->lpVtbl->get_Visible(This,pBool);
2255 }
2256 static FORCEINLINE HRESULT IWebBrowser2_put_Visible(IWebBrowser2* This,VARIANT_BOOL Value) {
2257     return This->lpVtbl->put_Visible(This,Value);
2258 }
2259 static FORCEINLINE HRESULT IWebBrowser2_get_StatusBar(IWebBrowser2* This,VARIANT_BOOL *pBool) {
2260     return This->lpVtbl->get_StatusBar(This,pBool);
2261 }
2262 static FORCEINLINE HRESULT IWebBrowser2_put_StatusBar(IWebBrowser2* This,VARIANT_BOOL Value) {
2263     return This->lpVtbl->put_StatusBar(This,Value);
2264 }
2265 static FORCEINLINE HRESULT IWebBrowser2_get_StatusText(IWebBrowser2* This,BSTR *StatusText) {
2266     return This->lpVtbl->get_StatusText(This,StatusText);
2267 }
2268 static FORCEINLINE HRESULT IWebBrowser2_put_StatusText(IWebBrowser2* This,BSTR StatusText) {
2269     return This->lpVtbl->put_StatusText(This,StatusText);
2270 }
2271 static FORCEINLINE HRESULT IWebBrowser2_get_ToolBar(IWebBrowser2* This,int *Value) {
2272     return This->lpVtbl->get_ToolBar(This,Value);
2273 }
2274 static FORCEINLINE HRESULT IWebBrowser2_put_ToolBar(IWebBrowser2* This,int Value) {
2275     return This->lpVtbl->put_ToolBar(This,Value);
2276 }
2277 static FORCEINLINE HRESULT IWebBrowser2_get_MenuBar(IWebBrowser2* This,VARIANT_BOOL *Value) {
2278     return This->lpVtbl->get_MenuBar(This,Value);
2279 }
2280 static FORCEINLINE HRESULT IWebBrowser2_put_MenuBar(IWebBrowser2* This,VARIANT_BOOL Value) {
2281     return This->lpVtbl->put_MenuBar(This,Value);
2282 }
2283 static FORCEINLINE HRESULT IWebBrowser2_get_FullScreen(IWebBrowser2* This,VARIANT_BOOL *pbFullScreen) {
2284     return This->lpVtbl->get_FullScreen(This,pbFullScreen);
2285 }
2286 static FORCEINLINE HRESULT IWebBrowser2_put_FullScreen(IWebBrowser2* This,VARIANT_BOOL bFullScreen) {
2287     return This->lpVtbl->put_FullScreen(This,bFullScreen);
2288 }
2289 /*** IWebBrowser2 methods ***/
2290 static FORCEINLINE HRESULT IWebBrowser2_Navigate2(IWebBrowser2* This,VARIANT *URL,VARIANT *Flags,VARIANT *TargetFrameName,VARIANT *PostData,VARIANT *Headers) {
2291     return This->lpVtbl->Navigate2(This,URL,Flags,TargetFrameName,PostData,Headers);
2292 }
2293 static FORCEINLINE HRESULT IWebBrowser2_QueryStatusWB(IWebBrowser2* This,OLECMDID cmdID,OLECMDF *pcmdf) {
2294     return This->lpVtbl->QueryStatusWB(This,cmdID,pcmdf);
2295 }
2296 static FORCEINLINE HRESULT IWebBrowser2_ExecWB(IWebBrowser2* This,OLECMDID cmdID,OLECMDEXECOPT cmdexecopt,VARIANT *pvaIn,VARIANT *pvaOut) {
2297     return This->lpVtbl->ExecWB(This,cmdID,cmdexecopt,pvaIn,pvaOut);
2298 }
2299 static FORCEINLINE HRESULT IWebBrowser2_ShowBrowserBar(IWebBrowser2* This,VARIANT *pvaClsid,VARIANT *pvarShow,VARIANT *pvarSize) {
2300     return This->lpVtbl->ShowBrowserBar(This,pvaClsid,pvarShow,pvarSize);
2301 }
2302 static FORCEINLINE HRESULT IWebBrowser2_get_ReadyState(IWebBrowser2* This,READYSTATE *plReadyState) {
2303     return This->lpVtbl->get_ReadyState(This,plReadyState);
2304 }
2305 static FORCEINLINE HRESULT IWebBrowser2_get_Offline(IWebBrowser2* This,VARIANT_BOOL *pbOffline) {
2306     return This->lpVtbl->get_Offline(This,pbOffline);
2307 }
2308 static FORCEINLINE HRESULT IWebBrowser2_put_Offline(IWebBrowser2* This,VARIANT_BOOL bOffline) {
2309     return This->lpVtbl->put_Offline(This,bOffline);
2310 }
2311 static FORCEINLINE HRESULT IWebBrowser2_get_Silent(IWebBrowser2* This,VARIANT_BOOL *pbSilent) {
2312     return This->lpVtbl->get_Silent(This,pbSilent);
2313 }
2314 static FORCEINLINE HRESULT IWebBrowser2_put_Silent(IWebBrowser2* This,VARIANT_BOOL bSilent) {
2315     return This->lpVtbl->put_Silent(This,bSilent);
2316 }
2317 static FORCEINLINE HRESULT IWebBrowser2_get_RegisterAsBrowser(IWebBrowser2* This,VARIANT_BOOL *pbRegister) {
2318     return This->lpVtbl->get_RegisterAsBrowser(This,pbRegister);
2319 }
2320 static FORCEINLINE HRESULT IWebBrowser2_put_RegisterAsBrowser(IWebBrowser2* This,VARIANT_BOOL bRegister) {
2321     return This->lpVtbl->put_RegisterAsBrowser(This,bRegister);
2322 }
2323 static FORCEINLINE HRESULT IWebBrowser2_get_RegisterAsDropTarget(IWebBrowser2* This,VARIANT_BOOL *pbRegister) {
2324     return This->lpVtbl->get_RegisterAsDropTarget(This,pbRegister);
2325 }
2326 static FORCEINLINE HRESULT IWebBrowser2_put_RegisterAsDropTarget(IWebBrowser2* This,VARIANT_BOOL bRegister) {
2327     return This->lpVtbl->put_RegisterAsDropTarget(This,bRegister);
2328 }
2329 static FORCEINLINE HRESULT IWebBrowser2_get_TheaterMode(IWebBrowser2* This,VARIANT_BOOL *pbRegister) {
2330     return This->lpVtbl->get_TheaterMode(This,pbRegister);
2331 }
2332 static FORCEINLINE HRESULT IWebBrowser2_put_TheaterMode(IWebBrowser2* This,VARIANT_BOOL bRegister) {
2333     return This->lpVtbl->put_TheaterMode(This,bRegister);
2334 }
2335 static FORCEINLINE HRESULT IWebBrowser2_get_AddressBar(IWebBrowser2* This,VARIANT_BOOL *Value) {
2336     return This->lpVtbl->get_AddressBar(This,Value);
2337 }
2338 static FORCEINLINE HRESULT IWebBrowser2_put_AddressBar(IWebBrowser2* This,VARIANT_BOOL Value) {
2339     return This->lpVtbl->put_AddressBar(This,Value);
2340 }
2341 static FORCEINLINE HRESULT IWebBrowser2_get_Resizable(IWebBrowser2* This,VARIANT_BOOL *Value) {
2342     return This->lpVtbl->get_Resizable(This,Value);
2343 }
2344 static FORCEINLINE HRESULT IWebBrowser2_put_Resizable(IWebBrowser2* This,VARIANT_BOOL Value) {
2345     return This->lpVtbl->put_Resizable(This,Value);
2346 }
2347 #endif
2348 #endif
2349 
2350 #endif
2351 
2352 HRESULT STDMETHODCALLTYPE IWebBrowser2_Navigate2_Proxy(
2353     IWebBrowser2* This,
2354     VARIANT *URL,
2355     VARIANT *Flags,
2356     VARIANT *TargetFrameName,
2357     VARIANT *PostData,
2358     VARIANT *Headers);
2359 void __RPC_STUB IWebBrowser2_Navigate2_Stub(
2360     IRpcStubBuffer* This,
2361     IRpcChannelBuffer* pRpcChannelBuffer,
2362     PRPC_MESSAGE pRpcMessage,
2363     DWORD* pdwStubPhase);
2364 HRESULT STDMETHODCALLTYPE IWebBrowser2_QueryStatusWB_Proxy(
2365     IWebBrowser2* This,
2366     OLECMDID cmdID,
2367     OLECMDF *pcmdf);
2368 void __RPC_STUB IWebBrowser2_QueryStatusWB_Stub(
2369     IRpcStubBuffer* This,
2370     IRpcChannelBuffer* pRpcChannelBuffer,
2371     PRPC_MESSAGE pRpcMessage,
2372     DWORD* pdwStubPhase);
2373 HRESULT STDMETHODCALLTYPE IWebBrowser2_ExecWB_Proxy(
2374     IWebBrowser2* This,
2375     OLECMDID cmdID,
2376     OLECMDEXECOPT cmdexecopt,
2377     VARIANT *pvaIn,
2378     VARIANT *pvaOut);
2379 void __RPC_STUB IWebBrowser2_ExecWB_Stub(
2380     IRpcStubBuffer* This,
2381     IRpcChannelBuffer* pRpcChannelBuffer,
2382     PRPC_MESSAGE pRpcMessage,
2383     DWORD* pdwStubPhase);
2384 HRESULT STDMETHODCALLTYPE IWebBrowser2_ShowBrowserBar_Proxy(
2385     IWebBrowser2* This,
2386     VARIANT *pvaClsid,
2387     VARIANT *pvarShow,
2388     VARIANT *pvarSize);
2389 void __RPC_STUB IWebBrowser2_ShowBrowserBar_Stub(
2390     IRpcStubBuffer* This,
2391     IRpcChannelBuffer* pRpcChannelBuffer,
2392     PRPC_MESSAGE pRpcMessage,
2393     DWORD* pdwStubPhase);
2394 HRESULT STDMETHODCALLTYPE IWebBrowser2_get_ReadyState_Proxy(
2395     IWebBrowser2* This,
2396     READYSTATE *plReadyState);
2397 void __RPC_STUB IWebBrowser2_get_ReadyState_Stub(
2398     IRpcStubBuffer* This,
2399     IRpcChannelBuffer* pRpcChannelBuffer,
2400     PRPC_MESSAGE pRpcMessage,
2401     DWORD* pdwStubPhase);
2402 HRESULT STDMETHODCALLTYPE IWebBrowser2_get_Offline_Proxy(
2403     IWebBrowser2* This,
2404     VARIANT_BOOL *pbOffline);
2405 void __RPC_STUB IWebBrowser2_get_Offline_Stub(
2406     IRpcStubBuffer* This,
2407     IRpcChannelBuffer* pRpcChannelBuffer,
2408     PRPC_MESSAGE pRpcMessage,
2409     DWORD* pdwStubPhase);
2410 HRESULT STDMETHODCALLTYPE IWebBrowser2_put_Offline_Proxy(
2411     IWebBrowser2* This,
2412     VARIANT_BOOL bOffline);
2413 void __RPC_STUB IWebBrowser2_put_Offline_Stub(
2414     IRpcStubBuffer* This,
2415     IRpcChannelBuffer* pRpcChannelBuffer,
2416     PRPC_MESSAGE pRpcMessage,
2417     DWORD* pdwStubPhase);
2418 HRESULT STDMETHODCALLTYPE IWebBrowser2_get_Silent_Proxy(
2419     IWebBrowser2* This,
2420     VARIANT_BOOL *pbSilent);
2421 void __RPC_STUB IWebBrowser2_get_Silent_Stub(
2422     IRpcStubBuffer* This,
2423     IRpcChannelBuffer* pRpcChannelBuffer,
2424     PRPC_MESSAGE pRpcMessage,
2425     DWORD* pdwStubPhase);
2426 HRESULT STDMETHODCALLTYPE IWebBrowser2_put_Silent_Proxy(
2427     IWebBrowser2* This,
2428     VARIANT_BOOL bSilent);
2429 void __RPC_STUB IWebBrowser2_put_Silent_Stub(
2430     IRpcStubBuffer* This,
2431     IRpcChannelBuffer* pRpcChannelBuffer,
2432     PRPC_MESSAGE pRpcMessage,
2433     DWORD* pdwStubPhase);
2434 HRESULT STDMETHODCALLTYPE IWebBrowser2_get_RegisterAsBrowser_Proxy(
2435     IWebBrowser2* This,
2436     VARIANT_BOOL *pbRegister);
2437 void __RPC_STUB IWebBrowser2_get_RegisterAsBrowser_Stub(
2438     IRpcStubBuffer* This,
2439     IRpcChannelBuffer* pRpcChannelBuffer,
2440     PRPC_MESSAGE pRpcMessage,
2441     DWORD* pdwStubPhase);
2442 HRESULT STDMETHODCALLTYPE IWebBrowser2_put_RegisterAsBrowser_Proxy(
2443     IWebBrowser2* This,
2444     VARIANT_BOOL bRegister);
2445 void __RPC_STUB IWebBrowser2_put_RegisterAsBrowser_Stub(
2446     IRpcStubBuffer* This,
2447     IRpcChannelBuffer* pRpcChannelBuffer,
2448     PRPC_MESSAGE pRpcMessage,
2449     DWORD* pdwStubPhase);
2450 HRESULT STDMETHODCALLTYPE IWebBrowser2_get_RegisterAsDropTarget_Proxy(
2451     IWebBrowser2* This,
2452     VARIANT_BOOL *pbRegister);
2453 void __RPC_STUB IWebBrowser2_get_RegisterAsDropTarget_Stub(
2454     IRpcStubBuffer* This,
2455     IRpcChannelBuffer* pRpcChannelBuffer,
2456     PRPC_MESSAGE pRpcMessage,
2457     DWORD* pdwStubPhase);
2458 HRESULT STDMETHODCALLTYPE IWebBrowser2_put_RegisterAsDropTarget_Proxy(
2459     IWebBrowser2* This,
2460     VARIANT_BOOL bRegister);
2461 void __RPC_STUB IWebBrowser2_put_RegisterAsDropTarget_Stub(
2462     IRpcStubBuffer* This,
2463     IRpcChannelBuffer* pRpcChannelBuffer,
2464     PRPC_MESSAGE pRpcMessage,
2465     DWORD* pdwStubPhase);
2466 HRESULT STDMETHODCALLTYPE IWebBrowser2_get_TheaterMode_Proxy(
2467     IWebBrowser2* This,
2468     VARIANT_BOOL *pbRegister);
2469 void __RPC_STUB IWebBrowser2_get_TheaterMode_Stub(
2470     IRpcStubBuffer* This,
2471     IRpcChannelBuffer* pRpcChannelBuffer,
2472     PRPC_MESSAGE pRpcMessage,
2473     DWORD* pdwStubPhase);
2474 HRESULT STDMETHODCALLTYPE IWebBrowser2_put_TheaterMode_Proxy(
2475     IWebBrowser2* This,
2476     VARIANT_BOOL bRegister);
2477 void __RPC_STUB IWebBrowser2_put_TheaterMode_Stub(
2478     IRpcStubBuffer* This,
2479     IRpcChannelBuffer* pRpcChannelBuffer,
2480     PRPC_MESSAGE pRpcMessage,
2481     DWORD* pdwStubPhase);
2482 HRESULT STDMETHODCALLTYPE IWebBrowser2_get_AddressBar_Proxy(
2483     IWebBrowser2* This,
2484     VARIANT_BOOL *Value);
2485 void __RPC_STUB IWebBrowser2_get_AddressBar_Stub(
2486     IRpcStubBuffer* This,
2487     IRpcChannelBuffer* pRpcChannelBuffer,
2488     PRPC_MESSAGE pRpcMessage,
2489     DWORD* pdwStubPhase);
2490 HRESULT STDMETHODCALLTYPE IWebBrowser2_put_AddressBar_Proxy(
2491     IWebBrowser2* This,
2492     VARIANT_BOOL Value);
2493 void __RPC_STUB IWebBrowser2_put_AddressBar_Stub(
2494     IRpcStubBuffer* This,
2495     IRpcChannelBuffer* pRpcChannelBuffer,
2496     PRPC_MESSAGE pRpcMessage,
2497     DWORD* pdwStubPhase);
2498 HRESULT STDMETHODCALLTYPE IWebBrowser2_get_Resizable_Proxy(
2499     IWebBrowser2* This,
2500     VARIANT_BOOL *Value);
2501 void __RPC_STUB IWebBrowser2_get_Resizable_Stub(
2502     IRpcStubBuffer* This,
2503     IRpcChannelBuffer* pRpcChannelBuffer,
2504     PRPC_MESSAGE pRpcMessage,
2505     DWORD* pdwStubPhase);
2506 HRESULT STDMETHODCALLTYPE IWebBrowser2_put_Resizable_Proxy(
2507     IWebBrowser2* This,
2508     VARIANT_BOOL Value);
2509 void __RPC_STUB IWebBrowser2_put_Resizable_Stub(
2510     IRpcStubBuffer* This,
2511     IRpcChannelBuffer* pRpcChannelBuffer,
2512     PRPC_MESSAGE pRpcMessage,
2513     DWORD* pdwStubPhase);
2514 
2515 #endif  /* __IWebBrowser2_INTERFACE_DEFINED__ */
2516 
2517 typedef enum SecureLockIconConstants {
2518     secureLockIconUnsecure = 0,
2519     secureLockIconMixed = 1,
2520     secureLockIconSecureUnknownBits = 2,
2521     secureLockIconSecure40Bit = 3,
2522     secureLockIconSecure56Bit = 4,
2523     secureLockIconSecureFortezza = 5,
2524     secureLockIconSecure128Bit = 6
2525 } SecureLockIconConstants;
2526 /*****************************************************************************
2527  * DWebBrowserEvents2 dispinterface
2528  */
2529 #ifndef __DWebBrowserEvents2_DISPINTERFACE_DEFINED__
2530 #define __DWebBrowserEvents2_DISPINTERFACE_DEFINED__
2531 
2532 DEFINE_GUID(DIID_DWebBrowserEvents2, 0x34a715a0, 0x6587, 0x11d0, 0x92,0x4a, 0x00,0x20,0xaf,0xc7,0xac,0x4d);
2533 #if defined(__cplusplus) && !defined(CINTERFACE)
2534 MIDL_INTERFACE("34a715a0-6587-11d0-924a-0020afc7ac4d")
2535 DWebBrowserEvents2 : public IDispatch
2536 {
2537 };
2538 #ifdef __CRT_UUID_DECL
2539 __CRT_UUID_DECL(DWebBrowserEvents2, 0x34a715a0, 0x6587, 0x11d0, 0x92,0x4a, 0x00,0x20,0xaf,0xc7,0xac,0x4d)
2540 #endif
2541 #else
2542 typedef struct DWebBrowserEvents2Vtbl {
2543     BEGIN_INTERFACE
2544 
2545     /*** IUnknown methods ***/
2546     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2547         DWebBrowserEvents2* This,
2548         REFIID riid,
2549         void **ppvObject);
2550 
2551     ULONG (STDMETHODCALLTYPE *AddRef)(
2552         DWebBrowserEvents2* This);
2553 
2554     ULONG (STDMETHODCALLTYPE *Release)(
2555         DWebBrowserEvents2* This);
2556 
2557     /*** IDispatch methods ***/
2558     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2559         DWebBrowserEvents2* This,
2560         UINT *pctinfo);
2561 
2562     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2563         DWebBrowserEvents2* This,
2564         UINT iTInfo,
2565         LCID lcid,
2566         ITypeInfo **ppTInfo);
2567 
2568     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2569         DWebBrowserEvents2* This,
2570         REFIID riid,
2571         LPOLESTR *rgszNames,
2572         UINT cNames,
2573         LCID lcid,
2574         DISPID *rgDispId);
2575 
2576     HRESULT (STDMETHODCALLTYPE *Invoke)(
2577         DWebBrowserEvents2* This,
2578         DISPID dispIdMember,
2579         REFIID riid,
2580         LCID lcid,
2581         WORD wFlags,
2582         DISPPARAMS *pDispParams,
2583         VARIANT *pVarResult,
2584         EXCEPINFO *pExcepInfo,
2585         UINT *puArgErr);
2586 
2587     END_INTERFACE
2588 } DWebBrowserEvents2Vtbl;
2589 interface DWebBrowserEvents2 {
2590     CONST_VTBL DWebBrowserEvents2Vtbl* lpVtbl;
2591 };
2592 
2593 #ifdef COBJMACROS
2594 #ifndef WIDL_C_INLINE_WRAPPERS
2595 /*** IUnknown methods ***/
2596 #define DWebBrowserEvents2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2597 #define DWebBrowserEvents2_AddRef(This) (This)->lpVtbl->AddRef(This)
2598 #define DWebBrowserEvents2_Release(This) (This)->lpVtbl->Release(This)
2599 /*** IDispatch methods ***/
2600 #define DWebBrowserEvents2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2601 #define DWebBrowserEvents2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2602 #define DWebBrowserEvents2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2603 #define DWebBrowserEvents2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2604 #else
2605 /*** IUnknown methods ***/
2606 static FORCEINLINE HRESULT DWebBrowserEvents2_QueryInterface(DWebBrowserEvents2* This,REFIID riid,void **ppvObject) {
2607     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2608 }
2609 static FORCEINLINE ULONG DWebBrowserEvents2_AddRef(DWebBrowserEvents2* This) {
2610     return This->lpVtbl->AddRef(This);
2611 }
2612 static FORCEINLINE ULONG DWebBrowserEvents2_Release(DWebBrowserEvents2* This) {
2613     return This->lpVtbl->Release(This);
2614 }
2615 /*** IDispatch methods ***/
2616 static FORCEINLINE HRESULT DWebBrowserEvents2_GetTypeInfoCount(DWebBrowserEvents2* This,UINT *pctinfo) {
2617     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2618 }
2619 static FORCEINLINE HRESULT DWebBrowserEvents2_GetTypeInfo(DWebBrowserEvents2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2620     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2621 }
2622 static FORCEINLINE HRESULT DWebBrowserEvents2_GetIDsOfNames(DWebBrowserEvents2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2623     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2624 }
2625 static FORCEINLINE HRESULT DWebBrowserEvents2_Invoke(DWebBrowserEvents2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2626     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2627 }
2628 #endif
2629 #endif
2630 
2631 #endif
2632 
2633 #endif  /* __DWebBrowserEvents2_DISPINTERFACE_DEFINED__ */
2634 
2635 /*****************************************************************************
2636  * WebBrowser_V1 coclass
2637  */
2638 
2639 DEFINE_GUID(CLSID_WebBrowser_V1, 0xeab22ac3, 0x30c1, 0x11cf, 0xa7,0xeb, 0x00,0x00,0xc0,0x5b,0xae,0x0b);
2640 
2641 #ifdef __cplusplus
2642 class DECLSPEC_UUID("eab22ac3-30c1-11cf-a7eb-0000c05bae0b") WebBrowser_V1;
2643 #ifdef __CRT_UUID_DECL
2644 __CRT_UUID_DECL(WebBrowser_V1, 0xeab22ac3, 0x30c1, 0x11cf, 0xa7,0xeb, 0x00,0x00,0xc0,0x5b,0xae,0x0b)
2645 #endif
2646 #endif
2647 
2648 /*****************************************************************************
2649  * WebBrowser coclass
2650  */
2651 
2652 DEFINE_GUID(CLSID_WebBrowser, 0x8856f961, 0x340a, 0x11d0, 0xa9,0x6b, 0x00,0xc0,0x4f,0xd7,0x05,0xa2);
2653 
2654 #ifdef __cplusplus
2655 class DECLSPEC_UUID("8856f961-340a-11d0-a96b-00c04fd705a2") WebBrowser;
2656 #ifdef __CRT_UUID_DECL
2657 __CRT_UUID_DECL(WebBrowser, 0x8856f961, 0x340a, 0x11d0, 0xa9,0x6b, 0x00,0xc0,0x4f,0xd7,0x05,0xa2)
2658 #endif
2659 #endif
2660 
2661 /*****************************************************************************
2662  * InternetExplorer coclass
2663  */
2664 
2665 DEFINE_GUID(CLSID_InternetExplorer, 0x0002df01, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2666 
2667 #ifdef __cplusplus
2668 class DECLSPEC_UUID("0002df01-0000-0000-c000-000000000046") InternetExplorer;
2669 #ifdef __CRT_UUID_DECL
2670 __CRT_UUID_DECL(InternetExplorer, 0x0002df01, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
2671 #endif
2672 #endif
2673 
2674 /*****************************************************************************
2675  * ShellBrowserWindow coclass
2676  */
2677 
2678 DEFINE_GUID(CLSID_ShellBrowserWindow, 0xc08afd90, 0xf2a1, 0x11d1, 0x84,0x55, 0x00,0xa0,0xc9,0x1f,0x38,0x80);
2679 
2680 #ifdef __cplusplus
2681 class DECLSPEC_UUID("c08afd90-f2a1-11d1-8455-00a0c91f3880") ShellBrowserWindow;
2682 #ifdef __CRT_UUID_DECL
2683 __CRT_UUID_DECL(ShellBrowserWindow, 0xc08afd90, 0xf2a1, 0x11d1, 0x84,0x55, 0x00,0xa0,0xc9,0x1f,0x38,0x80)
2684 #endif
2685 #endif
2686 
2687 typedef enum ShellWindowTypeConstants {
2688     SWC_EXPLORER = 0,
2689     SWC_BROWSER = 1,
2690     SWC_3RDPARTY = 2,
2691     SWC_CALLBACK = 4,
2692     SWC_DESKTOP = 8
2693 } ShellWindowTypeConstants;
2694 typedef enum ShellWindowFindWindowOptions {
2695     SWFO_NEEDDISPATCH = 1,
2696     SWFO_INCLUDEPENDING = 2,
2697     SWFO_COOKIEPASSED = 4
2698 } ShellWindowFindWindowOptions;
2699 /*****************************************************************************
2700  * DShellWindowsEvents dispinterface
2701  */
2702 #ifndef __DShellWindowsEvents_DISPINTERFACE_DEFINED__
2703 #define __DShellWindowsEvents_DISPINTERFACE_DEFINED__
2704 
2705 DEFINE_GUID(DIID_DShellWindowsEvents, 0xfe4106e0, 0x399a, 0x11d0, 0xa4,0x8c, 0x00,0xa0,0xc9,0x0a,0x8f,0x39);
2706 #if defined(__cplusplus) && !defined(CINTERFACE)
2707 MIDL_INTERFACE("fe4106e0-399a-11d0-a48c-00a0c90a8f39")
2708 DShellWindowsEvents : public IDispatch
2709 {
2710 };
2711 #ifdef __CRT_UUID_DECL
2712 __CRT_UUID_DECL(DShellWindowsEvents, 0xfe4106e0, 0x399a, 0x11d0, 0xa4,0x8c, 0x00,0xa0,0xc9,0x0a,0x8f,0x39)
2713 #endif
2714 #else
2715 typedef struct DShellWindowsEventsVtbl {
2716     BEGIN_INTERFACE
2717 
2718     /*** IUnknown methods ***/
2719     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2720         DShellWindowsEvents* This,
2721         REFIID riid,
2722         void **ppvObject);
2723 
2724     ULONG (STDMETHODCALLTYPE *AddRef)(
2725         DShellWindowsEvents* This);
2726 
2727     ULONG (STDMETHODCALLTYPE *Release)(
2728         DShellWindowsEvents* This);
2729 
2730     /*** IDispatch methods ***/
2731     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2732         DShellWindowsEvents* This,
2733         UINT *pctinfo);
2734 
2735     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2736         DShellWindowsEvents* This,
2737         UINT iTInfo,
2738         LCID lcid,
2739         ITypeInfo **ppTInfo);
2740 
2741     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2742         DShellWindowsEvents* This,
2743         REFIID riid,
2744         LPOLESTR *rgszNames,
2745         UINT cNames,
2746         LCID lcid,
2747         DISPID *rgDispId);
2748 
2749     HRESULT (STDMETHODCALLTYPE *Invoke)(
2750         DShellWindowsEvents* This,
2751         DISPID dispIdMember,
2752         REFIID riid,
2753         LCID lcid,
2754         WORD wFlags,
2755         DISPPARAMS *pDispParams,
2756         VARIANT *pVarResult,
2757         EXCEPINFO *pExcepInfo,
2758         UINT *puArgErr);
2759 
2760     END_INTERFACE
2761 } DShellWindowsEventsVtbl;
2762 interface DShellWindowsEvents {
2763     CONST_VTBL DShellWindowsEventsVtbl* lpVtbl;
2764 };
2765 
2766 #ifdef COBJMACROS
2767 #ifndef WIDL_C_INLINE_WRAPPERS
2768 /*** IUnknown methods ***/
2769 #define DShellWindowsEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2770 #define DShellWindowsEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
2771 #define DShellWindowsEvents_Release(This) (This)->lpVtbl->Release(This)
2772 /*** IDispatch methods ***/
2773 #define DShellWindowsEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2774 #define DShellWindowsEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2775 #define DShellWindowsEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2776 #define DShellWindowsEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2777 #else
2778 /*** IUnknown methods ***/
2779 static FORCEINLINE HRESULT DShellWindowsEvents_QueryInterface(DShellWindowsEvents* This,REFIID riid,void **ppvObject) {
2780     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2781 }
2782 static FORCEINLINE ULONG DShellWindowsEvents_AddRef(DShellWindowsEvents* This) {
2783     return This->lpVtbl->AddRef(This);
2784 }
2785 static FORCEINLINE ULONG DShellWindowsEvents_Release(DShellWindowsEvents* This) {
2786     return This->lpVtbl->Release(This);
2787 }
2788 /*** IDispatch methods ***/
2789 static FORCEINLINE HRESULT DShellWindowsEvents_GetTypeInfoCount(DShellWindowsEvents* This,UINT *pctinfo) {
2790     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2791 }
2792 static FORCEINLINE HRESULT DShellWindowsEvents_GetTypeInfo(DShellWindowsEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2793     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2794 }
2795 static FORCEINLINE HRESULT DShellWindowsEvents_GetIDsOfNames(DShellWindowsEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2796     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2797 }
2798 static FORCEINLINE HRESULT DShellWindowsEvents_Invoke(DShellWindowsEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2799     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2800 }
2801 #endif
2802 #endif
2803 
2804 #endif
2805 
2806 #endif  /* __DShellWindowsEvents_DISPINTERFACE_DEFINED__ */
2807 
2808 /*****************************************************************************
2809  * IShellWindows interface
2810  */
2811 #ifndef __IShellWindows_INTERFACE_DEFINED__
2812 #define __IShellWindows_INTERFACE_DEFINED__
2813 
2814 DEFINE_GUID(IID_IShellWindows, 0x85cb6900, 0x4d95, 0x11cf, 0x96,0x0c, 0x00,0x80,0xc7,0xf4,0xee,0x85);
2815 #if defined(__cplusplus) && !defined(CINTERFACE)
2816 MIDL_INTERFACE("85cb6900-4d95-11cf-960c-0080c7f4ee85")
2817 IShellWindows : public IDispatch
2818 {
2819     virtual HRESULT STDMETHODCALLTYPE get_Count(
2820         LONG *Count) = 0;
2821 
2822     virtual HRESULT STDMETHODCALLTYPE Item(
2823         VARIANT index,
2824         IDispatch **Folder) = 0;
2825 
2826     virtual HRESULT STDMETHODCALLTYPE _NewEnum(
2827         IUnknown **ppunk) = 0;
2828 
2829     virtual HRESULT STDMETHODCALLTYPE Register(
2830         IDispatch *pid,
2831         LONG hWnd,
2832         int swClass,
2833         LONG *plCookie) = 0;
2834 
2835     virtual HRESULT STDMETHODCALLTYPE RegisterPending(
2836         LONG lThreadId,
2837         VARIANT *pvarloc,
2838         VARIANT *pvarlocRoot,
2839         int swClass,
2840         LONG *plCookie) = 0;
2841 
2842     virtual HRESULT STDMETHODCALLTYPE Revoke(
2843         LONG lCookie) = 0;
2844 
2845     virtual HRESULT STDMETHODCALLTYPE OnNavigate(
2846         LONG lCookie,
2847         VARIANT *pvarLoc) = 0;
2848 
2849     virtual HRESULT STDMETHODCALLTYPE OnActivated(
2850         LONG lCookie,
2851         VARIANT_BOOL fActive) = 0;
2852 
2853     virtual HRESULT STDMETHODCALLTYPE FindWindowSW(
2854         VARIANT *pvarLoc,
2855         VARIANT *pvarLocRoot,
2856         int swClass,
2857         LONG *phwnd,
2858         int swfwOptions,
2859         IDispatch **ppdispOut) = 0;
2860 
2861     virtual HRESULT STDMETHODCALLTYPE OnCreated(
2862         LONG lCookie,
2863         IUnknown *punk) = 0;
2864 
2865     virtual HRESULT STDMETHODCALLTYPE ProcessAttachDetach(
2866         VARIANT_BOOL fAttach) = 0;
2867 
2868 };
2869 #ifdef __CRT_UUID_DECL
2870 __CRT_UUID_DECL(IShellWindows, 0x85cb6900, 0x4d95, 0x11cf, 0x96,0x0c, 0x00,0x80,0xc7,0xf4,0xee,0x85)
2871 #endif
2872 #else
2873 typedef struct IShellWindowsVtbl {
2874     BEGIN_INTERFACE
2875 
2876     /*** IUnknown methods ***/
2877     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2878         IShellWindows* This,
2879         REFIID riid,
2880         void **ppvObject);
2881 
2882     ULONG (STDMETHODCALLTYPE *AddRef)(
2883         IShellWindows* This);
2884 
2885     ULONG (STDMETHODCALLTYPE *Release)(
2886         IShellWindows* This);
2887 
2888     /*** IDispatch methods ***/
2889     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2890         IShellWindows* This,
2891         UINT *pctinfo);
2892 
2893     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2894         IShellWindows* This,
2895         UINT iTInfo,
2896         LCID lcid,
2897         ITypeInfo **ppTInfo);
2898 
2899     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2900         IShellWindows* This,
2901         REFIID riid,
2902         LPOLESTR *rgszNames,
2903         UINT cNames,
2904         LCID lcid,
2905         DISPID *rgDispId);
2906 
2907     HRESULT (STDMETHODCALLTYPE *Invoke)(
2908         IShellWindows* This,
2909         DISPID dispIdMember,
2910         REFIID riid,
2911         LCID lcid,
2912         WORD wFlags,
2913         DISPPARAMS *pDispParams,
2914         VARIANT *pVarResult,
2915         EXCEPINFO *pExcepInfo,
2916         UINT *puArgErr);
2917 
2918     /*** IShellWindows methods ***/
2919     HRESULT (STDMETHODCALLTYPE *get_Count)(
2920         IShellWindows* This,
2921         LONG *Count);
2922 
2923     HRESULT (STDMETHODCALLTYPE *Item)(
2924         IShellWindows* This,
2925         VARIANT index,
2926         IDispatch **Folder);
2927 
2928     HRESULT (STDMETHODCALLTYPE *_NewEnum)(
2929         IShellWindows* This,
2930         IUnknown **ppunk);
2931 
2932     HRESULT (STDMETHODCALLTYPE *Register)(
2933         IShellWindows* This,
2934         IDispatch *pid,
2935         LONG hWnd,
2936         int swClass,
2937         LONG *plCookie);
2938 
2939     HRESULT (STDMETHODCALLTYPE *RegisterPending)(
2940         IShellWindows* This,
2941         LONG lThreadId,
2942         VARIANT *pvarloc,
2943         VARIANT *pvarlocRoot,
2944         int swClass,
2945         LONG *plCookie);
2946 
2947     HRESULT (STDMETHODCALLTYPE *Revoke)(
2948         IShellWindows* This,
2949         LONG lCookie);
2950 
2951     HRESULT (STDMETHODCALLTYPE *OnNavigate)(
2952         IShellWindows* This,
2953         LONG lCookie,
2954         VARIANT *pvarLoc);
2955 
2956     HRESULT (STDMETHODCALLTYPE *OnActivated)(
2957         IShellWindows* This,
2958         LONG lCookie,
2959         VARIANT_BOOL fActive);
2960 
2961     HRESULT (STDMETHODCALLTYPE *FindWindowSW)(
2962         IShellWindows* This,
2963         VARIANT *pvarLoc,
2964         VARIANT *pvarLocRoot,
2965         int swClass,
2966         LONG *phwnd,
2967         int swfwOptions,
2968         IDispatch **ppdispOut);
2969 
2970     HRESULT (STDMETHODCALLTYPE *OnCreated)(
2971         IShellWindows* This,
2972         LONG lCookie,
2973         IUnknown *punk);
2974 
2975     HRESULT (STDMETHODCALLTYPE *ProcessAttachDetach)(
2976         IShellWindows* This,
2977         VARIANT_BOOL fAttach);
2978 
2979     END_INTERFACE
2980 } IShellWindowsVtbl;
2981 interface IShellWindows {
2982     CONST_VTBL IShellWindowsVtbl* lpVtbl;
2983 };
2984 
2985 #ifdef COBJMACROS
2986 #ifndef WIDL_C_INLINE_WRAPPERS
2987 /*** IUnknown methods ***/
2988 #define IShellWindows_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2989 #define IShellWindows_AddRef(This) (This)->lpVtbl->AddRef(This)
2990 #define IShellWindows_Release(This) (This)->lpVtbl->Release(This)
2991 /*** IDispatch methods ***/
2992 #define IShellWindows_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2993 #define IShellWindows_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2994 #define IShellWindows_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2995 #define IShellWindows_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2996 /*** IShellWindows methods ***/
2997 #define IShellWindows_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
2998 #define IShellWindows_Item(This,index,Folder) (This)->lpVtbl->Item(This,index,Folder)
2999 #define IShellWindows__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk)
3000 #define IShellWindows_Register(This,pid,hWnd,swClass,plCookie) (This)->lpVtbl->Register(This,pid,hWnd,swClass,plCookie)
3001 #define IShellWindows_RegisterPending(This,lThreadId,pvarloc,pvarlocRoot,swClass,plCookie) (This)->lpVtbl->RegisterPending(This,lThreadId,pvarloc,pvarlocRoot,swClass,plCookie)
3002 #define IShellWindows_Revoke(This,lCookie) (This)->lpVtbl->Revoke(This,lCookie)
3003 #define IShellWindows_OnNavigate(This,lCookie,pvarLoc) (This)->lpVtbl->OnNavigate(This,lCookie,pvarLoc)
3004 #define IShellWindows_OnActivated(This,lCookie,fActive) (This)->lpVtbl->OnActivated(This,lCookie,fActive)
3005 #define IShellWindows_FindWindowSW(This,pvarLoc,pvarLocRoot,swClass,phwnd,swfwOptions,ppdispOut) (This)->lpVtbl->FindWindowSW(This,pvarLoc,pvarLocRoot,swClass,phwnd,swfwOptions,ppdispOut)
3006 #define IShellWindows_OnCreated(This,lCookie,punk) (This)->lpVtbl->OnCreated(This,lCookie,punk)
3007 #define IShellWindows_ProcessAttachDetach(This,fAttach) (This)->lpVtbl->ProcessAttachDetach(This,fAttach)
3008 #else
3009 /*** IUnknown methods ***/
3010 static FORCEINLINE HRESULT IShellWindows_QueryInterface(IShellWindows* This,REFIID riid,void **ppvObject) {
3011     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3012 }
3013 static FORCEINLINE ULONG IShellWindows_AddRef(IShellWindows* This) {
3014     return This->lpVtbl->AddRef(This);
3015 }
3016 static FORCEINLINE ULONG IShellWindows_Release(IShellWindows* This) {
3017     return This->lpVtbl->Release(This);
3018 }
3019 /*** IDispatch methods ***/
3020 static FORCEINLINE HRESULT IShellWindows_GetTypeInfoCount(IShellWindows* This,UINT *pctinfo) {
3021     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
3022 }
3023 static FORCEINLINE HRESULT IShellWindows_GetTypeInfo(IShellWindows* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
3024     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
3025 }
3026 static FORCEINLINE HRESULT IShellWindows_GetIDsOfNames(IShellWindows* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
3027     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
3028 }
3029 static FORCEINLINE HRESULT IShellWindows_Invoke(IShellWindows* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
3030     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
3031 }
3032 /*** IShellWindows methods ***/
3033 static FORCEINLINE HRESULT IShellWindows_get_Count(IShellWindows* This,LONG *Count) {
3034     return This->lpVtbl->get_Count(This,Count);
3035 }
3036 static FORCEINLINE HRESULT IShellWindows_Item(IShellWindows* This,VARIANT index,IDispatch **Folder) {
3037     return This->lpVtbl->Item(This,index,Folder);
3038 }
3039 static FORCEINLINE HRESULT IShellWindows__NewEnum(IShellWindows* This,IUnknown **ppunk) {
3040     return This->lpVtbl->_NewEnum(This,ppunk);
3041 }
3042 static FORCEINLINE HRESULT IShellWindows_Register(IShellWindows* This,IDispatch *pid,LONG hWnd,int swClass,LONG *plCookie) {
3043     return This->lpVtbl->Register(This,pid,hWnd,swClass,plCookie);
3044 }
3045 static FORCEINLINE HRESULT IShellWindows_RegisterPending(IShellWindows* This,LONG lThreadId,VARIANT *pvarloc,VARIANT *pvarlocRoot,int swClass,LONG *plCookie) {
3046     return This->lpVtbl->RegisterPending(This,lThreadId,pvarloc,pvarlocRoot,swClass,plCookie);
3047 }
3048 static FORCEINLINE HRESULT IShellWindows_Revoke(IShellWindows* This,LONG lCookie) {
3049     return This->lpVtbl->Revoke(This,lCookie);
3050 }
3051 static FORCEINLINE HRESULT IShellWindows_OnNavigate(IShellWindows* This,LONG lCookie,VARIANT *pvarLoc) {
3052     return This->lpVtbl->OnNavigate(This,lCookie,pvarLoc);
3053 }
3054 static FORCEINLINE HRESULT IShellWindows_OnActivated(IShellWindows* This,LONG lCookie,VARIANT_BOOL fActive) {
3055     return This->lpVtbl->OnActivated(This,lCookie,fActive);
3056 }
3057 static FORCEINLINE HRESULT IShellWindows_FindWindowSW(IShellWindows* This,VARIANT *pvarLoc,VARIANT *pvarLocRoot,int swClass,LONG *phwnd,int swfwOptions,IDispatch **ppdispOut) {
3058     return This->lpVtbl->FindWindowSW(This,pvarLoc,pvarLocRoot,swClass,phwnd,swfwOptions,ppdispOut);
3059 }
3060 static FORCEINLINE HRESULT IShellWindows_OnCreated(IShellWindows* This,LONG lCookie,IUnknown *punk) {
3061     return This->lpVtbl->OnCreated(This,lCookie,punk);
3062 }
3063 static FORCEINLINE HRESULT IShellWindows_ProcessAttachDetach(IShellWindows* This,VARIANT_BOOL fAttach) {
3064     return This->lpVtbl->ProcessAttachDetach(This,fAttach);
3065 }
3066 #endif
3067 #endif
3068 
3069 #endif
3070 
3071 HRESULT STDMETHODCALLTYPE IShellWindows_get_Count_Proxy(
3072     IShellWindows* This,
3073     LONG *Count);
3074 void __RPC_STUB IShellWindows_get_Count_Stub(
3075     IRpcStubBuffer* This,
3076     IRpcChannelBuffer* pRpcChannelBuffer,
3077     PRPC_MESSAGE pRpcMessage,
3078     DWORD* pdwStubPhase);
3079 HRESULT STDMETHODCALLTYPE IShellWindows_Item_Proxy(
3080     IShellWindows* This,
3081     VARIANT index,
3082     IDispatch **Folder);
3083 void __RPC_STUB IShellWindows_Item_Stub(
3084     IRpcStubBuffer* This,
3085     IRpcChannelBuffer* pRpcChannelBuffer,
3086     PRPC_MESSAGE pRpcMessage,
3087     DWORD* pdwStubPhase);
3088 HRESULT STDMETHODCALLTYPE IShellWindows__NewEnum_Proxy(
3089     IShellWindows* This,
3090     IUnknown **ppunk);
3091 void __RPC_STUB IShellWindows__NewEnum_Stub(
3092     IRpcStubBuffer* This,
3093     IRpcChannelBuffer* pRpcChannelBuffer,
3094     PRPC_MESSAGE pRpcMessage,
3095     DWORD* pdwStubPhase);
3096 HRESULT STDMETHODCALLTYPE IShellWindows_Register_Proxy(
3097     IShellWindows* This,
3098     IDispatch *pid,
3099     LONG hWnd,
3100     int swClass,
3101     LONG *plCookie);
3102 void __RPC_STUB IShellWindows_Register_Stub(
3103     IRpcStubBuffer* This,
3104     IRpcChannelBuffer* pRpcChannelBuffer,
3105     PRPC_MESSAGE pRpcMessage,
3106     DWORD* pdwStubPhase);
3107 HRESULT STDMETHODCALLTYPE IShellWindows_RegisterPending_Proxy(
3108     IShellWindows* This,
3109     LONG lThreadId,
3110     VARIANT *pvarloc,
3111     VARIANT *pvarlocRoot,
3112     int swClass,
3113     LONG *plCookie);
3114 void __RPC_STUB IShellWindows_RegisterPending_Stub(
3115     IRpcStubBuffer* This,
3116     IRpcChannelBuffer* pRpcChannelBuffer,
3117     PRPC_MESSAGE pRpcMessage,
3118     DWORD* pdwStubPhase);
3119 HRESULT STDMETHODCALLTYPE IShellWindows_Revoke_Proxy(
3120     IShellWindows* This,
3121     LONG lCookie);
3122 void __RPC_STUB IShellWindows_Revoke_Stub(
3123     IRpcStubBuffer* This,
3124     IRpcChannelBuffer* pRpcChannelBuffer,
3125     PRPC_MESSAGE pRpcMessage,
3126     DWORD* pdwStubPhase);
3127 HRESULT STDMETHODCALLTYPE IShellWindows_OnNavigate_Proxy(
3128     IShellWindows* This,
3129     LONG lCookie,
3130     VARIANT *pvarLoc);
3131 void __RPC_STUB IShellWindows_OnNavigate_Stub(
3132     IRpcStubBuffer* This,
3133     IRpcChannelBuffer* pRpcChannelBuffer,
3134     PRPC_MESSAGE pRpcMessage,
3135     DWORD* pdwStubPhase);
3136 HRESULT STDMETHODCALLTYPE IShellWindows_OnActivated_Proxy(
3137     IShellWindows* This,
3138     LONG lCookie,
3139     VARIANT_BOOL fActive);
3140 void __RPC_STUB IShellWindows_OnActivated_Stub(
3141     IRpcStubBuffer* This,
3142     IRpcChannelBuffer* pRpcChannelBuffer,
3143     PRPC_MESSAGE pRpcMessage,
3144     DWORD* pdwStubPhase);
3145 HRESULT STDMETHODCALLTYPE IShellWindows_FindWindowSW_Proxy(
3146     IShellWindows* This,
3147     VARIANT *pvarLoc,
3148     VARIANT *pvarLocRoot,
3149     int swClass,
3150     LONG *phwnd,
3151     int swfwOptions,
3152     IDispatch **ppdispOut);
3153 void __RPC_STUB IShellWindows_FindWindowSW_Stub(
3154     IRpcStubBuffer* This,
3155     IRpcChannelBuffer* pRpcChannelBuffer,
3156     PRPC_MESSAGE pRpcMessage,
3157     DWORD* pdwStubPhase);
3158 HRESULT STDMETHODCALLTYPE IShellWindows_OnCreated_Proxy(
3159     IShellWindows* This,
3160     LONG lCookie,
3161     IUnknown *punk);
3162 void __RPC_STUB IShellWindows_OnCreated_Stub(
3163     IRpcStubBuffer* This,
3164     IRpcChannelBuffer* pRpcChannelBuffer,
3165     PRPC_MESSAGE pRpcMessage,
3166     DWORD* pdwStubPhase);
3167 HRESULT STDMETHODCALLTYPE IShellWindows_ProcessAttachDetach_Proxy(
3168     IShellWindows* This,
3169     VARIANT_BOOL fAttach);
3170 void __RPC_STUB IShellWindows_ProcessAttachDetach_Stub(
3171     IRpcStubBuffer* This,
3172     IRpcChannelBuffer* pRpcChannelBuffer,
3173     PRPC_MESSAGE pRpcMessage,
3174     DWORD* pdwStubPhase);
3175 
3176 #endif  /* __IShellWindows_INTERFACE_DEFINED__ */
3177 
3178 /*****************************************************************************
3179  * ShellWindows coclass
3180  */
3181 
3182 DEFINE_GUID(CLSID_ShellWindows, 0x9ba05972, 0xf6a8, 0x11cf, 0xa4,0x42, 0x00,0xa0,0xc9,0x0a,0x8f,0x39);
3183 
3184 #ifdef __cplusplus
3185 class DECLSPEC_UUID("9ba05972-f6a8-11cf-a442-00a0c90a8f39") ShellWindows;
3186 #ifdef __CRT_UUID_DECL
3187 __CRT_UUID_DECL(ShellWindows, 0x9ba05972, 0xf6a8, 0x11cf, 0xa4,0x42, 0x00,0xa0,0xc9,0x0a,0x8f,0x39)
3188 #endif
3189 #endif
3190 
3191 /*****************************************************************************
3192  * IShellUIHelper interface
3193  */
3194 #ifndef __IShellUIHelper_INTERFACE_DEFINED__
3195 #define __IShellUIHelper_INTERFACE_DEFINED__
3196 
3197 DEFINE_GUID(IID_IShellUIHelper, 0x729fe2f8, 0x1ea8, 0x11d1, 0x8f,0x85, 0x00,0xc0,0x4f,0xc2,0xfb,0xe1);
3198 #if defined(__cplusplus) && !defined(CINTERFACE)
3199 MIDL_INTERFACE("729fe2f8-1ea8-11d1-8f85-00c04fc2fbe1")
3200 IShellUIHelper : public IDispatch
3201 {
3202     virtual HRESULT STDMETHODCALLTYPE ResetFirstBootMode(
3203         ) = 0;
3204 
3205     virtual HRESULT STDMETHODCALLTYPE ResetSafeMode(
3206         ) = 0;
3207 
3208     virtual HRESULT STDMETHODCALLTYPE RefreshOfflineDesktop(
3209         ) = 0;
3210 
3211     virtual HRESULT STDMETHODCALLTYPE AddFavorite(
3212         BSTR URL,
3213         VARIANT *Title) = 0;
3214 
3215     virtual HRESULT STDMETHODCALLTYPE AddChannel(
3216         BSTR URL) = 0;
3217 
3218     virtual HRESULT STDMETHODCALLTYPE AddDesktopComponent(
3219         BSTR URL,
3220         BSTR Type,
3221         VARIANT *Left,
3222         VARIANT *Top,
3223         VARIANT *Width,
3224         VARIANT *Height) = 0;
3225 
3226     virtual HRESULT STDMETHODCALLTYPE IsSubscribed(
3227         BSTR URL,
3228         VARIANT_BOOL *pBool) = 0;
3229 
3230     virtual HRESULT STDMETHODCALLTYPE NavigateAndFind(
3231         BSTR URL,
3232         BSTR strQuery,
3233         VARIANT *varTargetFrame) = 0;
3234 
3235     virtual HRESULT STDMETHODCALLTYPE ImportExportFavorites(
3236         VARIANT_BOOL fImport,
3237         BSTR strImpExpPath) = 0;
3238 
3239     virtual HRESULT STDMETHODCALLTYPE AutoCompleteSaveForm(
3240         VARIANT *Form) = 0;
3241 
3242     virtual HRESULT STDMETHODCALLTYPE AutoScan(
3243         BSTR strSearch,
3244         BSTR strFailureUrl,
3245         VARIANT *pvarTargetFrame) = 0;
3246 
3247     virtual HRESULT STDMETHODCALLTYPE AutoCompleteAttach(
3248         VARIANT *Reserved) = 0;
3249 
3250     virtual HRESULT STDMETHODCALLTYPE ShowBrowserUI(
3251         BSTR bstrName,
3252         VARIANT *pvarIn,
3253         VARIANT *pvarOut) = 0;
3254 
3255 };
3256 #ifdef __CRT_UUID_DECL
3257 __CRT_UUID_DECL(IShellUIHelper, 0x729fe2f8, 0x1ea8, 0x11d1, 0x8f,0x85, 0x00,0xc0,0x4f,0xc2,0xfb,0xe1)
3258 #endif
3259 #else
3260 typedef struct IShellUIHelperVtbl {
3261     BEGIN_INTERFACE
3262 
3263     /*** IUnknown methods ***/
3264     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3265         IShellUIHelper* This,
3266         REFIID riid,
3267         void **ppvObject);
3268 
3269     ULONG (STDMETHODCALLTYPE *AddRef)(
3270         IShellUIHelper* This);
3271 
3272     ULONG (STDMETHODCALLTYPE *Release)(
3273         IShellUIHelper* This);
3274 
3275     /*** IDispatch methods ***/
3276     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
3277         IShellUIHelper* This,
3278         UINT *pctinfo);
3279 
3280     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
3281         IShellUIHelper* This,
3282         UINT iTInfo,
3283         LCID lcid,
3284         ITypeInfo **ppTInfo);
3285 
3286     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
3287         IShellUIHelper* This,
3288         REFIID riid,
3289         LPOLESTR *rgszNames,
3290         UINT cNames,
3291         LCID lcid,
3292         DISPID *rgDispId);
3293 
3294     HRESULT (STDMETHODCALLTYPE *Invoke)(
3295         IShellUIHelper* This,
3296         DISPID dispIdMember,
3297         REFIID riid,
3298         LCID lcid,
3299         WORD wFlags,
3300         DISPPARAMS *pDispParams,
3301         VARIANT *pVarResult,
3302         EXCEPINFO *pExcepInfo,
3303         UINT *puArgErr);
3304 
3305     /*** IShellUIHelper methods ***/
3306     HRESULT (STDMETHODCALLTYPE *ResetFirstBootMode)(
3307         IShellUIHelper* This);
3308 
3309     HRESULT (STDMETHODCALLTYPE *ResetSafeMode)(
3310         IShellUIHelper* This);
3311 
3312     HRESULT (STDMETHODCALLTYPE *RefreshOfflineDesktop)(
3313         IShellUIHelper* This);
3314 
3315     HRESULT (STDMETHODCALLTYPE *AddFavorite)(
3316         IShellUIHelper* This,
3317         BSTR URL,
3318         VARIANT *Title);
3319 
3320     HRESULT (STDMETHODCALLTYPE *AddChannel)(
3321         IShellUIHelper* This,
3322         BSTR URL);
3323 
3324     HRESULT (STDMETHODCALLTYPE *AddDesktopComponent)(
3325         IShellUIHelper* This,
3326         BSTR URL,
3327         BSTR Type,
3328         VARIANT *Left,
3329         VARIANT *Top,
3330         VARIANT *Width,
3331         VARIANT *Height);
3332 
3333     HRESULT (STDMETHODCALLTYPE *IsSubscribed)(
3334         IShellUIHelper* This,
3335         BSTR URL,
3336         VARIANT_BOOL *pBool);
3337 
3338     HRESULT (STDMETHODCALLTYPE *NavigateAndFind)(
3339         IShellUIHelper* This,
3340         BSTR URL,
3341         BSTR strQuery,
3342         VARIANT *varTargetFrame);
3343 
3344     HRESULT (STDMETHODCALLTYPE *ImportExportFavorites)(
3345         IShellUIHelper* This,
3346         VARIANT_BOOL fImport,
3347         BSTR strImpExpPath);
3348 
3349     HRESULT (STDMETHODCALLTYPE *AutoCompleteSaveForm)(
3350         IShellUIHelper* This,
3351         VARIANT *Form);
3352 
3353     HRESULT (STDMETHODCALLTYPE *AutoScan)(
3354         IShellUIHelper* This,
3355         BSTR strSearch,
3356         BSTR strFailureUrl,
3357         VARIANT *pvarTargetFrame);
3358 
3359     HRESULT (STDMETHODCALLTYPE *AutoCompleteAttach)(
3360         IShellUIHelper* This,
3361         VARIANT *Reserved);
3362 
3363     HRESULT (STDMETHODCALLTYPE *ShowBrowserUI)(
3364         IShellUIHelper* This,
3365         BSTR bstrName,
3366         VARIANT *pvarIn,
3367         VARIANT *pvarOut);
3368 
3369     END_INTERFACE
3370 } IShellUIHelperVtbl;
3371 interface IShellUIHelper {
3372     CONST_VTBL IShellUIHelperVtbl* lpVtbl;
3373 };
3374 
3375 #ifdef COBJMACROS
3376 #ifndef WIDL_C_INLINE_WRAPPERS
3377 /*** IUnknown methods ***/
3378 #define IShellUIHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3379 #define IShellUIHelper_AddRef(This) (This)->lpVtbl->AddRef(This)
3380 #define IShellUIHelper_Release(This) (This)->lpVtbl->Release(This)
3381 /*** IDispatch methods ***/
3382 #define IShellUIHelper_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3383 #define IShellUIHelper_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3384 #define IShellUIHelper_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3385 #define IShellUIHelper_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3386 /*** IShellUIHelper methods ***/
3387 #define IShellUIHelper_ResetFirstBootMode(This) (This)->lpVtbl->ResetFirstBootMode(This)
3388 #define IShellUIHelper_ResetSafeMode(This) (This)->lpVtbl->ResetSafeMode(This)
3389 #define IShellUIHelper_RefreshOfflineDesktop(This) (This)->lpVtbl->RefreshOfflineDesktop(This)
3390 #define IShellUIHelper_AddFavorite(This,URL,Title) (This)->lpVtbl->AddFavorite(This,URL,Title)
3391 #define IShellUIHelper_AddChannel(This,URL) (This)->lpVtbl->AddChannel(This,URL)
3392 #define IShellUIHelper_AddDesktopComponent(This,URL,Type,Left,Top,Width,Height) (This)->lpVtbl->AddDesktopComponent(This,URL,Type,Left,Top,Width,Height)
3393 #define IShellUIHelper_IsSubscribed(This,URL,pBool) (This)->lpVtbl->IsSubscribed(This,URL,pBool)
3394 #define IShellUIHelper_NavigateAndFind(This,URL,strQuery,varTargetFrame) (This)->lpVtbl->NavigateAndFind(This,URL,strQuery,varTargetFrame)
3395 #define IShellUIHelper_ImportExportFavorites(This,fImport,strImpExpPath) (This)->lpVtbl->ImportExportFavorites(This,fImport,strImpExpPath)
3396 #define IShellUIHelper_AutoCompleteSaveForm(This,Form) (This)->lpVtbl->AutoCompleteSaveForm(This,Form)
3397 #define IShellUIHelper_AutoScan(This,strSearch,strFailureUrl,pvarTargetFrame) (This)->lpVtbl->AutoScan(This,strSearch,strFailureUrl,pvarTargetFrame)
3398 #define IShellUIHelper_AutoCompleteAttach(This,Reserved) (This)->lpVtbl->AutoCompleteAttach(This,Reserved)
3399 #define IShellUIHelper_ShowBrowserUI(This,bstrName,pvarIn,pvarOut) (This)->lpVtbl->ShowBrowserUI(This,bstrName,pvarIn,pvarOut)
3400 #else
3401 /*** IUnknown methods ***/
3402 static FORCEINLINE HRESULT IShellUIHelper_QueryInterface(IShellUIHelper* This,REFIID riid,void **ppvObject) {
3403     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3404 }
3405 static FORCEINLINE ULONG IShellUIHelper_AddRef(IShellUIHelper* This) {
3406     return This->lpVtbl->AddRef(This);
3407 }
3408 static FORCEINLINE ULONG IShellUIHelper_Release(IShellUIHelper* This) {
3409     return This->lpVtbl->Release(This);
3410 }
3411 /*** IDispatch methods ***/
3412 static FORCEINLINE HRESULT IShellUIHelper_GetTypeInfoCount(IShellUIHelper* This,UINT *pctinfo) {
3413     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
3414 }
3415 static FORCEINLINE HRESULT IShellUIHelper_GetTypeInfo(IShellUIHelper* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
3416     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
3417 }
3418 static FORCEINLINE HRESULT IShellUIHelper_GetIDsOfNames(IShellUIHelper* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
3419     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
3420 }
3421 static FORCEINLINE HRESULT IShellUIHelper_Invoke(IShellUIHelper* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
3422     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
3423 }
3424 /*** IShellUIHelper methods ***/
3425 static FORCEINLINE HRESULT IShellUIHelper_ResetFirstBootMode(IShellUIHelper* This) {
3426     return This->lpVtbl->ResetFirstBootMode(This);
3427 }
3428 static FORCEINLINE HRESULT IShellUIHelper_ResetSafeMode(IShellUIHelper* This) {
3429     return This->lpVtbl->ResetSafeMode(This);
3430 }
3431 static FORCEINLINE HRESULT IShellUIHelper_RefreshOfflineDesktop(IShellUIHelper* This) {
3432     return This->lpVtbl->RefreshOfflineDesktop(This);
3433 }
3434 static FORCEINLINE HRESULT IShellUIHelper_AddFavorite(IShellUIHelper* This,BSTR URL,VARIANT *Title) {
3435     return This->lpVtbl->AddFavorite(This,URL,Title);
3436 }
3437 static FORCEINLINE HRESULT IShellUIHelper_AddChannel(IShellUIHelper* This,BSTR URL) {
3438     return This->lpVtbl->AddChannel(This,URL);
3439 }
3440 static FORCEINLINE HRESULT IShellUIHelper_AddDesktopComponent(IShellUIHelper* This,BSTR URL,BSTR Type,VARIANT *Left,VARIANT *Top,VARIANT *Width,VARIANT *Height) {
3441     return This->lpVtbl->AddDesktopComponent(This,URL,Type,Left,Top,Width,Height);
3442 }
3443 static FORCEINLINE HRESULT IShellUIHelper_IsSubscribed(IShellUIHelper* This,BSTR URL,VARIANT_BOOL *pBool) {
3444     return This->lpVtbl->IsSubscribed(This,URL,pBool);
3445 }
3446 static FORCEINLINE HRESULT IShellUIHelper_NavigateAndFind(IShellUIHelper* This,BSTR URL,BSTR strQuery,VARIANT *varTargetFrame) {
3447     return This->lpVtbl->NavigateAndFind(This,URL,strQuery,varTargetFrame);
3448 }
3449 static FORCEINLINE HRESULT IShellUIHelper_ImportExportFavorites(IShellUIHelper* This,VARIANT_BOOL fImport,BSTR strImpExpPath) {
3450     return This->lpVtbl->ImportExportFavorites(This,fImport,strImpExpPath);
3451 }
3452 static FORCEINLINE HRESULT IShellUIHelper_AutoCompleteSaveForm(IShellUIHelper* This,VARIANT *Form) {
3453     return This->lpVtbl->AutoCompleteSaveForm(This,Form);
3454 }
3455 static FORCEINLINE HRESULT IShellUIHelper_AutoScan(IShellUIHelper* This,BSTR strSearch,BSTR strFailureUrl,VARIANT *pvarTargetFrame) {
3456     return This->lpVtbl->AutoScan(This,strSearch,strFailureUrl,pvarTargetFrame);
3457 }
3458 static FORCEINLINE HRESULT IShellUIHelper_AutoCompleteAttach(IShellUIHelper* This,VARIANT *Reserved) {
3459     return This->lpVtbl->AutoCompleteAttach(This,Reserved);
3460 }
3461 static FORCEINLINE HRESULT IShellUIHelper_ShowBrowserUI(IShellUIHelper* This,BSTR bstrName,VARIANT *pvarIn,VARIANT *pvarOut) {
3462     return This->lpVtbl->ShowBrowserUI(This,bstrName,pvarIn,pvarOut);
3463 }
3464 #endif
3465 #endif
3466 
3467 #endif
3468 
3469 HRESULT STDMETHODCALLTYPE IShellUIHelper_ResetFirstBootMode_Proxy(
3470     IShellUIHelper* This);
3471 void __RPC_STUB IShellUIHelper_ResetFirstBootMode_Stub(
3472     IRpcStubBuffer* This,
3473     IRpcChannelBuffer* pRpcChannelBuffer,
3474     PRPC_MESSAGE pRpcMessage,
3475     DWORD* pdwStubPhase);
3476 HRESULT STDMETHODCALLTYPE IShellUIHelper_ResetSafeMode_Proxy(
3477     IShellUIHelper* This);
3478 void __RPC_STUB IShellUIHelper_ResetSafeMode_Stub(
3479     IRpcStubBuffer* This,
3480     IRpcChannelBuffer* pRpcChannelBuffer,
3481     PRPC_MESSAGE pRpcMessage,
3482     DWORD* pdwStubPhase);
3483 HRESULT STDMETHODCALLTYPE IShellUIHelper_RefreshOfflineDesktop_Proxy(
3484     IShellUIHelper* This);
3485 void __RPC_STUB IShellUIHelper_RefreshOfflineDesktop_Stub(
3486     IRpcStubBuffer* This,
3487     IRpcChannelBuffer* pRpcChannelBuffer,
3488     PRPC_MESSAGE pRpcMessage,
3489     DWORD* pdwStubPhase);
3490 HRESULT STDMETHODCALLTYPE IShellUIHelper_AddFavorite_Proxy(
3491     IShellUIHelper* This,
3492     BSTR URL,
3493     VARIANT *Title);
3494 void __RPC_STUB IShellUIHelper_AddFavorite_Stub(
3495     IRpcStubBuffer* This,
3496     IRpcChannelBuffer* pRpcChannelBuffer,
3497     PRPC_MESSAGE pRpcMessage,
3498     DWORD* pdwStubPhase);
3499 HRESULT STDMETHODCALLTYPE IShellUIHelper_AddChannel_Proxy(
3500     IShellUIHelper* This,
3501     BSTR URL);
3502 void __RPC_STUB IShellUIHelper_AddChannel_Stub(
3503     IRpcStubBuffer* This,
3504     IRpcChannelBuffer* pRpcChannelBuffer,
3505     PRPC_MESSAGE pRpcMessage,
3506     DWORD* pdwStubPhase);
3507 HRESULT STDMETHODCALLTYPE IShellUIHelper_AddDesktopComponent_Proxy(
3508     IShellUIHelper* This,
3509     BSTR URL,
3510     BSTR Type,
3511     VARIANT *Left,
3512     VARIANT *Top,
3513     VARIANT *Width,
3514     VARIANT *Height);
3515 void __RPC_STUB IShellUIHelper_AddDesktopComponent_Stub(
3516     IRpcStubBuffer* This,
3517     IRpcChannelBuffer* pRpcChannelBuffer,
3518     PRPC_MESSAGE pRpcMessage,
3519     DWORD* pdwStubPhase);
3520 HRESULT STDMETHODCALLTYPE IShellUIHelper_IsSubscribed_Proxy(
3521     IShellUIHelper* This,
3522     BSTR URL,
3523     VARIANT_BOOL *pBool);
3524 void __RPC_STUB IShellUIHelper_IsSubscribed_Stub(
3525     IRpcStubBuffer* This,
3526     IRpcChannelBuffer* pRpcChannelBuffer,
3527     PRPC_MESSAGE pRpcMessage,
3528     DWORD* pdwStubPhase);
3529 HRESULT STDMETHODCALLTYPE IShellUIHelper_NavigateAndFind_Proxy(
3530     IShellUIHelper* This,
3531     BSTR URL,
3532     BSTR strQuery,
3533     VARIANT *varTargetFrame);
3534 void __RPC_STUB IShellUIHelper_NavigateAndFind_Stub(
3535     IRpcStubBuffer* This,
3536     IRpcChannelBuffer* pRpcChannelBuffer,
3537     PRPC_MESSAGE pRpcMessage,
3538     DWORD* pdwStubPhase);
3539 HRESULT STDMETHODCALLTYPE IShellUIHelper_ImportExportFavorites_Proxy(
3540     IShellUIHelper* This,
3541     VARIANT_BOOL fImport,
3542     BSTR strImpExpPath);
3543 void __RPC_STUB IShellUIHelper_ImportExportFavorites_Stub(
3544     IRpcStubBuffer* This,
3545     IRpcChannelBuffer* pRpcChannelBuffer,
3546     PRPC_MESSAGE pRpcMessage,
3547     DWORD* pdwStubPhase);
3548 HRESULT STDMETHODCALLTYPE IShellUIHelper_AutoCompleteSaveForm_Proxy(
3549     IShellUIHelper* This,
3550     VARIANT *Form);
3551 void __RPC_STUB IShellUIHelper_AutoCompleteSaveForm_Stub(
3552     IRpcStubBuffer* This,
3553     IRpcChannelBuffer* pRpcChannelBuffer,
3554     PRPC_MESSAGE pRpcMessage,
3555     DWORD* pdwStubPhase);
3556 HRESULT STDMETHODCALLTYPE IShellUIHelper_AutoScan_Proxy(
3557     IShellUIHelper* This,
3558     BSTR strSearch,
3559     BSTR strFailureUrl,
3560     VARIANT *pvarTargetFrame);
3561 void __RPC_STUB IShellUIHelper_AutoScan_Stub(
3562     IRpcStubBuffer* This,
3563     IRpcChannelBuffer* pRpcChannelBuffer,
3564     PRPC_MESSAGE pRpcMessage,
3565     DWORD* pdwStubPhase);
3566 HRESULT STDMETHODCALLTYPE IShellUIHelper_AutoCompleteAttach_Proxy(
3567     IShellUIHelper* This,
3568     VARIANT *Reserved);
3569 void __RPC_STUB IShellUIHelper_AutoCompleteAttach_Stub(
3570     IRpcStubBuffer* This,
3571     IRpcChannelBuffer* pRpcChannelBuffer,
3572     PRPC_MESSAGE pRpcMessage,
3573     DWORD* pdwStubPhase);
3574 HRESULT STDMETHODCALLTYPE IShellUIHelper_ShowBrowserUI_Proxy(
3575     IShellUIHelper* This,
3576     BSTR bstrName,
3577     VARIANT *pvarIn,
3578     VARIANT *pvarOut);
3579 void __RPC_STUB IShellUIHelper_ShowBrowserUI_Stub(
3580     IRpcStubBuffer* This,
3581     IRpcChannelBuffer* pRpcChannelBuffer,
3582     PRPC_MESSAGE pRpcMessage,
3583     DWORD* pdwStubPhase);
3584 
3585 #endif  /* __IShellUIHelper_INTERFACE_DEFINED__ */
3586 
3587 /*****************************************************************************
3588  * IShellUIHelper2 interface
3589  */
3590 #ifndef __IShellUIHelper2_INTERFACE_DEFINED__
3591 #define __IShellUIHelper2_INTERFACE_DEFINED__
3592 
3593 DEFINE_GUID(IID_IShellUIHelper2, 0xa7fe6eda, 0x1932, 0x4281, 0xb8,0x81, 0x87,0xb3,0x1b,0x8b,0xc5,0x2c);
3594 #if defined(__cplusplus) && !defined(CINTERFACE)
3595 MIDL_INTERFACE("a7fe6eda-1932-4281-b881-87b31b8bc52c")
3596 IShellUIHelper2 : public IShellUIHelper
3597 {
3598     virtual HRESULT STDMETHODCALLTYPE AddSearchProvider(
3599         BSTR URL) = 0;
3600 
3601     virtual HRESULT STDMETHODCALLTYPE RunOnceShown(
3602         ) = 0;
3603 
3604     virtual HRESULT STDMETHODCALLTYPE SkipRunOnce(
3605         ) = 0;
3606 
3607     virtual HRESULT STDMETHODCALLTYPE CustomizeSettings(
3608         VARIANT_BOOL fSQM,
3609         VARIANT_BOOL fPhishing,
3610         BSTR bstrLocale) = 0;
3611 
3612     virtual HRESULT STDMETHODCALLTYPE SqmEnabled(
3613         VARIANT_BOOL *pfEnabled) = 0;
3614 
3615     virtual HRESULT STDMETHODCALLTYPE PhishingEnabled(
3616         VARIANT_BOOL *pfEnabled) = 0;
3617 
3618     virtual HRESULT STDMETHODCALLTYPE BrandImageUri(
3619         BSTR *pbstrUri) = 0;
3620 
3621     virtual HRESULT STDMETHODCALLTYPE SkipTabsWelcome(
3622         ) = 0;
3623 
3624     virtual HRESULT STDMETHODCALLTYPE DiagnoseConnection(
3625         ) = 0;
3626 
3627     virtual HRESULT STDMETHODCALLTYPE CustomizeClearType(
3628         VARIANT_BOOL fSet) = 0;
3629 
3630     virtual HRESULT STDMETHODCALLTYPE IsSearchProviderInstalled(
3631         BSTR URL,
3632         DWORD *pdwResult) = 0;
3633 
3634     virtual HRESULT STDMETHODCALLTYPE IsSearchMigrated(
3635         VARIANT_BOOL *pfMigrated) = 0;
3636 
3637     virtual HRESULT STDMETHODCALLTYPE DefaultSearchProvider(
3638         BSTR *pbstrName) = 0;
3639 
3640     virtual HRESULT STDMETHODCALLTYPE RunOnceRequiredSettingsComplete(
3641         VARIANT_BOOL fComplete) = 0;
3642 
3643     virtual HRESULT STDMETHODCALLTYPE RunOnceHasShown(
3644         VARIANT_BOOL *pfShown) = 0;
3645 
3646     virtual HRESULT STDMETHODCALLTYPE SearchGuideUrl(
3647         BSTR *pbstrUrl) = 0;
3648 
3649 };
3650 #ifdef __CRT_UUID_DECL
3651 __CRT_UUID_DECL(IShellUIHelper2, 0xa7fe6eda, 0x1932, 0x4281, 0xb8,0x81, 0x87,0xb3,0x1b,0x8b,0xc5,0x2c)
3652 #endif
3653 #else
3654 typedef struct IShellUIHelper2Vtbl {
3655     BEGIN_INTERFACE
3656 
3657     /*** IUnknown methods ***/
3658     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3659         IShellUIHelper2* This,
3660         REFIID riid,
3661         void **ppvObject);
3662 
3663     ULONG (STDMETHODCALLTYPE *AddRef)(
3664         IShellUIHelper2* This);
3665 
3666     ULONG (STDMETHODCALLTYPE *Release)(
3667         IShellUIHelper2* This);
3668 
3669     /*** IDispatch methods ***/
3670     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
3671         IShellUIHelper2* This,
3672         UINT *pctinfo);
3673 
3674     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
3675         IShellUIHelper2* This,
3676         UINT iTInfo,
3677         LCID lcid,
3678         ITypeInfo **ppTInfo);
3679 
3680     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
3681         IShellUIHelper2* This,
3682         REFIID riid,
3683         LPOLESTR *rgszNames,
3684         UINT cNames,
3685         LCID lcid,
3686         DISPID *rgDispId);
3687 
3688     HRESULT (STDMETHODCALLTYPE *Invoke)(
3689         IShellUIHelper2* This,
3690         DISPID dispIdMember,
3691         REFIID riid,
3692         LCID lcid,
3693         WORD wFlags,
3694         DISPPARAMS *pDispParams,
3695         VARIANT *pVarResult,
3696         EXCEPINFO *pExcepInfo,
3697         UINT *puArgErr);
3698 
3699     /*** IShellUIHelper methods ***/
3700     HRESULT (STDMETHODCALLTYPE *ResetFirstBootMode)(
3701         IShellUIHelper2* This);
3702 
3703     HRESULT (STDMETHODCALLTYPE *ResetSafeMode)(
3704         IShellUIHelper2* This);
3705 
3706     HRESULT (STDMETHODCALLTYPE *RefreshOfflineDesktop)(
3707         IShellUIHelper2* This);
3708 
3709     HRESULT (STDMETHODCALLTYPE *AddFavorite)(
3710         IShellUIHelper2* This,
3711         BSTR URL,
3712         VARIANT *Title);
3713 
3714     HRESULT (STDMETHODCALLTYPE *AddChannel)(
3715         IShellUIHelper2* This,
3716         BSTR URL);
3717 
3718     HRESULT (STDMETHODCALLTYPE *AddDesktopComponent)(
3719         IShellUIHelper2* This,
3720         BSTR URL,
3721         BSTR Type,
3722         VARIANT *Left,
3723         VARIANT *Top,
3724         VARIANT *Width,
3725         VARIANT *Height);
3726 
3727     HRESULT (STDMETHODCALLTYPE *IsSubscribed)(
3728         IShellUIHelper2* This,
3729         BSTR URL,
3730         VARIANT_BOOL *pBool);
3731 
3732     HRESULT (STDMETHODCALLTYPE *NavigateAndFind)(
3733         IShellUIHelper2* This,
3734         BSTR URL,
3735         BSTR strQuery,
3736         VARIANT *varTargetFrame);
3737 
3738     HRESULT (STDMETHODCALLTYPE *ImportExportFavorites)(
3739         IShellUIHelper2* This,
3740         VARIANT_BOOL fImport,
3741         BSTR strImpExpPath);
3742 
3743     HRESULT (STDMETHODCALLTYPE *AutoCompleteSaveForm)(
3744         IShellUIHelper2* This,
3745         VARIANT *Form);
3746 
3747     HRESULT (STDMETHODCALLTYPE *AutoScan)(
3748         IShellUIHelper2* This,
3749         BSTR strSearch,
3750         BSTR strFailureUrl,
3751         VARIANT *pvarTargetFrame);
3752 
3753     HRESULT (STDMETHODCALLTYPE *AutoCompleteAttach)(
3754         IShellUIHelper2* This,
3755         VARIANT *Reserved);
3756 
3757     HRESULT (STDMETHODCALLTYPE *ShowBrowserUI)(
3758         IShellUIHelper2* This,
3759         BSTR bstrName,
3760         VARIANT *pvarIn,
3761         VARIANT *pvarOut);
3762 
3763     /*** IShellUIHelper2 methods ***/
3764     HRESULT (STDMETHODCALLTYPE *AddSearchProvider)(
3765         IShellUIHelper2* This,
3766         BSTR URL);
3767 
3768     HRESULT (STDMETHODCALLTYPE *RunOnceShown)(
3769         IShellUIHelper2* This);
3770 
3771     HRESULT (STDMETHODCALLTYPE *SkipRunOnce)(
3772         IShellUIHelper2* This);
3773 
3774     HRESULT (STDMETHODCALLTYPE *CustomizeSettings)(
3775         IShellUIHelper2* This,
3776         VARIANT_BOOL fSQM,
3777         VARIANT_BOOL fPhishing,
3778         BSTR bstrLocale);
3779 
3780     HRESULT (STDMETHODCALLTYPE *SqmEnabled)(
3781         IShellUIHelper2* This,
3782         VARIANT_BOOL *pfEnabled);
3783 
3784     HRESULT (STDMETHODCALLTYPE *PhishingEnabled)(
3785         IShellUIHelper2* This,
3786         VARIANT_BOOL *pfEnabled);
3787 
3788     HRESULT (STDMETHODCALLTYPE *BrandImageUri)(
3789         IShellUIHelper2* This,
3790         BSTR *pbstrUri);
3791 
3792     HRESULT (STDMETHODCALLTYPE *SkipTabsWelcome)(
3793         IShellUIHelper2* This);
3794 
3795     HRESULT (STDMETHODCALLTYPE *DiagnoseConnection)(
3796         IShellUIHelper2* This);
3797 
3798     HRESULT (STDMETHODCALLTYPE *CustomizeClearType)(
3799         IShellUIHelper2* This,
3800         VARIANT_BOOL fSet);
3801 
3802     HRESULT (STDMETHODCALLTYPE *IsSearchProviderInstalled)(
3803         IShellUIHelper2* This,
3804         BSTR URL,
3805         DWORD *pdwResult);
3806 
3807     HRESULT (STDMETHODCALLTYPE *IsSearchMigrated)(
3808         IShellUIHelper2* This,
3809         VARIANT_BOOL *pfMigrated);
3810 
3811     HRESULT (STDMETHODCALLTYPE *DefaultSearchProvider)(
3812         IShellUIHelper2* This,
3813         BSTR *pbstrName);
3814 
3815     HRESULT (STDMETHODCALLTYPE *RunOnceRequiredSettingsComplete)(
3816         IShellUIHelper2* This,
3817         VARIANT_BOOL fComplete);
3818 
3819     HRESULT (STDMETHODCALLTYPE *RunOnceHasShown)(
3820         IShellUIHelper2* This,
3821         VARIANT_BOOL *pfShown);
3822 
3823     HRESULT (STDMETHODCALLTYPE *SearchGuideUrl)(
3824         IShellUIHelper2* This,
3825         BSTR *pbstrUrl);
3826 
3827     END_INTERFACE
3828 } IShellUIHelper2Vtbl;
3829 interface IShellUIHelper2 {
3830     CONST_VTBL IShellUIHelper2Vtbl* lpVtbl;
3831 };
3832 
3833 #ifdef COBJMACROS
3834 #ifndef WIDL_C_INLINE_WRAPPERS
3835 /*** IUnknown methods ***/
3836 #define IShellUIHelper2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3837 #define IShellUIHelper2_AddRef(This) (This)->lpVtbl->AddRef(This)
3838 #define IShellUIHelper2_Release(This) (This)->lpVtbl->Release(This)
3839 /*** IDispatch methods ***/
3840 #define IShellUIHelper2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3841 #define IShellUIHelper2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3842 #define IShellUIHelper2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3843 #define IShellUIHelper2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3844 /*** IShellUIHelper methods ***/
3845 #define IShellUIHelper2_ResetFirstBootMode(This) (This)->lpVtbl->ResetFirstBootMode(This)
3846 #define IShellUIHelper2_ResetSafeMode(This) (This)->lpVtbl->ResetSafeMode(This)
3847 #define IShellUIHelper2_RefreshOfflineDesktop(This) (This)->lpVtbl->RefreshOfflineDesktop(This)
3848 #define IShellUIHelper2_AddFavorite(This,URL,Title) (This)->lpVtbl->AddFavorite(This,URL,Title)
3849 #define IShellUIHelper2_AddChannel(This,URL) (This)->lpVtbl->AddChannel(This,URL)
3850 #define IShellUIHelper2_AddDesktopComponent(This,URL,Type,Left,Top,Width,Height) (This)->lpVtbl->AddDesktopComponent(This,URL,Type,Left,Top,Width,Height)
3851 #define IShellUIHelper2_IsSubscribed(This,URL,pBool) (This)->lpVtbl->IsSubscribed(This,URL,pBool)
3852 #define IShellUIHelper2_NavigateAndFind(This,URL,strQuery,varTargetFrame) (This)->lpVtbl->NavigateAndFind(This,URL,strQuery,varTargetFrame)
3853 #define IShellUIHelper2_ImportExportFavorites(This,fImport,strImpExpPath) (This)->lpVtbl->ImportExportFavorites(This,fImport,strImpExpPath)
3854 #define IShellUIHelper2_AutoCompleteSaveForm(This,Form) (This)->lpVtbl->AutoCompleteSaveForm(This,Form)
3855 #define IShellUIHelper2_AutoScan(This,strSearch,strFailureUrl,pvarTargetFrame) (This)->lpVtbl->AutoScan(This,strSearch,strFailureUrl,pvarTargetFrame)
3856 #define IShellUIHelper2_AutoCompleteAttach(This,Reserved) (This)->lpVtbl->AutoCompleteAttach(This,Reserved)
3857 #define IShellUIHelper2_ShowBrowserUI(This,bstrName,pvarIn,pvarOut) (This)->lpVtbl->ShowBrowserUI(This,bstrName,pvarIn,pvarOut)
3858 /*** IShellUIHelper2 methods ***/
3859 #define IShellUIHelper2_AddSearchProvider(This,URL) (This)->lpVtbl->AddSearchProvider(This,URL)
3860 #define IShellUIHelper2_RunOnceShown(This) (This)->lpVtbl->RunOnceShown(This)
3861 #define IShellUIHelper2_SkipRunOnce(This) (This)->lpVtbl->SkipRunOnce(This)
3862 #define IShellUIHelper2_CustomizeSettings(This,fSQM,fPhishing,bstrLocale) (This)->lpVtbl->CustomizeSettings(This,fSQM,fPhishing,bstrLocale)
3863 #define IShellUIHelper2_SqmEnabled(This,pfEnabled) (This)->lpVtbl->SqmEnabled(This,pfEnabled)
3864 #define IShellUIHelper2_PhishingEnabled(This,pfEnabled) (This)->lpVtbl->PhishingEnabled(This,pfEnabled)
3865 #define IShellUIHelper2_BrandImageUri(This,pbstrUri) (This)->lpVtbl->BrandImageUri(This,pbstrUri)
3866 #define IShellUIHelper2_SkipTabsWelcome(This) (This)->lpVtbl->SkipTabsWelcome(This)
3867 #define IShellUIHelper2_DiagnoseConnection(This) (This)->lpVtbl->DiagnoseConnection(This)
3868 #define IShellUIHelper2_CustomizeClearType(This,fSet) (This)->lpVtbl->CustomizeClearType(This,fSet)
3869 #define IShellUIHelper2_IsSearchProviderInstalled(This,URL,pdwResult) (This)->lpVtbl->IsSearchProviderInstalled(This,URL,pdwResult)
3870 #define IShellUIHelper2_IsSearchMigrated(This,pfMigrated) (This)->lpVtbl->IsSearchMigrated(This,pfMigrated)
3871 #define IShellUIHelper2_DefaultSearchProvider(This,pbstrName) (This)->lpVtbl->DefaultSearchProvider(This,pbstrName)
3872 #define IShellUIHelper2_RunOnceRequiredSettingsComplete(This,fComplete) (This)->lpVtbl->RunOnceRequiredSettingsComplete(This,fComplete)
3873 #define IShellUIHelper2_RunOnceHasShown(This,pfShown) (This)->lpVtbl->RunOnceHasShown(This,pfShown)
3874 #define IShellUIHelper2_SearchGuideUrl(This,pbstrUrl) (This)->lpVtbl->SearchGuideUrl(This,pbstrUrl)
3875 #else
3876 /*** IUnknown methods ***/
3877 static FORCEINLINE HRESULT IShellUIHelper2_QueryInterface(IShellUIHelper2* This,REFIID riid,void **ppvObject) {
3878     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3879 }
3880 static FORCEINLINE ULONG IShellUIHelper2_AddRef(IShellUIHelper2* This) {
3881     return This->lpVtbl->AddRef(This);
3882 }
3883 static FORCEINLINE ULONG IShellUIHelper2_Release(IShellUIHelper2* This) {
3884     return This->lpVtbl->Release(This);
3885 }
3886 /*** IDispatch methods ***/
3887 static FORCEINLINE HRESULT IShellUIHelper2_GetTypeInfoCount(IShellUIHelper2* This,UINT *pctinfo) {
3888     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
3889 }
3890 static FORCEINLINE HRESULT IShellUIHelper2_GetTypeInfo(IShellUIHelper2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
3891     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
3892 }
3893 static FORCEINLINE HRESULT IShellUIHelper2_GetIDsOfNames(IShellUIHelper2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
3894     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
3895 }
3896 static FORCEINLINE HRESULT IShellUIHelper2_Invoke(IShellUIHelper2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
3897     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
3898 }
3899 /*** IShellUIHelper methods ***/
3900 static FORCEINLINE HRESULT IShellUIHelper2_ResetFirstBootMode(IShellUIHelper2* This) {
3901     return This->lpVtbl->ResetFirstBootMode(This);
3902 }
3903 static FORCEINLINE HRESULT IShellUIHelper2_ResetSafeMode(IShellUIHelper2* This) {
3904     return This->lpVtbl->ResetSafeMode(This);
3905 }
3906 static FORCEINLINE HRESULT IShellUIHelper2_RefreshOfflineDesktop(IShellUIHelper2* This) {
3907     return This->lpVtbl->RefreshOfflineDesktop(This);
3908 }
3909 static FORCEINLINE HRESULT IShellUIHelper2_AddFavorite(IShellUIHelper2* This,BSTR URL,VARIANT *Title) {
3910     return This->lpVtbl->AddFavorite(This,URL,Title);
3911 }
3912 static FORCEINLINE HRESULT IShellUIHelper2_AddChannel(IShellUIHelper2* This,BSTR URL) {
3913     return This->lpVtbl->AddChannel(This,URL);
3914 }
3915 static FORCEINLINE HRESULT IShellUIHelper2_AddDesktopComponent(IShellUIHelper2* This,BSTR URL,BSTR Type,VARIANT *Left,VARIANT *Top,VARIANT *Width,VARIANT *Height) {
3916     return This->lpVtbl->AddDesktopComponent(This,URL,Type,Left,Top,Width,Height);
3917 }
3918 static FORCEINLINE HRESULT IShellUIHelper2_IsSubscribed(IShellUIHelper2* This,BSTR URL,VARIANT_BOOL *pBool) {
3919     return This->lpVtbl->IsSubscribed(This,URL,pBool);
3920 }
3921 static FORCEINLINE HRESULT IShellUIHelper2_NavigateAndFind(IShellUIHelper2* This,BSTR URL,BSTR strQuery,VARIANT *varTargetFrame) {
3922     return This->lpVtbl->NavigateAndFind(This,URL,strQuery,varTargetFrame);
3923 }
3924 static FORCEINLINE HRESULT IShellUIHelper2_ImportExportFavorites(IShellUIHelper2* This,VARIANT_BOOL fImport,BSTR strImpExpPath) {
3925     return This->lpVtbl->ImportExportFavorites(This,fImport,strImpExpPath);
3926 }
3927 static FORCEINLINE HRESULT IShellUIHelper2_AutoCompleteSaveForm(IShellUIHelper2* This,VARIANT *Form) {
3928     return This->lpVtbl->AutoCompleteSaveForm(This,Form);
3929 }
3930 static FORCEINLINE HRESULT IShellUIHelper2_AutoScan(IShellUIHelper2* This,BSTR strSearch,BSTR strFailureUrl,VARIANT *pvarTargetFrame) {
3931     return This->lpVtbl->AutoScan(This,strSearch,strFailureUrl,pvarTargetFrame);
3932 }
3933 static FORCEINLINE HRESULT IShellUIHelper2_AutoCompleteAttach(IShellUIHelper2* This,VARIANT *Reserved) {
3934     return This->lpVtbl->AutoCompleteAttach(This,Reserved);
3935 }
3936 static FORCEINLINE HRESULT IShellUIHelper2_ShowBrowserUI(IShellUIHelper2* This,BSTR bstrName,VARIANT *pvarIn,VARIANT *pvarOut) {
3937     return This->lpVtbl->ShowBrowserUI(This,bstrName,pvarIn,pvarOut);
3938 }
3939 /*** IShellUIHelper2 methods ***/
3940 static FORCEINLINE HRESULT IShellUIHelper2_AddSearchProvider(IShellUIHelper2* This,BSTR URL) {
3941     return This->lpVtbl->AddSearchProvider(This,URL);
3942 }
3943 static FORCEINLINE HRESULT IShellUIHelper2_RunOnceShown(IShellUIHelper2* This) {
3944     return This->lpVtbl->RunOnceShown(This);
3945 }
3946 static FORCEINLINE HRESULT IShellUIHelper2_SkipRunOnce(IShellUIHelper2* This) {
3947     return This->lpVtbl->SkipRunOnce(This);
3948 }
3949 static FORCEINLINE HRESULT IShellUIHelper2_CustomizeSettings(IShellUIHelper2* This,VARIANT_BOOL fSQM,VARIANT_BOOL fPhishing,BSTR bstrLocale) {
3950     return This->lpVtbl->CustomizeSettings(This,fSQM,fPhishing,bstrLocale);
3951 }
3952 static FORCEINLINE HRESULT IShellUIHelper2_SqmEnabled(IShellUIHelper2* This,VARIANT_BOOL *pfEnabled) {
3953     return This->lpVtbl->SqmEnabled(This,pfEnabled);
3954 }
3955 static FORCEINLINE HRESULT IShellUIHelper2_PhishingEnabled(IShellUIHelper2* This,VARIANT_BOOL *pfEnabled) {
3956     return This->lpVtbl->PhishingEnabled(This,pfEnabled);
3957 }
3958 static FORCEINLINE HRESULT IShellUIHelper2_BrandImageUri(IShellUIHelper2* This,BSTR *pbstrUri) {
3959     return This->lpVtbl->BrandImageUri(This,pbstrUri);
3960 }
3961 static FORCEINLINE HRESULT IShellUIHelper2_SkipTabsWelcome(IShellUIHelper2* This) {
3962     return This->lpVtbl->SkipTabsWelcome(This);
3963 }
3964 static FORCEINLINE HRESULT IShellUIHelper2_DiagnoseConnection(IShellUIHelper2* This) {
3965     return This->lpVtbl->DiagnoseConnection(This);
3966 }
3967 static FORCEINLINE HRESULT IShellUIHelper2_CustomizeClearType(IShellUIHelper2* This,VARIANT_BOOL fSet) {
3968     return This->lpVtbl->CustomizeClearType(This,fSet);
3969 }
3970 static FORCEINLINE HRESULT IShellUIHelper2_IsSearchProviderInstalled(IShellUIHelper2* This,BSTR URL,DWORD *pdwResult) {
3971     return This->lpVtbl->IsSearchProviderInstalled(This,URL,pdwResult);
3972 }
3973 static FORCEINLINE HRESULT IShellUIHelper2_IsSearchMigrated(IShellUIHelper2* This,VARIANT_BOOL *pfMigrated) {
3974     return This->lpVtbl->IsSearchMigrated(This,pfMigrated);
3975 }
3976 static FORCEINLINE HRESULT IShellUIHelper2_DefaultSearchProvider(IShellUIHelper2* This,BSTR *pbstrName) {
3977     return This->lpVtbl->DefaultSearchProvider(This,pbstrName);
3978 }
3979 static FORCEINLINE HRESULT IShellUIHelper2_RunOnceRequiredSettingsComplete(IShellUIHelper2* This,VARIANT_BOOL fComplete) {
3980     return This->lpVtbl->RunOnceRequiredSettingsComplete(This,fComplete);
3981 }
3982 static FORCEINLINE HRESULT IShellUIHelper2_RunOnceHasShown(IShellUIHelper2* This,VARIANT_BOOL *pfShown) {
3983     return This->lpVtbl->RunOnceHasShown(This,pfShown);
3984 }
3985 static FORCEINLINE HRESULT IShellUIHelper2_SearchGuideUrl(IShellUIHelper2* This,BSTR *pbstrUrl) {
3986     return This->lpVtbl->SearchGuideUrl(This,pbstrUrl);
3987 }
3988 #endif
3989 #endif
3990 
3991 #endif
3992 
3993 HRESULT STDMETHODCALLTYPE IShellUIHelper2_AddSearchProvider_Proxy(
3994     IShellUIHelper2* This,
3995     BSTR URL);
3996 void __RPC_STUB IShellUIHelper2_AddSearchProvider_Stub(
3997     IRpcStubBuffer* This,
3998     IRpcChannelBuffer* pRpcChannelBuffer,
3999     PRPC_MESSAGE pRpcMessage,
4000     DWORD* pdwStubPhase);
4001 HRESULT STDMETHODCALLTYPE IShellUIHelper2_RunOnceShown_Proxy(
4002     IShellUIHelper2* This);
4003 void __RPC_STUB IShellUIHelper2_RunOnceShown_Stub(
4004     IRpcStubBuffer* This,
4005     IRpcChannelBuffer* pRpcChannelBuffer,
4006     PRPC_MESSAGE pRpcMessage,
4007     DWORD* pdwStubPhase);
4008 HRESULT STDMETHODCALLTYPE IShellUIHelper2_SkipRunOnce_Proxy(
4009     IShellUIHelper2* This);
4010 void __RPC_STUB IShellUIHelper2_SkipRunOnce_Stub(
4011     IRpcStubBuffer* This,
4012     IRpcChannelBuffer* pRpcChannelBuffer,
4013     PRPC_MESSAGE pRpcMessage,
4014     DWORD* pdwStubPhase);
4015 HRESULT STDMETHODCALLTYPE IShellUIHelper2_CustomizeSettings_Proxy(
4016     IShellUIHelper2* This,
4017     VARIANT_BOOL fSQM,
4018     VARIANT_BOOL fPhishing,
4019     BSTR bstrLocale);
4020 void __RPC_STUB IShellUIHelper2_CustomizeSettings_Stub(
4021     IRpcStubBuffer* This,
4022     IRpcChannelBuffer* pRpcChannelBuffer,
4023     PRPC_MESSAGE pRpcMessage,
4024     DWORD* pdwStubPhase);
4025 HRESULT STDMETHODCALLTYPE IShellUIHelper2_SqmEnabled_Proxy(
4026     IShellUIHelper2* This,
4027     VARIANT_BOOL *pfEnabled);
4028 void __RPC_STUB IShellUIHelper2_SqmEnabled_Stub(
4029     IRpcStubBuffer* This,
4030     IRpcChannelBuffer* pRpcChannelBuffer,
4031     PRPC_MESSAGE pRpcMessage,
4032     DWORD* pdwStubPhase);
4033 HRESULT STDMETHODCALLTYPE IShellUIHelper2_PhishingEnabled_Proxy(
4034     IShellUIHelper2* This,
4035     VARIANT_BOOL *pfEnabled);
4036 void __RPC_STUB IShellUIHelper2_PhishingEnabled_Stub(
4037     IRpcStubBuffer* This,
4038     IRpcChannelBuffer* pRpcChannelBuffer,
4039     PRPC_MESSAGE pRpcMessage,
4040     DWORD* pdwStubPhase);
4041 HRESULT STDMETHODCALLTYPE IShellUIHelper2_BrandImageUri_Proxy(
4042     IShellUIHelper2* This,
4043     BSTR *pbstrUri);
4044 void __RPC_STUB IShellUIHelper2_BrandImageUri_Stub(
4045     IRpcStubBuffer* This,
4046     IRpcChannelBuffer* pRpcChannelBuffer,
4047     PRPC_MESSAGE pRpcMessage,
4048     DWORD* pdwStubPhase);
4049 HRESULT STDMETHODCALLTYPE IShellUIHelper2_SkipTabsWelcome_Proxy(
4050     IShellUIHelper2* This);
4051 void __RPC_STUB IShellUIHelper2_SkipTabsWelcome_Stub(
4052     IRpcStubBuffer* This,
4053     IRpcChannelBuffer* pRpcChannelBuffer,
4054     PRPC_MESSAGE pRpcMessage,
4055     DWORD* pdwStubPhase);
4056 HRESULT STDMETHODCALLTYPE IShellUIHelper2_DiagnoseConnection_Proxy(
4057     IShellUIHelper2* This);
4058 void __RPC_STUB IShellUIHelper2_DiagnoseConnection_Stub(
4059     IRpcStubBuffer* This,
4060     IRpcChannelBuffer* pRpcChannelBuffer,
4061     PRPC_MESSAGE pRpcMessage,
4062     DWORD* pdwStubPhase);
4063 HRESULT STDMETHODCALLTYPE IShellUIHelper2_CustomizeClearType_Proxy(
4064     IShellUIHelper2* This,
4065     VARIANT_BOOL fSet);
4066 void __RPC_STUB IShellUIHelper2_CustomizeClearType_Stub(
4067     IRpcStubBuffer* This,
4068     IRpcChannelBuffer* pRpcChannelBuffer,
4069     PRPC_MESSAGE pRpcMessage,
4070     DWORD* pdwStubPhase);
4071 HRESULT STDMETHODCALLTYPE IShellUIHelper2_IsSearchProviderInstalled_Proxy(
4072     IShellUIHelper2* This,
4073     BSTR URL,
4074     DWORD *pdwResult);
4075 void __RPC_STUB IShellUIHelper2_IsSearchProviderInstalled_Stub(
4076     IRpcStubBuffer* This,
4077     IRpcChannelBuffer* pRpcChannelBuffer,
4078     PRPC_MESSAGE pRpcMessage,
4079     DWORD* pdwStubPhase);
4080 HRESULT STDMETHODCALLTYPE IShellUIHelper2_IsSearchMigrated_Proxy(
4081     IShellUIHelper2* This,
4082     VARIANT_BOOL *pfMigrated);
4083 void __RPC_STUB IShellUIHelper2_IsSearchMigrated_Stub(
4084     IRpcStubBuffer* This,
4085     IRpcChannelBuffer* pRpcChannelBuffer,
4086     PRPC_MESSAGE pRpcMessage,
4087     DWORD* pdwStubPhase);
4088 HRESULT STDMETHODCALLTYPE IShellUIHelper2_DefaultSearchProvider_Proxy(
4089     IShellUIHelper2* This,
4090     BSTR *pbstrName);
4091 void __RPC_STUB IShellUIHelper2_DefaultSearchProvider_Stub(
4092     IRpcStubBuffer* This,
4093     IRpcChannelBuffer* pRpcChannelBuffer,
4094     PRPC_MESSAGE pRpcMessage,
4095     DWORD* pdwStubPhase);
4096 HRESULT STDMETHODCALLTYPE IShellUIHelper2_RunOnceRequiredSettingsComplete_Proxy(
4097     IShellUIHelper2* This,
4098     VARIANT_BOOL fComplete);
4099 void __RPC_STUB IShellUIHelper2_RunOnceRequiredSettingsComplete_Stub(
4100     IRpcStubBuffer* This,
4101     IRpcChannelBuffer* pRpcChannelBuffer,
4102     PRPC_MESSAGE pRpcMessage,
4103     DWORD* pdwStubPhase);
4104 HRESULT STDMETHODCALLTYPE IShellUIHelper2_RunOnceHasShown_Proxy(
4105     IShellUIHelper2* This,
4106     VARIANT_BOOL *pfShown);
4107 void __RPC_STUB IShellUIHelper2_RunOnceHasShown_Stub(
4108     IRpcStubBuffer* This,
4109     IRpcChannelBuffer* pRpcChannelBuffer,
4110     PRPC_MESSAGE pRpcMessage,
4111     DWORD* pdwStubPhase);
4112 HRESULT STDMETHODCALLTYPE IShellUIHelper2_SearchGuideUrl_Proxy(
4113     IShellUIHelper2* This,
4114     BSTR *pbstrUrl);
4115 void __RPC_STUB IShellUIHelper2_SearchGuideUrl_Stub(
4116     IRpcStubBuffer* This,
4117     IRpcChannelBuffer* pRpcChannelBuffer,
4118     PRPC_MESSAGE pRpcMessage,
4119     DWORD* pdwStubPhase);
4120 
4121 #endif  /* __IShellUIHelper2_INTERFACE_DEFINED__ */
4122 
4123 /*****************************************************************************
4124  * ShellUIHelper coclass
4125  */
4126 
4127 DEFINE_GUID(CLSID_ShellUIHelper, 0x64ab4bb7, 0x111e, 0x11d1, 0x8f,0x79, 0x00,0xc0,0x4f,0xc2,0xfb,0xe1);
4128 
4129 #ifdef __cplusplus
4130 class DECLSPEC_UUID("64ab4bb7-111e-11d1-8f79-00c04fc2fbe1") ShellUIHelper;
4131 #ifdef __CRT_UUID_DECL
4132 __CRT_UUID_DECL(ShellUIHelper, 0x64ab4bb7, 0x111e, 0x11d1, 0x8f,0x79, 0x00,0xc0,0x4f,0xc2,0xfb,0xe1)
4133 #endif
4134 #endif
4135 
4136 /*****************************************************************************
4137  * DShellNameSpaceEvents dispinterface
4138  */
4139 #ifndef __DShellNameSpaceEvents_DISPINTERFACE_DEFINED__
4140 #define __DShellNameSpaceEvents_DISPINTERFACE_DEFINED__
4141 
4142 DEFINE_GUID(DIID_DShellNameSpaceEvents, 0x55136806, 0xb2de, 0x11d1, 0xb9,0xf2, 0x00,0xa0,0xc9,0x8b,0xc5,0x47);
4143 #if defined(__cplusplus) && !defined(CINTERFACE)
4144 MIDL_INTERFACE("55136806-b2de-11d1-b9f2-00a0c98bc547")
4145 DShellNameSpaceEvents : public IDispatch
4146 {
4147 };
4148 #ifdef __CRT_UUID_DECL
4149 __CRT_UUID_DECL(DShellNameSpaceEvents, 0x55136806, 0xb2de, 0x11d1, 0xb9,0xf2, 0x00,0xa0,0xc9,0x8b,0xc5,0x47)
4150 #endif
4151 #else
4152 typedef struct DShellNameSpaceEventsVtbl {
4153     BEGIN_INTERFACE
4154 
4155     /*** IUnknown methods ***/
4156     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4157         DShellNameSpaceEvents* This,
4158         REFIID riid,
4159         void **ppvObject);
4160 
4161     ULONG (STDMETHODCALLTYPE *AddRef)(
4162         DShellNameSpaceEvents* This);
4163 
4164     ULONG (STDMETHODCALLTYPE *Release)(
4165         DShellNameSpaceEvents* This);
4166 
4167     /*** IDispatch methods ***/
4168     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4169         DShellNameSpaceEvents* This,
4170         UINT *pctinfo);
4171 
4172     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4173         DShellNameSpaceEvents* This,
4174         UINT iTInfo,
4175         LCID lcid,
4176         ITypeInfo **ppTInfo);
4177 
4178     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4179         DShellNameSpaceEvents* This,
4180         REFIID riid,
4181         LPOLESTR *rgszNames,
4182         UINT cNames,
4183         LCID lcid,
4184         DISPID *rgDispId);
4185 
4186     HRESULT (STDMETHODCALLTYPE *Invoke)(
4187         DShellNameSpaceEvents* This,
4188         DISPID dispIdMember,
4189         REFIID riid,
4190         LCID lcid,
4191         WORD wFlags,
4192         DISPPARAMS *pDispParams,
4193         VARIANT *pVarResult,
4194         EXCEPINFO *pExcepInfo,
4195         UINT *puArgErr);
4196 
4197     END_INTERFACE
4198 } DShellNameSpaceEventsVtbl;
4199 interface DShellNameSpaceEvents {
4200     CONST_VTBL DShellNameSpaceEventsVtbl* lpVtbl;
4201 };
4202 
4203 #ifdef COBJMACROS
4204 #ifndef WIDL_C_INLINE_WRAPPERS
4205 /*** IUnknown methods ***/
4206 #define DShellNameSpaceEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4207 #define DShellNameSpaceEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
4208 #define DShellNameSpaceEvents_Release(This) (This)->lpVtbl->Release(This)
4209 /*** IDispatch methods ***/
4210 #define DShellNameSpaceEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4211 #define DShellNameSpaceEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4212 #define DShellNameSpaceEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4213 #define DShellNameSpaceEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4214 #else
4215 /*** IUnknown methods ***/
4216 static FORCEINLINE HRESULT DShellNameSpaceEvents_QueryInterface(DShellNameSpaceEvents* This,REFIID riid,void **ppvObject) {
4217     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4218 }
4219 static FORCEINLINE ULONG DShellNameSpaceEvents_AddRef(DShellNameSpaceEvents* This) {
4220     return This->lpVtbl->AddRef(This);
4221 }
4222 static FORCEINLINE ULONG DShellNameSpaceEvents_Release(DShellNameSpaceEvents* This) {
4223     return This->lpVtbl->Release(This);
4224 }
4225 /*** IDispatch methods ***/
4226 static FORCEINLINE HRESULT DShellNameSpaceEvents_GetTypeInfoCount(DShellNameSpaceEvents* This,UINT *pctinfo) {
4227     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
4228 }
4229 static FORCEINLINE HRESULT DShellNameSpaceEvents_GetTypeInfo(DShellNameSpaceEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
4230     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
4231 }
4232 static FORCEINLINE HRESULT DShellNameSpaceEvents_GetIDsOfNames(DShellNameSpaceEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
4233     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
4234 }
4235 static FORCEINLINE HRESULT DShellNameSpaceEvents_Invoke(DShellNameSpaceEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
4236     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
4237 }
4238 #endif
4239 #endif
4240 
4241 #endif
4242 
4243 #endif  /* __DShellNameSpaceEvents_DISPINTERFACE_DEFINED__ */
4244 
4245 /*****************************************************************************
4246  * IShellFavoritesNameSpace interface
4247  */
4248 #ifndef __IShellFavoritesNameSpace_INTERFACE_DEFINED__
4249 #define __IShellFavoritesNameSpace_INTERFACE_DEFINED__
4250 
4251 DEFINE_GUID(IID_IShellFavoritesNameSpace, 0x55136804, 0xb2de, 0x11d1, 0xb9,0xf2, 0x00,0xa0,0xc9,0x8b,0xc5,0x47);
4252 #if defined(__cplusplus) && !defined(CINTERFACE)
4253 MIDL_INTERFACE("55136804-b2de-11d1-b9f2-00a0c98bc547")
4254 IShellFavoritesNameSpace : public IDispatch
4255 {
4256     virtual HRESULT STDMETHODCALLTYPE MoveSelectionUp(
4257         ) = 0;
4258 
4259     virtual HRESULT STDMETHODCALLTYPE MoveSelectionDown(
4260         ) = 0;
4261 
4262     virtual HRESULT STDMETHODCALLTYPE ResetSort(
4263         ) = 0;
4264 
4265     virtual HRESULT STDMETHODCALLTYPE NewFolder(
4266         ) = 0;
4267 
4268     virtual HRESULT STDMETHODCALLTYPE Synchronize(
4269         ) = 0;
4270 
4271     virtual HRESULT STDMETHODCALLTYPE Import(
4272         ) = 0;
4273 
4274     virtual HRESULT STDMETHODCALLTYPE Export(
4275         ) = 0;
4276 
4277     virtual HRESULT STDMETHODCALLTYPE InvokeContextMenuCommand(
4278         BSTR strCommand) = 0;
4279 
4280     virtual HRESULT STDMETHODCALLTYPE MoveSelectionTo(
4281         ) = 0;
4282 
4283     virtual HRESULT STDMETHODCALLTYPE get_SubscriptionsEnabled(
4284         VARIANT_BOOL *pBool) = 0;
4285 
4286     virtual HRESULT STDMETHODCALLTYPE CreateSubscriptionForSelection(
4287         VARIANT_BOOL *pBool) = 0;
4288 
4289     virtual HRESULT STDMETHODCALLTYPE DeleteSubscriptionForSelection(
4290         VARIANT_BOOL *pBool) = 0;
4291 
4292     virtual HRESULT STDMETHODCALLTYPE SetRoot(
4293         BSTR bstrFullPath) = 0;
4294 
4295 };
4296 #ifdef __CRT_UUID_DECL
4297 __CRT_UUID_DECL(IShellFavoritesNameSpace, 0x55136804, 0xb2de, 0x11d1, 0xb9,0xf2, 0x00,0xa0,0xc9,0x8b,0xc5,0x47)
4298 #endif
4299 #else
4300 typedef struct IShellFavoritesNameSpaceVtbl {
4301     BEGIN_INTERFACE
4302 
4303     /*** IUnknown methods ***/
4304     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4305         IShellFavoritesNameSpace* This,
4306         REFIID riid,
4307         void **ppvObject);
4308 
4309     ULONG (STDMETHODCALLTYPE *AddRef)(
4310         IShellFavoritesNameSpace* This);
4311 
4312     ULONG (STDMETHODCALLTYPE *Release)(
4313         IShellFavoritesNameSpace* This);
4314 
4315     /*** IDispatch methods ***/
4316     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4317         IShellFavoritesNameSpace* This,
4318         UINT *pctinfo);
4319 
4320     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4321         IShellFavoritesNameSpace* This,
4322         UINT iTInfo,
4323         LCID lcid,
4324         ITypeInfo **ppTInfo);
4325 
4326     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4327         IShellFavoritesNameSpace* This,
4328         REFIID riid,
4329         LPOLESTR *rgszNames,
4330         UINT cNames,
4331         LCID lcid,
4332         DISPID *rgDispId);
4333 
4334     HRESULT (STDMETHODCALLTYPE *Invoke)(
4335         IShellFavoritesNameSpace* This,
4336         DISPID dispIdMember,
4337         REFIID riid,
4338         LCID lcid,
4339         WORD wFlags,
4340         DISPPARAMS *pDispParams,
4341         VARIANT *pVarResult,
4342         EXCEPINFO *pExcepInfo,
4343         UINT *puArgErr);
4344 
4345     /*** IShellFavoritesNameSpace methods ***/
4346     HRESULT (STDMETHODCALLTYPE *MoveSelectionUp)(
4347         IShellFavoritesNameSpace* This);
4348 
4349     HRESULT (STDMETHODCALLTYPE *MoveSelectionDown)(
4350         IShellFavoritesNameSpace* This);
4351 
4352     HRESULT (STDMETHODCALLTYPE *ResetSort)(
4353         IShellFavoritesNameSpace* This);
4354 
4355     HRESULT (STDMETHODCALLTYPE *NewFolder)(
4356         IShellFavoritesNameSpace* This);
4357 
4358     HRESULT (STDMETHODCALLTYPE *Synchronize)(
4359         IShellFavoritesNameSpace* This);
4360 
4361     HRESULT (STDMETHODCALLTYPE *Import)(
4362         IShellFavoritesNameSpace* This);
4363 
4364     HRESULT (STDMETHODCALLTYPE *Export)(
4365         IShellFavoritesNameSpace* This);
4366 
4367     HRESULT (STDMETHODCALLTYPE *InvokeContextMenuCommand)(
4368         IShellFavoritesNameSpace* This,
4369         BSTR strCommand);
4370 
4371     HRESULT (STDMETHODCALLTYPE *MoveSelectionTo)(
4372         IShellFavoritesNameSpace* This);
4373 
4374     HRESULT (STDMETHODCALLTYPE *get_SubscriptionsEnabled)(
4375         IShellFavoritesNameSpace* This,
4376         VARIANT_BOOL *pBool);
4377 
4378     HRESULT (STDMETHODCALLTYPE *CreateSubscriptionForSelection)(
4379         IShellFavoritesNameSpace* This,
4380         VARIANT_BOOL *pBool);
4381 
4382     HRESULT (STDMETHODCALLTYPE *DeleteSubscriptionForSelection)(
4383         IShellFavoritesNameSpace* This,
4384         VARIANT_BOOL *pBool);
4385 
4386     HRESULT (STDMETHODCALLTYPE *SetRoot)(
4387         IShellFavoritesNameSpace* This,
4388         BSTR bstrFullPath);
4389 
4390     END_INTERFACE
4391 } IShellFavoritesNameSpaceVtbl;
4392 interface IShellFavoritesNameSpace {
4393     CONST_VTBL IShellFavoritesNameSpaceVtbl* lpVtbl;
4394 };
4395 
4396 #ifdef COBJMACROS
4397 #ifndef WIDL_C_INLINE_WRAPPERS
4398 /*** IUnknown methods ***/
4399 #define IShellFavoritesNameSpace_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4400 #define IShellFavoritesNameSpace_AddRef(This) (This)->lpVtbl->AddRef(This)
4401 #define IShellFavoritesNameSpace_Release(This) (This)->lpVtbl->Release(This)
4402 /*** IDispatch methods ***/
4403 #define IShellFavoritesNameSpace_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4404 #define IShellFavoritesNameSpace_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4405 #define IShellFavoritesNameSpace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4406 #define IShellFavoritesNameSpace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4407 /*** IShellFavoritesNameSpace methods ***/
4408 #define IShellFavoritesNameSpace_MoveSelectionUp(This) (This)->lpVtbl->MoveSelectionUp(This)
4409 #define IShellFavoritesNameSpace_MoveSelectionDown(This) (This)->lpVtbl->MoveSelectionDown(This)
4410 #define IShellFavoritesNameSpace_ResetSort(This) (This)->lpVtbl->ResetSort(This)
4411 #define IShellFavoritesNameSpace_NewFolder(This) (This)->lpVtbl->NewFolder(This)
4412 #define IShellFavoritesNameSpace_Synchronize(This) (This)->lpVtbl->Synchronize(This)
4413 #define IShellFavoritesNameSpace_Import(This) (This)->lpVtbl->Import(This)
4414 #define IShellFavoritesNameSpace_Export(This) (This)->lpVtbl->Export(This)
4415 #define IShellFavoritesNameSpace_InvokeContextMenuCommand(This,strCommand) (This)->lpVtbl->InvokeContextMenuCommand(This,strCommand)
4416 #define IShellFavoritesNameSpace_MoveSelectionTo(This) (This)->lpVtbl->MoveSelectionTo(This)
4417 #define IShellFavoritesNameSpace_get_SubscriptionsEnabled(This,pBool) (This)->lpVtbl->get_SubscriptionsEnabled(This,pBool)
4418 #define IShellFavoritesNameSpace_CreateSubscriptionForSelection(This,pBool) (This)->lpVtbl->CreateSubscriptionForSelection(This,pBool)
4419 #define IShellFavoritesNameSpace_DeleteSubscriptionForSelection(This,pBool) (This)->lpVtbl->DeleteSubscriptionForSelection(This,pBool)
4420 #define IShellFavoritesNameSpace_SetRoot(This,bstrFullPath) (This)->lpVtbl->SetRoot(This,bstrFullPath)
4421 #else
4422 /*** IUnknown methods ***/
4423 static FORCEINLINE HRESULT IShellFavoritesNameSpace_QueryInterface(IShellFavoritesNameSpace* This,REFIID riid,void **ppvObject) {
4424     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4425 }
4426 static FORCEINLINE ULONG IShellFavoritesNameSpace_AddRef(IShellFavoritesNameSpace* This) {
4427     return This->lpVtbl->AddRef(This);
4428 }
4429 static FORCEINLINE ULONG IShellFavoritesNameSpace_Release(IShellFavoritesNameSpace* This) {
4430     return This->lpVtbl->Release(This);
4431 }
4432 /*** IDispatch methods ***/
4433 static FORCEINLINE HRESULT IShellFavoritesNameSpace_GetTypeInfoCount(IShellFavoritesNameSpace* This,UINT *pctinfo) {
4434     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
4435 }
4436 static FORCEINLINE HRESULT IShellFavoritesNameSpace_GetTypeInfo(IShellFavoritesNameSpace* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
4437     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
4438 }
4439 static FORCEINLINE HRESULT IShellFavoritesNameSpace_GetIDsOfNames(IShellFavoritesNameSpace* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
4440     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
4441 }
4442 static FORCEINLINE HRESULT IShellFavoritesNameSpace_Invoke(IShellFavoritesNameSpace* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
4443     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
4444 }
4445 /*** IShellFavoritesNameSpace methods ***/
4446 static FORCEINLINE HRESULT IShellFavoritesNameSpace_MoveSelectionUp(IShellFavoritesNameSpace* This) {
4447     return This->lpVtbl->MoveSelectionUp(This);
4448 }
4449 static FORCEINLINE HRESULT IShellFavoritesNameSpace_MoveSelectionDown(IShellFavoritesNameSpace* This) {
4450     return This->lpVtbl->MoveSelectionDown(This);
4451 }
4452 static FORCEINLINE HRESULT IShellFavoritesNameSpace_ResetSort(IShellFavoritesNameSpace* This) {
4453     return This->lpVtbl->ResetSort(This);
4454 }
4455 static FORCEINLINE HRESULT IShellFavoritesNameSpace_NewFolder(IShellFavoritesNameSpace* This) {
4456     return This->lpVtbl->NewFolder(This);
4457 }
4458 static FORCEINLINE HRESULT IShellFavoritesNameSpace_Synchronize(IShellFavoritesNameSpace* This) {
4459     return This->lpVtbl->Synchronize(This);
4460 }
4461 static FORCEINLINE HRESULT IShellFavoritesNameSpace_Import(IShellFavoritesNameSpace* This) {
4462     return This->lpVtbl->Import(This);
4463 }
4464 static FORCEINLINE HRESULT IShellFavoritesNameSpace_Export(IShellFavoritesNameSpace* This) {
4465     return This->lpVtbl->Export(This);
4466 }
4467 static FORCEINLINE HRESULT IShellFavoritesNameSpace_InvokeContextMenuCommand(IShellFavoritesNameSpace* This,BSTR strCommand) {
4468     return This->lpVtbl->InvokeContextMenuCommand(This,strCommand);
4469 }
4470 static FORCEINLINE HRESULT IShellFavoritesNameSpace_MoveSelectionTo(IShellFavoritesNameSpace* This) {
4471     return This->lpVtbl->MoveSelectionTo(This);
4472 }
4473 static FORCEINLINE HRESULT IShellFavoritesNameSpace_get_SubscriptionsEnabled(IShellFavoritesNameSpace* This,VARIANT_BOOL *pBool) {
4474     return This->lpVtbl->get_SubscriptionsEnabled(This,pBool);
4475 }
4476 static FORCEINLINE HRESULT IShellFavoritesNameSpace_CreateSubscriptionForSelection(IShellFavoritesNameSpace* This,VARIANT_BOOL *pBool) {
4477     return This->lpVtbl->CreateSubscriptionForSelection(This,pBool);
4478 }
4479 static FORCEINLINE HRESULT IShellFavoritesNameSpace_DeleteSubscriptionForSelection(IShellFavoritesNameSpace* This,VARIANT_BOOL *pBool) {
4480     return This->lpVtbl->DeleteSubscriptionForSelection(This,pBool);
4481 }
4482 static FORCEINLINE HRESULT IShellFavoritesNameSpace_SetRoot(IShellFavoritesNameSpace* This,BSTR bstrFullPath) {
4483     return This->lpVtbl->SetRoot(This,bstrFullPath);
4484 }
4485 #endif
4486 #endif
4487 
4488 #endif
4489 
4490 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_MoveSelectionUp_Proxy(
4491     IShellFavoritesNameSpace* This);
4492 void __RPC_STUB IShellFavoritesNameSpace_MoveSelectionUp_Stub(
4493     IRpcStubBuffer* This,
4494     IRpcChannelBuffer* pRpcChannelBuffer,
4495     PRPC_MESSAGE pRpcMessage,
4496     DWORD* pdwStubPhase);
4497 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_MoveSelectionDown_Proxy(
4498     IShellFavoritesNameSpace* This);
4499 void __RPC_STUB IShellFavoritesNameSpace_MoveSelectionDown_Stub(
4500     IRpcStubBuffer* This,
4501     IRpcChannelBuffer* pRpcChannelBuffer,
4502     PRPC_MESSAGE pRpcMessage,
4503     DWORD* pdwStubPhase);
4504 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_ResetSort_Proxy(
4505     IShellFavoritesNameSpace* This);
4506 void __RPC_STUB IShellFavoritesNameSpace_ResetSort_Stub(
4507     IRpcStubBuffer* This,
4508     IRpcChannelBuffer* pRpcChannelBuffer,
4509     PRPC_MESSAGE pRpcMessage,
4510     DWORD* pdwStubPhase);
4511 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_NewFolder_Proxy(
4512     IShellFavoritesNameSpace* This);
4513 void __RPC_STUB IShellFavoritesNameSpace_NewFolder_Stub(
4514     IRpcStubBuffer* This,
4515     IRpcChannelBuffer* pRpcChannelBuffer,
4516     PRPC_MESSAGE pRpcMessage,
4517     DWORD* pdwStubPhase);
4518 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_Synchronize_Proxy(
4519     IShellFavoritesNameSpace* This);
4520 void __RPC_STUB IShellFavoritesNameSpace_Synchronize_Stub(
4521     IRpcStubBuffer* This,
4522     IRpcChannelBuffer* pRpcChannelBuffer,
4523     PRPC_MESSAGE pRpcMessage,
4524     DWORD* pdwStubPhase);
4525 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_Import_Proxy(
4526     IShellFavoritesNameSpace* This);
4527 void __RPC_STUB IShellFavoritesNameSpace_Import_Stub(
4528     IRpcStubBuffer* This,
4529     IRpcChannelBuffer* pRpcChannelBuffer,
4530     PRPC_MESSAGE pRpcMessage,
4531     DWORD* pdwStubPhase);
4532 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_Export_Proxy(
4533     IShellFavoritesNameSpace* This);
4534 void __RPC_STUB IShellFavoritesNameSpace_Export_Stub(
4535     IRpcStubBuffer* This,
4536     IRpcChannelBuffer* pRpcChannelBuffer,
4537     PRPC_MESSAGE pRpcMessage,
4538     DWORD* pdwStubPhase);
4539 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_InvokeContextMenuCommand_Proxy(
4540     IShellFavoritesNameSpace* This,
4541     BSTR strCommand);
4542 void __RPC_STUB IShellFavoritesNameSpace_InvokeContextMenuCommand_Stub(
4543     IRpcStubBuffer* This,
4544     IRpcChannelBuffer* pRpcChannelBuffer,
4545     PRPC_MESSAGE pRpcMessage,
4546     DWORD* pdwStubPhase);
4547 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_MoveSelectionTo_Proxy(
4548     IShellFavoritesNameSpace* This);
4549 void __RPC_STUB IShellFavoritesNameSpace_MoveSelectionTo_Stub(
4550     IRpcStubBuffer* This,
4551     IRpcChannelBuffer* pRpcChannelBuffer,
4552     PRPC_MESSAGE pRpcMessage,
4553     DWORD* pdwStubPhase);
4554 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_get_SubscriptionsEnabled_Proxy(
4555     IShellFavoritesNameSpace* This,
4556     VARIANT_BOOL *pBool);
4557 void __RPC_STUB IShellFavoritesNameSpace_get_SubscriptionsEnabled_Stub(
4558     IRpcStubBuffer* This,
4559     IRpcChannelBuffer* pRpcChannelBuffer,
4560     PRPC_MESSAGE pRpcMessage,
4561     DWORD* pdwStubPhase);
4562 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_CreateSubscriptionForSelection_Proxy(
4563     IShellFavoritesNameSpace* This,
4564     VARIANT_BOOL *pBool);
4565 void __RPC_STUB IShellFavoritesNameSpace_CreateSubscriptionForSelection_Stub(
4566     IRpcStubBuffer* This,
4567     IRpcChannelBuffer* pRpcChannelBuffer,
4568     PRPC_MESSAGE pRpcMessage,
4569     DWORD* pdwStubPhase);
4570 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_DeleteSubscriptionForSelection_Proxy(
4571     IShellFavoritesNameSpace* This,
4572     VARIANT_BOOL *pBool);
4573 void __RPC_STUB IShellFavoritesNameSpace_DeleteSubscriptionForSelection_Stub(
4574     IRpcStubBuffer* This,
4575     IRpcChannelBuffer* pRpcChannelBuffer,
4576     PRPC_MESSAGE pRpcMessage,
4577     DWORD* pdwStubPhase);
4578 HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_SetRoot_Proxy(
4579     IShellFavoritesNameSpace* This,
4580     BSTR bstrFullPath);
4581 void __RPC_STUB IShellFavoritesNameSpace_SetRoot_Stub(
4582     IRpcStubBuffer* This,
4583     IRpcChannelBuffer* pRpcChannelBuffer,
4584     PRPC_MESSAGE pRpcMessage,
4585     DWORD* pdwStubPhase);
4586 
4587 #endif  /* __IShellFavoritesNameSpace_INTERFACE_DEFINED__ */
4588 
4589 /*****************************************************************************
4590  * IShellNameSpace interface
4591  */
4592 #ifndef __IShellNameSpace_INTERFACE_DEFINED__
4593 #define __IShellNameSpace_INTERFACE_DEFINED__
4594 
4595 DEFINE_GUID(IID_IShellNameSpace, 0xe572d3c9, 0x37be, 0x4ae2, 0x82,0x5d, 0xd5,0x21,0x76,0x3e,0x31,0x08);
4596 #if defined(__cplusplus) && !defined(CINTERFACE)
4597 MIDL_INTERFACE("e572d3c9-37be-4ae2-825d-d521763e3108")
4598 IShellNameSpace : public IShellFavoritesNameSpace
4599 {
4600     virtual HRESULT STDMETHODCALLTYPE get_EnumOptions(
4601         LONG *pgrfEnumFlags) = 0;
4602 
4603     virtual HRESULT STDMETHODCALLTYPE put_EnumOptions(
4604         LONG pgrfEnumFlags) = 0;
4605 
4606     virtual HRESULT STDMETHODCALLTYPE get_SelectedItem(
4607         IDispatch **pItem) = 0;
4608 
4609     virtual HRESULT STDMETHODCALLTYPE put_SelectedItem(
4610         IDispatch *pItem) = 0;
4611 
4612     virtual HRESULT STDMETHODCALLTYPE get_Root(
4613         VARIANT *pvar) = 0;
4614 
4615     virtual HRESULT STDMETHODCALLTYPE put_Root(
4616         VARIANT pvar) = 0;
4617 
4618     virtual HRESULT STDMETHODCALLTYPE get_Depth(
4619         int *piDepth) = 0;
4620 
4621     virtual HRESULT STDMETHODCALLTYPE put_Depth(
4622         int piDepth) = 0;
4623 
4624     virtual HRESULT STDMETHODCALLTYPE get_Mode(
4625         unsigned int *puMode) = 0;
4626 
4627     virtual HRESULT STDMETHODCALLTYPE put_Mode(
4628         unsigned int puMode) = 0;
4629 
4630     virtual HRESULT STDMETHODCALLTYPE get_Flags(
4631         ULONG *pdwFlags) = 0;
4632 
4633     virtual HRESULT STDMETHODCALLTYPE put_Flags(
4634         ULONG pdwFlags) = 0;
4635 
4636     virtual HRESULT STDMETHODCALLTYPE put_TVFlags(
4637         ULONG dwFlags) = 0;
4638 
4639     virtual HRESULT STDMETHODCALLTYPE get_TVFlags(
4640         ULONG *dwFlags) = 0;
4641 
4642     virtual HRESULT STDMETHODCALLTYPE get_Columns(
4643         BSTR *bstrColumns) = 0;
4644 
4645     virtual HRESULT STDMETHODCALLTYPE put_Columns(
4646         BSTR bstrColumns) = 0;
4647 
4648     virtual HRESULT STDMETHODCALLTYPE get_CountViewTypes(
4649         int *piTypes) = 0;
4650 
4651     virtual HRESULT STDMETHODCALLTYPE SetViewType(
4652         int iType) = 0;
4653 
4654     virtual HRESULT STDMETHODCALLTYPE SelectedItems(
4655         IDispatch **ppid) = 0;
4656 
4657     virtual HRESULT STDMETHODCALLTYPE Expand(
4658         VARIANT var,
4659         int iDepth) = 0;
4660 
4661     virtual HRESULT STDMETHODCALLTYPE UnselectAll(
4662         ) = 0;
4663 
4664 };
4665 #ifdef __CRT_UUID_DECL
4666 __CRT_UUID_DECL(IShellNameSpace, 0xe572d3c9, 0x37be, 0x4ae2, 0x82,0x5d, 0xd5,0x21,0x76,0x3e,0x31,0x08)
4667 #endif
4668 #else
4669 typedef struct IShellNameSpaceVtbl {
4670     BEGIN_INTERFACE
4671 
4672     /*** IUnknown methods ***/
4673     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4674         IShellNameSpace* This,
4675         REFIID riid,
4676         void **ppvObject);
4677 
4678     ULONG (STDMETHODCALLTYPE *AddRef)(
4679         IShellNameSpace* This);
4680 
4681     ULONG (STDMETHODCALLTYPE *Release)(
4682         IShellNameSpace* This);
4683 
4684     /*** IDispatch methods ***/
4685     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4686         IShellNameSpace* This,
4687         UINT *pctinfo);
4688 
4689     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4690         IShellNameSpace* This,
4691         UINT iTInfo,
4692         LCID lcid,
4693         ITypeInfo **ppTInfo);
4694 
4695     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4696         IShellNameSpace* This,
4697         REFIID riid,
4698         LPOLESTR *rgszNames,
4699         UINT cNames,
4700         LCID lcid,
4701         DISPID *rgDispId);
4702 
4703     HRESULT (STDMETHODCALLTYPE *Invoke)(
4704         IShellNameSpace* This,
4705         DISPID dispIdMember,
4706         REFIID riid,
4707         LCID lcid,
4708         WORD wFlags,
4709         DISPPARAMS *pDispParams,
4710         VARIANT *pVarResult,
4711         EXCEPINFO *pExcepInfo,
4712         UINT *puArgErr);
4713 
4714     /*** IShellFavoritesNameSpace methods ***/
4715     HRESULT (STDMETHODCALLTYPE *MoveSelectionUp)(
4716         IShellNameSpace* This);
4717 
4718     HRESULT (STDMETHODCALLTYPE *MoveSelectionDown)(
4719         IShellNameSpace* This);
4720 
4721     HRESULT (STDMETHODCALLTYPE *ResetSort)(
4722         IShellNameSpace* This);
4723 
4724     HRESULT (STDMETHODCALLTYPE *NewFolder)(
4725         IShellNameSpace* This);
4726 
4727     HRESULT (STDMETHODCALLTYPE *Synchronize)(
4728         IShellNameSpace* This);
4729 
4730     HRESULT (STDMETHODCALLTYPE *Import)(
4731         IShellNameSpace* This);
4732 
4733     HRESULT (STDMETHODCALLTYPE *Export)(
4734         IShellNameSpace* This);
4735 
4736     HRESULT (STDMETHODCALLTYPE *InvokeContextMenuCommand)(
4737         IShellNameSpace* This,
4738         BSTR strCommand);
4739 
4740     HRESULT (STDMETHODCALLTYPE *MoveSelectionTo)(
4741         IShellNameSpace* This);
4742 
4743     HRESULT (STDMETHODCALLTYPE *get_SubscriptionsEnabled)(
4744         IShellNameSpace* This,
4745         VARIANT_BOOL *pBool);
4746 
4747     HRESULT (STDMETHODCALLTYPE *CreateSubscriptionForSelection)(
4748         IShellNameSpace* This,
4749         VARIANT_BOOL *pBool);
4750 
4751     HRESULT (STDMETHODCALLTYPE *DeleteSubscriptionForSelection)(
4752         IShellNameSpace* This,
4753         VARIANT_BOOL *pBool);
4754 
4755     HRESULT (STDMETHODCALLTYPE *SetRoot)(
4756         IShellNameSpace* This,
4757         BSTR bstrFullPath);
4758 
4759     /*** IShellNameSpace methods ***/
4760     HRESULT (STDMETHODCALLTYPE *get_EnumOptions)(
4761         IShellNameSpace* This,
4762         LONG *pgrfEnumFlags);
4763 
4764     HRESULT (STDMETHODCALLTYPE *put_EnumOptions)(
4765         IShellNameSpace* This,
4766         LONG pgrfEnumFlags);
4767 
4768     HRESULT (STDMETHODCALLTYPE *get_SelectedItem)(
4769         IShellNameSpace* This,
4770         IDispatch **pItem);
4771 
4772     HRESULT (STDMETHODCALLTYPE *put_SelectedItem)(
4773         IShellNameSpace* This,
4774         IDispatch *pItem);
4775 
4776     HRESULT (STDMETHODCALLTYPE *get_Root)(
4777         IShellNameSpace* This,
4778         VARIANT *pvar);
4779 
4780     HRESULT (STDMETHODCALLTYPE *put_Root)(
4781         IShellNameSpace* This,
4782         VARIANT pvar);
4783 
4784     HRESULT (STDMETHODCALLTYPE *get_Depth)(
4785         IShellNameSpace* This,
4786         int *piDepth);
4787 
4788     HRESULT (STDMETHODCALLTYPE *put_Depth)(
4789         IShellNameSpace* This,
4790         int piDepth);
4791 
4792     HRESULT (STDMETHODCALLTYPE *get_Mode)(
4793         IShellNameSpace* This,
4794         unsigned int *puMode);
4795 
4796     HRESULT (STDMETHODCALLTYPE *put_Mode)(
4797         IShellNameSpace* This,
4798         unsigned int puMode);
4799 
4800     HRESULT (STDMETHODCALLTYPE *get_Flags)(
4801         IShellNameSpace* This,
4802         ULONG *pdwFlags);
4803 
4804     HRESULT (STDMETHODCALLTYPE *put_Flags)(
4805         IShellNameSpace* This,
4806         ULONG pdwFlags);
4807 
4808     HRESULT (STDMETHODCALLTYPE *put_TVFlags)(
4809         IShellNameSpace* This,
4810         ULONG dwFlags);
4811 
4812     HRESULT (STDMETHODCALLTYPE *get_TVFlags)(
4813         IShellNameSpace* This,
4814         ULONG *dwFlags);
4815 
4816     HRESULT (STDMETHODCALLTYPE *get_Columns)(
4817         IShellNameSpace* This,
4818         BSTR *bstrColumns);
4819 
4820     HRESULT (STDMETHODCALLTYPE *put_Columns)(
4821         IShellNameSpace* This,
4822         BSTR bstrColumns);
4823 
4824     HRESULT (STDMETHODCALLTYPE *get_CountViewTypes)(
4825         IShellNameSpace* This,
4826         int *piTypes);
4827 
4828     HRESULT (STDMETHODCALLTYPE *SetViewType)(
4829         IShellNameSpace* This,
4830         int iType);
4831 
4832     HRESULT (STDMETHODCALLTYPE *SelectedItems)(
4833         IShellNameSpace* This,
4834         IDispatch **ppid);
4835 
4836     HRESULT (STDMETHODCALLTYPE *Expand)(
4837         IShellNameSpace* This,
4838         VARIANT var,
4839         int iDepth);
4840 
4841     HRESULT (STDMETHODCALLTYPE *UnselectAll)(
4842         IShellNameSpace* This);
4843 
4844     END_INTERFACE
4845 } IShellNameSpaceVtbl;
4846 interface IShellNameSpace {
4847     CONST_VTBL IShellNameSpaceVtbl* lpVtbl;
4848 };
4849 
4850 #ifdef COBJMACROS
4851 #ifndef WIDL_C_INLINE_WRAPPERS
4852 /*** IUnknown methods ***/
4853 #define IShellNameSpace_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4854 #define IShellNameSpace_AddRef(This) (This)->lpVtbl->AddRef(This)
4855 #define IShellNameSpace_Release(This) (This)->lpVtbl->Release(This)
4856 /*** IDispatch methods ***/
4857 #define IShellNameSpace_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4858 #define IShellNameSpace_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4859 #define IShellNameSpace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4860 #define IShellNameSpace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4861 /*** IShellFavoritesNameSpace methods ***/
4862 #define IShellNameSpace_MoveSelectionUp(This) (This)->lpVtbl->MoveSelectionUp(This)
4863 #define IShellNameSpace_MoveSelectionDown(This) (This)->lpVtbl->MoveSelectionDown(This)
4864 #define IShellNameSpace_ResetSort(This) (This)->lpVtbl->ResetSort(This)
4865 #define IShellNameSpace_NewFolder(This) (This)->lpVtbl->NewFolder(This)
4866 #define IShellNameSpace_Synchronize(This) (This)->lpVtbl->Synchronize(This)
4867 #define IShellNameSpace_Import(This) (This)->lpVtbl->Import(This)
4868 #define IShellNameSpace_Export(This) (This)->lpVtbl->Export(This)
4869 #define IShellNameSpace_InvokeContextMenuCommand(This,strCommand) (This)->lpVtbl->InvokeContextMenuCommand(This,strCommand)
4870 #define IShellNameSpace_MoveSelectionTo(This) (This)->lpVtbl->MoveSelectionTo(This)
4871 #define IShellNameSpace_get_SubscriptionsEnabled(This,pBool) (This)->lpVtbl->get_SubscriptionsEnabled(This,pBool)
4872 #define IShellNameSpace_CreateSubscriptionForSelection(This,pBool) (This)->lpVtbl->CreateSubscriptionForSelection(This,pBool)
4873 #define IShellNameSpace_DeleteSubscriptionForSelection(This,pBool) (This)->lpVtbl->DeleteSubscriptionForSelection(This,pBool)
4874 #define IShellNameSpace_SetRoot(This,bstrFullPath) (This)->lpVtbl->SetRoot(This,bstrFullPath)
4875 /*** IShellNameSpace methods ***/
4876 #define IShellNameSpace_get_EnumOptions(This,pgrfEnumFlags) (This)->lpVtbl->get_EnumOptions(This,pgrfEnumFlags)
4877 #define IShellNameSpace_put_EnumOptions(This,pgrfEnumFlags) (This)->lpVtbl->put_EnumOptions(This,pgrfEnumFlags)
4878 #define IShellNameSpace_get_SelectedItem(This,pItem) (This)->lpVtbl->get_SelectedItem(This,pItem)
4879 #define IShellNameSpace_put_SelectedItem(This,pItem) (This)->lpVtbl->put_SelectedItem(This,pItem)
4880 #define IShellNameSpace_get_Root(This,pvar) (This)->lpVtbl->get_Root(This,pvar)
4881 #define IShellNameSpace_put_Root(This,pvar) (This)->lpVtbl->put_Root(This,pvar)
4882 #define IShellNameSpace_get_Depth(This,piDepth) (This)->lpVtbl->get_Depth(This,piDepth)
4883 #define IShellNameSpace_put_Depth(This,piDepth) (This)->lpVtbl->put_Depth(This,piDepth)
4884 #define IShellNameSpace_get_Mode(This,puMode) (This)->lpVtbl->get_Mode(This,puMode)
4885 #define IShellNameSpace_put_Mode(This,puMode) (This)->lpVtbl->put_Mode(This,puMode)
4886 #define IShellNameSpace_get_Flags(This,pdwFlags) (This)->lpVtbl->get_Flags(This,pdwFlags)
4887 #define IShellNameSpace_put_Flags(This,pdwFlags) (This)->lpVtbl->put_Flags(This,pdwFlags)
4888 #define IShellNameSpace_put_TVFlags(This,dwFlags) (This)->lpVtbl->put_TVFlags(This,dwFlags)
4889 #define IShellNameSpace_get_TVFlags(This,dwFlags) (This)->lpVtbl->get_TVFlags(This,dwFlags)
4890 #define IShellNameSpace_get_Columns(This,bstrColumns) (This)->lpVtbl->get_Columns(This,bstrColumns)
4891 #define IShellNameSpace_put_Columns(This,bstrColumns) (This)->lpVtbl->put_Columns(This,bstrColumns)
4892 #define IShellNameSpace_get_CountViewTypes(This,piTypes) (This)->lpVtbl->get_CountViewTypes(This,piTypes)
4893 #define IShellNameSpace_SetViewType(This,iType) (This)->lpVtbl->SetViewType(This,iType)
4894 #define IShellNameSpace_SelectedItems(This,ppid) (This)->lpVtbl->SelectedItems(This,ppid)
4895 #define IShellNameSpace_Expand(This,var,iDepth) (This)->lpVtbl->Expand(This,var,iDepth)
4896 #define IShellNameSpace_UnselectAll(This) (This)->lpVtbl->UnselectAll(This)
4897 #else
4898 /*** IUnknown methods ***/
4899 static FORCEINLINE HRESULT IShellNameSpace_QueryInterface(IShellNameSpace* This,REFIID riid,void **ppvObject) {
4900     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4901 }
4902 static FORCEINLINE ULONG IShellNameSpace_AddRef(IShellNameSpace* This) {
4903     return This->lpVtbl->AddRef(This);
4904 }
4905 static FORCEINLINE ULONG IShellNameSpace_Release(IShellNameSpace* This) {
4906     return This->lpVtbl->Release(This);
4907 }
4908 /*** IDispatch methods ***/
4909 static FORCEINLINE HRESULT IShellNameSpace_GetTypeInfoCount(IShellNameSpace* This,UINT *pctinfo) {
4910     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
4911 }
4912 static FORCEINLINE HRESULT IShellNameSpace_GetTypeInfo(IShellNameSpace* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
4913     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
4914 }
4915 static FORCEINLINE HRESULT IShellNameSpace_GetIDsOfNames(IShellNameSpace* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
4916     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
4917 }
4918 static FORCEINLINE HRESULT IShellNameSpace_Invoke(IShellNameSpace* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
4919     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
4920 }
4921 /*** IShellFavoritesNameSpace methods ***/
4922 static FORCEINLINE HRESULT IShellNameSpace_MoveSelectionUp(IShellNameSpace* This) {
4923     return This->lpVtbl->MoveSelectionUp(This);
4924 }
4925 static FORCEINLINE HRESULT IShellNameSpace_MoveSelectionDown(IShellNameSpace* This) {
4926     return This->lpVtbl->MoveSelectionDown(This);
4927 }
4928 static FORCEINLINE HRESULT IShellNameSpace_ResetSort(IShellNameSpace* This) {
4929     return This->lpVtbl->ResetSort(This);
4930 }
4931 static FORCEINLINE HRESULT IShellNameSpace_NewFolder(IShellNameSpace* This) {
4932     return This->lpVtbl->NewFolder(This);
4933 }
4934 static FORCEINLINE HRESULT IShellNameSpace_Synchronize(IShellNameSpace* This) {
4935     return This->lpVtbl->Synchronize(This);
4936 }
4937 static FORCEINLINE HRESULT IShellNameSpace_Import(IShellNameSpace* This) {
4938     return This->lpVtbl->Import(This);
4939 }
4940 static FORCEINLINE HRESULT IShellNameSpace_Export(IShellNameSpace* This) {
4941     return This->lpVtbl->Export(This);
4942 }
4943 static FORCEINLINE HRESULT IShellNameSpace_InvokeContextMenuCommand(IShellNameSpace* This,BSTR strCommand) {
4944     return This->lpVtbl->InvokeContextMenuCommand(This,strCommand);
4945 }
4946 static FORCEINLINE HRESULT IShellNameSpace_MoveSelectionTo(IShellNameSpace* This) {
4947     return This->lpVtbl->MoveSelectionTo(This);
4948 }
4949 static FORCEINLINE HRESULT IShellNameSpace_get_SubscriptionsEnabled(IShellNameSpace* This,VARIANT_BOOL *pBool) {
4950     return This->lpVtbl->get_SubscriptionsEnabled(This,pBool);
4951 }
4952 static FORCEINLINE HRESULT IShellNameSpace_CreateSubscriptionForSelection(IShellNameSpace* This,VARIANT_BOOL *pBool) {
4953     return This->lpVtbl->CreateSubscriptionForSelection(This,pBool);
4954 }
4955 static FORCEINLINE HRESULT IShellNameSpace_DeleteSubscriptionForSelection(IShellNameSpace* This,VARIANT_BOOL *pBool) {
4956     return This->lpVtbl->DeleteSubscriptionForSelection(This,pBool);
4957 }
4958 static FORCEINLINE HRESULT IShellNameSpace_SetRoot(IShellNameSpace* This,BSTR bstrFullPath) {
4959     return This->lpVtbl->SetRoot(This,bstrFullPath);
4960 }
4961 /*** IShellNameSpace methods ***/
4962 static FORCEINLINE HRESULT IShellNameSpace_get_EnumOptions(IShellNameSpace* This,LONG *pgrfEnumFlags) {
4963     return This->lpVtbl->get_EnumOptions(This,pgrfEnumFlags);
4964 }
4965 static FORCEINLINE HRESULT IShellNameSpace_put_EnumOptions(IShellNameSpace* This,LONG pgrfEnumFlags) {
4966     return This->lpVtbl->put_EnumOptions(This,pgrfEnumFlags);
4967 }
4968 static FORCEINLINE HRESULT IShellNameSpace_get_SelectedItem(IShellNameSpace* This,IDispatch **pItem) {
4969     return This->lpVtbl->get_SelectedItem(This,pItem);
4970 }
4971 static FORCEINLINE HRESULT IShellNameSpace_put_SelectedItem(IShellNameSpace* This,IDispatch *pItem) {
4972     return This->lpVtbl->put_SelectedItem(This,pItem);
4973 }
4974 static FORCEINLINE HRESULT IShellNameSpace_get_Root(IShellNameSpace* This,VARIANT *pvar) {
4975     return This->lpVtbl->get_Root(This,pvar);
4976 }
4977 static FORCEINLINE HRESULT IShellNameSpace_put_Root(IShellNameSpace* This,VARIANT pvar) {
4978     return This->lpVtbl->put_Root(This,pvar);
4979 }
4980 static FORCEINLINE HRESULT IShellNameSpace_get_Depth(IShellNameSpace* This,int *piDepth) {
4981     return This->lpVtbl->get_Depth(This,piDepth);
4982 }
4983 static FORCEINLINE HRESULT IShellNameSpace_put_Depth(IShellNameSpace* This,int piDepth) {
4984     return This->lpVtbl->put_Depth(This,piDepth);
4985 }
4986 static FORCEINLINE HRESULT IShellNameSpace_get_Mode(IShellNameSpace* This,unsigned int *puMode) {
4987     return This->lpVtbl->get_Mode(This,puMode);
4988 }
4989 static FORCEINLINE HRESULT IShellNameSpace_put_Mode(IShellNameSpace* This,unsigned int puMode) {
4990     return This->lpVtbl->put_Mode(This,puMode);
4991 }
4992 static FORCEINLINE HRESULT IShellNameSpace_get_Flags(IShellNameSpace* This,ULONG *pdwFlags) {
4993     return This->lpVtbl->get_Flags(This,pdwFlags);
4994 }
4995 static FORCEINLINE HRESULT IShellNameSpace_put_Flags(IShellNameSpace* This,ULONG pdwFlags) {
4996     return This->lpVtbl->put_Flags(This,pdwFlags);
4997 }
4998 static FORCEINLINE HRESULT IShellNameSpace_put_TVFlags(IShellNameSpace* This,ULONG dwFlags) {
4999     return This->lpVtbl->put_TVFlags(This,dwFlags);
5000 }
5001 static FORCEINLINE HRESULT IShellNameSpace_get_TVFlags(IShellNameSpace* This,ULONG *dwFlags) {
5002     return This->lpVtbl->get_TVFlags(This,dwFlags);
5003 }
5004 static FORCEINLINE HRESULT IShellNameSpace_get_Columns(IShellNameSpace* This,BSTR *bstrColumns) {
5005     return This->lpVtbl->get_Columns(This,bstrColumns);
5006 }
5007 static FORCEINLINE HRESULT IShellNameSpace_put_Columns(IShellNameSpace* This,BSTR bstrColumns) {
5008     return This->lpVtbl->put_Columns(This,bstrColumns);
5009 }
5010 static FORCEINLINE HRESULT IShellNameSpace_get_CountViewTypes(IShellNameSpace* This,int *piTypes) {
5011     return This->lpVtbl->get_CountViewTypes(This,piTypes);
5012 }
5013 static FORCEINLINE HRESULT IShellNameSpace_SetViewType(IShellNameSpace* This,int iType) {
5014     return This->lpVtbl->SetViewType(This,iType);
5015 }
5016 static FORCEINLINE HRESULT IShellNameSpace_SelectedItems(IShellNameSpace* This,IDispatch **ppid) {
5017     return This->lpVtbl->SelectedItems(This,ppid);
5018 }
5019 static FORCEINLINE HRESULT IShellNameSpace_Expand(IShellNameSpace* This,VARIANT var,int iDepth) {
5020     return This->lpVtbl->Expand(This,var,iDepth);
5021 }
5022 static FORCEINLINE HRESULT IShellNameSpace_UnselectAll(IShellNameSpace* This) {
5023     return This->lpVtbl->UnselectAll(This);
5024 }
5025 #endif
5026 #endif
5027 
5028 #endif
5029 
5030 HRESULT STDMETHODCALLTYPE IShellNameSpace_get_EnumOptions_Proxy(
5031     IShellNameSpace* This,
5032     LONG *pgrfEnumFlags);
5033 void __RPC_STUB IShellNameSpace_get_EnumOptions_Stub(
5034     IRpcStubBuffer* This,
5035     IRpcChannelBuffer* pRpcChannelBuffer,
5036     PRPC_MESSAGE pRpcMessage,
5037     DWORD* pdwStubPhase);
5038 HRESULT STDMETHODCALLTYPE IShellNameSpace_put_EnumOptions_Proxy(
5039     IShellNameSpace* This,
5040     LONG pgrfEnumFlags);
5041 void __RPC_STUB IShellNameSpace_put_EnumOptions_Stub(
5042     IRpcStubBuffer* This,
5043     IRpcChannelBuffer* pRpcChannelBuffer,
5044     PRPC_MESSAGE pRpcMessage,
5045     DWORD* pdwStubPhase);
5046 HRESULT STDMETHODCALLTYPE IShellNameSpace_get_SelectedItem_Proxy(
5047     IShellNameSpace* This,
5048     IDispatch **pItem);
5049 void __RPC_STUB IShellNameSpace_get_SelectedItem_Stub(
5050     IRpcStubBuffer* This,
5051     IRpcChannelBuffer* pRpcChannelBuffer,
5052     PRPC_MESSAGE pRpcMessage,
5053     DWORD* pdwStubPhase);
5054 HRESULT STDMETHODCALLTYPE IShellNameSpace_put_SelectedItem_Proxy(
5055     IShellNameSpace* This,
5056     IDispatch *pItem);
5057 void __RPC_STUB IShellNameSpace_put_SelectedItem_Stub(
5058     IRpcStubBuffer* This,
5059     IRpcChannelBuffer* pRpcChannelBuffer,
5060     PRPC_MESSAGE pRpcMessage,
5061     DWORD* pdwStubPhase);
5062 HRESULT STDMETHODCALLTYPE IShellNameSpace_get_Root_Proxy(
5063     IShellNameSpace* This,
5064     VARIANT *pvar);
5065 void __RPC_STUB IShellNameSpace_get_Root_Stub(
5066     IRpcStubBuffer* This,
5067     IRpcChannelBuffer* pRpcChannelBuffer,
5068     PRPC_MESSAGE pRpcMessage,
5069     DWORD* pdwStubPhase);
5070 HRESULT STDMETHODCALLTYPE IShellNameSpace_put_Root_Proxy(
5071     IShellNameSpace* This,
5072     VARIANT pvar);
5073 void __RPC_STUB IShellNameSpace_put_Root_Stub(
5074     IRpcStubBuffer* This,
5075     IRpcChannelBuffer* pRpcChannelBuffer,
5076     PRPC_MESSAGE pRpcMessage,
5077     DWORD* pdwStubPhase);
5078 HRESULT STDMETHODCALLTYPE IShellNameSpace_get_Depth_Proxy(
5079     IShellNameSpace* This,
5080     int *piDepth);
5081 void __RPC_STUB IShellNameSpace_get_Depth_Stub(
5082     IRpcStubBuffer* This,
5083     IRpcChannelBuffer* pRpcChannelBuffer,
5084     PRPC_MESSAGE pRpcMessage,
5085     DWORD* pdwStubPhase);
5086 HRESULT STDMETHODCALLTYPE IShellNameSpace_put_Depth_Proxy(
5087     IShellNameSpace* This,
5088     int piDepth);
5089 void __RPC_STUB IShellNameSpace_put_Depth_Stub(
5090     IRpcStubBuffer* This,
5091     IRpcChannelBuffer* pRpcChannelBuffer,
5092     PRPC_MESSAGE pRpcMessage,
5093     DWORD* pdwStubPhase);
5094 HRESULT STDMETHODCALLTYPE IShellNameSpace_get_Mode_Proxy(
5095     IShellNameSpace* This,
5096     unsigned int *puMode);
5097 void __RPC_STUB IShellNameSpace_get_Mode_Stub(
5098     IRpcStubBuffer* This,
5099     IRpcChannelBuffer* pRpcChannelBuffer,
5100     PRPC_MESSAGE pRpcMessage,
5101     DWORD* pdwStubPhase);
5102 HRESULT STDMETHODCALLTYPE IShellNameSpace_put_Mode_Proxy(
5103     IShellNameSpace* This,
5104     unsigned int puMode);
5105 void __RPC_STUB IShellNameSpace_put_Mode_Stub(
5106     IRpcStubBuffer* This,
5107     IRpcChannelBuffer* pRpcChannelBuffer,
5108     PRPC_MESSAGE pRpcMessage,
5109     DWORD* pdwStubPhase);
5110 HRESULT STDMETHODCALLTYPE IShellNameSpace_get_Flags_Proxy(
5111     IShellNameSpace* This,
5112     ULONG *pdwFlags);
5113 void __RPC_STUB IShellNameSpace_get_Flags_Stub(
5114     IRpcStubBuffer* This,
5115     IRpcChannelBuffer* pRpcChannelBuffer,
5116     PRPC_MESSAGE pRpcMessage,
5117     DWORD* pdwStubPhase);
5118 HRESULT STDMETHODCALLTYPE IShellNameSpace_put_Flags_Proxy(
5119     IShellNameSpace* This,
5120     ULONG pdwFlags);
5121 void __RPC_STUB IShellNameSpace_put_Flags_Stub(
5122     IRpcStubBuffer* This,
5123     IRpcChannelBuffer* pRpcChannelBuffer,
5124     PRPC_MESSAGE pRpcMessage,
5125     DWORD* pdwStubPhase);
5126 HRESULT STDMETHODCALLTYPE IShellNameSpace_put_TVFlags_Proxy(
5127     IShellNameSpace* This,
5128     ULONG dwFlags);
5129 void __RPC_STUB IShellNameSpace_put_TVFlags_Stub(
5130     IRpcStubBuffer* This,
5131     IRpcChannelBuffer* pRpcChannelBuffer,
5132     PRPC_MESSAGE pRpcMessage,
5133     DWORD* pdwStubPhase);
5134 HRESULT STDMETHODCALLTYPE IShellNameSpace_get_TVFlags_Proxy(
5135     IShellNameSpace* This,
5136     ULONG *dwFlags);
5137 void __RPC_STUB IShellNameSpace_get_TVFlags_Stub(
5138     IRpcStubBuffer* This,
5139     IRpcChannelBuffer* pRpcChannelBuffer,
5140     PRPC_MESSAGE pRpcMessage,
5141     DWORD* pdwStubPhase);
5142 HRESULT STDMETHODCALLTYPE IShellNameSpace_get_Columns_Proxy(
5143     IShellNameSpace* This,
5144     BSTR *bstrColumns);
5145 void __RPC_STUB IShellNameSpace_get_Columns_Stub(
5146     IRpcStubBuffer* This,
5147     IRpcChannelBuffer* pRpcChannelBuffer,
5148     PRPC_MESSAGE pRpcMessage,
5149     DWORD* pdwStubPhase);
5150 HRESULT STDMETHODCALLTYPE IShellNameSpace_put_Columns_Proxy(
5151     IShellNameSpace* This,
5152     BSTR bstrColumns);
5153 void __RPC_STUB IShellNameSpace_put_Columns_Stub(
5154     IRpcStubBuffer* This,
5155     IRpcChannelBuffer* pRpcChannelBuffer,
5156     PRPC_MESSAGE pRpcMessage,
5157     DWORD* pdwStubPhase);
5158 HRESULT STDMETHODCALLTYPE IShellNameSpace_get_CountViewTypes_Proxy(
5159     IShellNameSpace* This,
5160     int *piTypes);
5161 void __RPC_STUB IShellNameSpace_get_CountViewTypes_Stub(
5162     IRpcStubBuffer* This,
5163     IRpcChannelBuffer* pRpcChannelBuffer,
5164     PRPC_MESSAGE pRpcMessage,
5165     DWORD* pdwStubPhase);
5166 HRESULT STDMETHODCALLTYPE IShellNameSpace_SetViewType_Proxy(
5167     IShellNameSpace* This,
5168     int iType);
5169 void __RPC_STUB IShellNameSpace_SetViewType_Stub(
5170     IRpcStubBuffer* This,
5171     IRpcChannelBuffer* pRpcChannelBuffer,
5172     PRPC_MESSAGE pRpcMessage,
5173     DWORD* pdwStubPhase);
5174 HRESULT STDMETHODCALLTYPE IShellNameSpace_SelectedItems_Proxy(
5175     IShellNameSpace* This,
5176     IDispatch **ppid);
5177 void __RPC_STUB IShellNameSpace_SelectedItems_Stub(
5178     IRpcStubBuffer* This,
5179     IRpcChannelBuffer* pRpcChannelBuffer,
5180     PRPC_MESSAGE pRpcMessage,
5181     DWORD* pdwStubPhase);
5182 HRESULT STDMETHODCALLTYPE IShellNameSpace_Expand_Proxy(
5183     IShellNameSpace* This,
5184     VARIANT var,
5185     int iDepth);
5186 void __RPC_STUB IShellNameSpace_Expand_Stub(
5187     IRpcStubBuffer* This,
5188     IRpcChannelBuffer* pRpcChannelBuffer,
5189     PRPC_MESSAGE pRpcMessage,
5190     DWORD* pdwStubPhase);
5191 HRESULT STDMETHODCALLTYPE IShellNameSpace_UnselectAll_Proxy(
5192     IShellNameSpace* This);
5193 void __RPC_STUB IShellNameSpace_UnselectAll_Stub(
5194     IRpcStubBuffer* This,
5195     IRpcChannelBuffer* pRpcChannelBuffer,
5196     PRPC_MESSAGE pRpcMessage,
5197     DWORD* pdwStubPhase);
5198 
5199 #endif  /* __IShellNameSpace_INTERFACE_DEFINED__ */
5200 
5201 /*****************************************************************************
5202  * ShellShellNameSpace coclass
5203  */
5204 
5205 DEFINE_GUID(CLSID_ShellShellNameSpace, 0x2f2f1f96, 0x2bc1, 0x4b1c, 0xbe,0x28, 0xea,0x37,0x74,0xf4,0x67,0x6a);
5206 
5207 #ifdef __cplusplus
5208 class DECLSPEC_UUID("2f2f1f96-2bc1-4b1c-be28-ea3774f4676a") ShellShellNameSpace;
5209 #ifdef __CRT_UUID_DECL
5210 __CRT_UUID_DECL(ShellShellNameSpace, 0x2f2f1f96, 0x2bc1, 0x4b1c, 0xbe,0x28, 0xea,0x37,0x74,0xf4,0x67,0x6a)
5211 #endif
5212 #endif
5213 
5214 /*****************************************************************************
5215  * ShellNameSpace coclass
5216  */
5217 
5218 DEFINE_GUID(CLSID_ShellNameSpace, 0x55136805, 0xb2de, 0x11d1, 0xb9,0xf2, 0x00,0xa0,0xc9,0x8b,0xc5,0x47);
5219 
5220 #ifdef __cplusplus
5221 class DECLSPEC_UUID("55136805-b2de-11d1-b9f2-00a0c98bc547") ShellNameSpace;
5222 #ifdef __CRT_UUID_DECL
5223 __CRT_UUID_DECL(ShellNameSpace, 0x55136805, 0xb2de, 0x11d1, 0xb9,0xf2, 0x00,0xa0,0xc9,0x8b,0xc5,0x47)
5224 #endif
5225 #endif
5226 
5227 /*****************************************************************************
5228  * IScriptErrorList interface
5229  */
5230 #ifndef __IScriptErrorList_INTERFACE_DEFINED__
5231 #define __IScriptErrorList_INTERFACE_DEFINED__
5232 
5233 DEFINE_GUID(IID_IScriptErrorList, 0xf3470f24, 0x15fd, 0x11d2, 0xbb,0x2e, 0x00,0x80,0x5f,0xf7,0xef,0xca);
5234 #if defined(__cplusplus) && !defined(CINTERFACE)
5235 MIDL_INTERFACE("f3470f24-15fd-11d2-bb2e-00805ff7efca")
5236 IScriptErrorList : public IDispatch
5237 {
5238     virtual HRESULT STDMETHODCALLTYPE advanceError(
5239         ) = 0;
5240 
5241     virtual HRESULT STDMETHODCALLTYPE retreatError(
5242         ) = 0;
5243 
5244     virtual HRESULT STDMETHODCALLTYPE canAdvanceError(
5245         LONG *pfCanAdvance) = 0;
5246 
5247     virtual HRESULT STDMETHODCALLTYPE canRetreatError(
5248         LONG *pfCanRetreat) = 0;
5249 
5250     virtual HRESULT STDMETHODCALLTYPE getErrorLine(
5251         LONG *plLine) = 0;
5252 
5253     virtual HRESULT STDMETHODCALLTYPE getErrorChar(
5254         LONG *plChar) = 0;
5255 
5256     virtual HRESULT STDMETHODCALLTYPE getErrorCode(
5257         LONG *plCode) = 0;
5258 
5259     virtual HRESULT STDMETHODCALLTYPE getErrorMsg(
5260         BSTR *pstr) = 0;
5261 
5262     virtual HRESULT STDMETHODCALLTYPE getErrorUrl(
5263         BSTR *pstr) = 0;
5264 
5265     virtual HRESULT STDMETHODCALLTYPE getAlwaysShowLockState(
5266         LONG *pfAlwaysShowLocked) = 0;
5267 
5268     virtual HRESULT STDMETHODCALLTYPE getDetailsPaneOpen(
5269         LONG *pfDetailsPaneOpen) = 0;
5270 
5271     virtual HRESULT STDMETHODCALLTYPE setDetailsPaneOpen(
5272         LONG fDetailsPaneOpen) = 0;
5273 
5274     virtual HRESULT STDMETHODCALLTYPE getPerErrorDisplay(
5275         LONG *pfPerErrorDisplay) = 0;
5276 
5277     virtual HRESULT STDMETHODCALLTYPE setPerErrorDisplay(
5278         LONG fPerErrorDisplay) = 0;
5279 
5280 };
5281 #ifdef __CRT_UUID_DECL
5282 __CRT_UUID_DECL(IScriptErrorList, 0xf3470f24, 0x15fd, 0x11d2, 0xbb,0x2e, 0x00,0x80,0x5f,0xf7,0xef,0xca)
5283 #endif
5284 #else
5285 typedef struct IScriptErrorListVtbl {
5286     BEGIN_INTERFACE
5287 
5288     /*** IUnknown methods ***/
5289     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5290         IScriptErrorList* This,
5291         REFIID riid,
5292         void **ppvObject);
5293 
5294     ULONG (STDMETHODCALLTYPE *AddRef)(
5295         IScriptErrorList* This);
5296 
5297     ULONG (STDMETHODCALLTYPE *Release)(
5298         IScriptErrorList* This);
5299 
5300     /*** IDispatch methods ***/
5301     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
5302         IScriptErrorList* This,
5303         UINT *pctinfo);
5304 
5305     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
5306         IScriptErrorList* This,
5307         UINT iTInfo,
5308         LCID lcid,
5309         ITypeInfo **ppTInfo);
5310 
5311     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
5312         IScriptErrorList* This,
5313         REFIID riid,
5314         LPOLESTR *rgszNames,
5315         UINT cNames,
5316         LCID lcid,
5317         DISPID *rgDispId);
5318 
5319     HRESULT (STDMETHODCALLTYPE *Invoke)(
5320         IScriptErrorList* This,
5321         DISPID dispIdMember,
5322         REFIID riid,
5323         LCID lcid,
5324         WORD wFlags,
5325         DISPPARAMS *pDispParams,
5326         VARIANT *pVarResult,
5327         EXCEPINFO *pExcepInfo,
5328         UINT *puArgErr);
5329 
5330     /*** IScriptErrorList methods ***/
5331     HRESULT (STDMETHODCALLTYPE *advanceError)(
5332         IScriptErrorList* This);
5333 
5334     HRESULT (STDMETHODCALLTYPE *retreatError)(
5335         IScriptErrorList* This);
5336 
5337     HRESULT (STDMETHODCALLTYPE *canAdvanceError)(
5338         IScriptErrorList* This,
5339         LONG *pfCanAdvance);
5340 
5341     HRESULT (STDMETHODCALLTYPE *canRetreatError)(
5342         IScriptErrorList* This,
5343         LONG *pfCanRetreat);
5344 
5345     HRESULT (STDMETHODCALLTYPE *getErrorLine)(
5346         IScriptErrorList* This,
5347         LONG *plLine);
5348 
5349     HRESULT (STDMETHODCALLTYPE *getErrorChar)(
5350         IScriptErrorList* This,
5351         LONG *plChar);
5352 
5353     HRESULT (STDMETHODCALLTYPE *getErrorCode)(
5354         IScriptErrorList* This,
5355         LONG *plCode);
5356 
5357     HRESULT (STDMETHODCALLTYPE *getErrorMsg)(
5358         IScriptErrorList* This,
5359         BSTR *pstr);
5360 
5361     HRESULT (STDMETHODCALLTYPE *getErrorUrl)(
5362         IScriptErrorList* This,
5363         BSTR *pstr);
5364 
5365     HRESULT (STDMETHODCALLTYPE *getAlwaysShowLockState)(
5366         IScriptErrorList* This,
5367         LONG *pfAlwaysShowLocked);
5368 
5369     HRESULT (STDMETHODCALLTYPE *getDetailsPaneOpen)(
5370         IScriptErrorList* This,
5371         LONG *pfDetailsPaneOpen);
5372 
5373     HRESULT (STDMETHODCALLTYPE *setDetailsPaneOpen)(
5374         IScriptErrorList* This,
5375         LONG fDetailsPaneOpen);
5376 
5377     HRESULT (STDMETHODCALLTYPE *getPerErrorDisplay)(
5378         IScriptErrorList* This,
5379         LONG *pfPerErrorDisplay);
5380 
5381     HRESULT (STDMETHODCALLTYPE *setPerErrorDisplay)(
5382         IScriptErrorList* This,
5383         LONG fPerErrorDisplay);
5384 
5385     END_INTERFACE
5386 } IScriptErrorListVtbl;
5387 interface IScriptErrorList {
5388     CONST_VTBL IScriptErrorListVtbl* lpVtbl;
5389 };
5390 
5391 #ifdef COBJMACROS
5392 #ifndef WIDL_C_INLINE_WRAPPERS
5393 /*** IUnknown methods ***/
5394 #define IScriptErrorList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5395 #define IScriptErrorList_AddRef(This) (This)->lpVtbl->AddRef(This)
5396 #define IScriptErrorList_Release(This) (This)->lpVtbl->Release(This)
5397 /*** IDispatch methods ***/
5398 #define IScriptErrorList_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5399 #define IScriptErrorList_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5400 #define IScriptErrorList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5401 #define IScriptErrorList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5402 /*** IScriptErrorList methods ***/
5403 #define IScriptErrorList_advanceError(This) (This)->lpVtbl->advanceError(This)
5404 #define IScriptErrorList_retreatError(This) (This)->lpVtbl->retreatError(This)
5405 #define IScriptErrorList_canAdvanceError(This,pfCanAdvance) (This)->lpVtbl->canAdvanceError(This,pfCanAdvance)
5406 #define IScriptErrorList_canRetreatError(This,pfCanRetreat) (This)->lpVtbl->canRetreatError(This,pfCanRetreat)
5407 #define IScriptErrorList_getErrorLine(This,plLine) (This)->lpVtbl->getErrorLine(This,plLine)
5408 #define IScriptErrorList_getErrorChar(This,plChar) (This)->lpVtbl->getErrorChar(This,plChar)
5409 #define IScriptErrorList_getErrorCode(This,plCode) (This)->lpVtbl->getErrorCode(This,plCode)
5410 #define IScriptErrorList_getErrorMsg(This,pstr) (This)->lpVtbl->getErrorMsg(This,pstr)
5411 #define IScriptErrorList_getErrorUrl(This,pstr) (This)->lpVtbl->getErrorUrl(This,pstr)
5412 #define IScriptErrorList_getAlwaysShowLockState(This,pfAlwaysShowLocked) (This)->lpVtbl->getAlwaysShowLockState(This,pfAlwaysShowLocked)
5413 #define IScriptErrorList_getDetailsPaneOpen(This,pfDetailsPaneOpen) (This)->lpVtbl->getDetailsPaneOpen(This,pfDetailsPaneOpen)
5414 #define IScriptErrorList_setDetailsPaneOpen(This,fDetailsPaneOpen) (This)->lpVtbl->setDetailsPaneOpen(This,fDetailsPaneOpen)
5415 #define IScriptErrorList_getPerErrorDisplay(This,pfPerErrorDisplay) (This)->lpVtbl->getPerErrorDisplay(This,pfPerErrorDisplay)
5416 #define IScriptErrorList_setPerErrorDisplay(This,fPerErrorDisplay) (This)->lpVtbl->setPerErrorDisplay(This,fPerErrorDisplay)
5417 #else
5418 /*** IUnknown methods ***/
5419 static FORCEINLINE HRESULT IScriptErrorList_QueryInterface(IScriptErrorList* This,REFIID riid,void **ppvObject) {
5420     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5421 }
5422 static FORCEINLINE ULONG IScriptErrorList_AddRef(IScriptErrorList* This) {
5423     return This->lpVtbl->AddRef(This);
5424 }
5425 static FORCEINLINE ULONG IScriptErrorList_Release(IScriptErrorList* This) {
5426     return This->lpVtbl->Release(This);
5427 }
5428 /*** IDispatch methods ***/
5429 static FORCEINLINE HRESULT IScriptErrorList_GetTypeInfoCount(IScriptErrorList* This,UINT *pctinfo) {
5430     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
5431 }
5432 static FORCEINLINE HRESULT IScriptErrorList_GetTypeInfo(IScriptErrorList* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
5433     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
5434 }
5435 static FORCEINLINE HRESULT IScriptErrorList_GetIDsOfNames(IScriptErrorList* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
5436     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
5437 }
5438 static FORCEINLINE HRESULT IScriptErrorList_Invoke(IScriptErrorList* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
5439     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
5440 }
5441 /*** IScriptErrorList methods ***/
5442 static FORCEINLINE HRESULT IScriptErrorList_advanceError(IScriptErrorList* This) {
5443     return This->lpVtbl->advanceError(This);
5444 }
5445 static FORCEINLINE HRESULT IScriptErrorList_retreatError(IScriptErrorList* This) {
5446     return This->lpVtbl->retreatError(This);
5447 }
5448 static FORCEINLINE HRESULT IScriptErrorList_canAdvanceError(IScriptErrorList* This,LONG *pfCanAdvance) {
5449     return This->lpVtbl->canAdvanceError(This,pfCanAdvance);
5450 }
5451 static FORCEINLINE HRESULT IScriptErrorList_canRetreatError(IScriptErrorList* This,LONG *pfCanRetreat) {
5452     return This->lpVtbl->canRetreatError(This,pfCanRetreat);
5453 }
5454 static FORCEINLINE HRESULT IScriptErrorList_getErrorLine(IScriptErrorList* This,LONG *plLine) {
5455     return This->lpVtbl->getErrorLine(This,plLine);
5456 }
5457 static FORCEINLINE HRESULT IScriptErrorList_getErrorChar(IScriptErrorList* This,LONG *plChar) {
5458     return This->lpVtbl->getErrorChar(This,plChar);
5459 }
5460 static FORCEINLINE HRESULT IScriptErrorList_getErrorCode(IScriptErrorList* This,LONG *plCode) {
5461     return This->lpVtbl->getErrorCode(This,plCode);
5462 }
5463 static FORCEINLINE HRESULT IScriptErrorList_getErrorMsg(IScriptErrorList* This,BSTR *pstr) {
5464     return This->lpVtbl->getErrorMsg(This,pstr);
5465 }
5466 static FORCEINLINE HRESULT IScriptErrorList_getErrorUrl(IScriptErrorList* This,BSTR *pstr) {
5467     return This->lpVtbl->getErrorUrl(This,pstr);
5468 }
5469 static FORCEINLINE HRESULT IScriptErrorList_getAlwaysShowLockState(IScriptErrorList* This,LONG *pfAlwaysShowLocked) {
5470     return This->lpVtbl->getAlwaysShowLockState(This,pfAlwaysShowLocked);
5471 }
5472 static FORCEINLINE HRESULT IScriptErrorList_getDetailsPaneOpen(IScriptErrorList* This,LONG *pfDetailsPaneOpen) {
5473     return This->lpVtbl->getDetailsPaneOpen(This,pfDetailsPaneOpen);
5474 }
5475 static FORCEINLINE HRESULT IScriptErrorList_setDetailsPaneOpen(IScriptErrorList* This,LONG fDetailsPaneOpen) {
5476     return This->lpVtbl->setDetailsPaneOpen(This,fDetailsPaneOpen);
5477 }
5478 static FORCEINLINE HRESULT IScriptErrorList_getPerErrorDisplay(IScriptErrorList* This,LONG *pfPerErrorDisplay) {
5479     return This->lpVtbl->getPerErrorDisplay(This,pfPerErrorDisplay);
5480 }
5481 static FORCEINLINE HRESULT IScriptErrorList_setPerErrorDisplay(IScriptErrorList* This,LONG fPerErrorDisplay) {
5482     return This->lpVtbl->setPerErrorDisplay(This,fPerErrorDisplay);
5483 }
5484 #endif
5485 #endif
5486 
5487 #endif
5488 
5489 HRESULT STDMETHODCALLTYPE IScriptErrorList_advanceError_Proxy(
5490     IScriptErrorList* This);
5491 void __RPC_STUB IScriptErrorList_advanceError_Stub(
5492     IRpcStubBuffer* This,
5493     IRpcChannelBuffer* pRpcChannelBuffer,
5494     PRPC_MESSAGE pRpcMessage,
5495     DWORD* pdwStubPhase);
5496 HRESULT STDMETHODCALLTYPE IScriptErrorList_retreatError_Proxy(
5497     IScriptErrorList* This);
5498 void __RPC_STUB IScriptErrorList_retreatError_Stub(
5499     IRpcStubBuffer* This,
5500     IRpcChannelBuffer* pRpcChannelBuffer,
5501     PRPC_MESSAGE pRpcMessage,
5502     DWORD* pdwStubPhase);
5503 HRESULT STDMETHODCALLTYPE IScriptErrorList_canAdvanceError_Proxy(
5504     IScriptErrorList* This,
5505     LONG *pfCanAdvance);
5506 void __RPC_STUB IScriptErrorList_canAdvanceError_Stub(
5507     IRpcStubBuffer* This,
5508     IRpcChannelBuffer* pRpcChannelBuffer,
5509     PRPC_MESSAGE pRpcMessage,
5510     DWORD* pdwStubPhase);
5511 HRESULT STDMETHODCALLTYPE IScriptErrorList_canRetreatError_Proxy(
5512     IScriptErrorList* This,
5513     LONG *pfCanRetreat);
5514 void __RPC_STUB IScriptErrorList_canRetreatError_Stub(
5515     IRpcStubBuffer* This,
5516     IRpcChannelBuffer* pRpcChannelBuffer,
5517     PRPC_MESSAGE pRpcMessage,
5518     DWORD* pdwStubPhase);
5519 HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorLine_Proxy(
5520     IScriptErrorList* This,
5521     LONG *plLine);
5522 void __RPC_STUB IScriptErrorList_getErrorLine_Stub(
5523     IRpcStubBuffer* This,
5524     IRpcChannelBuffer* pRpcChannelBuffer,
5525     PRPC_MESSAGE pRpcMessage,
5526     DWORD* pdwStubPhase);
5527 HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorChar_Proxy(
5528     IScriptErrorList* This,
5529     LONG *plChar);
5530 void __RPC_STUB IScriptErrorList_getErrorChar_Stub(
5531     IRpcStubBuffer* This,
5532     IRpcChannelBuffer* pRpcChannelBuffer,
5533     PRPC_MESSAGE pRpcMessage,
5534     DWORD* pdwStubPhase);
5535 HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorCode_Proxy(
5536     IScriptErrorList* This,
5537     LONG *plCode);
5538 void __RPC_STUB IScriptErrorList_getErrorCode_Stub(
5539     IRpcStubBuffer* This,
5540     IRpcChannelBuffer* pRpcChannelBuffer,
5541     PRPC_MESSAGE pRpcMessage,
5542     DWORD* pdwStubPhase);
5543 HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorMsg_Proxy(
5544     IScriptErrorList* This,
5545     BSTR *pstr);
5546 void __RPC_STUB IScriptErrorList_getErrorMsg_Stub(
5547     IRpcStubBuffer* This,
5548     IRpcChannelBuffer* pRpcChannelBuffer,
5549     PRPC_MESSAGE pRpcMessage,
5550     DWORD* pdwStubPhase);
5551 HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorUrl_Proxy(
5552     IScriptErrorList* This,
5553     BSTR *pstr);
5554 void __RPC_STUB IScriptErrorList_getErrorUrl_Stub(
5555     IRpcStubBuffer* This,
5556     IRpcChannelBuffer* pRpcChannelBuffer,
5557     PRPC_MESSAGE pRpcMessage,
5558     DWORD* pdwStubPhase);
5559 HRESULT STDMETHODCALLTYPE IScriptErrorList_getAlwaysShowLockState_Proxy(
5560     IScriptErrorList* This,
5561     LONG *pfAlwaysShowLocked);
5562 void __RPC_STUB IScriptErrorList_getAlwaysShowLockState_Stub(
5563     IRpcStubBuffer* This,
5564     IRpcChannelBuffer* pRpcChannelBuffer,
5565     PRPC_MESSAGE pRpcMessage,
5566     DWORD* pdwStubPhase);
5567 HRESULT STDMETHODCALLTYPE IScriptErrorList_getDetailsPaneOpen_Proxy(
5568     IScriptErrorList* This,
5569     LONG *pfDetailsPaneOpen);
5570 void __RPC_STUB IScriptErrorList_getDetailsPaneOpen_Stub(
5571     IRpcStubBuffer* This,
5572     IRpcChannelBuffer* pRpcChannelBuffer,
5573     PRPC_MESSAGE pRpcMessage,
5574     DWORD* pdwStubPhase);
5575 HRESULT STDMETHODCALLTYPE IScriptErrorList_setDetailsPaneOpen_Proxy(
5576     IScriptErrorList* This,
5577     LONG fDetailsPaneOpen);
5578 void __RPC_STUB IScriptErrorList_setDetailsPaneOpen_Stub(
5579     IRpcStubBuffer* This,
5580     IRpcChannelBuffer* pRpcChannelBuffer,
5581     PRPC_MESSAGE pRpcMessage,
5582     DWORD* pdwStubPhase);
5583 HRESULT STDMETHODCALLTYPE IScriptErrorList_getPerErrorDisplay_Proxy(
5584     IScriptErrorList* This,
5585     LONG *pfPerErrorDisplay);
5586 void __RPC_STUB IScriptErrorList_getPerErrorDisplay_Stub(
5587     IRpcStubBuffer* This,
5588     IRpcChannelBuffer* pRpcChannelBuffer,
5589     PRPC_MESSAGE pRpcMessage,
5590     DWORD* pdwStubPhase);
5591 HRESULT STDMETHODCALLTYPE IScriptErrorList_setPerErrorDisplay_Proxy(
5592     IScriptErrorList* This,
5593     LONG fPerErrorDisplay);
5594 void __RPC_STUB IScriptErrorList_setPerErrorDisplay_Stub(
5595     IRpcStubBuffer* This,
5596     IRpcChannelBuffer* pRpcChannelBuffer,
5597     PRPC_MESSAGE pRpcMessage,
5598     DWORD* pdwStubPhase);
5599 
5600 #endif  /* __IScriptErrorList_INTERFACE_DEFINED__ */
5601 
5602 /*****************************************************************************
5603  * CScriptErrorList coclass
5604  */
5605 
5606 DEFINE_GUID(CLSID_CScriptErrorList, 0xefd01300, 0x160f, 0x11d2, 0xbb,0x2e, 0x00,0x80,0x5f,0xf7,0xef,0xca);
5607 
5608 #ifdef __cplusplus
5609 class DECLSPEC_UUID("efd01300-160f-11d2-bb2e-00805ff7efca") CScriptErrorList;
5610 #ifdef __CRT_UUID_DECL
5611 __CRT_UUID_DECL(CScriptErrorList, 0xefd01300, 0x160f, 0x11d2, 0xbb,0x2e, 0x00,0x80,0x5f,0xf7,0xef,0xca)
5612 #endif
5613 #endif
5614 
5615 /*****************************************************************************
5616  * ISearch interface
5617  */
5618 #ifndef __ISearch_INTERFACE_DEFINED__
5619 #define __ISearch_INTERFACE_DEFINED__
5620 
5621 DEFINE_GUID(IID_ISearch, 0xba9239a4, 0x3dd5, 0x11d2, 0xbf,0x8b, 0x00,0xc0,0x4f,0xb9,0x36,0x61);
5622 #if defined(__cplusplus) && !defined(CINTERFACE)
5623 MIDL_INTERFACE("ba9239a4-3dd5-11d2-bf8b-00c04fb93661")
5624 ISearch : public IDispatch
5625 {
5626     virtual HRESULT STDMETHODCALLTYPE get_Title(
5627         BSTR *pbstrTitle) = 0;
5628 
5629     virtual HRESULT STDMETHODCALLTYPE get_Id(
5630         BSTR *pbstrId) = 0;
5631 
5632     virtual HRESULT STDMETHODCALLTYPE get_URL(
5633         BSTR *pbstrUrl) = 0;
5634 
5635 };
5636 #ifdef __CRT_UUID_DECL
5637 __CRT_UUID_DECL(ISearch, 0xba9239a4, 0x3dd5, 0x11d2, 0xbf,0x8b, 0x00,0xc0,0x4f,0xb9,0x36,0x61)
5638 #endif
5639 #else
5640 typedef struct ISearchVtbl {
5641     BEGIN_INTERFACE
5642 
5643     /*** IUnknown methods ***/
5644     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5645         ISearch* This,
5646         REFIID riid,
5647         void **ppvObject);
5648 
5649     ULONG (STDMETHODCALLTYPE *AddRef)(
5650         ISearch* This);
5651 
5652     ULONG (STDMETHODCALLTYPE *Release)(
5653         ISearch* This);
5654 
5655     /*** IDispatch methods ***/
5656     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
5657         ISearch* This,
5658         UINT *pctinfo);
5659 
5660     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
5661         ISearch* This,
5662         UINT iTInfo,
5663         LCID lcid,
5664         ITypeInfo **ppTInfo);
5665 
5666     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
5667         ISearch* This,
5668         REFIID riid,
5669         LPOLESTR *rgszNames,
5670         UINT cNames,
5671         LCID lcid,
5672         DISPID *rgDispId);
5673 
5674     HRESULT (STDMETHODCALLTYPE *Invoke)(
5675         ISearch* This,
5676         DISPID dispIdMember,
5677         REFIID riid,
5678         LCID lcid,
5679         WORD wFlags,
5680         DISPPARAMS *pDispParams,
5681         VARIANT *pVarResult,
5682         EXCEPINFO *pExcepInfo,
5683         UINT *puArgErr);
5684 
5685     /*** ISearch methods ***/
5686     HRESULT (STDMETHODCALLTYPE *get_Title)(
5687         ISearch* This,
5688         BSTR *pbstrTitle);
5689 
5690     HRESULT (STDMETHODCALLTYPE *get_Id)(
5691         ISearch* This,
5692         BSTR *pbstrId);
5693 
5694     HRESULT (STDMETHODCALLTYPE *get_URL)(
5695         ISearch* This,
5696         BSTR *pbstrUrl);
5697 
5698     END_INTERFACE
5699 } ISearchVtbl;
5700 interface ISearch {
5701     CONST_VTBL ISearchVtbl* lpVtbl;
5702 };
5703 
5704 #ifdef COBJMACROS
5705 #ifndef WIDL_C_INLINE_WRAPPERS
5706 /*** IUnknown methods ***/
5707 #define ISearch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5708 #define ISearch_AddRef(This) (This)->lpVtbl->AddRef(This)
5709 #define ISearch_Release(This) (This)->lpVtbl->Release(This)
5710 /*** IDispatch methods ***/
5711 #define ISearch_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5712 #define ISearch_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5713 #define ISearch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5714 #define ISearch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5715 /*** ISearch methods ***/
5716 #define ISearch_get_Title(This,pbstrTitle) (This)->lpVtbl->get_Title(This,pbstrTitle)
5717 #define ISearch_get_Id(This,pbstrId) (This)->lpVtbl->get_Id(This,pbstrId)
5718 #define ISearch_get_URL(This,pbstrUrl) (This)->lpVtbl->get_URL(This,pbstrUrl)
5719 #else
5720 /*** IUnknown methods ***/
5721 static FORCEINLINE HRESULT ISearch_QueryInterface(ISearch* This,REFIID riid,void **ppvObject) {
5722     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5723 }
5724 static FORCEINLINE ULONG ISearch_AddRef(ISearch* This) {
5725     return This->lpVtbl->AddRef(This);
5726 }
5727 static FORCEINLINE ULONG ISearch_Release(ISearch* This) {
5728     return This->lpVtbl->Release(This);
5729 }
5730 /*** IDispatch methods ***/
5731 static FORCEINLINE HRESULT ISearch_GetTypeInfoCount(ISearch* This,UINT *pctinfo) {
5732     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
5733 }
5734 static FORCEINLINE HRESULT ISearch_GetTypeInfo(ISearch* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
5735     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
5736 }
5737 static FORCEINLINE HRESULT ISearch_GetIDsOfNames(ISearch* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
5738     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
5739 }
5740 static FORCEINLINE HRESULT ISearch_Invoke(ISearch* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
5741     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
5742 }
5743 /*** ISearch methods ***/
5744 static FORCEINLINE HRESULT ISearch_get_Title(ISearch* This,BSTR *pbstrTitle) {
5745     return This->lpVtbl->get_Title(This,pbstrTitle);
5746 }
5747 static FORCEINLINE HRESULT ISearch_get_Id(ISearch* This,BSTR *pbstrId) {
5748     return This->lpVtbl->get_Id(This,pbstrId);
5749 }
5750 static FORCEINLINE HRESULT ISearch_get_URL(ISearch* This,BSTR *pbstrUrl) {
5751     return This->lpVtbl->get_URL(This,pbstrUrl);
5752 }
5753 #endif
5754 #endif
5755 
5756 #endif
5757 
5758 HRESULT STDMETHODCALLTYPE ISearch_get_Title_Proxy(
5759     ISearch* This,
5760     BSTR *pbstrTitle);
5761 void __RPC_STUB ISearch_get_Title_Stub(
5762     IRpcStubBuffer* This,
5763     IRpcChannelBuffer* pRpcChannelBuffer,
5764     PRPC_MESSAGE pRpcMessage,
5765     DWORD* pdwStubPhase);
5766 HRESULT STDMETHODCALLTYPE ISearch_get_Id_Proxy(
5767     ISearch* This,
5768     BSTR *pbstrId);
5769 void __RPC_STUB ISearch_get_Id_Stub(
5770     IRpcStubBuffer* This,
5771     IRpcChannelBuffer* pRpcChannelBuffer,
5772     PRPC_MESSAGE pRpcMessage,
5773     DWORD* pdwStubPhase);
5774 HRESULT STDMETHODCALLTYPE ISearch_get_URL_Proxy(
5775     ISearch* This,
5776     BSTR *pbstrUrl);
5777 void __RPC_STUB ISearch_get_URL_Stub(
5778     IRpcStubBuffer* This,
5779     IRpcChannelBuffer* pRpcChannelBuffer,
5780     PRPC_MESSAGE pRpcMessage,
5781     DWORD* pdwStubPhase);
5782 
5783 #endif  /* __ISearch_INTERFACE_DEFINED__ */
5784 
5785 /*****************************************************************************
5786  * ISearches interface
5787  */
5788 #ifndef __ISearches_INTERFACE_DEFINED__
5789 #define __ISearches_INTERFACE_DEFINED__
5790 
5791 DEFINE_GUID(IID_ISearches, 0x47c922a2, 0x3dd5, 0x11d2, 0xbf,0x8b, 0x00,0xc0,0x4f,0xb9,0x36,0x61);
5792 #if defined(__cplusplus) && !defined(CINTERFACE)
5793 MIDL_INTERFACE("47c922a2-3dd5-11d2-bf8b-00c04fb93661")
5794 ISearches : public IDispatch
5795 {
5796     virtual HRESULT STDMETHODCALLTYPE get_Count(
5797         LONG *plCount) = 0;
5798 
5799     virtual HRESULT STDMETHODCALLTYPE get_Default(
5800         BSTR *pbstrDefault) = 0;
5801 
5802     virtual HRESULT STDMETHODCALLTYPE Item(
5803         VARIANT index,
5804         ISearch **ppid) = 0;
5805 
5806     virtual HRESULT STDMETHODCALLTYPE _NewEnum(
5807         IUnknown **ppunk) = 0;
5808 
5809 };
5810 #ifdef __CRT_UUID_DECL
5811 __CRT_UUID_DECL(ISearches, 0x47c922a2, 0x3dd5, 0x11d2, 0xbf,0x8b, 0x00,0xc0,0x4f,0xb9,0x36,0x61)
5812 #endif
5813 #else
5814 typedef struct ISearchesVtbl {
5815     BEGIN_INTERFACE
5816 
5817     /*** IUnknown methods ***/
5818     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5819         ISearches* This,
5820         REFIID riid,
5821         void **ppvObject);
5822 
5823     ULONG (STDMETHODCALLTYPE *AddRef)(
5824         ISearches* This);
5825 
5826     ULONG (STDMETHODCALLTYPE *Release)(
5827         ISearches* This);
5828 
5829     /*** IDispatch methods ***/
5830     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
5831         ISearches* This,
5832         UINT *pctinfo);
5833 
5834     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
5835         ISearches* This,
5836         UINT iTInfo,
5837         LCID lcid,
5838         ITypeInfo **ppTInfo);
5839 
5840     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
5841         ISearches* This,
5842         REFIID riid,
5843         LPOLESTR *rgszNames,
5844         UINT cNames,
5845         LCID lcid,
5846         DISPID *rgDispId);
5847 
5848     HRESULT (STDMETHODCALLTYPE *Invoke)(
5849         ISearches* This,
5850         DISPID dispIdMember,
5851         REFIID riid,
5852         LCID lcid,
5853         WORD wFlags,
5854         DISPPARAMS *pDispParams,
5855         VARIANT *pVarResult,
5856         EXCEPINFO *pExcepInfo,
5857         UINT *puArgErr);
5858 
5859     /*** ISearches methods ***/
5860     HRESULT (STDMETHODCALLTYPE *get_Count)(
5861         ISearches* This,
5862         LONG *plCount);
5863 
5864     HRESULT (STDMETHODCALLTYPE *get_Default)(
5865         ISearches* This,
5866         BSTR *pbstrDefault);
5867 
5868     HRESULT (STDMETHODCALLTYPE *Item)(
5869         ISearches* This,
5870         VARIANT index,
5871         ISearch **ppid);
5872 
5873     HRESULT (STDMETHODCALLTYPE *_NewEnum)(
5874         ISearches* This,
5875         IUnknown **ppunk);
5876 
5877     END_INTERFACE
5878 } ISearchesVtbl;
5879 interface ISearches {
5880     CONST_VTBL ISearchesVtbl* lpVtbl;
5881 };
5882 
5883 #ifdef COBJMACROS
5884 #ifndef WIDL_C_INLINE_WRAPPERS
5885 /*** IUnknown methods ***/
5886 #define ISearches_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5887 #define ISearches_AddRef(This) (This)->lpVtbl->AddRef(This)
5888 #define ISearches_Release(This) (This)->lpVtbl->Release(This)
5889 /*** IDispatch methods ***/
5890 #define ISearches_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5891 #define ISearches_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5892 #define ISearches_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5893 #define ISearches_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5894 /*** ISearches methods ***/
5895 #define ISearches_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount)
5896 #define ISearches_get_Default(This,pbstrDefault) (This)->lpVtbl->get_Default(This,pbstrDefault)
5897 #define ISearches_Item(This,index,ppid) (This)->lpVtbl->Item(This,index,ppid)
5898 #define ISearches__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk)
5899 #else
5900 /*** IUnknown methods ***/
5901 static FORCEINLINE HRESULT ISearches_QueryInterface(ISearches* This,REFIID riid,void **ppvObject) {
5902     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5903 }
5904 static FORCEINLINE ULONG ISearches_AddRef(ISearches* This) {
5905     return This->lpVtbl->AddRef(This);
5906 }
5907 static FORCEINLINE ULONG ISearches_Release(ISearches* This) {
5908     return This->lpVtbl->Release(This);
5909 }
5910 /*** IDispatch methods ***/
5911 static FORCEINLINE HRESULT ISearches_GetTypeInfoCount(ISearches* This,UINT *pctinfo) {
5912     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
5913 }
5914 static FORCEINLINE HRESULT ISearches_GetTypeInfo(ISearches* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
5915     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
5916 }
5917 static FORCEINLINE HRESULT ISearches_GetIDsOfNames(ISearches* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
5918     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
5919 }
5920 static FORCEINLINE HRESULT ISearches_Invoke(ISearches* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
5921     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
5922 }
5923 /*** ISearches methods ***/
5924 static FORCEINLINE HRESULT ISearches_get_Count(ISearches* This,LONG *plCount) {
5925     return This->lpVtbl->get_Count(This,plCount);
5926 }
5927 static FORCEINLINE HRESULT ISearches_get_Default(ISearches* This,BSTR *pbstrDefault) {
5928     return This->lpVtbl->get_Default(This,pbstrDefault);
5929 }
5930 static FORCEINLINE HRESULT ISearches_Item(ISearches* This,VARIANT index,ISearch **ppid) {
5931     return This->lpVtbl->Item(This,index,ppid);
5932 }
5933 static FORCEINLINE HRESULT ISearches__NewEnum(ISearches* This,IUnknown **ppunk) {
5934     return This->lpVtbl->_NewEnum(This,ppunk);
5935 }
5936 #endif
5937 #endif
5938 
5939 #endif
5940 
5941 HRESULT STDMETHODCALLTYPE ISearches_get_Count_Proxy(
5942     ISearches* This,
5943     LONG *plCount);
5944 void __RPC_STUB ISearches_get_Count_Stub(
5945     IRpcStubBuffer* This,
5946     IRpcChannelBuffer* pRpcChannelBuffer,
5947     PRPC_MESSAGE pRpcMessage,
5948     DWORD* pdwStubPhase);
5949 HRESULT STDMETHODCALLTYPE ISearches_get_Default_Proxy(
5950     ISearches* This,
5951     BSTR *pbstrDefault);
5952 void __RPC_STUB ISearches_get_Default_Stub(
5953     IRpcStubBuffer* This,
5954     IRpcChannelBuffer* pRpcChannelBuffer,
5955     PRPC_MESSAGE pRpcMessage,
5956     DWORD* pdwStubPhase);
5957 HRESULT STDMETHODCALLTYPE ISearches_Item_Proxy(
5958     ISearches* This,
5959     VARIANT index,
5960     ISearch **ppid);
5961 void __RPC_STUB ISearches_Item_Stub(
5962     IRpcStubBuffer* This,
5963     IRpcChannelBuffer* pRpcChannelBuffer,
5964     PRPC_MESSAGE pRpcMessage,
5965     DWORD* pdwStubPhase);
5966 HRESULT STDMETHODCALLTYPE ISearches__NewEnum_Proxy(
5967     ISearches* This,
5968     IUnknown **ppunk);
5969 void __RPC_STUB ISearches__NewEnum_Stub(
5970     IRpcStubBuffer* This,
5971     IRpcChannelBuffer* pRpcChannelBuffer,
5972     PRPC_MESSAGE pRpcMessage,
5973     DWORD* pdwStubPhase);
5974 
5975 #endif  /* __ISearches_INTERFACE_DEFINED__ */
5976 
5977 /*****************************************************************************
5978  * ISearchAssistantOC interface
5979  */
5980 #ifndef __ISearchAssistantOC_INTERFACE_DEFINED__
5981 #define __ISearchAssistantOC_INTERFACE_DEFINED__
5982 
5983 DEFINE_GUID(IID_ISearchAssistantOC, 0x72423e8f, 0x8011, 0x11d2, 0xbe,0x79, 0x00,0xa0,0xc9,0xa8,0x3d,0xa1);
5984 #if defined(__cplusplus) && !defined(CINTERFACE)
5985 MIDL_INTERFACE("72423e8f-8011-11d2-be79-00a0c9a83da1")
5986 ISearchAssistantOC : public IDispatch
5987 {
5988     virtual HRESULT STDMETHODCALLTYPE AddNextMenuItem(
5989         BSTR bstrText,
5990         LONG idItem) = 0;
5991 
5992     virtual HRESULT STDMETHODCALLTYPE SetDefaultSearchUrl(
5993         BSTR bstrUrl) = 0;
5994 
5995     virtual HRESULT STDMETHODCALLTYPE NavigateToDefaultSearch(
5996         ) = 0;
5997 
5998     virtual HRESULT STDMETHODCALLTYPE IsRestricted(
5999         BSTR bstrGuid,
6000         VARIANT_BOOL *pVal) = 0;
6001 
6002     virtual HRESULT STDMETHODCALLTYPE get_ShellFeaturesEnabled(
6003         VARIANT_BOOL *pVal) = 0;
6004 
6005     virtual HRESULT STDMETHODCALLTYPE get_SearchAssistantDefault(
6006         VARIANT_BOOL *pVal) = 0;
6007 
6008     virtual HRESULT STDMETHODCALLTYPE get_Searches(
6009         ISearches **ppid) = 0;
6010 
6011     virtual HRESULT STDMETHODCALLTYPE get_InWebFolder(
6012         VARIANT_BOOL *pVal) = 0;
6013 
6014     virtual HRESULT STDMETHODCALLTYPE PutProperty(
6015         VARIANT_BOOL bPerLocale,
6016         BSTR bstrName,
6017         BSTR bstrValue) = 0;
6018 
6019     virtual HRESULT STDMETHODCALLTYPE GetProperty(
6020         VARIANT_BOOL bPerLocale,
6021         BSTR bstrName,
6022         BSTR *pbstrValue) = 0;
6023 
6024     virtual HRESULT STDMETHODCALLTYPE put_EventHandled(
6025         VARIANT_BOOL rhs) = 0;
6026 
6027     virtual HRESULT STDMETHODCALLTYPE ResetNextMenu(
6028         ) = 0;
6029 
6030     virtual HRESULT STDMETHODCALLTYPE FindOnWeb(
6031         ) = 0;
6032 
6033     virtual HRESULT STDMETHODCALLTYPE FindFilesOrFolders(
6034         ) = 0;
6035 
6036     virtual HRESULT STDMETHODCALLTYPE FindComputer(
6037         ) = 0;
6038 
6039     virtual HRESULT STDMETHODCALLTYPE FindPrinter(
6040         ) = 0;
6041 
6042     virtual HRESULT STDMETHODCALLTYPE FindPeople(
6043         ) = 0;
6044 
6045     virtual HRESULT STDMETHODCALLTYPE GetSearchAssistantURL(
6046         VARIANT_BOOL bSubstitute,
6047         VARIANT_BOOL bCustomize,
6048         BSTR *pbstrValue) = 0;
6049 
6050     virtual HRESULT STDMETHODCALLTYPE NotifySearchSettingsChanged(
6051         ) = 0;
6052 
6053     virtual HRESULT STDMETHODCALLTYPE put_ASProvider(
6054         BSTR pProvider) = 0;
6055 
6056     virtual HRESULT STDMETHODCALLTYPE get_ASProvider(
6057         BSTR *pProvider) = 0;
6058 
6059     virtual HRESULT STDMETHODCALLTYPE put_ASSetting(
6060         int pSetting) = 0;
6061 
6062     virtual HRESULT STDMETHODCALLTYPE get_ASSetting(
6063         int *pSetting) = 0;
6064 
6065     virtual HRESULT STDMETHODCALLTYPE NETDetectNextNavigate(
6066         ) = 0;
6067 
6068     virtual HRESULT STDMETHODCALLTYPE PutFindText(
6069         BSTR FindText) = 0;
6070 
6071     virtual HRESULT STDMETHODCALLTYPE get_Version(
6072         int *pVersion) = 0;
6073 
6074     virtual HRESULT STDMETHODCALLTYPE EncodeString(
6075         BSTR bstrValue,
6076         BSTR bstrCharSet,
6077         VARIANT_BOOL bUseUTF8,
6078         BSTR *pbstrResult) = 0;
6079 
6080 };
6081 #ifdef __CRT_UUID_DECL
6082 __CRT_UUID_DECL(ISearchAssistantOC, 0x72423e8f, 0x8011, 0x11d2, 0xbe,0x79, 0x00,0xa0,0xc9,0xa8,0x3d,0xa1)
6083 #endif
6084 #else
6085 typedef struct ISearchAssistantOCVtbl {
6086     BEGIN_INTERFACE
6087 
6088     /*** IUnknown methods ***/
6089     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6090         ISearchAssistantOC* This,
6091         REFIID riid,
6092         void **ppvObject);
6093 
6094     ULONG (STDMETHODCALLTYPE *AddRef)(
6095         ISearchAssistantOC* This);
6096 
6097     ULONG (STDMETHODCALLTYPE *Release)(
6098         ISearchAssistantOC* This);
6099 
6100     /*** IDispatch methods ***/
6101     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
6102         ISearchAssistantOC* This,
6103         UINT *pctinfo);
6104 
6105     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
6106         ISearchAssistantOC* This,
6107         UINT iTInfo,
6108         LCID lcid,
6109         ITypeInfo **ppTInfo);
6110 
6111     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
6112         ISearchAssistantOC* This,
6113         REFIID riid,
6114         LPOLESTR *rgszNames,
6115         UINT cNames,
6116         LCID lcid,
6117         DISPID *rgDispId);
6118 
6119     HRESULT (STDMETHODCALLTYPE *Invoke)(
6120         ISearchAssistantOC* This,
6121         DISPID dispIdMember,
6122         REFIID riid,
6123         LCID lcid,
6124         WORD wFlags,
6125         DISPPARAMS *pDispParams,
6126         VARIANT *pVarResult,
6127         EXCEPINFO *pExcepInfo,
6128         UINT *puArgErr);
6129 
6130     /*** ISearchAssistantOC methods ***/
6131     HRESULT (STDMETHODCALLTYPE *AddNextMenuItem)(
6132         ISearchAssistantOC* This,
6133         BSTR bstrText,
6134         LONG idItem);
6135 
6136     HRESULT (STDMETHODCALLTYPE *SetDefaultSearchUrl)(
6137         ISearchAssistantOC* This,
6138         BSTR bstrUrl);
6139 
6140     HRESULT (STDMETHODCALLTYPE *NavigateToDefaultSearch)(
6141         ISearchAssistantOC* This);
6142 
6143     HRESULT (STDMETHODCALLTYPE *IsRestricted)(
6144         ISearchAssistantOC* This,
6145         BSTR bstrGuid,
6146         VARIANT_BOOL *pVal);
6147 
6148     HRESULT (STDMETHODCALLTYPE *get_ShellFeaturesEnabled)(
6149         ISearchAssistantOC* This,
6150         VARIANT_BOOL *pVal);
6151 
6152     HRESULT (STDMETHODCALLTYPE *get_SearchAssistantDefault)(
6153         ISearchAssistantOC* This,
6154         VARIANT_BOOL *pVal);
6155 
6156     HRESULT (STDMETHODCALLTYPE *get_Searches)(
6157         ISearchAssistantOC* This,
6158         ISearches **ppid);
6159 
6160     HRESULT (STDMETHODCALLTYPE *get_InWebFolder)(
6161         ISearchAssistantOC* This,
6162         VARIANT_BOOL *pVal);
6163 
6164     HRESULT (STDMETHODCALLTYPE *PutProperty)(
6165         ISearchAssistantOC* This,
6166         VARIANT_BOOL bPerLocale,
6167         BSTR bstrName,
6168         BSTR bstrValue);
6169 
6170     HRESULT (STDMETHODCALLTYPE *GetProperty)(
6171         ISearchAssistantOC* This,
6172         VARIANT_BOOL bPerLocale,
6173         BSTR bstrName,
6174         BSTR *pbstrValue);
6175 
6176     HRESULT (STDMETHODCALLTYPE *put_EventHandled)(
6177         ISearchAssistantOC* This,
6178         VARIANT_BOOL rhs);
6179 
6180     HRESULT (STDMETHODCALLTYPE *ResetNextMenu)(
6181         ISearchAssistantOC* This);
6182 
6183     HRESULT (STDMETHODCALLTYPE *FindOnWeb)(
6184         ISearchAssistantOC* This);
6185 
6186     HRESULT (STDMETHODCALLTYPE *FindFilesOrFolders)(
6187         ISearchAssistantOC* This);
6188 
6189     HRESULT (STDMETHODCALLTYPE *FindComputer)(
6190         ISearchAssistantOC* This);
6191 
6192     HRESULT (STDMETHODCALLTYPE *FindPrinter)(
6193         ISearchAssistantOC* This);
6194 
6195     HRESULT (STDMETHODCALLTYPE *FindPeople)(
6196         ISearchAssistantOC* This);
6197 
6198     HRESULT (STDMETHODCALLTYPE *GetSearchAssistantURL)(
6199         ISearchAssistantOC* This,
6200         VARIANT_BOOL bSubstitute,
6201         VARIANT_BOOL bCustomize,
6202         BSTR *pbstrValue);
6203 
6204     HRESULT (STDMETHODCALLTYPE *NotifySearchSettingsChanged)(
6205         ISearchAssistantOC* This);
6206 
6207     HRESULT (STDMETHODCALLTYPE *put_ASProvider)(
6208         ISearchAssistantOC* This,
6209         BSTR pProvider);
6210 
6211     HRESULT (STDMETHODCALLTYPE *get_ASProvider)(
6212         ISearchAssistantOC* This,
6213         BSTR *pProvider);
6214 
6215     HRESULT (STDMETHODCALLTYPE *put_ASSetting)(
6216         ISearchAssistantOC* This,
6217         int pSetting);
6218 
6219     HRESULT (STDMETHODCALLTYPE *get_ASSetting)(
6220         ISearchAssistantOC* This,
6221         int *pSetting);
6222 
6223     HRESULT (STDMETHODCALLTYPE *NETDetectNextNavigate)(
6224         ISearchAssistantOC* This);
6225 
6226     HRESULT (STDMETHODCALLTYPE *PutFindText)(
6227         ISearchAssistantOC* This,
6228         BSTR FindText);
6229 
6230     HRESULT (STDMETHODCALLTYPE *get_Version)(
6231         ISearchAssistantOC* This,
6232         int *pVersion);
6233 
6234     HRESULT (STDMETHODCALLTYPE *EncodeString)(
6235         ISearchAssistantOC* This,
6236         BSTR bstrValue,
6237         BSTR bstrCharSet,
6238         VARIANT_BOOL bUseUTF8,
6239         BSTR *pbstrResult);
6240 
6241     END_INTERFACE
6242 } ISearchAssistantOCVtbl;
6243 interface ISearchAssistantOC {
6244     CONST_VTBL ISearchAssistantOCVtbl* lpVtbl;
6245 };
6246 
6247 #ifdef COBJMACROS
6248 #ifndef WIDL_C_INLINE_WRAPPERS
6249 /*** IUnknown methods ***/
6250 #define ISearchAssistantOC_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6251 #define ISearchAssistantOC_AddRef(This) (This)->lpVtbl->AddRef(This)
6252 #define ISearchAssistantOC_Release(This) (This)->lpVtbl->Release(This)
6253 /*** IDispatch methods ***/
6254 #define ISearchAssistantOC_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
6255 #define ISearchAssistantOC_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
6256 #define ISearchAssistantOC_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
6257 #define ISearchAssistantOC_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
6258 /*** ISearchAssistantOC methods ***/
6259 #define ISearchAssistantOC_AddNextMenuItem(This,bstrText,idItem) (This)->lpVtbl->AddNextMenuItem(This,bstrText,idItem)
6260 #define ISearchAssistantOC_SetDefaultSearchUrl(This,bstrUrl) (This)->lpVtbl->SetDefaultSearchUrl(This,bstrUrl)
6261 #define ISearchAssistantOC_NavigateToDefaultSearch(This) (This)->lpVtbl->NavigateToDefaultSearch(This)
6262 #define ISearchAssistantOC_IsRestricted(This,bstrGuid,pVal) (This)->lpVtbl->IsRestricted(This,bstrGuid,pVal)
6263 #define ISearchAssistantOC_get_ShellFeaturesEnabled(This,pVal) (This)->lpVtbl->get_ShellFeaturesEnabled(This,pVal)
6264 #define ISearchAssistantOC_get_SearchAssistantDefault(This,pVal) (This)->lpVtbl->get_SearchAssistantDefault(This,pVal)
6265 #define ISearchAssistantOC_get_Searches(This,ppid) (This)->lpVtbl->get_Searches(This,ppid)
6266 #define ISearchAssistantOC_get_InWebFolder(This,pVal) (This)->lpVtbl->get_InWebFolder(This,pVal)
6267 #define ISearchAssistantOC_PutProperty(This,bPerLocale,bstrName,bstrValue) (This)->lpVtbl->PutProperty(This,bPerLocale,bstrName,bstrValue)
6268 #define ISearchAssistantOC_GetProperty(This,bPerLocale,bstrName,pbstrValue) (This)->lpVtbl->GetProperty(This,bPerLocale,bstrName,pbstrValue)
6269 #define ISearchAssistantOC_put_EventHandled(This,rhs) (This)->lpVtbl->put_EventHandled(This,rhs)
6270 #define ISearchAssistantOC_ResetNextMenu(This) (This)->lpVtbl->ResetNextMenu(This)
6271 #define ISearchAssistantOC_FindOnWeb(This) (This)->lpVtbl->FindOnWeb(This)
6272 #define ISearchAssistantOC_FindFilesOrFolders(This) (This)->lpVtbl->FindFilesOrFolders(This)
6273 #define ISearchAssistantOC_FindComputer(This) (This)->lpVtbl->FindComputer(This)
6274 #define ISearchAssistantOC_FindPrinter(This) (This)->lpVtbl->FindPrinter(This)
6275 #define ISearchAssistantOC_FindPeople(This) (This)->lpVtbl->FindPeople(This)
6276 #define ISearchAssistantOC_GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue) (This)->lpVtbl->GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue)
6277 #define ISearchAssistantOC_NotifySearchSettingsChanged(This) (This)->lpVtbl->NotifySearchSettingsChanged(This)
6278 #define ISearchAssistantOC_put_ASProvider(This,pProvider) (This)->lpVtbl->put_ASProvider(This,pProvider)
6279 #define ISearchAssistantOC_get_ASProvider(This,pProvider) (This)->lpVtbl->get_ASProvider(This,pProvider)
6280 #define ISearchAssistantOC_put_ASSetting(This,pSetting) (This)->lpVtbl->put_ASSetting(This,pSetting)
6281 #define ISearchAssistantOC_get_ASSetting(This,pSetting) (This)->lpVtbl->get_ASSetting(This,pSetting)
6282 #define ISearchAssistantOC_NETDetectNextNavigate(This) (This)->lpVtbl->NETDetectNextNavigate(This)
6283 #define ISearchAssistantOC_PutFindText(This,FindText) (This)->lpVtbl->PutFindText(This,FindText)
6284 #define ISearchAssistantOC_get_Version(This,pVersion) (This)->lpVtbl->get_Version(This,pVersion)
6285 #define ISearchAssistantOC_EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult) (This)->lpVtbl->EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult)
6286 #else
6287 /*** IUnknown methods ***/
6288 static FORCEINLINE HRESULT ISearchAssistantOC_QueryInterface(ISearchAssistantOC* This,REFIID riid,void **ppvObject) {
6289     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6290 }
6291 static FORCEINLINE ULONG ISearchAssistantOC_AddRef(ISearchAssistantOC* This) {
6292     return This->lpVtbl->AddRef(This);
6293 }
6294 static FORCEINLINE ULONG ISearchAssistantOC_Release(ISearchAssistantOC* This) {
6295     return This->lpVtbl->Release(This);
6296 }
6297 /*** IDispatch methods ***/
6298 static FORCEINLINE HRESULT ISearchAssistantOC_GetTypeInfoCount(ISearchAssistantOC* This,UINT *pctinfo) {
6299     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
6300 }
6301 static FORCEINLINE HRESULT ISearchAssistantOC_GetTypeInfo(ISearchAssistantOC* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
6302     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
6303 }
6304 static FORCEINLINE HRESULT ISearchAssistantOC_GetIDsOfNames(ISearchAssistantOC* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
6305     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
6306 }
6307 static FORCEINLINE HRESULT ISearchAssistantOC_Invoke(ISearchAssistantOC* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
6308     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
6309 }
6310 /*** ISearchAssistantOC methods ***/
6311 static FORCEINLINE HRESULT ISearchAssistantOC_AddNextMenuItem(ISearchAssistantOC* This,BSTR bstrText,LONG idItem) {
6312     return This->lpVtbl->AddNextMenuItem(This,bstrText,idItem);
6313 }
6314 static FORCEINLINE HRESULT ISearchAssistantOC_SetDefaultSearchUrl(ISearchAssistantOC* This,BSTR bstrUrl) {
6315     return This->lpVtbl->SetDefaultSearchUrl(This,bstrUrl);
6316 }
6317 static FORCEINLINE HRESULT ISearchAssistantOC_NavigateToDefaultSearch(ISearchAssistantOC* This) {
6318     return This->lpVtbl->NavigateToDefaultSearch(This);
6319 }
6320 static FORCEINLINE HRESULT ISearchAssistantOC_IsRestricted(ISearchAssistantOC* This,BSTR bstrGuid,VARIANT_BOOL *pVal) {
6321     return This->lpVtbl->IsRestricted(This,bstrGuid,pVal);
6322 }
6323 static FORCEINLINE HRESULT ISearchAssistantOC_get_ShellFeaturesEnabled(ISearchAssistantOC* This,VARIANT_BOOL *pVal) {
6324     return This->lpVtbl->get_ShellFeaturesEnabled(This,pVal);
6325 }
6326 static FORCEINLINE HRESULT ISearchAssistantOC_get_SearchAssistantDefault(ISearchAssistantOC* This,VARIANT_BOOL *pVal) {
6327     return This->lpVtbl->get_SearchAssistantDefault(This,pVal);
6328 }
6329 static FORCEINLINE HRESULT ISearchAssistantOC_get_Searches(ISearchAssistantOC* This,ISearches **ppid) {
6330     return This->lpVtbl->get_Searches(This,ppid);
6331 }
6332 static FORCEINLINE HRESULT ISearchAssistantOC_get_InWebFolder(ISearchAssistantOC* This,VARIANT_BOOL *pVal) {
6333     return This->lpVtbl->get_InWebFolder(This,pVal);
6334 }
6335 static FORCEINLINE HRESULT ISearchAssistantOC_PutProperty(ISearchAssistantOC* This,VARIANT_BOOL bPerLocale,BSTR bstrName,BSTR bstrValue) {
6336     return This->lpVtbl->PutProperty(This,bPerLocale,bstrName,bstrValue);
6337 }
6338 static FORCEINLINE HRESULT ISearchAssistantOC_GetProperty(ISearchAssistantOC* This,VARIANT_BOOL bPerLocale,BSTR bstrName,BSTR *pbstrValue) {
6339     return This->lpVtbl->GetProperty(This,bPerLocale,bstrName,pbstrValue);
6340 }
6341 static FORCEINLINE HRESULT ISearchAssistantOC_put_EventHandled(ISearchAssistantOC* This,VARIANT_BOOL rhs) {
6342     return This->lpVtbl->put_EventHandled(This,rhs);
6343 }
6344 static FORCEINLINE HRESULT ISearchAssistantOC_ResetNextMenu(ISearchAssistantOC* This) {
6345     return This->lpVtbl->ResetNextMenu(This);
6346 }
6347 static FORCEINLINE HRESULT ISearchAssistantOC_FindOnWeb(ISearchAssistantOC* This) {
6348     return This->lpVtbl->FindOnWeb(This);
6349 }
6350 static FORCEINLINE HRESULT ISearchAssistantOC_FindFilesOrFolders(ISearchAssistantOC* This) {
6351     return This->lpVtbl->FindFilesOrFolders(This);
6352 }
6353 static FORCEINLINE HRESULT ISearchAssistantOC_FindComputer(ISearchAssistantOC* This) {
6354     return This->lpVtbl->FindComputer(This);
6355 }
6356 static FORCEINLINE HRESULT ISearchAssistantOC_FindPrinter(ISearchAssistantOC* This) {
6357     return This->lpVtbl->FindPrinter(This);
6358 }
6359 static FORCEINLINE HRESULT ISearchAssistantOC_FindPeople(ISearchAssistantOC* This) {
6360     return This->lpVtbl->FindPeople(This);
6361 }
6362 static FORCEINLINE HRESULT ISearchAssistantOC_GetSearchAssistantURL(ISearchAssistantOC* This,VARIANT_BOOL bSubstitute,VARIANT_BOOL bCustomize,BSTR *pbstrValue) {
6363     return This->lpVtbl->GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue);
6364 }
6365 static FORCEINLINE HRESULT ISearchAssistantOC_NotifySearchSettingsChanged(ISearchAssistantOC* This) {
6366     return This->lpVtbl->NotifySearchSettingsChanged(This);
6367 }
6368 static FORCEINLINE HRESULT ISearchAssistantOC_put_ASProvider(ISearchAssistantOC* This,BSTR pProvider) {
6369     return This->lpVtbl->put_ASProvider(This,pProvider);
6370 }
6371 static FORCEINLINE HRESULT ISearchAssistantOC_get_ASProvider(ISearchAssistantOC* This,BSTR *pProvider) {
6372     return This->lpVtbl->get_ASProvider(This,pProvider);
6373 }
6374 static FORCEINLINE HRESULT ISearchAssistantOC_put_ASSetting(ISearchAssistantOC* This,int pSetting) {
6375     return This->lpVtbl->put_ASSetting(This,pSetting);
6376 }
6377 static FORCEINLINE HRESULT ISearchAssistantOC_get_ASSetting(ISearchAssistantOC* This,int *pSetting) {
6378     return This->lpVtbl->get_ASSetting(This,pSetting);
6379 }
6380 static FORCEINLINE HRESULT ISearchAssistantOC_NETDetectNextNavigate(ISearchAssistantOC* This) {
6381     return This->lpVtbl->NETDetectNextNavigate(This);
6382 }
6383 static FORCEINLINE HRESULT ISearchAssistantOC_PutFindText(ISearchAssistantOC* This,BSTR FindText) {
6384     return This->lpVtbl->PutFindText(This,FindText);
6385 }
6386 static FORCEINLINE HRESULT ISearchAssistantOC_get_Version(ISearchAssistantOC* This,int *pVersion) {
6387     return This->lpVtbl->get_Version(This,pVersion);
6388 }
6389 static FORCEINLINE HRESULT ISearchAssistantOC_EncodeString(ISearchAssistantOC* This,BSTR bstrValue,BSTR bstrCharSet,VARIANT_BOOL bUseUTF8,BSTR *pbstrResult) {
6390     return This->lpVtbl->EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult);
6391 }
6392 #endif
6393 #endif
6394 
6395 #endif
6396 
6397 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_AddNextMenuItem_Proxy(
6398     ISearchAssistantOC* This,
6399     BSTR bstrText,
6400     LONG idItem);
6401 void __RPC_STUB ISearchAssistantOC_AddNextMenuItem_Stub(
6402     IRpcStubBuffer* This,
6403     IRpcChannelBuffer* pRpcChannelBuffer,
6404     PRPC_MESSAGE pRpcMessage,
6405     DWORD* pdwStubPhase);
6406 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_SetDefaultSearchUrl_Proxy(
6407     ISearchAssistantOC* This,
6408     BSTR bstrUrl);
6409 void __RPC_STUB ISearchAssistantOC_SetDefaultSearchUrl_Stub(
6410     IRpcStubBuffer* This,
6411     IRpcChannelBuffer* pRpcChannelBuffer,
6412     PRPC_MESSAGE pRpcMessage,
6413     DWORD* pdwStubPhase);
6414 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_NavigateToDefaultSearch_Proxy(
6415     ISearchAssistantOC* This);
6416 void __RPC_STUB ISearchAssistantOC_NavigateToDefaultSearch_Stub(
6417     IRpcStubBuffer* This,
6418     IRpcChannelBuffer* pRpcChannelBuffer,
6419     PRPC_MESSAGE pRpcMessage,
6420     DWORD* pdwStubPhase);
6421 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_IsRestricted_Proxy(
6422     ISearchAssistantOC* This,
6423     BSTR bstrGuid,
6424     VARIANT_BOOL *pVal);
6425 void __RPC_STUB ISearchAssistantOC_IsRestricted_Stub(
6426     IRpcStubBuffer* This,
6427     IRpcChannelBuffer* pRpcChannelBuffer,
6428     PRPC_MESSAGE pRpcMessage,
6429     DWORD* pdwStubPhase);
6430 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_ShellFeaturesEnabled_Proxy(
6431     ISearchAssistantOC* This,
6432     VARIANT_BOOL *pVal);
6433 void __RPC_STUB ISearchAssistantOC_get_ShellFeaturesEnabled_Stub(
6434     IRpcStubBuffer* This,
6435     IRpcChannelBuffer* pRpcChannelBuffer,
6436     PRPC_MESSAGE pRpcMessage,
6437     DWORD* pdwStubPhase);
6438 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_SearchAssistantDefault_Proxy(
6439     ISearchAssistantOC* This,
6440     VARIANT_BOOL *pVal);
6441 void __RPC_STUB ISearchAssistantOC_get_SearchAssistantDefault_Stub(
6442     IRpcStubBuffer* This,
6443     IRpcChannelBuffer* pRpcChannelBuffer,
6444     PRPC_MESSAGE pRpcMessage,
6445     DWORD* pdwStubPhase);
6446 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_Searches_Proxy(
6447     ISearchAssistantOC* This,
6448     ISearches **ppid);
6449 void __RPC_STUB ISearchAssistantOC_get_Searches_Stub(
6450     IRpcStubBuffer* This,
6451     IRpcChannelBuffer* pRpcChannelBuffer,
6452     PRPC_MESSAGE pRpcMessage,
6453     DWORD* pdwStubPhase);
6454 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_InWebFolder_Proxy(
6455     ISearchAssistantOC* This,
6456     VARIANT_BOOL *pVal);
6457 void __RPC_STUB ISearchAssistantOC_get_InWebFolder_Stub(
6458     IRpcStubBuffer* This,
6459     IRpcChannelBuffer* pRpcChannelBuffer,
6460     PRPC_MESSAGE pRpcMessage,
6461     DWORD* pdwStubPhase);
6462 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_PutProperty_Proxy(
6463     ISearchAssistantOC* This,
6464     VARIANT_BOOL bPerLocale,
6465     BSTR bstrName,
6466     BSTR bstrValue);
6467 void __RPC_STUB ISearchAssistantOC_PutProperty_Stub(
6468     IRpcStubBuffer* This,
6469     IRpcChannelBuffer* pRpcChannelBuffer,
6470     PRPC_MESSAGE pRpcMessage,
6471     DWORD* pdwStubPhase);
6472 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_GetProperty_Proxy(
6473     ISearchAssistantOC* This,
6474     VARIANT_BOOL bPerLocale,
6475     BSTR bstrName,
6476     BSTR *pbstrValue);
6477 void __RPC_STUB ISearchAssistantOC_GetProperty_Stub(
6478     IRpcStubBuffer* This,
6479     IRpcChannelBuffer* pRpcChannelBuffer,
6480     PRPC_MESSAGE pRpcMessage,
6481     DWORD* pdwStubPhase);
6482 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_put_EventHandled_Proxy(
6483     ISearchAssistantOC* This,
6484     VARIANT_BOOL rhs);
6485 void __RPC_STUB ISearchAssistantOC_put_EventHandled_Stub(
6486     IRpcStubBuffer* This,
6487     IRpcChannelBuffer* pRpcChannelBuffer,
6488     PRPC_MESSAGE pRpcMessage,
6489     DWORD* pdwStubPhase);
6490 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_ResetNextMenu_Proxy(
6491     ISearchAssistantOC* This);
6492 void __RPC_STUB ISearchAssistantOC_ResetNextMenu_Stub(
6493     IRpcStubBuffer* This,
6494     IRpcChannelBuffer* pRpcChannelBuffer,
6495     PRPC_MESSAGE pRpcMessage,
6496     DWORD* pdwStubPhase);
6497 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindOnWeb_Proxy(
6498     ISearchAssistantOC* This);
6499 void __RPC_STUB ISearchAssistantOC_FindOnWeb_Stub(
6500     IRpcStubBuffer* This,
6501     IRpcChannelBuffer* pRpcChannelBuffer,
6502     PRPC_MESSAGE pRpcMessage,
6503     DWORD* pdwStubPhase);
6504 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindFilesOrFolders_Proxy(
6505     ISearchAssistantOC* This);
6506 void __RPC_STUB ISearchAssistantOC_FindFilesOrFolders_Stub(
6507     IRpcStubBuffer* This,
6508     IRpcChannelBuffer* pRpcChannelBuffer,
6509     PRPC_MESSAGE pRpcMessage,
6510     DWORD* pdwStubPhase);
6511 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindComputer_Proxy(
6512     ISearchAssistantOC* This);
6513 void __RPC_STUB ISearchAssistantOC_FindComputer_Stub(
6514     IRpcStubBuffer* This,
6515     IRpcChannelBuffer* pRpcChannelBuffer,
6516     PRPC_MESSAGE pRpcMessage,
6517     DWORD* pdwStubPhase);
6518 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindPrinter_Proxy(
6519     ISearchAssistantOC* This);
6520 void __RPC_STUB ISearchAssistantOC_FindPrinter_Stub(
6521     IRpcStubBuffer* This,
6522     IRpcChannelBuffer* pRpcChannelBuffer,
6523     PRPC_MESSAGE pRpcMessage,
6524     DWORD* pdwStubPhase);
6525 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindPeople_Proxy(
6526     ISearchAssistantOC* This);
6527 void __RPC_STUB ISearchAssistantOC_FindPeople_Stub(
6528     IRpcStubBuffer* This,
6529     IRpcChannelBuffer* pRpcChannelBuffer,
6530     PRPC_MESSAGE pRpcMessage,
6531     DWORD* pdwStubPhase);
6532 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_GetSearchAssistantURL_Proxy(
6533     ISearchAssistantOC* This,
6534     VARIANT_BOOL bSubstitute,
6535     VARIANT_BOOL bCustomize,
6536     BSTR *pbstrValue);
6537 void __RPC_STUB ISearchAssistantOC_GetSearchAssistantURL_Stub(
6538     IRpcStubBuffer* This,
6539     IRpcChannelBuffer* pRpcChannelBuffer,
6540     PRPC_MESSAGE pRpcMessage,
6541     DWORD* pdwStubPhase);
6542 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_NotifySearchSettingsChanged_Proxy(
6543     ISearchAssistantOC* This);
6544 void __RPC_STUB ISearchAssistantOC_NotifySearchSettingsChanged_Stub(
6545     IRpcStubBuffer* This,
6546     IRpcChannelBuffer* pRpcChannelBuffer,
6547     PRPC_MESSAGE pRpcMessage,
6548     DWORD* pdwStubPhase);
6549 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_put_ASProvider_Proxy(
6550     ISearchAssistantOC* This,
6551     BSTR pProvider);
6552 void __RPC_STUB ISearchAssistantOC_put_ASProvider_Stub(
6553     IRpcStubBuffer* This,
6554     IRpcChannelBuffer* pRpcChannelBuffer,
6555     PRPC_MESSAGE pRpcMessage,
6556     DWORD* pdwStubPhase);
6557 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_ASProvider_Proxy(
6558     ISearchAssistantOC* This,
6559     BSTR *pProvider);
6560 void __RPC_STUB ISearchAssistantOC_get_ASProvider_Stub(
6561     IRpcStubBuffer* This,
6562     IRpcChannelBuffer* pRpcChannelBuffer,
6563     PRPC_MESSAGE pRpcMessage,
6564     DWORD* pdwStubPhase);
6565 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_put_ASSetting_Proxy(
6566     ISearchAssistantOC* This,
6567     int pSetting);
6568 void __RPC_STUB ISearchAssistantOC_put_ASSetting_Stub(
6569     IRpcStubBuffer* This,
6570     IRpcChannelBuffer* pRpcChannelBuffer,
6571     PRPC_MESSAGE pRpcMessage,
6572     DWORD* pdwStubPhase);
6573 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_ASSetting_Proxy(
6574     ISearchAssistantOC* This,
6575     int *pSetting);
6576 void __RPC_STUB ISearchAssistantOC_get_ASSetting_Stub(
6577     IRpcStubBuffer* This,
6578     IRpcChannelBuffer* pRpcChannelBuffer,
6579     PRPC_MESSAGE pRpcMessage,
6580     DWORD* pdwStubPhase);
6581 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_NETDetectNextNavigate_Proxy(
6582     ISearchAssistantOC* This);
6583 void __RPC_STUB ISearchAssistantOC_NETDetectNextNavigate_Stub(
6584     IRpcStubBuffer* This,
6585     IRpcChannelBuffer* pRpcChannelBuffer,
6586     PRPC_MESSAGE pRpcMessage,
6587     DWORD* pdwStubPhase);
6588 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_PutFindText_Proxy(
6589     ISearchAssistantOC* This,
6590     BSTR FindText);
6591 void __RPC_STUB ISearchAssistantOC_PutFindText_Stub(
6592     IRpcStubBuffer* This,
6593     IRpcChannelBuffer* pRpcChannelBuffer,
6594     PRPC_MESSAGE pRpcMessage,
6595     DWORD* pdwStubPhase);
6596 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_Version_Proxy(
6597     ISearchAssistantOC* This,
6598     int *pVersion);
6599 void __RPC_STUB ISearchAssistantOC_get_Version_Stub(
6600     IRpcStubBuffer* This,
6601     IRpcChannelBuffer* pRpcChannelBuffer,
6602     PRPC_MESSAGE pRpcMessage,
6603     DWORD* pdwStubPhase);
6604 HRESULT STDMETHODCALLTYPE ISearchAssistantOC_EncodeString_Proxy(
6605     ISearchAssistantOC* This,
6606     BSTR bstrValue,
6607     BSTR bstrCharSet,
6608     VARIANT_BOOL bUseUTF8,
6609     BSTR *pbstrResult);
6610 void __RPC_STUB ISearchAssistantOC_EncodeString_Stub(
6611     IRpcStubBuffer* This,
6612     IRpcChannelBuffer* pRpcChannelBuffer,
6613     PRPC_MESSAGE pRpcMessage,
6614     DWORD* pdwStubPhase);
6615 
6616 #endif  /* __ISearchAssistantOC_INTERFACE_DEFINED__ */
6617 
6618 /*****************************************************************************
6619  * ISearchAssistantOC2 interface
6620  */
6621 #ifndef __ISearchAssistantOC2_INTERFACE_DEFINED__
6622 #define __ISearchAssistantOC2_INTERFACE_DEFINED__
6623 
6624 DEFINE_GUID(IID_ISearchAssistantOC2, 0x72423e8f, 0x8011, 0x11d2, 0xbe,0x79, 0x00,0xa0,0xc9,0xa8,0x3d,0xa2);
6625 #if defined(__cplusplus) && !defined(CINTERFACE)
6626 MIDL_INTERFACE("72423e8f-8011-11d2-be79-00a0c9a83da2")
6627 ISearchAssistantOC2 : public ISearchAssistantOC
6628 {
6629     virtual HRESULT STDMETHODCALLTYPE get_ShowFindPrinter(
6630         VARIANT_BOOL *pbShowFindPrinter) = 0;
6631 
6632 };
6633 #ifdef __CRT_UUID_DECL
6634 __CRT_UUID_DECL(ISearchAssistantOC2, 0x72423e8f, 0x8011, 0x11d2, 0xbe,0x79, 0x00,0xa0,0xc9,0xa8,0x3d,0xa2)
6635 #endif
6636 #else
6637 typedef struct ISearchAssistantOC2Vtbl {
6638     BEGIN_INTERFACE
6639 
6640     /*** IUnknown methods ***/
6641     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6642         ISearchAssistantOC2* This,
6643         REFIID riid,
6644         void **ppvObject);
6645 
6646     ULONG (STDMETHODCALLTYPE *AddRef)(
6647         ISearchAssistantOC2* This);
6648 
6649     ULONG (STDMETHODCALLTYPE *Release)(
6650         ISearchAssistantOC2* This);
6651 
6652     /*** IDispatch methods ***/
6653     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
6654         ISearchAssistantOC2* This,
6655         UINT *pctinfo);
6656 
6657     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
6658         ISearchAssistantOC2* This,
6659         UINT iTInfo,
6660         LCID lcid,
6661         ITypeInfo **ppTInfo);
6662 
6663     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
6664         ISearchAssistantOC2* This,
6665         REFIID riid,
6666         LPOLESTR *rgszNames,
6667         UINT cNames,
6668         LCID lcid,
6669         DISPID *rgDispId);
6670 
6671     HRESULT (STDMETHODCALLTYPE *Invoke)(
6672         ISearchAssistantOC2* This,
6673         DISPID dispIdMember,
6674         REFIID riid,
6675         LCID lcid,
6676         WORD wFlags,
6677         DISPPARAMS *pDispParams,
6678         VARIANT *pVarResult,
6679         EXCEPINFO *pExcepInfo,
6680         UINT *puArgErr);
6681 
6682     /*** ISearchAssistantOC methods ***/
6683     HRESULT (STDMETHODCALLTYPE *AddNextMenuItem)(
6684         ISearchAssistantOC2* This,
6685         BSTR bstrText,
6686         LONG idItem);
6687 
6688     HRESULT (STDMETHODCALLTYPE *SetDefaultSearchUrl)(
6689         ISearchAssistantOC2* This,
6690         BSTR bstrUrl);
6691 
6692     HRESULT (STDMETHODCALLTYPE *NavigateToDefaultSearch)(
6693         ISearchAssistantOC2* This);
6694 
6695     HRESULT (STDMETHODCALLTYPE *IsRestricted)(
6696         ISearchAssistantOC2* This,
6697         BSTR bstrGuid,
6698         VARIANT_BOOL *pVal);
6699 
6700     HRESULT (STDMETHODCALLTYPE *get_ShellFeaturesEnabled)(
6701         ISearchAssistantOC2* This,
6702         VARIANT_BOOL *pVal);
6703 
6704     HRESULT (STDMETHODCALLTYPE *get_SearchAssistantDefault)(
6705         ISearchAssistantOC2* This,
6706         VARIANT_BOOL *pVal);
6707 
6708     HRESULT (STDMETHODCALLTYPE *get_Searches)(
6709         ISearchAssistantOC2* This,
6710         ISearches **ppid);
6711 
6712     HRESULT (STDMETHODCALLTYPE *get_InWebFolder)(
6713         ISearchAssistantOC2* This,
6714         VARIANT_BOOL *pVal);
6715 
6716     HRESULT (STDMETHODCALLTYPE *PutProperty)(
6717         ISearchAssistantOC2* This,
6718         VARIANT_BOOL bPerLocale,
6719         BSTR bstrName,
6720         BSTR bstrValue);
6721 
6722     HRESULT (STDMETHODCALLTYPE *GetProperty)(
6723         ISearchAssistantOC2* This,
6724         VARIANT_BOOL bPerLocale,
6725         BSTR bstrName,
6726         BSTR *pbstrValue);
6727 
6728     HRESULT (STDMETHODCALLTYPE *put_EventHandled)(
6729         ISearchAssistantOC2* This,
6730         VARIANT_BOOL rhs);
6731 
6732     HRESULT (STDMETHODCALLTYPE *ResetNextMenu)(
6733         ISearchAssistantOC2* This);
6734 
6735     HRESULT (STDMETHODCALLTYPE *FindOnWeb)(
6736         ISearchAssistantOC2* This);
6737 
6738     HRESULT (STDMETHODCALLTYPE *FindFilesOrFolders)(
6739         ISearchAssistantOC2* This);
6740 
6741     HRESULT (STDMETHODCALLTYPE *FindComputer)(
6742         ISearchAssistantOC2* This);
6743 
6744     HRESULT (STDMETHODCALLTYPE *FindPrinter)(
6745         ISearchAssistantOC2* This);
6746 
6747     HRESULT (STDMETHODCALLTYPE *FindPeople)(
6748         ISearchAssistantOC2* This);
6749 
6750     HRESULT (STDMETHODCALLTYPE *GetSearchAssistantURL)(
6751         ISearchAssistantOC2* This,
6752         VARIANT_BOOL bSubstitute,
6753         VARIANT_BOOL bCustomize,
6754         BSTR *pbstrValue);
6755 
6756     HRESULT (STDMETHODCALLTYPE *NotifySearchSettingsChanged)(
6757         ISearchAssistantOC2* This);
6758 
6759     HRESULT (STDMETHODCALLTYPE *put_ASProvider)(
6760         ISearchAssistantOC2* This,
6761         BSTR pProvider);
6762 
6763     HRESULT (STDMETHODCALLTYPE *get_ASProvider)(
6764         ISearchAssistantOC2* This,
6765         BSTR *pProvider);
6766 
6767     HRESULT (STDMETHODCALLTYPE *put_ASSetting)(
6768         ISearchAssistantOC2* This,
6769         int pSetting);
6770 
6771     HRESULT (STDMETHODCALLTYPE *get_ASSetting)(
6772         ISearchAssistantOC2* This,
6773         int *pSetting);
6774 
6775     HRESULT (STDMETHODCALLTYPE *NETDetectNextNavigate)(
6776         ISearchAssistantOC2* This);
6777 
6778     HRESULT (STDMETHODCALLTYPE *PutFindText)(
6779         ISearchAssistantOC2* This,
6780         BSTR FindText);
6781 
6782     HRESULT (STDMETHODCALLTYPE *get_Version)(
6783         ISearchAssistantOC2* This,
6784         int *pVersion);
6785 
6786     HRESULT (STDMETHODCALLTYPE *EncodeString)(
6787         ISearchAssistantOC2* This,
6788         BSTR bstrValue,
6789         BSTR bstrCharSet,
6790         VARIANT_BOOL bUseUTF8,
6791         BSTR *pbstrResult);
6792 
6793     /*** ISearchAssistantOC2 methods ***/
6794     HRESULT (STDMETHODCALLTYPE *get_ShowFindPrinter)(
6795         ISearchAssistantOC2* This,
6796         VARIANT_BOOL *pbShowFindPrinter);
6797 
6798     END_INTERFACE
6799 } ISearchAssistantOC2Vtbl;
6800 interface ISearchAssistantOC2 {
6801     CONST_VTBL ISearchAssistantOC2Vtbl* lpVtbl;
6802 };
6803 
6804 #ifdef COBJMACROS
6805 #ifndef WIDL_C_INLINE_WRAPPERS
6806 /*** IUnknown methods ***/
6807 #define ISearchAssistantOC2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6808 #define ISearchAssistantOC2_AddRef(This) (This)->lpVtbl->AddRef(This)
6809 #define ISearchAssistantOC2_Release(This) (This)->lpVtbl->Release(This)
6810 /*** IDispatch methods ***/
6811 #define ISearchAssistantOC2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
6812 #define ISearchAssistantOC2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
6813 #define ISearchAssistantOC2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
6814 #define ISearchAssistantOC2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
6815 /*** ISearchAssistantOC methods ***/
6816 #define ISearchAssistantOC2_AddNextMenuItem(This,bstrText,idItem) (This)->lpVtbl->AddNextMenuItem(This,bstrText,idItem)
6817 #define ISearchAssistantOC2_SetDefaultSearchUrl(This,bstrUrl) (This)->lpVtbl->SetDefaultSearchUrl(This,bstrUrl)
6818 #define ISearchAssistantOC2_NavigateToDefaultSearch(This) (This)->lpVtbl->NavigateToDefaultSearch(This)
6819 #define ISearchAssistantOC2_IsRestricted(This,bstrGuid,pVal) (This)->lpVtbl->IsRestricted(This,bstrGuid,pVal)
6820 #define ISearchAssistantOC2_get_ShellFeaturesEnabled(This,pVal) (This)->lpVtbl->get_ShellFeaturesEnabled(This,pVal)
6821 #define ISearchAssistantOC2_get_SearchAssistantDefault(This,pVal) (This)->lpVtbl->get_SearchAssistantDefault(This,pVal)
6822 #define ISearchAssistantOC2_get_Searches(This,ppid) (This)->lpVtbl->get_Searches(This,ppid)
6823 #define ISearchAssistantOC2_get_InWebFolder(This,pVal) (This)->lpVtbl->get_InWebFolder(This,pVal)
6824 #define ISearchAssistantOC2_PutProperty(This,bPerLocale,bstrName,bstrValue) (This)->lpVtbl->PutProperty(This,bPerLocale,bstrName,bstrValue)
6825 #define ISearchAssistantOC2_GetProperty(This,bPerLocale,bstrName,pbstrValue) (This)->lpVtbl->GetProperty(This,bPerLocale,bstrName,pbstrValue)
6826 #define ISearchAssistantOC2_put_EventHandled(This,rhs) (This)->lpVtbl->put_EventHandled(This,rhs)
6827 #define ISearchAssistantOC2_ResetNextMenu(This) (This)->lpVtbl->ResetNextMenu(This)
6828 #define ISearchAssistantOC2_FindOnWeb(This) (This)->lpVtbl->FindOnWeb(This)
6829 #define ISearchAssistantOC2_FindFilesOrFolders(This) (This)->lpVtbl->FindFilesOrFolders(This)
6830 #define ISearchAssistantOC2_FindComputer(This) (This)->lpVtbl->FindComputer(This)
6831 #define ISearchAssistantOC2_FindPrinter(This) (This)->lpVtbl->FindPrinter(This)
6832 #define ISearchAssistantOC2_FindPeople(This) (This)->lpVtbl->FindPeople(This)
6833 #define ISearchAssistantOC2_GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue) (This)->lpVtbl->GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue)
6834 #define ISearchAssistantOC2_NotifySearchSettingsChanged(This) (This)->lpVtbl->NotifySearchSettingsChanged(This)
6835 #define ISearchAssistantOC2_put_ASProvider(This,pProvider) (This)->lpVtbl->put_ASProvider(This,pProvider)
6836 #define ISearchAssistantOC2_get_ASProvider(This,pProvider) (This)->lpVtbl->get_ASProvider(This,pProvider)
6837 #define ISearchAssistantOC2_put_ASSetting(This,pSetting) (This)->lpVtbl->put_ASSetting(This,pSetting)
6838 #define ISearchAssistantOC2_get_ASSetting(This,pSetting) (This)->lpVtbl->get_ASSetting(This,pSetting)
6839 #define ISearchAssistantOC2_NETDetectNextNavigate(This) (This)->lpVtbl->NETDetectNextNavigate(This)
6840 #define ISearchAssistantOC2_PutFindText(This,FindText) (This)->lpVtbl->PutFindText(This,FindText)
6841 #define ISearchAssistantOC2_get_Version(This,pVersion) (This)->lpVtbl->get_Version(This,pVersion)
6842 #define ISearchAssistantOC2_EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult) (This)->lpVtbl->EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult)
6843 /*** ISearchAssistantOC2 methods ***/
6844 #define ISearchAssistantOC2_get_ShowFindPrinter(This,pbShowFindPrinter) (This)->lpVtbl->get_ShowFindPrinter(This,pbShowFindPrinter)
6845 #else
6846 /*** IUnknown methods ***/
6847 static FORCEINLINE HRESULT ISearchAssistantOC2_QueryInterface(ISearchAssistantOC2* This,REFIID riid,void **ppvObject) {
6848     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6849 }
6850 static FORCEINLINE ULONG ISearchAssistantOC2_AddRef(ISearchAssistantOC2* This) {
6851     return This->lpVtbl->AddRef(This);
6852 }
6853 static FORCEINLINE ULONG ISearchAssistantOC2_Release(ISearchAssistantOC2* This) {
6854     return This->lpVtbl->Release(This);
6855 }
6856 /*** IDispatch methods ***/
6857 static FORCEINLINE HRESULT ISearchAssistantOC2_GetTypeInfoCount(ISearchAssistantOC2* This,UINT *pctinfo) {
6858     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
6859 }
6860 static FORCEINLINE HRESULT ISearchAssistantOC2_GetTypeInfo(ISearchAssistantOC2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
6861     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
6862 }
6863 static FORCEINLINE HRESULT ISearchAssistantOC2_GetIDsOfNames(ISearchAssistantOC2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
6864     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
6865 }
6866 static FORCEINLINE HRESULT ISearchAssistantOC2_Invoke(ISearchAssistantOC2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
6867     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
6868 }
6869 /*** ISearchAssistantOC methods ***/
6870 static FORCEINLINE HRESULT ISearchAssistantOC2_AddNextMenuItem(ISearchAssistantOC2* This,BSTR bstrText,LONG idItem) {
6871     return This->lpVtbl->AddNextMenuItem(This,bstrText,idItem);
6872 }
6873 static FORCEINLINE HRESULT ISearchAssistantOC2_SetDefaultSearchUrl(ISearchAssistantOC2* This,BSTR bstrUrl) {
6874     return This->lpVtbl->SetDefaultSearchUrl(This,bstrUrl);
6875 }
6876 static FORCEINLINE HRESULT ISearchAssistantOC2_NavigateToDefaultSearch(ISearchAssistantOC2* This) {
6877     return This->lpVtbl->NavigateToDefaultSearch(This);
6878 }
6879 static FORCEINLINE HRESULT ISearchAssistantOC2_IsRestricted(ISearchAssistantOC2* This,BSTR bstrGuid,VARIANT_BOOL *pVal) {
6880     return This->lpVtbl->IsRestricted(This,bstrGuid,pVal);
6881 }
6882 static FORCEINLINE HRESULT ISearchAssistantOC2_get_ShellFeaturesEnabled(ISearchAssistantOC2* This,VARIANT_BOOL *pVal) {
6883     return This->lpVtbl->get_ShellFeaturesEnabled(This,pVal);
6884 }
6885 static FORCEINLINE HRESULT ISearchAssistantOC2_get_SearchAssistantDefault(ISearchAssistantOC2* This,VARIANT_BOOL *pVal) {
6886     return This->lpVtbl->get_SearchAssistantDefault(This,pVal);
6887 }
6888 static FORCEINLINE HRESULT ISearchAssistantOC2_get_Searches(ISearchAssistantOC2* This,ISearches **ppid) {
6889     return This->lpVtbl->get_Searches(This,ppid);
6890 }
6891 static FORCEINLINE HRESULT ISearchAssistantOC2_get_InWebFolder(ISearchAssistantOC2* This,VARIANT_BOOL *pVal) {
6892     return This->lpVtbl->get_InWebFolder(This,pVal);
6893 }
6894 static FORCEINLINE HRESULT ISearchAssistantOC2_PutProperty(ISearchAssistantOC2* This,VARIANT_BOOL bPerLocale,BSTR bstrName,BSTR bstrValue) {
6895     return This->lpVtbl->PutProperty(This,bPerLocale,bstrName,bstrValue);
6896 }
6897 static FORCEINLINE HRESULT ISearchAssistantOC2_GetProperty(ISearchAssistantOC2* This,VARIANT_BOOL bPerLocale,BSTR bstrName,BSTR *pbstrValue) {
6898     return This->lpVtbl->GetProperty(This,bPerLocale,bstrName,pbstrValue);
6899 }
6900 static FORCEINLINE HRESULT ISearchAssistantOC2_put_EventHandled(ISearchAssistantOC2* This,VARIANT_BOOL rhs) {
6901     return This->lpVtbl->put_EventHandled(This,rhs);
6902 }
6903 static FORCEINLINE HRESULT ISearchAssistantOC2_ResetNextMenu(ISearchAssistantOC2* This) {
6904     return This->lpVtbl->ResetNextMenu(This);
6905 }
6906 static FORCEINLINE HRESULT ISearchAssistantOC2_FindOnWeb(ISearchAssistantOC2* This) {
6907     return This->lpVtbl->FindOnWeb(This);
6908 }
6909 static FORCEINLINE HRESULT ISearchAssistantOC2_FindFilesOrFolders(ISearchAssistantOC2* This) {
6910     return This->lpVtbl->FindFilesOrFolders(This);
6911 }
6912 static FORCEINLINE HRESULT ISearchAssistantOC2_FindComputer(ISearchAssistantOC2* This) {
6913     return This->lpVtbl->FindComputer(This);
6914 }
6915 static FORCEINLINE HRESULT ISearchAssistantOC2_FindPrinter(ISearchAssistantOC2* This) {
6916     return This->lpVtbl->FindPrinter(This);
6917 }
6918 static FORCEINLINE HRESULT ISearchAssistantOC2_FindPeople(ISearchAssistantOC2* This) {
6919     return This->lpVtbl->FindPeople(This);
6920 }
6921 static FORCEINLINE HRESULT ISearchAssistantOC2_GetSearchAssistantURL(ISearchAssistantOC2* This,VARIANT_BOOL bSubstitute,VARIANT_BOOL bCustomize,BSTR *pbstrValue) {
6922     return This->lpVtbl->GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue);
6923 }
6924 static FORCEINLINE HRESULT ISearchAssistantOC2_NotifySearchSettingsChanged(ISearchAssistantOC2* This) {
6925     return This->lpVtbl->NotifySearchSettingsChanged(This);
6926 }
6927 static FORCEINLINE HRESULT ISearchAssistantOC2_put_ASProvider(ISearchAssistantOC2* This,BSTR pProvider) {
6928     return This->lpVtbl->put_ASProvider(This,pProvider);
6929 }
6930 static FORCEINLINE HRESULT ISearchAssistantOC2_get_ASProvider(ISearchAssistantOC2* This,BSTR *pProvider) {
6931     return This->lpVtbl->get_ASProvider(This,pProvider);
6932 }
6933 static FORCEINLINE HRESULT ISearchAssistantOC2_put_ASSetting(ISearchAssistantOC2* This,int pSetting) {
6934     return This->lpVtbl->put_ASSetting(This,pSetting);
6935 }
6936 static FORCEINLINE HRESULT ISearchAssistantOC2_get_ASSetting(ISearchAssistantOC2* This,int *pSetting) {
6937     return This->lpVtbl->get_ASSetting(This,pSetting);
6938 }
6939 static FORCEINLINE HRESULT ISearchAssistantOC2_NETDetectNextNavigate(ISearchAssistantOC2* This) {
6940     return This->lpVtbl->NETDetectNextNavigate(This);
6941 }
6942 static FORCEINLINE HRESULT ISearchAssistantOC2_PutFindText(ISearchAssistantOC2* This,BSTR FindText) {
6943     return This->lpVtbl->PutFindText(This,FindText);
6944 }
6945 static FORCEINLINE HRESULT ISearchAssistantOC2_get_Version(ISearchAssistantOC2* This,int *pVersion) {
6946     return This->lpVtbl->get_Version(This,pVersion);
6947 }
6948 static FORCEINLINE HRESULT ISearchAssistantOC2_EncodeString(ISearchAssistantOC2* This,BSTR bstrValue,BSTR bstrCharSet,VARIANT_BOOL bUseUTF8,BSTR *pbstrResult) {
6949     return This->lpVtbl->EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult);
6950 }
6951 /*** ISearchAssistantOC2 methods ***/
6952 static FORCEINLINE HRESULT ISearchAssistantOC2_get_ShowFindPrinter(ISearchAssistantOC2* This,VARIANT_BOOL *pbShowFindPrinter) {
6953     return This->lpVtbl->get_ShowFindPrinter(This,pbShowFindPrinter);
6954 }
6955 #endif
6956 #endif
6957 
6958 #endif
6959 
6960 HRESULT STDMETHODCALLTYPE ISearchAssistantOC2_get_ShowFindPrinter_Proxy(
6961     ISearchAssistantOC2* This,
6962     VARIANT_BOOL *pbShowFindPrinter);
6963 void __RPC_STUB ISearchAssistantOC2_get_ShowFindPrinter_Stub(
6964     IRpcStubBuffer* This,
6965     IRpcChannelBuffer* pRpcChannelBuffer,
6966     PRPC_MESSAGE pRpcMessage,
6967     DWORD* pdwStubPhase);
6968 
6969 #endif  /* __ISearchAssistantOC2_INTERFACE_DEFINED__ */
6970 
6971 /*****************************************************************************
6972  * ISearchAssistantOC3 interface
6973  */
6974 #ifndef __ISearchAssistantOC3_INTERFACE_DEFINED__
6975 #define __ISearchAssistantOC3_INTERFACE_DEFINED__
6976 
6977 DEFINE_GUID(IID_ISearchAssistantOC3, 0x72423e8f, 0x8011, 0x11d2, 0xbe,0x79, 0x00,0xa0,0xc9,0xa8,0x3d,0xa3);
6978 #if defined(__cplusplus) && !defined(CINTERFACE)
6979 MIDL_INTERFACE("72423e8f-8011-11d2-be79-00a0c9a83da3")
6980 ISearchAssistantOC3 : public ISearchAssistantOC2
6981 {
6982     virtual HRESULT STDMETHODCALLTYPE get_SearchCompanionAvailable(
6983         VARIANT_BOOL *pbAvailable) = 0;
6984 
6985     virtual HRESULT STDMETHODCALLTYPE put_UseSearchCompanion(
6986         VARIANT_BOOL pbUseSC) = 0;
6987 
6988     virtual HRESULT STDMETHODCALLTYPE get_UseSearchCompanion(
6989         VARIANT_BOOL *pbUseSC) = 0;
6990 
6991 };
6992 #ifdef __CRT_UUID_DECL
6993 __CRT_UUID_DECL(ISearchAssistantOC3, 0x72423e8f, 0x8011, 0x11d2, 0xbe,0x79, 0x00,0xa0,0xc9,0xa8,0x3d,0xa3)
6994 #endif
6995 #else
6996 typedef struct ISearchAssistantOC3Vtbl {
6997     BEGIN_INTERFACE
6998 
6999     /*** IUnknown methods ***/
7000     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7001         ISearchAssistantOC3* This,
7002         REFIID riid,
7003         void **ppvObject);
7004 
7005     ULONG (STDMETHODCALLTYPE *AddRef)(
7006         ISearchAssistantOC3* This);
7007 
7008     ULONG (STDMETHODCALLTYPE *Release)(
7009         ISearchAssistantOC3* This);
7010 
7011     /*** IDispatch methods ***/
7012     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
7013         ISearchAssistantOC3* This,
7014         UINT *pctinfo);
7015 
7016     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
7017         ISearchAssistantOC3* This,
7018         UINT iTInfo,
7019         LCID lcid,
7020         ITypeInfo **ppTInfo);
7021 
7022     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
7023         ISearchAssistantOC3* This,
7024         REFIID riid,
7025         LPOLESTR *rgszNames,
7026         UINT cNames,
7027         LCID lcid,
7028         DISPID *rgDispId);
7029 
7030     HRESULT (STDMETHODCALLTYPE *Invoke)(
7031         ISearchAssistantOC3* This,
7032         DISPID dispIdMember,
7033         REFIID riid,
7034         LCID lcid,
7035         WORD wFlags,
7036         DISPPARAMS *pDispParams,
7037         VARIANT *pVarResult,
7038         EXCEPINFO *pExcepInfo,
7039         UINT *puArgErr);
7040 
7041     /*** ISearchAssistantOC methods ***/
7042     HRESULT (STDMETHODCALLTYPE *AddNextMenuItem)(
7043         ISearchAssistantOC3* This,
7044         BSTR bstrText,
7045         LONG idItem);
7046 
7047     HRESULT (STDMETHODCALLTYPE *SetDefaultSearchUrl)(
7048         ISearchAssistantOC3* This,
7049         BSTR bstrUrl);
7050 
7051     HRESULT (STDMETHODCALLTYPE *NavigateToDefaultSearch)(
7052         ISearchAssistantOC3* This);
7053 
7054     HRESULT (STDMETHODCALLTYPE *IsRestricted)(
7055         ISearchAssistantOC3* This,
7056         BSTR bstrGuid,
7057         VARIANT_BOOL *pVal);
7058 
7059     HRESULT (STDMETHODCALLTYPE *get_ShellFeaturesEnabled)(
7060         ISearchAssistantOC3* This,
7061         VARIANT_BOOL *pVal);
7062 
7063     HRESULT (STDMETHODCALLTYPE *get_SearchAssistantDefault)(
7064         ISearchAssistantOC3* This,
7065         VARIANT_BOOL *pVal);
7066 
7067     HRESULT (STDMETHODCALLTYPE *get_Searches)(
7068         ISearchAssistantOC3* This,
7069         ISearches **ppid);
7070 
7071     HRESULT (STDMETHODCALLTYPE *get_InWebFolder)(
7072         ISearchAssistantOC3* This,
7073         VARIANT_BOOL *pVal);
7074 
7075     HRESULT (STDMETHODCALLTYPE *PutProperty)(
7076         ISearchAssistantOC3* This,
7077         VARIANT_BOOL bPerLocale,
7078         BSTR bstrName,
7079         BSTR bstrValue);
7080 
7081     HRESULT (STDMETHODCALLTYPE *GetProperty)(
7082         ISearchAssistantOC3* This,
7083         VARIANT_BOOL bPerLocale,
7084         BSTR bstrName,
7085         BSTR *pbstrValue);
7086 
7087     HRESULT (STDMETHODCALLTYPE *put_EventHandled)(
7088         ISearchAssistantOC3* This,
7089         VARIANT_BOOL rhs);
7090 
7091     HRESULT (STDMETHODCALLTYPE *ResetNextMenu)(
7092         ISearchAssistantOC3* This);
7093 
7094     HRESULT (STDMETHODCALLTYPE *FindOnWeb)(
7095         ISearchAssistantOC3* This);
7096 
7097     HRESULT (STDMETHODCALLTYPE *FindFilesOrFolders)(
7098         ISearchAssistantOC3* This);
7099 
7100     HRESULT (STDMETHODCALLTYPE *FindComputer)(
7101         ISearchAssistantOC3* This);
7102 
7103     HRESULT (STDMETHODCALLTYPE *FindPrinter)(
7104         ISearchAssistantOC3* This);
7105 
7106     HRESULT (STDMETHODCALLTYPE *FindPeople)(
7107         ISearchAssistantOC3* This);
7108 
7109     HRESULT (STDMETHODCALLTYPE *GetSearchAssistantURL)(
7110         ISearchAssistantOC3* This,
7111         VARIANT_BOOL bSubstitute,
7112         VARIANT_BOOL bCustomize,
7113         BSTR *pbstrValue);
7114 
7115     HRESULT (STDMETHODCALLTYPE *NotifySearchSettingsChanged)(
7116         ISearchAssistantOC3* This);
7117 
7118     HRESULT (STDMETHODCALLTYPE *put_ASProvider)(
7119         ISearchAssistantOC3* This,
7120         BSTR pProvider);
7121 
7122     HRESULT (STDMETHODCALLTYPE *get_ASProvider)(
7123         ISearchAssistantOC3* This,
7124         BSTR *pProvider);
7125 
7126     HRESULT (STDMETHODCALLTYPE *put_ASSetting)(
7127         ISearchAssistantOC3* This,
7128         int pSetting);
7129 
7130     HRESULT (STDMETHODCALLTYPE *get_ASSetting)(
7131         ISearchAssistantOC3* This,
7132         int *pSetting);
7133 
7134     HRESULT (STDMETHODCALLTYPE *NETDetectNextNavigate)(
7135         ISearchAssistantOC3* This);
7136 
7137     HRESULT (STDMETHODCALLTYPE *PutFindText)(
7138         ISearchAssistantOC3* This,
7139         BSTR FindText);
7140 
7141     HRESULT (STDMETHODCALLTYPE *get_Version)(
7142         ISearchAssistantOC3* This,
7143         int *pVersion);
7144 
7145     HRESULT (STDMETHODCALLTYPE *EncodeString)(
7146         ISearchAssistantOC3* This,
7147         BSTR bstrValue,
7148         BSTR bstrCharSet,
7149         VARIANT_BOOL bUseUTF8,
7150         BSTR *pbstrResult);
7151 
7152     /*** ISearchAssistantOC2 methods ***/
7153     HRESULT (STDMETHODCALLTYPE *get_ShowFindPrinter)(
7154         ISearchAssistantOC3* This,
7155         VARIANT_BOOL *pbShowFindPrinter);
7156 
7157     /*** ISearchAssistantOC3 methods ***/
7158     HRESULT (STDMETHODCALLTYPE *get_SearchCompanionAvailable)(
7159         ISearchAssistantOC3* This,
7160         VARIANT_BOOL *pbAvailable);
7161 
7162     HRESULT (STDMETHODCALLTYPE *put_UseSearchCompanion)(
7163         ISearchAssistantOC3* This,
7164         VARIANT_BOOL pbUseSC);
7165 
7166     HRESULT (STDMETHODCALLTYPE *get_UseSearchCompanion)(
7167         ISearchAssistantOC3* This,
7168         VARIANT_BOOL *pbUseSC);
7169 
7170     END_INTERFACE
7171 } ISearchAssistantOC3Vtbl;
7172 interface ISearchAssistantOC3 {
7173     CONST_VTBL ISearchAssistantOC3Vtbl* lpVtbl;
7174 };
7175 
7176 #ifdef COBJMACROS
7177 #ifndef WIDL_C_INLINE_WRAPPERS
7178 /*** IUnknown methods ***/
7179 #define ISearchAssistantOC3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7180 #define ISearchAssistantOC3_AddRef(This) (This)->lpVtbl->AddRef(This)
7181 #define ISearchAssistantOC3_Release(This) (This)->lpVtbl->Release(This)
7182 /*** IDispatch methods ***/
7183 #define ISearchAssistantOC3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
7184 #define ISearchAssistantOC3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
7185 #define ISearchAssistantOC3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
7186 #define ISearchAssistantOC3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
7187 /*** ISearchAssistantOC methods ***/
7188 #define ISearchAssistantOC3_AddNextMenuItem(This,bstrText,idItem) (This)->lpVtbl->AddNextMenuItem(This,bstrText,idItem)
7189 #define ISearchAssistantOC3_SetDefaultSearchUrl(This,bstrUrl) (This)->lpVtbl->SetDefaultSearchUrl(This,bstrUrl)
7190 #define ISearchAssistantOC3_NavigateToDefaultSearch(This) (This)->lpVtbl->NavigateToDefaultSearch(This)
7191 #define ISearchAssistantOC3_IsRestricted(This,bstrGuid,pVal) (This)->lpVtbl->IsRestricted(This,bstrGuid,pVal)
7192 #define ISearchAssistantOC3_get_ShellFeaturesEnabled(This,pVal) (This)->lpVtbl->get_ShellFeaturesEnabled(This,pVal)
7193 #define ISearchAssistantOC3_get_SearchAssistantDefault(This,pVal) (This)->lpVtbl->get_SearchAssistantDefault(This,pVal)
7194 #define ISearchAssistantOC3_get_Searches(This,ppid) (This)->lpVtbl->get_Searches(This,ppid)
7195 #define ISearchAssistantOC3_get_InWebFolder(This,pVal) (This)->lpVtbl->get_InWebFolder(This,pVal)
7196 #define ISearchAssistantOC3_PutProperty(This,bPerLocale,bstrName,bstrValue) (This)->lpVtbl->PutProperty(This,bPerLocale,bstrName,bstrValue)
7197 #define ISearchAssistantOC3_GetProperty(This,bPerLocale,bstrName,pbstrValue) (This)->lpVtbl->GetProperty(This,bPerLocale,bstrName,pbstrValue)
7198 #define ISearchAssistantOC3_put_EventHandled(This,rhs) (This)->lpVtbl->put_EventHandled(This,rhs)
7199 #define ISearchAssistantOC3_ResetNextMenu(This) (This)->lpVtbl->ResetNextMenu(This)
7200 #define ISearchAssistantOC3_FindOnWeb(This) (This)->lpVtbl->FindOnWeb(This)
7201 #define ISearchAssistantOC3_FindFilesOrFolders(This) (This)->lpVtbl->FindFilesOrFolders(This)
7202 #define ISearchAssistantOC3_FindComputer(This) (This)->lpVtbl->FindComputer(This)
7203 #define ISearchAssistantOC3_FindPrinter(This) (This)->lpVtbl->FindPrinter(This)
7204 #define ISearchAssistantOC3_FindPeople(This) (This)->lpVtbl->FindPeople(This)
7205 #define ISearchAssistantOC3_GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue) (This)->lpVtbl->GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue)
7206 #define ISearchAssistantOC3_NotifySearchSettingsChanged(This) (This)->lpVtbl->NotifySearchSettingsChanged(This)
7207 #define ISearchAssistantOC3_put_ASProvider(This,pProvider) (This)->lpVtbl->put_ASProvider(This,pProvider)
7208 #define ISearchAssistantOC3_get_ASProvider(This,pProvider) (This)->lpVtbl->get_ASProvider(This,pProvider)
7209 #define ISearchAssistantOC3_put_ASSetting(This,pSetting) (This)->lpVtbl->put_ASSetting(This,pSetting)
7210 #define ISearchAssistantOC3_get_ASSetting(This,pSetting) (This)->lpVtbl->get_ASSetting(This,pSetting)
7211 #define ISearchAssistantOC3_NETDetectNextNavigate(This) (This)->lpVtbl->NETDetectNextNavigate(This)
7212 #define ISearchAssistantOC3_PutFindText(This,FindText) (This)->lpVtbl->PutFindText(This,FindText)
7213 #define ISearchAssistantOC3_get_Version(This,pVersion) (This)->lpVtbl->get_Version(This,pVersion)
7214 #define ISearchAssistantOC3_EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult) (This)->lpVtbl->EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult)
7215 /*** ISearchAssistantOC2 methods ***/
7216 #define ISearchAssistantOC3_get_ShowFindPrinter(This,pbShowFindPrinter) (This)->lpVtbl->get_ShowFindPrinter(This,pbShowFindPrinter)
7217 /*** ISearchAssistantOC3 methods ***/
7218 #define ISearchAssistantOC3_get_SearchCompanionAvailable(This,pbAvailable) (This)->lpVtbl->get_SearchCompanionAvailable(This,pbAvailable)
7219 #define ISearchAssistantOC3_put_UseSearchCompanion(This,pbUseSC) (This)->lpVtbl->put_UseSearchCompanion(This,pbUseSC)
7220 #define ISearchAssistantOC3_get_UseSearchCompanion(This,pbUseSC) (This)->lpVtbl->get_UseSearchCompanion(This,pbUseSC)
7221 #else
7222 /*** IUnknown methods ***/
7223 static FORCEINLINE HRESULT ISearchAssistantOC3_QueryInterface(ISearchAssistantOC3* This,REFIID riid,void **ppvObject) {
7224     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7225 }
7226 static FORCEINLINE ULONG ISearchAssistantOC3_AddRef(ISearchAssistantOC3* This) {
7227     return This->lpVtbl->AddRef(This);
7228 }
7229 static FORCEINLINE ULONG ISearchAssistantOC3_Release(ISearchAssistantOC3* This) {
7230     return This->lpVtbl->Release(This);
7231 }
7232 /*** IDispatch methods ***/
7233 static FORCEINLINE HRESULT ISearchAssistantOC3_GetTypeInfoCount(ISearchAssistantOC3* This,UINT *pctinfo) {
7234     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
7235 }
7236 static FORCEINLINE HRESULT ISearchAssistantOC3_GetTypeInfo(ISearchAssistantOC3* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
7237     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
7238 }
7239 static FORCEINLINE HRESULT ISearchAssistantOC3_GetIDsOfNames(ISearchAssistantOC3* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
7240     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
7241 }
7242 static FORCEINLINE HRESULT ISearchAssistantOC3_Invoke(ISearchAssistantOC3* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
7243     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
7244 }
7245 /*** ISearchAssistantOC methods ***/
7246 static FORCEINLINE HRESULT ISearchAssistantOC3_AddNextMenuItem(ISearchAssistantOC3* This,BSTR bstrText,LONG idItem) {
7247     return This->lpVtbl->AddNextMenuItem(This,bstrText,idItem);
7248 }
7249 static FORCEINLINE HRESULT ISearchAssistantOC3_SetDefaultSearchUrl(ISearchAssistantOC3* This,BSTR bstrUrl) {
7250     return This->lpVtbl->SetDefaultSearchUrl(This,bstrUrl);
7251 }
7252 static FORCEINLINE HRESULT ISearchAssistantOC3_NavigateToDefaultSearch(ISearchAssistantOC3* This) {
7253     return This->lpVtbl->NavigateToDefaultSearch(This);
7254 }
7255 static FORCEINLINE HRESULT ISearchAssistantOC3_IsRestricted(ISearchAssistantOC3* This,BSTR bstrGuid,VARIANT_BOOL *pVal) {
7256     return This->lpVtbl->IsRestricted(This,bstrGuid,pVal);
7257 }
7258 static FORCEINLINE HRESULT ISearchAssistantOC3_get_ShellFeaturesEnabled(ISearchAssistantOC3* This,VARIANT_BOOL *pVal) {
7259     return This->lpVtbl->get_ShellFeaturesEnabled(This,pVal);
7260 }
7261 static FORCEINLINE HRESULT ISearchAssistantOC3_get_SearchAssistantDefault(ISearchAssistantOC3* This,VARIANT_BOOL *pVal) {
7262     return This->lpVtbl->get_SearchAssistantDefault(This,pVal);
7263 }
7264 static FORCEINLINE HRESULT ISearchAssistantOC3_get_Searches(ISearchAssistantOC3* This,ISearches **ppid) {
7265     return This->lpVtbl->get_Searches(This,ppid);
7266 }
7267 static FORCEINLINE HRESULT ISearchAssistantOC3_get_InWebFolder(ISearchAssistantOC3* This,VARIANT_BOOL *pVal) {
7268     return This->lpVtbl->get_InWebFolder(This,pVal);
7269 }
7270 static FORCEINLINE HRESULT ISearchAssistantOC3_PutProperty(ISearchAssistantOC3* This,VARIANT_BOOL bPerLocale,BSTR bstrName,BSTR bstrValue) {
7271     return This->lpVtbl->PutProperty(This,bPerLocale,bstrName,bstrValue);
7272 }
7273 static FORCEINLINE HRESULT ISearchAssistantOC3_GetProperty(ISearchAssistantOC3* This,VARIANT_BOOL bPerLocale,BSTR bstrName,BSTR *pbstrValue) {
7274     return This->lpVtbl->GetProperty(This,bPerLocale,bstrName,pbstrValue);
7275 }
7276 static FORCEINLINE HRESULT ISearchAssistantOC3_put_EventHandled(ISearchAssistantOC3* This,VARIANT_BOOL rhs) {
7277     return This->lpVtbl->put_EventHandled(This,rhs);
7278 }
7279 static FORCEINLINE HRESULT ISearchAssistantOC3_ResetNextMenu(ISearchAssistantOC3* This) {
7280     return This->lpVtbl->ResetNextMenu(This);
7281 }
7282 static FORCEINLINE HRESULT ISearchAssistantOC3_FindOnWeb(ISearchAssistantOC3* This) {
7283     return This->lpVtbl->FindOnWeb(This);
7284 }
7285 static FORCEINLINE HRESULT ISearchAssistantOC3_FindFilesOrFolders(ISearchAssistantOC3* This) {
7286     return This->lpVtbl->FindFilesOrFolders(This);
7287 }
7288 static FORCEINLINE HRESULT ISearchAssistantOC3_FindComputer(ISearchAssistantOC3* This) {
7289     return This->lpVtbl->FindComputer(This);
7290 }
7291 static FORCEINLINE HRESULT ISearchAssistantOC3_FindPrinter(ISearchAssistantOC3* This) {
7292     return This->lpVtbl->FindPrinter(This);
7293 }
7294 static FORCEINLINE HRESULT ISearchAssistantOC3_FindPeople(ISearchAssistantOC3* This) {
7295     return This->lpVtbl->FindPeople(This);
7296 }
7297 static FORCEINLINE HRESULT ISearchAssistantOC3_GetSearchAssistantURL(ISearchAssistantOC3* This,VARIANT_BOOL bSubstitute,VARIANT_BOOL bCustomize,BSTR *pbstrValue) {
7298     return This->lpVtbl->GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue);
7299 }
7300 static FORCEINLINE HRESULT ISearchAssistantOC3_NotifySearchSettingsChanged(ISearchAssistantOC3* This) {
7301     return This->lpVtbl->NotifySearchSettingsChanged(This);
7302 }
7303 static FORCEINLINE HRESULT ISearchAssistantOC3_put_ASProvider(ISearchAssistantOC3* This,BSTR pProvider) {
7304     return This->lpVtbl->put_ASProvider(This,pProvider);
7305 }
7306 static FORCEINLINE HRESULT ISearchAssistantOC3_get_ASProvider(ISearchAssistantOC3* This,BSTR *pProvider) {
7307     return This->lpVtbl->get_ASProvider(This,pProvider);
7308 }
7309 static FORCEINLINE HRESULT ISearchAssistantOC3_put_ASSetting(ISearchAssistantOC3* This,int pSetting) {
7310     return This->lpVtbl->put_ASSetting(This,pSetting);
7311 }
7312 static FORCEINLINE HRESULT ISearchAssistantOC3_get_ASSetting(ISearchAssistantOC3* This,int *pSetting) {
7313     return This->lpVtbl->get_ASSetting(This,pSetting);
7314 }
7315 static FORCEINLINE HRESULT ISearchAssistantOC3_NETDetectNextNavigate(ISearchAssistantOC3* This) {
7316     return This->lpVtbl->NETDetectNextNavigate(This);
7317 }
7318 static FORCEINLINE HRESULT ISearchAssistantOC3_PutFindText(ISearchAssistantOC3* This,BSTR FindText) {
7319     return This->lpVtbl->PutFindText(This,FindText);
7320 }
7321 static FORCEINLINE HRESULT ISearchAssistantOC3_get_Version(ISearchAssistantOC3* This,int *pVersion) {
7322     return This->lpVtbl->get_Version(This,pVersion);
7323 }
7324 static FORCEINLINE HRESULT ISearchAssistantOC3_EncodeString(ISearchAssistantOC3* This,BSTR bstrValue,BSTR bstrCharSet,VARIANT_BOOL bUseUTF8,BSTR *pbstrResult) {
7325     return This->lpVtbl->EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult);
7326 }
7327 /*** ISearchAssistantOC2 methods ***/
7328 static FORCEINLINE HRESULT ISearchAssistantOC3_get_ShowFindPrinter(ISearchAssistantOC3* This,VARIANT_BOOL *pbShowFindPrinter) {
7329     return This->lpVtbl->get_ShowFindPrinter(This,pbShowFindPrinter);
7330 }
7331 /*** ISearchAssistantOC3 methods ***/
7332 static FORCEINLINE HRESULT ISearchAssistantOC3_get_SearchCompanionAvailable(ISearchAssistantOC3* This,VARIANT_BOOL *pbAvailable) {
7333     return This->lpVtbl->get_SearchCompanionAvailable(This,pbAvailable);
7334 }
7335 static FORCEINLINE HRESULT ISearchAssistantOC3_put_UseSearchCompanion(ISearchAssistantOC3* This,VARIANT_BOOL pbUseSC) {
7336     return This->lpVtbl->put_UseSearchCompanion(This,pbUseSC);
7337 }
7338 static FORCEINLINE HRESULT ISearchAssistantOC3_get_UseSearchCompanion(ISearchAssistantOC3* This,VARIANT_BOOL *pbUseSC) {
7339     return This->lpVtbl->get_UseSearchCompanion(This,pbUseSC);
7340 }
7341 #endif
7342 #endif
7343 
7344 #endif
7345 
7346 HRESULT STDMETHODCALLTYPE ISearchAssistantOC3_get_SearchCompanionAvailable_Proxy(
7347     ISearchAssistantOC3* This,
7348     VARIANT_BOOL *pbAvailable);
7349 void __RPC_STUB ISearchAssistantOC3_get_SearchCompanionAvailable_Stub(
7350     IRpcStubBuffer* This,
7351     IRpcChannelBuffer* pRpcChannelBuffer,
7352     PRPC_MESSAGE pRpcMessage,
7353     DWORD* pdwStubPhase);
7354 HRESULT STDMETHODCALLTYPE ISearchAssistantOC3_put_UseSearchCompanion_Proxy(
7355     ISearchAssistantOC3* This,
7356     VARIANT_BOOL pbUseSC);
7357 void __RPC_STUB ISearchAssistantOC3_put_UseSearchCompanion_Stub(
7358     IRpcStubBuffer* This,
7359     IRpcChannelBuffer* pRpcChannelBuffer,
7360     PRPC_MESSAGE pRpcMessage,
7361     DWORD* pdwStubPhase);
7362 HRESULT STDMETHODCALLTYPE ISearchAssistantOC3_get_UseSearchCompanion_Proxy(
7363     ISearchAssistantOC3* This,
7364     VARIANT_BOOL *pbUseSC);
7365 void __RPC_STUB ISearchAssistantOC3_get_UseSearchCompanion_Stub(
7366     IRpcStubBuffer* This,
7367     IRpcChannelBuffer* pRpcChannelBuffer,
7368     PRPC_MESSAGE pRpcMessage,
7369     DWORD* pdwStubPhase);
7370 
7371 #endif  /* __ISearchAssistantOC3_INTERFACE_DEFINED__ */
7372 
7373 /*****************************************************************************
7374  * _SearchAssistantEvents dispinterface
7375  */
7376 #ifndef ___SearchAssistantEvents_DISPINTERFACE_DEFINED__
7377 #define ___SearchAssistantEvents_DISPINTERFACE_DEFINED__
7378 
7379 DEFINE_GUID(DIID__SearchAssistantEvents, 0x1611fdda, 0x445b, 0x11d2, 0x85,0xde, 0x00,0xc0,0x4f,0xa3,0x5c,0x89);
7380 #if defined(__cplusplus) && !defined(CINTERFACE)
7381 MIDL_INTERFACE("1611fdda-445b-11d2-85de-00c04fa35c89")
7382 _SearchAssistantEvents : public IDispatch
7383 {
7384 };
7385 #ifdef __CRT_UUID_DECL
7386 __CRT_UUID_DECL(_SearchAssistantEvents, 0x1611fdda, 0x445b, 0x11d2, 0x85,0xde, 0x00,0xc0,0x4f,0xa3,0x5c,0x89)
7387 #endif
7388 #else
7389 typedef struct _SearchAssistantEventsVtbl {
7390     BEGIN_INTERFACE
7391 
7392     /*** IUnknown methods ***/
7393     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7394         _SearchAssistantEvents* This,
7395         REFIID riid,
7396         void **ppvObject);
7397 
7398     ULONG (STDMETHODCALLTYPE *AddRef)(
7399         _SearchAssistantEvents* This);
7400 
7401     ULONG (STDMETHODCALLTYPE *Release)(
7402         _SearchAssistantEvents* This);
7403 
7404     /*** IDispatch methods ***/
7405     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
7406         _SearchAssistantEvents* This,
7407         UINT *pctinfo);
7408 
7409     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
7410         _SearchAssistantEvents* This,
7411         UINT iTInfo,
7412         LCID lcid,
7413         ITypeInfo **ppTInfo);
7414 
7415     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
7416         _SearchAssistantEvents* This,
7417         REFIID riid,
7418         LPOLESTR *rgszNames,
7419         UINT cNames,
7420         LCID lcid,
7421         DISPID *rgDispId);
7422 
7423     HRESULT (STDMETHODCALLTYPE *Invoke)(
7424         _SearchAssistantEvents* This,
7425         DISPID dispIdMember,
7426         REFIID riid,
7427         LCID lcid,
7428         WORD wFlags,
7429         DISPPARAMS *pDispParams,
7430         VARIANT *pVarResult,
7431         EXCEPINFO *pExcepInfo,
7432         UINT *puArgErr);
7433 
7434     END_INTERFACE
7435 } _SearchAssistantEventsVtbl;
7436 interface _SearchAssistantEvents {
7437     CONST_VTBL _SearchAssistantEventsVtbl* lpVtbl;
7438 };
7439 
7440 #ifdef COBJMACROS
7441 #ifndef WIDL_C_INLINE_WRAPPERS
7442 /*** IUnknown methods ***/
7443 #define _SearchAssistantEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7444 #define _SearchAssistantEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
7445 #define _SearchAssistantEvents_Release(This) (This)->lpVtbl->Release(This)
7446 /*** IDispatch methods ***/
7447 #define _SearchAssistantEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
7448 #define _SearchAssistantEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
7449 #define _SearchAssistantEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
7450 #define _SearchAssistantEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
7451 #else
7452 /*** IUnknown methods ***/
7453 static FORCEINLINE HRESULT _SearchAssistantEvents_QueryInterface(_SearchAssistantEvents* This,REFIID riid,void **ppvObject) {
7454     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7455 }
7456 static FORCEINLINE ULONG _SearchAssistantEvents_AddRef(_SearchAssistantEvents* This) {
7457     return This->lpVtbl->AddRef(This);
7458 }
7459 static FORCEINLINE ULONG _SearchAssistantEvents_Release(_SearchAssistantEvents* This) {
7460     return This->lpVtbl->Release(This);
7461 }
7462 /*** IDispatch methods ***/
7463 static FORCEINLINE HRESULT _SearchAssistantEvents_GetTypeInfoCount(_SearchAssistantEvents* This,UINT *pctinfo) {
7464     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
7465 }
7466 static FORCEINLINE HRESULT _SearchAssistantEvents_GetTypeInfo(_SearchAssistantEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
7467     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
7468 }
7469 static FORCEINLINE HRESULT _SearchAssistantEvents_GetIDsOfNames(_SearchAssistantEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
7470     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
7471 }
7472 static FORCEINLINE HRESULT _SearchAssistantEvents_Invoke(_SearchAssistantEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
7473     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
7474 }
7475 #endif
7476 #endif
7477 
7478 #endif
7479 
7480 #endif  /* ___SearchAssistantEvents_DISPINTERFACE_DEFINED__ */
7481 
7482 /*****************************************************************************
7483  * ShellSearchAssistantOC coclass
7484  */
7485 
7486 DEFINE_GUID(CLSID_ShellSearchAssistantOC, 0x2e71fd0f, 0xaab1, 0x42c0, 0x91,0x46, 0x6d,0x2c,0x4e,0xdc,0xf0,0x7d);
7487 
7488 #ifdef __cplusplus
7489 class DECLSPEC_UUID("2e71fd0f-aab1-42c0-9146-6d2c4edcf07d") ShellSearchAssistantOC;
7490 #ifdef __CRT_UUID_DECL
7491 __CRT_UUID_DECL(ShellSearchAssistantOC, 0x2e71fd0f, 0xaab1, 0x42c0, 0x91,0x46, 0x6d,0x2c,0x4e,0xdc,0xf0,0x7d)
7492 #endif
7493 #endif
7494 
7495 /*****************************************************************************
7496  * SearchAssistantOC coclass
7497  */
7498 
7499 DEFINE_GUID(CLSID_SearchAssistantOC, 0xb45ff030, 0x4447, 0x11d2, 0x85,0xde, 0x00,0xc0,0x4f,0xa3,0x5c,0x89);
7500 
7501 #ifdef __cplusplus
7502 class DECLSPEC_UUID("b45ff030-4447-11d2-85de-00c04fa35c89") SearchAssistantOC;
7503 #ifdef __CRT_UUID_DECL
7504 __CRT_UUID_DECL(SearchAssistantOC, 0xb45ff030, 0x4447, 0x11d2, 0x85,0xde, 0x00,0xc0,0x4f,0xa3,0x5c,0x89)
7505 #endif
7506 #endif
7507 
7508 /* Begin additional prototypes for all interfaces */
7509 
7510 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
7511 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
7512 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
7513 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
7514 ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
7515 unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
7516 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
7517 void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
7518 
7519 /* End additional prototypes */
7520 
7521 #ifdef __cplusplus
7522 }
7523 #endif
7524 
7525 #endif /* __exdisp_h__ */
7526