1 /*** Autogenerated by WIDL 3.19 from include/urlhist.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 __urlhist_h__
16 #define __urlhist_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __IEnumSTATURL_FWD_DEFINED__
21 #define __IEnumSTATURL_FWD_DEFINED__
22 typedef interface IEnumSTATURL IEnumSTATURL;
23 #ifdef __cplusplus
24 interface IEnumSTATURL;
25 #endif /* __cplusplus */
26 #endif
27 
28 #ifndef __IUrlHistoryStg_FWD_DEFINED__
29 #define __IUrlHistoryStg_FWD_DEFINED__
30 typedef interface IUrlHistoryStg IUrlHistoryStg;
31 #ifdef __cplusplus
32 interface IUrlHistoryStg;
33 #endif /* __cplusplus */
34 #endif
35 
36 #ifndef __IUrlHistoryStg2_FWD_DEFINED__
37 #define __IUrlHistoryStg2_FWD_DEFINED__
38 typedef interface IUrlHistoryStg2 IUrlHistoryStg2;
39 #ifdef __cplusplus
40 interface IUrlHistoryStg2;
41 #endif /* __cplusplus */
42 #endif
43 
44 #ifndef __IUrlHistoryNotify_FWD_DEFINED__
45 #define __IUrlHistoryNotify_FWD_DEFINED__
46 typedef interface IUrlHistoryNotify IUrlHistoryNotify;
47 #ifdef __cplusplus
48 interface IUrlHistoryNotify;
49 #endif /* __cplusplus */
50 #endif
51 
52 /* Headers for imported files */
53 
54 #include <objidl.h>
55 #include <oleidl.h>
56 #include <oaidl.h>
57 #include <docobj.h>
58 
59 #ifdef __cplusplus
60 extern "C" {
61 #endif
62 
63 #define STATURL_QUERYFLAG_ISCACHED  0x010000
64 #define STATURL_QUERYFLAG_NOURL     0x020000
65 #define STATURL_QUERYFLAG_NOTITLE   0x040000
66 #define STATURL_QUERYFLAG_TOPLEVEL  0x080000
67 #define STATURLFLAG_ISCACHED    0x0001
68 #define STATURLFLAG_ISTOPLEVEL  0x0002
69 typedef enum _ADDURL_FLAG {
70     ADDURL_FIRST = 0,
71     ADDURL_ADDTOHISTORYANDCACHE = 0,
72     ADDURL_ADDTOCACHE = 1,
73     ADDURL_Max = 0x7fffffff
74 } ADDURL_FLAG;
75 /*****************************************************************************
76  * IEnumSTATURL interface
77  */
78 #ifndef __IEnumSTATURL_INTERFACE_DEFINED__
79 #define __IEnumSTATURL_INTERFACE_DEFINED__
80 
81 typedef IEnumSTATURL *LPENUMSTATURL;
82 typedef struct _STATURL {
83     DWORD cbSize;
84     LPWSTR pwcsUrl;
85     LPWSTR pwcsTitle;
86     FILETIME ftLastVisited;
87     FILETIME ftLastUpdated;
88     FILETIME ftExpires;
89     DWORD dwFlags;
90 } STATURL;
91 typedef struct _STATURL *LPSTATURL;
92 DEFINE_GUID(IID_IEnumSTATURL, 0x3c374a42, 0xbae4, 0x11cf, 0xbf,0x7d, 0x00,0xaa,0x00,0x69,0x46,0xee);
93 #if defined(__cplusplus) && !defined(CINTERFACE)
94 MIDL_INTERFACE("3c374a42-bae4-11cf-bf7d-00aa006946ee")
95 IEnumSTATURL : public IUnknown
96 {
97     virtual HRESULT STDMETHODCALLTYPE Next(
98         ULONG celt,
99         LPSTATURL rgelt,
100         ULONG *pceltFetched) = 0;
101 
102     virtual HRESULT STDMETHODCALLTYPE Skip(
103         ULONG celt) = 0;
104 
105     virtual HRESULT STDMETHODCALLTYPE Reset(
106         ) = 0;
107 
108     virtual HRESULT STDMETHODCALLTYPE Clone(
109         IEnumSTATURL **ppenum) = 0;
110 
111     virtual HRESULT STDMETHODCALLTYPE SetFilter(
112         LPCOLESTR poszFilter,
113         DWORD dwFlags) = 0;
114 
115 };
116 #ifdef __CRT_UUID_DECL
117 __CRT_UUID_DECL(IEnumSTATURL, 0x3c374a42, 0xbae4, 0x11cf, 0xbf,0x7d, 0x00,0xaa,0x00,0x69,0x46,0xee)
118 #endif
119 #else
120 typedef struct IEnumSTATURLVtbl {
121     BEGIN_INTERFACE
122 
123     /*** IUnknown methods ***/
124     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
125         IEnumSTATURL *This,
126         REFIID riid,
127         void **ppvObject);
128 
129     ULONG (STDMETHODCALLTYPE *AddRef)(
130         IEnumSTATURL *This);
131 
132     ULONG (STDMETHODCALLTYPE *Release)(
133         IEnumSTATURL *This);
134 
135     /*** IEnumSTATURL methods ***/
136     HRESULT (STDMETHODCALLTYPE *Next)(
137         IEnumSTATURL *This,
138         ULONG celt,
139         LPSTATURL rgelt,
140         ULONG *pceltFetched);
141 
142     HRESULT (STDMETHODCALLTYPE *Skip)(
143         IEnumSTATURL *This,
144         ULONG celt);
145 
146     HRESULT (STDMETHODCALLTYPE *Reset)(
147         IEnumSTATURL *This);
148 
149     HRESULT (STDMETHODCALLTYPE *Clone)(
150         IEnumSTATURL *This,
151         IEnumSTATURL **ppenum);
152 
153     HRESULT (STDMETHODCALLTYPE *SetFilter)(
154         IEnumSTATURL *This,
155         LPCOLESTR poszFilter,
156         DWORD dwFlags);
157 
158     END_INTERFACE
159 } IEnumSTATURLVtbl;
160 
161 interface IEnumSTATURL {
162     CONST_VTBL IEnumSTATURLVtbl* lpVtbl;
163 };
164 
165 #ifdef COBJMACROS
166 #ifndef WIDL_C_INLINE_WRAPPERS
167 /*** IUnknown methods ***/
168 #define IEnumSTATURL_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
169 #define IEnumSTATURL_AddRef(This) (This)->lpVtbl->AddRef(This)
170 #define IEnumSTATURL_Release(This) (This)->lpVtbl->Release(This)
171 /*** IEnumSTATURL methods ***/
172 #define IEnumSTATURL_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
173 #define IEnumSTATURL_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
174 #define IEnumSTATURL_Reset(This) (This)->lpVtbl->Reset(This)
175 #define IEnumSTATURL_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
176 #define IEnumSTATURL_SetFilter(This,poszFilter,dwFlags) (This)->lpVtbl->SetFilter(This,poszFilter,dwFlags)
177 #else
178 /*** IUnknown methods ***/
179 static FORCEINLINE HRESULT IEnumSTATURL_QueryInterface(IEnumSTATURL* This,REFIID riid,void **ppvObject) {
180     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
181 }
182 static FORCEINLINE ULONG IEnumSTATURL_AddRef(IEnumSTATURL* This) {
183     return This->lpVtbl->AddRef(This);
184 }
185 static FORCEINLINE ULONG IEnumSTATURL_Release(IEnumSTATURL* This) {
186     return This->lpVtbl->Release(This);
187 }
188 /*** IEnumSTATURL methods ***/
189 static FORCEINLINE HRESULT IEnumSTATURL_Next(IEnumSTATURL* This,ULONG celt,LPSTATURL rgelt,ULONG *pceltFetched) {
190     return This->lpVtbl->Next(This,celt,rgelt,pceltFetched);
191 }
192 static FORCEINLINE HRESULT IEnumSTATURL_Skip(IEnumSTATURL* This,ULONG celt) {
193     return This->lpVtbl->Skip(This,celt);
194 }
195 static FORCEINLINE HRESULT IEnumSTATURL_Reset(IEnumSTATURL* This) {
196     return This->lpVtbl->Reset(This);
197 }
198 static FORCEINLINE HRESULT IEnumSTATURL_Clone(IEnumSTATURL* This,IEnumSTATURL **ppenum) {
199     return This->lpVtbl->Clone(This,ppenum);
200 }
201 static FORCEINLINE HRESULT IEnumSTATURL_SetFilter(IEnumSTATURL* This,LPCOLESTR poszFilter,DWORD dwFlags) {
202     return This->lpVtbl->SetFilter(This,poszFilter,dwFlags);
203 }
204 #endif
205 #endif
206 
207 #endif
208 
209 
210 #endif  /* __IEnumSTATURL_INTERFACE_DEFINED__ */
211 
212 /*****************************************************************************
213  * IUrlHistoryStg interface
214  */
215 #ifndef __IUrlHistoryStg_INTERFACE_DEFINED__
216 #define __IUrlHistoryStg_INTERFACE_DEFINED__
217 
218 typedef IUrlHistoryStg *LPURLHISTORYSTG;
219 DEFINE_GUID(IID_IUrlHistoryStg, 0x3c374a41, 0xbae4, 0x11cf, 0xbf,0x7d, 0x00,0xaa,0x00,0x69,0x46,0xee);
220 #if defined(__cplusplus) && !defined(CINTERFACE)
221 MIDL_INTERFACE("3c374a41-bae4-11cf-bf7d-00aa006946ee")
222 IUrlHistoryStg : public IUnknown
223 {
224     virtual HRESULT STDMETHODCALLTYPE AddUrl(
225         LPCOLESTR pocsUrl,
226         LPCOLESTR pocsTitle,
227         DWORD dwFlags) = 0;
228 
229     virtual HRESULT STDMETHODCALLTYPE DeleteUrl(
230         LPCOLESTR pocsUrl,
231         DWORD dwFlags) = 0;
232 
233     virtual HRESULT STDMETHODCALLTYPE QueryUrl(
234         LPCOLESTR pocsUrl,
235         DWORD dwFlags,
236         LPSTATURL lpSTATURL) = 0;
237 
238     virtual HRESULT STDMETHODCALLTYPE BindToObject(
239         LPCOLESTR pocsUrl,
240         REFIID riid,
241         void **ppvOut) = 0;
242 
243     virtual HRESULT STDMETHODCALLTYPE EnumUrls(
244         IEnumSTATURL **ppEnum) = 0;
245 
246 };
247 #ifdef __CRT_UUID_DECL
248 __CRT_UUID_DECL(IUrlHistoryStg, 0x3c374a41, 0xbae4, 0x11cf, 0xbf,0x7d, 0x00,0xaa,0x00,0x69,0x46,0xee)
249 #endif
250 #else
251 typedef struct IUrlHistoryStgVtbl {
252     BEGIN_INTERFACE
253 
254     /*** IUnknown methods ***/
255     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
256         IUrlHistoryStg *This,
257         REFIID riid,
258         void **ppvObject);
259 
260     ULONG (STDMETHODCALLTYPE *AddRef)(
261         IUrlHistoryStg *This);
262 
263     ULONG (STDMETHODCALLTYPE *Release)(
264         IUrlHistoryStg *This);
265 
266     /*** IUrlHistoryStg methods ***/
267     HRESULT (STDMETHODCALLTYPE *AddUrl)(
268         IUrlHistoryStg *This,
269         LPCOLESTR pocsUrl,
270         LPCOLESTR pocsTitle,
271         DWORD dwFlags);
272 
273     HRESULT (STDMETHODCALLTYPE *DeleteUrl)(
274         IUrlHistoryStg *This,
275         LPCOLESTR pocsUrl,
276         DWORD dwFlags);
277 
278     HRESULT (STDMETHODCALLTYPE *QueryUrl)(
279         IUrlHistoryStg *This,
280         LPCOLESTR pocsUrl,
281         DWORD dwFlags,
282         LPSTATURL lpSTATURL);
283 
284     HRESULT (STDMETHODCALLTYPE *BindToObject)(
285         IUrlHistoryStg *This,
286         LPCOLESTR pocsUrl,
287         REFIID riid,
288         void **ppvOut);
289 
290     HRESULT (STDMETHODCALLTYPE *EnumUrls)(
291         IUrlHistoryStg *This,
292         IEnumSTATURL **ppEnum);
293 
294     END_INTERFACE
295 } IUrlHistoryStgVtbl;
296 
297 interface IUrlHistoryStg {
298     CONST_VTBL IUrlHistoryStgVtbl* lpVtbl;
299 };
300 
301 #ifdef COBJMACROS
302 #ifndef WIDL_C_INLINE_WRAPPERS
303 /*** IUnknown methods ***/
304 #define IUrlHistoryStg_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
305 #define IUrlHistoryStg_AddRef(This) (This)->lpVtbl->AddRef(This)
306 #define IUrlHistoryStg_Release(This) (This)->lpVtbl->Release(This)
307 /*** IUrlHistoryStg methods ***/
308 #define IUrlHistoryStg_AddUrl(This,pocsUrl,pocsTitle,dwFlags) (This)->lpVtbl->AddUrl(This,pocsUrl,pocsTitle,dwFlags)
309 #define IUrlHistoryStg_DeleteUrl(This,pocsUrl,dwFlags) (This)->lpVtbl->DeleteUrl(This,pocsUrl,dwFlags)
310 #define IUrlHistoryStg_QueryUrl(This,pocsUrl,dwFlags,lpSTATURL) (This)->lpVtbl->QueryUrl(This,pocsUrl,dwFlags,lpSTATURL)
311 #define IUrlHistoryStg_BindToObject(This,pocsUrl,riid,ppvOut) (This)->lpVtbl->BindToObject(This,pocsUrl,riid,ppvOut)
312 #define IUrlHistoryStg_EnumUrls(This,ppEnum) (This)->lpVtbl->EnumUrls(This,ppEnum)
313 #else
314 /*** IUnknown methods ***/
315 static FORCEINLINE HRESULT IUrlHistoryStg_QueryInterface(IUrlHistoryStg* This,REFIID riid,void **ppvObject) {
316     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
317 }
318 static FORCEINLINE ULONG IUrlHistoryStg_AddRef(IUrlHistoryStg* This) {
319     return This->lpVtbl->AddRef(This);
320 }
321 static FORCEINLINE ULONG IUrlHistoryStg_Release(IUrlHistoryStg* This) {
322     return This->lpVtbl->Release(This);
323 }
324 /*** IUrlHistoryStg methods ***/
325 static FORCEINLINE HRESULT IUrlHistoryStg_AddUrl(IUrlHistoryStg* This,LPCOLESTR pocsUrl,LPCOLESTR pocsTitle,DWORD dwFlags) {
326     return This->lpVtbl->AddUrl(This,pocsUrl,pocsTitle,dwFlags);
327 }
328 static FORCEINLINE HRESULT IUrlHistoryStg_DeleteUrl(IUrlHistoryStg* This,LPCOLESTR pocsUrl,DWORD dwFlags) {
329     return This->lpVtbl->DeleteUrl(This,pocsUrl,dwFlags);
330 }
331 static FORCEINLINE HRESULT IUrlHistoryStg_QueryUrl(IUrlHistoryStg* This,LPCOLESTR pocsUrl,DWORD dwFlags,LPSTATURL lpSTATURL) {
332     return This->lpVtbl->QueryUrl(This,pocsUrl,dwFlags,lpSTATURL);
333 }
334 static FORCEINLINE HRESULT IUrlHistoryStg_BindToObject(IUrlHistoryStg* This,LPCOLESTR pocsUrl,REFIID riid,void **ppvOut) {
335     return This->lpVtbl->BindToObject(This,pocsUrl,riid,ppvOut);
336 }
337 static FORCEINLINE HRESULT IUrlHistoryStg_EnumUrls(IUrlHistoryStg* This,IEnumSTATURL **ppEnum) {
338     return This->lpVtbl->EnumUrls(This,ppEnum);
339 }
340 #endif
341 #endif
342 
343 #endif
344 
345 
346 #endif  /* __IUrlHistoryStg_INTERFACE_DEFINED__ */
347 
348 /*****************************************************************************
349  * IUrlHistoryStg2 interface
350  */
351 #ifndef __IUrlHistoryStg2_INTERFACE_DEFINED__
352 #define __IUrlHistoryStg2_INTERFACE_DEFINED__
353 
354 typedef IUrlHistoryStg2 *LPURLHISTORYSTG2;
355 DEFINE_GUID(IID_IUrlHistoryStg2, 0xafa0dc11, 0xc313, 0x11d0, 0x83,0x1a, 0x00,0xc0,0x4f,0xd5,0xae,0x38);
356 #if defined(__cplusplus) && !defined(CINTERFACE)
357 MIDL_INTERFACE("afa0dc11-c313-11d0-831a-00c04fd5ae38")
358 IUrlHistoryStg2 : public IUrlHistoryStg
359 {
360     virtual HRESULT STDMETHODCALLTYPE AddUrlAndNotify(
361         LPCOLESTR pocsUrl,
362         LPCOLESTR pocsTitle,
363         DWORD dwFlags,
364         WINBOOL fWriteHistory,
365         IOleCommandTarget *poctNotify,
366         IUnknown *punkISFolder) = 0;
367 
368     virtual HRESULT STDMETHODCALLTYPE ClearHistory(
369         ) = 0;
370 
371 };
372 #ifdef __CRT_UUID_DECL
373 __CRT_UUID_DECL(IUrlHistoryStg2, 0xafa0dc11, 0xc313, 0x11d0, 0x83,0x1a, 0x00,0xc0,0x4f,0xd5,0xae,0x38)
374 #endif
375 #else
376 typedef struct IUrlHistoryStg2Vtbl {
377     BEGIN_INTERFACE
378 
379     /*** IUnknown methods ***/
380     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
381         IUrlHistoryStg2 *This,
382         REFIID riid,
383         void **ppvObject);
384 
385     ULONG (STDMETHODCALLTYPE *AddRef)(
386         IUrlHistoryStg2 *This);
387 
388     ULONG (STDMETHODCALLTYPE *Release)(
389         IUrlHistoryStg2 *This);
390 
391     /*** IUrlHistoryStg methods ***/
392     HRESULT (STDMETHODCALLTYPE *AddUrl)(
393         IUrlHistoryStg2 *This,
394         LPCOLESTR pocsUrl,
395         LPCOLESTR pocsTitle,
396         DWORD dwFlags);
397 
398     HRESULT (STDMETHODCALLTYPE *DeleteUrl)(
399         IUrlHistoryStg2 *This,
400         LPCOLESTR pocsUrl,
401         DWORD dwFlags);
402 
403     HRESULT (STDMETHODCALLTYPE *QueryUrl)(
404         IUrlHistoryStg2 *This,
405         LPCOLESTR pocsUrl,
406         DWORD dwFlags,
407         LPSTATURL lpSTATURL);
408 
409     HRESULT (STDMETHODCALLTYPE *BindToObject)(
410         IUrlHistoryStg2 *This,
411         LPCOLESTR pocsUrl,
412         REFIID riid,
413         void **ppvOut);
414 
415     HRESULT (STDMETHODCALLTYPE *EnumUrls)(
416         IUrlHistoryStg2 *This,
417         IEnumSTATURL **ppEnum);
418 
419     /*** IUrlHistoryStg2 methods ***/
420     HRESULT (STDMETHODCALLTYPE *AddUrlAndNotify)(
421         IUrlHistoryStg2 *This,
422         LPCOLESTR pocsUrl,
423         LPCOLESTR pocsTitle,
424         DWORD dwFlags,
425         WINBOOL fWriteHistory,
426         IOleCommandTarget *poctNotify,
427         IUnknown *punkISFolder);
428 
429     HRESULT (STDMETHODCALLTYPE *ClearHistory)(
430         IUrlHistoryStg2 *This);
431 
432     END_INTERFACE
433 } IUrlHistoryStg2Vtbl;
434 
435 interface IUrlHistoryStg2 {
436     CONST_VTBL IUrlHistoryStg2Vtbl* lpVtbl;
437 };
438 
439 #ifdef COBJMACROS
440 #ifndef WIDL_C_INLINE_WRAPPERS
441 /*** IUnknown methods ***/
442 #define IUrlHistoryStg2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
443 #define IUrlHistoryStg2_AddRef(This) (This)->lpVtbl->AddRef(This)
444 #define IUrlHistoryStg2_Release(This) (This)->lpVtbl->Release(This)
445 /*** IUrlHistoryStg methods ***/
446 #define IUrlHistoryStg2_AddUrl(This,pocsUrl,pocsTitle,dwFlags) (This)->lpVtbl->AddUrl(This,pocsUrl,pocsTitle,dwFlags)
447 #define IUrlHistoryStg2_DeleteUrl(This,pocsUrl,dwFlags) (This)->lpVtbl->DeleteUrl(This,pocsUrl,dwFlags)
448 #define IUrlHistoryStg2_QueryUrl(This,pocsUrl,dwFlags,lpSTATURL) (This)->lpVtbl->QueryUrl(This,pocsUrl,dwFlags,lpSTATURL)
449 #define IUrlHistoryStg2_BindToObject(This,pocsUrl,riid,ppvOut) (This)->lpVtbl->BindToObject(This,pocsUrl,riid,ppvOut)
450 #define IUrlHistoryStg2_EnumUrls(This,ppEnum) (This)->lpVtbl->EnumUrls(This,ppEnum)
451 /*** IUrlHistoryStg2 methods ***/
452 #define IUrlHistoryStg2_AddUrlAndNotify(This,pocsUrl,pocsTitle,dwFlags,fWriteHistory,poctNotify,punkISFolder) (This)->lpVtbl->AddUrlAndNotify(This,pocsUrl,pocsTitle,dwFlags,fWriteHistory,poctNotify,punkISFolder)
453 #define IUrlHistoryStg2_ClearHistory(This) (This)->lpVtbl->ClearHistory(This)
454 #else
455 /*** IUnknown methods ***/
456 static FORCEINLINE HRESULT IUrlHistoryStg2_QueryInterface(IUrlHistoryStg2* This,REFIID riid,void **ppvObject) {
457     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
458 }
459 static FORCEINLINE ULONG IUrlHistoryStg2_AddRef(IUrlHistoryStg2* This) {
460     return This->lpVtbl->AddRef(This);
461 }
462 static FORCEINLINE ULONG IUrlHistoryStg2_Release(IUrlHistoryStg2* This) {
463     return This->lpVtbl->Release(This);
464 }
465 /*** IUrlHistoryStg methods ***/
466 static FORCEINLINE HRESULT IUrlHistoryStg2_AddUrl(IUrlHistoryStg2* This,LPCOLESTR pocsUrl,LPCOLESTR pocsTitle,DWORD dwFlags) {
467     return This->lpVtbl->AddUrl(This,pocsUrl,pocsTitle,dwFlags);
468 }
469 static FORCEINLINE HRESULT IUrlHistoryStg2_DeleteUrl(IUrlHistoryStg2* This,LPCOLESTR pocsUrl,DWORD dwFlags) {
470     return This->lpVtbl->DeleteUrl(This,pocsUrl,dwFlags);
471 }
472 static FORCEINLINE HRESULT IUrlHistoryStg2_QueryUrl(IUrlHistoryStg2* This,LPCOLESTR pocsUrl,DWORD dwFlags,LPSTATURL lpSTATURL) {
473     return This->lpVtbl->QueryUrl(This,pocsUrl,dwFlags,lpSTATURL);
474 }
475 static FORCEINLINE HRESULT IUrlHistoryStg2_BindToObject(IUrlHistoryStg2* This,LPCOLESTR pocsUrl,REFIID riid,void **ppvOut) {
476     return This->lpVtbl->BindToObject(This,pocsUrl,riid,ppvOut);
477 }
478 static FORCEINLINE HRESULT IUrlHistoryStg2_EnumUrls(IUrlHistoryStg2* This,IEnumSTATURL **ppEnum) {
479     return This->lpVtbl->EnumUrls(This,ppEnum);
480 }
481 /*** IUrlHistoryStg2 methods ***/
482 static FORCEINLINE HRESULT IUrlHistoryStg2_AddUrlAndNotify(IUrlHistoryStg2* This,LPCOLESTR pocsUrl,LPCOLESTR pocsTitle,DWORD dwFlags,WINBOOL fWriteHistory,IOleCommandTarget *poctNotify,IUnknown *punkISFolder) {
483     return This->lpVtbl->AddUrlAndNotify(This,pocsUrl,pocsTitle,dwFlags,fWriteHistory,poctNotify,punkISFolder);
484 }
485 static FORCEINLINE HRESULT IUrlHistoryStg2_ClearHistory(IUrlHistoryStg2* This) {
486     return This->lpVtbl->ClearHistory(This);
487 }
488 #endif
489 #endif
490 
491 #endif
492 
493 
494 #endif  /* __IUrlHistoryStg2_INTERFACE_DEFINED__ */
495 
496 /*****************************************************************************
497  * IUrlHistoryNotify interface
498  */
499 #ifndef __IUrlHistoryNotify_INTERFACE_DEFINED__
500 #define __IUrlHistoryNotify_INTERFACE_DEFINED__
501 
502 typedef IUrlHistoryNotify *LPURLHISTORYNOTIFY;
503 DEFINE_GUID(IID_IUrlHistoryNotify, 0xbc40bec1, 0xc493, 0x11d0, 0x83,0x1b, 0x00,0xc0,0x4f,0xd5,0xae,0x38);
504 #if defined(__cplusplus) && !defined(CINTERFACE)
505 MIDL_INTERFACE("bc40bec1-c493-11d0-831b-00c04fd5ae38")
506 IUrlHistoryNotify : public IOleCommandTarget
507 {
508 };
509 #ifdef __CRT_UUID_DECL
510 __CRT_UUID_DECL(IUrlHistoryNotify, 0xbc40bec1, 0xc493, 0x11d0, 0x83,0x1b, 0x00,0xc0,0x4f,0xd5,0xae,0x38)
511 #endif
512 #else
513 typedef struct IUrlHistoryNotifyVtbl {
514     BEGIN_INTERFACE
515 
516     /*** IUnknown methods ***/
517     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
518         IUrlHistoryNotify *This,
519         REFIID riid,
520         void **ppvObject);
521 
522     ULONG (STDMETHODCALLTYPE *AddRef)(
523         IUrlHistoryNotify *This);
524 
525     ULONG (STDMETHODCALLTYPE *Release)(
526         IUrlHistoryNotify *This);
527 
528     /*** IOleCommandTarget methods ***/
529     HRESULT (STDMETHODCALLTYPE *QueryStatus)(
530         IUrlHistoryNotify *This,
531         const GUID *pguidCmdGroup,
532         ULONG cCmds,
533         OLECMD prgCmds[],
534         OLECMDTEXT *pCmdText);
535 
536     HRESULT (STDMETHODCALLTYPE *Exec)(
537         IUrlHistoryNotify *This,
538         const GUID *pguidCmdGroup,
539         DWORD nCmdID,
540         DWORD nCmdexecopt,
541         VARIANT *pvaIn,
542         VARIANT *pvaOut);
543 
544     END_INTERFACE
545 } IUrlHistoryNotifyVtbl;
546 
547 interface IUrlHistoryNotify {
548     CONST_VTBL IUrlHistoryNotifyVtbl* lpVtbl;
549 };
550 
551 #ifdef COBJMACROS
552 #ifndef WIDL_C_INLINE_WRAPPERS
553 /*** IUnknown methods ***/
554 #define IUrlHistoryNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
555 #define IUrlHistoryNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
556 #define IUrlHistoryNotify_Release(This) (This)->lpVtbl->Release(This)
557 /*** IOleCommandTarget methods ***/
558 #define IUrlHistoryNotify_QueryStatus(This,pguidCmdGroup,cCmds,prgCmds,pCmdText) (This)->lpVtbl->QueryStatus(This,pguidCmdGroup,cCmds,prgCmds,pCmdText)
559 #define IUrlHistoryNotify_Exec(This,pguidCmdGroup,nCmdID,nCmdexecopt,pvaIn,pvaOut) (This)->lpVtbl->Exec(This,pguidCmdGroup,nCmdID,nCmdexecopt,pvaIn,pvaOut)
560 #else
561 /*** IUnknown methods ***/
562 static FORCEINLINE HRESULT IUrlHistoryNotify_QueryInterface(IUrlHistoryNotify* This,REFIID riid,void **ppvObject) {
563     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
564 }
565 static FORCEINLINE ULONG IUrlHistoryNotify_AddRef(IUrlHistoryNotify* This) {
566     return This->lpVtbl->AddRef(This);
567 }
568 static FORCEINLINE ULONG IUrlHistoryNotify_Release(IUrlHistoryNotify* This) {
569     return This->lpVtbl->Release(This);
570 }
571 /*** IOleCommandTarget methods ***/
572 static FORCEINLINE HRESULT IUrlHistoryNotify_QueryStatus(IUrlHistoryNotify* This,const GUID *pguidCmdGroup,ULONG cCmds,OLECMD prgCmds[],OLECMDTEXT *pCmdText) {
573     return This->lpVtbl->QueryStatus(This,pguidCmdGroup,cCmds,prgCmds,pCmdText);
574 }
575 static FORCEINLINE HRESULT IUrlHistoryNotify_Exec(IUrlHistoryNotify* This,const GUID *pguidCmdGroup,DWORD nCmdID,DWORD nCmdexecopt,VARIANT *pvaIn,VARIANT *pvaOut) {
576     return This->lpVtbl->Exec(This,pguidCmdGroup,nCmdID,nCmdexecopt,pvaIn,pvaOut);
577 }
578 #endif
579 #endif
580 
581 #endif
582 
583 
584 #endif  /* __IUrlHistoryNotify_INTERFACE_DEFINED__ */
585 
586 /* Begin additional prototypes for all interfaces */
587 
588 
589 /* End additional prototypes */
590 
591 #ifdef __cplusplus
592 }
593 #endif
594 
595 #endif /* __urlhist_h__ */
596