master
  1/*** Autogenerated by WIDL 10.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__
 23typedef interface IEnumSTATURL IEnumSTATURL;
 24#ifdef __cplusplus
 25interface IEnumSTATURL;
 26#endif /* __cplusplus */
 27#endif
 28
 29#ifndef __IUrlHistoryStg_FWD_DEFINED__
 30#define __IUrlHistoryStg_FWD_DEFINED__
 31typedef interface IUrlHistoryStg IUrlHistoryStg;
 32#ifdef __cplusplus
 33interface IUrlHistoryStg;
 34#endif /* __cplusplus */
 35#endif
 36
 37#ifndef __IUrlHistoryStg2_FWD_DEFINED__
 38#define __IUrlHistoryStg2_FWD_DEFINED__
 39typedef interface IUrlHistoryStg2 IUrlHistoryStg2;
 40#ifdef __cplusplus
 41interface IUrlHistoryStg2;
 42#endif /* __cplusplus */
 43#endif
 44
 45#ifndef __IUrlHistoryNotify_FWD_DEFINED__
 46#define __IUrlHistoryNotify_FWD_DEFINED__
 47typedef interface IUrlHistoryNotify IUrlHistoryNotify;
 48#ifdef __cplusplus
 49interface 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
 61extern "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
 70typedef 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
 82typedef IEnumSTATURL *LPENUMSTATURL;
 83typedef 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;
 92typedef struct _STATURL *LPSTATURL;
 93DEFINE_GUID(IID_IEnumSTATURL, 0x3c374a42, 0xbae4, 0x11cf, 0xbf,0x7d, 0x00,0xaa,0x00,0x69,0x46,0xee);
 94#if defined(__cplusplus) && !defined(CINTERFACE)
 95MIDL_INTERFACE("3c374a42-bae4-11cf-bf7d-00aa006946ee")
 96IEnumSTATURL : 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
121typedef 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
162interface 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 ***/
180static inline HRESULT IEnumSTATURL_QueryInterface(IEnumSTATURL* This,REFIID riid,void **ppvObject) {
181    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
182}
183static inline ULONG IEnumSTATURL_AddRef(IEnumSTATURL* This) {
184    return This->lpVtbl->AddRef(This);
185}
186static inline ULONG IEnumSTATURL_Release(IEnumSTATURL* This) {
187    return This->lpVtbl->Release(This);
188}
189/*** IEnumSTATURL methods ***/
190static inline HRESULT IEnumSTATURL_Next(IEnumSTATURL* This,ULONG celt,LPSTATURL rgelt,ULONG *pceltFetched) {
191    return This->lpVtbl->Next(This,celt,rgelt,pceltFetched);
192}
193static inline HRESULT IEnumSTATURL_Skip(IEnumSTATURL* This,ULONG celt) {
194    return This->lpVtbl->Skip(This,celt);
195}
196static inline HRESULT IEnumSTATURL_Reset(IEnumSTATURL* This) {
197    return This->lpVtbl->Reset(This);
198}
199static inline HRESULT IEnumSTATURL_Clone(IEnumSTATURL* This,IEnumSTATURL **ppenum) {
200    return This->lpVtbl->Clone(This,ppenum);
201}
202static inline 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
219typedef IUrlHistoryStg *LPURLHISTORYSTG;
220DEFINE_GUID(IID_IUrlHistoryStg, 0x3c374a41, 0xbae4, 0x11cf, 0xbf,0x7d, 0x00,0xaa,0x00,0x69,0x46,0xee);
221#if defined(__cplusplus) && !defined(CINTERFACE)
222MIDL_INTERFACE("3c374a41-bae4-11cf-bf7d-00aa006946ee")
223IUrlHistoryStg : 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
252typedef 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
298interface 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 ***/
316static inline HRESULT IUrlHistoryStg_QueryInterface(IUrlHistoryStg* This,REFIID riid,void **ppvObject) {
317    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
318}
319static inline ULONG IUrlHistoryStg_AddRef(IUrlHistoryStg* This) {
320    return This->lpVtbl->AddRef(This);
321}
322static inline ULONG IUrlHistoryStg_Release(IUrlHistoryStg* This) {
323    return This->lpVtbl->Release(This);
324}
325/*** IUrlHistoryStg methods ***/
326static inline HRESULT IUrlHistoryStg_AddUrl(IUrlHistoryStg* This,LPCOLESTR pocsUrl,LPCOLESTR pocsTitle,DWORD dwFlags) {
327    return This->lpVtbl->AddUrl(This,pocsUrl,pocsTitle,dwFlags);
328}
329static inline HRESULT IUrlHistoryStg_DeleteUrl(IUrlHistoryStg* This,LPCOLESTR pocsUrl,DWORD dwFlags) {
330    return This->lpVtbl->DeleteUrl(This,pocsUrl,dwFlags);
331}
332static inline HRESULT IUrlHistoryStg_QueryUrl(IUrlHistoryStg* This,LPCOLESTR pocsUrl,DWORD dwFlags,LPSTATURL lpSTATURL) {
333    return This->lpVtbl->QueryUrl(This,pocsUrl,dwFlags,lpSTATURL);
334}
335static inline HRESULT IUrlHistoryStg_BindToObject(IUrlHistoryStg* This,LPCOLESTR pocsUrl,REFIID riid,void **ppvOut) {
336    return This->lpVtbl->BindToObject(This,pocsUrl,riid,ppvOut);
337}
338static inline 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
355typedef IUrlHistoryStg2 *LPURLHISTORYSTG2;
356DEFINE_GUID(IID_IUrlHistoryStg2, 0xafa0dc11, 0xc313, 0x11d0, 0x83,0x1a, 0x00,0xc0,0x4f,0xd5,0xae,0x38);
357#if defined(__cplusplus) && !defined(CINTERFACE)
358MIDL_INTERFACE("afa0dc11-c313-11d0-831a-00c04fd5ae38")
359IUrlHistoryStg2 : 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
377typedef 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
436interface 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 ***/
457static inline HRESULT IUrlHistoryStg2_QueryInterface(IUrlHistoryStg2* This,REFIID riid,void **ppvObject) {
458    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
459}
460static inline ULONG IUrlHistoryStg2_AddRef(IUrlHistoryStg2* This) {
461    return This->lpVtbl->AddRef(This);
462}
463static inline ULONG IUrlHistoryStg2_Release(IUrlHistoryStg2* This) {
464    return This->lpVtbl->Release(This);
465}
466/*** IUrlHistoryStg methods ***/
467static inline HRESULT IUrlHistoryStg2_AddUrl(IUrlHistoryStg2* This,LPCOLESTR pocsUrl,LPCOLESTR pocsTitle,DWORD dwFlags) {
468    return This->lpVtbl->AddUrl(This,pocsUrl,pocsTitle,dwFlags);
469}
470static inline HRESULT IUrlHistoryStg2_DeleteUrl(IUrlHistoryStg2* This,LPCOLESTR pocsUrl,DWORD dwFlags) {
471    return This->lpVtbl->DeleteUrl(This,pocsUrl,dwFlags);
472}
473static inline HRESULT IUrlHistoryStg2_QueryUrl(IUrlHistoryStg2* This,LPCOLESTR pocsUrl,DWORD dwFlags,LPSTATURL lpSTATURL) {
474    return This->lpVtbl->QueryUrl(This,pocsUrl,dwFlags,lpSTATURL);
475}
476static inline HRESULT IUrlHistoryStg2_BindToObject(IUrlHistoryStg2* This,LPCOLESTR pocsUrl,REFIID riid,void **ppvOut) {
477    return This->lpVtbl->BindToObject(This,pocsUrl,riid,ppvOut);
478}
479static inline HRESULT IUrlHistoryStg2_EnumUrls(IUrlHistoryStg2* This,IEnumSTATURL **ppEnum) {
480    return This->lpVtbl->EnumUrls(This,ppEnum);
481}
482/*** IUrlHistoryStg2 methods ***/
483static inline 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}
486static inline 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
503typedef IUrlHistoryNotify *LPURLHISTORYNOTIFY;
504DEFINE_GUID(IID_IUrlHistoryNotify, 0xbc40bec1, 0xc493, 0x11d0, 0x83,0x1b, 0x00,0xc0,0x4f,0xd5,0xae,0x38);
505#if defined(__cplusplus) && !defined(CINTERFACE)
506MIDL_INTERFACE("bc40bec1-c493-11d0-831b-00c04fd5ae38")
507IUrlHistoryNotify : 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
514typedef 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
548interface 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 ***/
563static inline HRESULT IUrlHistoryNotify_QueryInterface(IUrlHistoryNotify* This,REFIID riid,void **ppvObject) {
564    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
565}
566static inline ULONG IUrlHistoryNotify_AddRef(IUrlHistoryNotify* This) {
567    return This->lpVtbl->AddRef(This);
568}
569static inline ULONG IUrlHistoryNotify_Release(IUrlHistoryNotify* This) {
570    return This->lpVtbl->Release(This);
571}
572/*** IOleCommandTarget methods ***/
573static inline 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}
576static inline 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__ */