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