#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 440
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef _EXDISP_H
#define _EXDISP_H

/* Forward Declarations */

#ifndef __IWebBrowser_FWD_DEFINED__
#define __IWebBrowser_FWD_DEFINED__
typedef interface IWebBrowser IWebBrowser;
#endif

#ifndef __DWebBrowserEvents_FWD_DEFINED__
#define __DWebBrowserEvents_FWD_DEFINED__
typedef interface DWebBrowserEvents DWebBrowserEvents;
#endif

#ifndef __IWebBrowserApp_FWD_DEFINED__
#define __IWebBrowserApp_FWD_DEFINED__
typedef interface IWebBrowserApp IWebBrowserApp;
#endif

#ifndef __IWebBrowser2_FWD_DEFINED__
#define __IWebBrowser2_FWD_DEFINED__
typedef interface IWebBrowser2 IWebBrowser2;
#endif

#ifndef __DWebBrowserEvents2_FWD_DEFINED__
#define __DWebBrowserEvents2_FWD_DEFINED__
typedef interface DWebBrowserEvents2 DWebBrowserEvents2;
#endif

#ifndef __WebBrowser_V1_FWD_DEFINED__
#define __WebBrowser_V1_FWD_DEFINED__

#ifdef __cplusplus
typedef class WebBrowser_V1 WebBrowser_V1;
#else
typedef struct WebBrowser_V1 WebBrowser_V1;
#endif /* __cplusplus */

#endif /* __WebBrowser_V1_FWD_DEFINED__ */

#ifndef __WebBrowser_FWD_DEFINED__
#define __WebBrowser_FWD_DEFINED__

#ifdef __cplusplus
typedef class WebBrowser WebBrowser;
#else
typedef struct WebBrowser WebBrowser;
#endif /* __cplusplus */

#endif /* __WebBrowser_FWD_DEFINED__ */

#ifndef __InternetExplorer_FWD_DEFINED__
#define __InternetExplorer_FWD_DEFINED__

#ifdef __cplusplus
typedef class InternetExplorer InternetExplorer;
#else
typedef struct InternetExplorer InternetExplorer;
#endif /* __cplusplus */

#endif /* __InternetExplorer_FWD_DEFINED__ */

#ifndef __ShellBrowserWindow_FWD_DEFINED__
#define __ShellBrowserWindow_FWD_DEFINED__

#ifdef __cplusplus
typedef class ShellBrowserWindow ShellBrowserWindow;
#else
typedef struct ShellBrowserWindow ShellBrowserWindow;
#endif /* __cplusplus */

#endif /* __ShellBrowserWindow_FWD_DEFINED__ */

#ifndef __DShellWindowsEvents_FWD_DEFINED__
#define __DShellWindowsEvents_FWD_DEFINED__
typedef interface DShellWindowsEvents DShellWindowsEvents;
#endif /* __DShellWindowsEvents_FWD_DEFINED__ */

#ifndef __IShellWindows_FWD_DEFINED__
#define __IShellWindows_FWD_DEFINED__
typedef interface IShellWindows IShellWindows;
#endif /* __IShellWindows_FWD_DEFINED__ */

#ifndef __ShellWindows_FWD_DEFINED__
#define __ShellWindows_FWD_DEFINED__

#ifdef __cplusplus
typedef class ShellWindows ShellWindows;
#else
typedef struct ShellWindows ShellWindows;
#endif /* __cplusplus */

#endif /* __ShellWindows_FWD_DEFINED__ */

#ifndef __IShellUIHelper_FWD_DEFINED__
#define __IShellUIHelper_FWD_DEFINED__
typedef interface IShellUIHelper IShellUIHelper;
#endif /* __IShellUIHelper_FWD_DEFINED__ */

#ifndef __ShellUIHelper_FWD_DEFINED__
#define __ShellUIHelper_FWD_DEFINED__

#ifdef __cplusplus
typedef class ShellUIHelper ShellUIHelper;
#else
typedef struct ShellUIHelper ShellUIHelper;
#endif /* __cplusplus */

#endif /* __ShellUIHelper_FWD_DEFINED__ */

#ifndef ___ShellFavoritesNameSpaceEvents_FWD_DEFINED__
#define ___ShellFavoritesNameSpaceEvents_FWD_DEFINED__
typedef interface _ShellFavoritesNameSpaceEvents _ShellFavoritesNameSpaceEvents;
#endif /* ___ShellFavoritesNameSpaceEvents_FWD_DEFINED__ */

#ifndef __IShellFavoritesNameSpace_FWD_DEFINED__
#define __IShellFavoritesNameSpace_FWD_DEFINED__
typedef interface IShellFavoritesNameSpace IShellFavoritesNameSpace;
#endif /* __IShellFavoritesNameSpace_FWD_DEFINED__ */

#ifndef __ShellFavoritesNameSpace_FWD_DEFINED__
#define __ShellFavoritesNameSpace_FWD_DEFINED__

#ifdef __cplusplus
typedef class ShellFavoritesNameSpace ShellFavoritesNameSpace;
#else
typedef struct ShellFavoritesNameSpace ShellFavoritesNameSpace;
#endif /* __cplusplus */

#endif /* __ShellFavoritesNameSpace_FWD_DEFINED__ */

#ifndef __IScriptErrorList_FWD_DEFINED__
#define __IScriptErrorList_FWD_DEFINED__
typedef interface IScriptErrorList IScriptErrorList;
#endif /* __IScriptErrorList_FWD_DEFINED__ */

#ifndef __CScriptErrorList_FWD_DEFINED__
#define __CScriptErrorList_FWD_DEFINED__

#ifdef __cplusplus
typedef class CScriptErrorList CScriptErrorList;
#else
typedef struct CScriptErrorList CScriptErrorList;
#endif /* __cplusplus */

#endif /* __CScriptErrorList_FWD_DEFINED__ */

#ifndef __ISearch_FWD_DEFINED__
#define __ISearch_FWD_DEFINED__
typedef interface ISearch ISearch;
#endif /* __ISearch_FWD_DEFINED__ */

#ifndef __ISearches_FWD_DEFINED__
#define __ISearches_FWD_DEFINED__
typedef interface ISearches ISearches;
#endif /* __ISearches_FWD_DEFINED__ */

#ifndef __ISearchAssistantOC_FWD_DEFINED__
#define __ISearchAssistantOC_FWD_DEFINED__
typedef interface ISearchAssistantOC ISearchAssistantOC;
#endif /* __ISearchAssistantOC_FWD_DEFINED__ */

#ifndef __ISearchAssistantOC2_FWD_DEFINED__
#define __ISearchAssistantOC2_FWD_DEFINED__
typedef interface ISearchAssistantOC2 ISearchAssistantOC2;
#endif /* __ISearchAssistantOC2_FWD_DEFINED__ */

#ifndef ___SearchAssistantEvents_FWD_DEFINED__
#define ___SearchAssistantEvents_FWD_DEFINED__
typedef interface _SearchAssistantEvents _SearchAssistantEvents;
#endif /* ___SearchAssistantEvents_FWD_DEFINED__ */

#ifndef __SearchAssistantOC_FWD_DEFINED__
#define __SearchAssistantOC_FWD_DEFINED__

#ifdef __cplusplus
typedef class SearchAssistantOC SearchAssistantOC;
#else
typedef struct SearchAssistantOC SearchAssistantOC;
#endif /* __cplusplus */

#endif /* __SearchAssistantOC_FWD_DEFINED__ */

#include "ocidl.h"
#include "docobj.h"

#ifdef __cplusplus
extern "C" {
#endif
void *__RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free(void *);

extern RPC_IF_HANDLE __MIDL_itf_exdisp_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_exdisp_0000_v0_0_s_ifspec;

#ifndef __SHDocVw_LIBRARY_DEFINED__
#define __SHDocVw_LIBRARY_DEFINED__

typedef DECLSPEC_UUID("34A226E0-DF30-11CF-89A9-00A0C9054129") enum CommandStateChangeConstants {
    CSC_UPDATECOMMANDS = 0xffffffff,
    CSC_NAVIGATEFORWARD = 0x1,
    CSC_NAVIGATEBACK = 0x2
} CommandStateChangeConstants;

typedef DECLSPEC_UUID("F41E6981-28E5-11d0-82B4-00A0C90C29C5") enum ShellWindowTypeConstants {
    SWC_EXPLORER = 0,
    SWC_BROWSER = 0x1,
    SWC_3RDPARTY = 0x2,
    SWC_CALLBACK = 0x4
} ShellWindowTypeConstants;

typedef DECLSPEC_UUID("7716a370-38ca-11d0-a48b-00a0c90a8f39")
    enum ShellWindowFindWindowOptions { SWFO_NEEDDISPATCH = 0x1,
    SWFO_INCLUDEPENDING = 0x2,
    SWFO_COOKIEPASSED = 0x4
} ShellWindowFindWindowOptions;

EXTERN_C const IID LIBID_SHDocVw;

#ifndef __IWebBrowser_INTERFACE_DEFINED__
#define __IWebBrowser_INTERFACE_DEFINED__

typedef DECLSPEC_UUID("14EE5380-A378-11cf-A731-00A0C9082637") enum BrowserNavConstants {
    navOpenInNewWindow = 0x1,
    navNoHistory = 0x2,
    navNoReadFromCache = 0x4,
    navNoWriteToCache = 0x8,
    navAllowAutosearch = 0x10,
    navBrowserBar = 0x20
} BrowserNavConstants;

typedef DECLSPEC_UUID("C317C261-A991-11cf-A731-00A0C9082637") enum RefreshConstants {
    REFRESH_NORMAL = 0,
    REFRESH_IFEXPIRED = 1,
    REFRESH_COMPLETELY = 3
} RefreshConstants;

EXTERN_C const IID IID_IWebBrowser;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("EAB22AC1-30C1-11CF-A7EB-0000C05BAE0B")
IWebBrowser:public IDispatch {
    public:
    virtual HRESULT STDMETHODCALLTYPE GoBack(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE GoForward(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE GoHome(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE GoSearch(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE Navigate(BSTR URL, VARIANT * Flags, VARIANT * TargetFrameName, VARIANT * PostData, VARIANT * Headers) = 0;
    virtual HRESULT STDMETHODCALLTYPE Refresh(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE Refresh2(VARIANT * Level) = 0;
    virtual HRESULT STDMETHODCALLTYPE Stop(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Application(IDispatch ** ppDisp) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Parent(IDispatch ** ppDisp) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Container(IDispatch ** ppDisp) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Document(IDispatch ** ppDisp) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_TopLevelContainer(VARIANT_BOOL * pBool) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Type(BSTR * Type) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Left(long *pl) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_Left(long Left) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Top(long *pl) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_Top(long Top) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Width(long *pl) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_Width(long Width) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Height(long *pl) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_Height(long Height) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_LocationName(BSTR * LocationName) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_LocationURL(BSTR * LocationURL) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Busy(VARIANT_BOOL * pBool) = 0;
};
#else /* C style interface */
typedef struct IWebBrowserVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(IWebBrowser *,REFIID,void**);
    ULONG (STDMETHODCALLTYPE *AddRef)(IWebBrowser*);
    ULONG (STDMETHODCALLTYPE *Release)(IWebBrowser*);
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(IWebBrowser*,UINT*);
    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(IWebBrowser*,UINT,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(IWebBrowser*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE *Invoke)(IWebBrowser*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE *GoBack)(IWebBrowser*);
    HRESULT (STDMETHODCALLTYPE *GoForward)(IWebBrowser*);
    HRESULT (STDMETHODCALLTYPE *GoHome)(IWebBrowser*);
    HRESULT (STDMETHODCALLTYPE *GoSearch)(IWebBrowser*);
    HRESULT (STDMETHODCALLTYPE *Navigate)(IWebBrowser*,BSTR,VARIANT*,VARIANT*,VARIANT*,VARIANT*);
    HRESULT (STDMETHODCALLTYPE *Refresh)(IWebBrowser*);
    HRESULT (STDMETHODCALLTYPE *Refresh2)(IWebBrowser*,VARIANT*);
    HRESULT (STDMETHODCALLTYPE *Stop)(IWebBrowser*);
    HRESULT (STDMETHODCALLTYPE *get_Application) (IWebBrowser*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE *get_Parent)(IWebBrowser*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE *get_Container)(IWebBrowser*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE *get_Document)(IWebBrowser*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE *get_TopLevelContainer)(IWebBrowser*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE *get_Type)(IWebBrowser*,BSTR*);
    HRESULT (STDMETHODCALLTYPE *get_Left)(IWebBrowser*,long*);
    HRESULT (STDMETHODCALLTYPE *put_Left)(IWebBrowser*,long);
    HRESULT (STDMETHODCALLTYPE *get_Top)(IWebBrowser*,long*);
    HRESULT (STDMETHODCALLTYPE *put_Top)(IWebBrowser*,long);
    HRESULT (STDMETHODCALLTYPE *get_Width)(IWebBrowser*,long*);
    HRESULT (STDMETHODCALLTYPE *put_Width)(IWebBrowser*,long);
    HRESULT (STDMETHODCALLTYPE *get_Height)(IWebBrowser*,long*);
    HRESULT (STDMETHODCALLTYPE *put_Height)(IWebBrowser*,long);
    HRESULT (STDMETHODCALLTYPE *get_LocationName)(IWebBrowser*,BSTR*);
    HRESULT (STDMETHODCALLTYPE *get_LocationURL)(IWebBrowser*,BSTR*);
    HRESULT (STDMETHODCALLTYPE *get_Busy)(IWebBrowser*,VARIANT_BOOL*);
    END_INTERFACE
} IWebBrowserVtbl;

interface IWebBrowser {
    CONST_VTBL struct IWebBrowserVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define IWebBrowser_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IWebBrowser_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define IWebBrowser_Release(This)  (This)->lpVtbl->Release(This)
#define IWebBrowser_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IWebBrowser_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IWebBrowser_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IWebBrowser_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IWebBrowser_GoBack(This)  (This)->lpVtbl->GoBack(This)
#define IWebBrowser_GoForward(This)  (This)->lpVtbl->GoForward(This)
#define IWebBrowser_GoHome(This)  (This)->lpVtbl->GoHome(This)
#define IWebBrowser_GoSearch(This)  (This)->lpVtbl->GoSearch(This)
#define IWebBrowser_Navigate(This,URL,Flags,TargetFrameName,PostData,Headers)  (This)->lpVtbl->Navigate(This,URL,Flags,TargetFrameName,PostData,Headers)
#define IWebBrowser_Refresh(This)  (This)->lpVtbl->Refresh(This)
#define IWebBrowser_Refresh2(This,Level)  (This)->lpVtbl->Refresh2(This,Level)
#define IWebBrowser_Stop(This)  (This)->lpVtbl->Stop(This)
#define IWebBrowser_get_Application(This,ppDisp)  (This)->lpVtbl->get_Application(This,ppDisp)
#define IWebBrowser_get_Parent(This,ppDisp)  (This)->lpVtbl->get_Parent(This,ppDisp)
#define IWebBrowser_get_Container(This,ppDisp)  (This)->lpVtbl->get_Container(This,ppDisp)
#define IWebBrowser_get_Document(This,ppDisp)  (This)->lpVtbl->get_Document(This,ppDisp)
#define IWebBrowser_get_TopLevelContainer(This,pBool)  (This)->lpVtbl->get_TopLevelContainer(This,pBool)
#define IWebBrowser_get_Type(This,Type)  (This)->lpVtbl->get_Type(This,Type)
#define IWebBrowser_get_Left(This,pl)  (This)->lpVtbl->get_Left(This,pl)
#define IWebBrowser_put_Left(This,Left)  (This)->lpVtbl->put_Left(This,Left)
#define IWebBrowser_get_Top(This,pl)  (This)->lpVtbl->get_Top(This,pl)
#define IWebBrowser_put_Top(This,Top)  (This)->lpVtbl->put_Top(This,Top)
#define IWebBrowser_get_Width(This,pl)  (This)->lpVtbl->get_Width(This,pl)
#define IWebBrowser_put_Width(This,Width)  (This)->lpVtbl->put_Width(This,Width)
#define IWebBrowser_get_Height(This,pl)  (This)->lpVtbl->get_Height(This,pl)
#define IWebBrowser_put_Height(This,Height)  (This)->lpVtbl->put_Height(This,Height)
#define IWebBrowser_get_LocationName(This,LocationName)  (This)->lpVtbl->get_LocationName(This,LocationName)
#define IWebBrowser_get_LocationURL(This,LocationURL)  (This)->lpVtbl->get_LocationURL(This,LocationURL)
#define IWebBrowser_get_Busy(This,pBool)  (This)->lpVtbl->get_Busy(This,pBool)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE IWebBrowser_GoBack_Proxy(IWebBrowser*);
void __RPC_STUB IWebBrowser_GoBack_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_GoForward_Proxy(IWebBrowser*);
void __RPC_STUB IWebBrowser_GoForward_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_GoHome_Proxy(IWebBrowser*);
void __RPC_STUB IWebBrowser_GoHome_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_GoSearch_Proxy(IWebBrowser*);
void __RPC_STUB IWebBrowser_GoSearch_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_Navigate_Proxy(IWebBrowser*,BSTR,VARIANT*,VARIANT*,VARIANT*,VARIANT*);
void __RPC_STUB IWebBrowser_Navigate_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_Refresh_Proxy(IWebBrowser*);
void __RPC_STUB IWebBrowser_Refresh_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_Refresh2_Proxy(IWebBrowser*,VARIANT*);
void __RPC_STUB IWebBrowser_Refresh2_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_Stop_Proxy(IWebBrowser*);
void __RPC_STUB IWebBrowser_Stop_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Application_Proxy(IWebBrowser*,IDispatch**);
void __RPC_STUB IWebBrowser_get_Application_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Parent_Proxy(IWebBrowser*,IDispatch**);
void __RPC_STUB IWebBrowser_get_Parent_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Container_Proxy(IWebBrowser*,IDispatch**);
void __RPC_STUB IWebBrowser_get_Container_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Document_Proxy(IWebBrowser*,IDispatch**);
void __RPC_STUB IWebBrowser_get_Document_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_TopLevelContainer_Proxy(IWebBrowser*,VARIANT_BOOL*);
void __RPC_STUB IWebBrowser_get_TopLevelContainer_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Type_Proxy(IWebBrowser*,BSTR*);
void __RPC_STUB IWebBrowser_get_Type_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Left_Proxy(IWebBrowser*,long*);
void __RPC_STUB IWebBrowser_get_Left_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_put_Left_Proxy(IWebBrowser*,long);
void __RPC_STUB IWebBrowser_put_Left_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Top_Proxy(IWebBrowser*,long*);
void __RPC_STUB IWebBrowser_get_Top_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_put_Top_Proxy(IWebBrowser*,long);
void __RPC_STUB IWebBrowser_put_Top_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Width_Proxy(IWebBrowser*,long*);
void __RPC_STUB IWebBrowser_get_Width_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_put_Width_Proxy(IWebBrowser*,long);
void __RPC_STUB IWebBrowser_put_Width_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Height_Proxy(IWebBrowser*,long*);
void __RPC_STUB IWebBrowser_get_Height_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_put_Height_Proxy(IWebBrowser*,long);
void __RPC_STUB IWebBrowser_put_Height_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_LocationName_Proxy(IWebBrowser*,BSTR*);
void __RPC_STUB IWebBrowser_get_LocationName_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_LocationURL_Proxy(IWebBrowser*,BSTR*);
void __RPC_STUB IWebBrowser_get_LocationURL_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser_get_Busy_Proxy(IWebBrowser*,VARIANT_BOOL*);
void __RPC_STUB IWebBrowser_get_Busy_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);

#endif /* __IWebBrowser_INTERFACE_DEFINED__ */

#ifndef __DWebBrowserEvents_DISPINTERFACE_DEFINED__
#define __DWebBrowserEvents_DISPINTERFACE_DEFINED__

EXTERN_C const IID DIID_DWebBrowserEvents;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("EAB22AC2-30C1-11CF-A7EB-0000C05BAE0B")
DWebBrowserEvents:public IDispatch {
};
#else /* C style interface */
typedef struct DWebBrowserEventsVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(DWebBrowserEvents*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE *AddRef)(DWebBrowserEvents*);
    ULONG (STDMETHODCALLTYPE *Release)(DWebBrowserEvents*);
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(DWebBrowserEvents*,UINT*);
    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(DWebBrowserEvents*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(DWebBrowserEvents*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE *Invoke)(DWebBrowserEvents*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    END_INTERFACE
} DWebBrowserEventsVtbl;

interface DWebBrowserEvents {
    CONST_VTBL struct DWebBrowserEventsVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define DWebBrowserEvents_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DWebBrowserEvents_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define DWebBrowserEvents_Release(This)  (This)->lpVtbl->Release(This)
#define DWebBrowserEvents_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DWebBrowserEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DWebBrowserEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DWebBrowserEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif /* COBJMACROS */
#endif /* C style interface */

#endif /* __DWebBrowserEvents_DISPINTERFACE_DEFINED__ */

#ifndef __IWebBrowserApp_INTERFACE_DEFINED__
#define __IWebBrowserApp_INTERFACE_DEFINED__

EXTERN_C const IID IID_IWebBrowserApp;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("0002DF05-0000-0000-C000-000000000046")
IWebBrowserApp:public IWebBrowser {
    public:
    virtual HRESULT STDMETHODCALLTYPE Quit(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE ClientToWindow(int*,int*) = 0;
    virtual HRESULT STDMETHODCALLTYPE PutProperty(BSTR,VARIANT) = 0;
    virtual HRESULT STDMETHODCALLTYPE GetProperty(BSTR,VARIANT*) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Name(BSTR*) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_HWND(long*) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_FullName(BSTR*) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Path(BSTR*) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Visible(VARIANT_BOOL*) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_Visible(VARIANT_BOOL) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_StatusBar(VARIANT_BOOL*) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_StatusBar(VARIANT_BOOL) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_StatusText(BSTR*) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_StatusText(BSTR) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_ToolBar(int*) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_ToolBar(int) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_MenuBar(VARIANT_BOOL*) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_MenuBar(VARIANT_BOOL) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_FullScreen(VARIANT_BOOL*) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_FullScreen(VARIANT_BOOL) = 0;
};
#else /* C style interface */
typedef struct IWebBrowserAppVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE *QueryInterface) (IWebBrowserApp*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE *AddRef) (IWebBrowserApp*);
    ULONG (STDMETHODCALLTYPE *Release) (IWebBrowserApp*);
    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (IWebBrowserApp*,UINT*);
    HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (IWebBrowserApp*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (IWebBrowserApp*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE *Invoke) (IWebBrowserApp*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE *GoBack) (IWebBrowserApp*);
    HRESULT (STDMETHODCALLTYPE *GoForward) (IWebBrowserApp*);
    HRESULT (STDMETHODCALLTYPE *GoHome) (IWebBrowserApp*);
    HRESULT (STDMETHODCALLTYPE *GoSearch) (IWebBrowserApp*);
    HRESULT (STDMETHODCALLTYPE *Navigate) (IWebBrowserApp*,BSTR,VARIANT*,VARIANT*,VARIANT*,VARIANT*);
    HRESULT (STDMETHODCALLTYPE *Refresh) (IWebBrowserApp*);
    HRESULT (STDMETHODCALLTYPE *Refresh2) (IWebBrowserApp*,VARIANT*);
    HRESULT (STDMETHODCALLTYPE *Stop) (IWebBrowserApp*);
    HRESULT (STDMETHODCALLTYPE *get_Application) (IWebBrowserApp*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE *get_Parent) (IWebBrowserApp*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE *get_Container) (IWebBrowserApp*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE *get_Document) (IWebBrowserApp*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE *get_TopLevelContainer) (IWebBrowserApp*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE *get_Type) (IWebBrowserApp*,BSTR *);
    HRESULT (STDMETHODCALLTYPE *get_Left) (IWebBrowserApp*,long*);
    HRESULT (STDMETHODCALLTYPE *put_Left) (IWebBrowserApp*,long);
    HRESULT (STDMETHODCALLTYPE *get_Top) (IWebBrowserApp*,long*);
    HRESULT (STDMETHODCALLTYPE *put_Top) (IWebBrowserApp*,long);
    HRESULT (STDMETHODCALLTYPE *get_Width) (IWebBrowserApp*,long*);
    HRESULT (STDMETHODCALLTYPE *put_Width) (IWebBrowserApp*,long);
    HRESULT (STDMETHODCALLTYPE *get_Height) (IWebBrowserApp*,long*);
    HRESULT (STDMETHODCALLTYPE *put_Height) (IWebBrowserApp*,long);
    HRESULT (STDMETHODCALLTYPE *get_LocationName) (IWebBrowserApp*,BSTR*);
    HRESULT (STDMETHODCALLTYPE *get_LocationURL) (IWebBrowserApp*,BSTR*);
    HRESULT (STDMETHODCALLTYPE *get_Busy) (IWebBrowserApp*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE *Quit) (IWebBrowserApp*);
    HRESULT (STDMETHODCALLTYPE *ClientToWindow) (IWebBrowserApp*, int *pcx, int *pcy);
    HRESULT (STDMETHODCALLTYPE *PutProperty) (IWebBrowserApp*, BSTR Property, VARIANT vtValue);
    HRESULT (STDMETHODCALLTYPE *GetProperty) (IWebBrowserApp*, BSTR Property, VARIANT * pvtValue);
    HRESULT (STDMETHODCALLTYPE *get_Name) (IWebBrowserApp*, BSTR * Name);
    HRESULT (STDMETHODCALLTYPE *get_HWND) (IWebBrowserApp*, long *pHWND);
    HRESULT (STDMETHODCALLTYPE *get_FullName) (IWebBrowserApp*, BSTR * FullName);
    HRESULT (STDMETHODCALLTYPE *get_Path) (IWebBrowserApp*, BSTR * Path);
    HRESULT (STDMETHODCALLTYPE *get_Visible) (IWebBrowserApp*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE *put_Visible) (IWebBrowserApp*, VARIANT_BOOL Value);
    HRESULT (STDMETHODCALLTYPE *get_StatusBar) (IWebBrowserApp*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE *put_StatusBar) (IWebBrowserApp*, VARIANT_BOOL Value);
    HRESULT (STDMETHODCALLTYPE *get_StatusText) (IWebBrowserApp*, BSTR * StatusText);
    HRESULT (STDMETHODCALLTYPE *put_StatusText) (IWebBrowserApp*, BSTR StatusText);
    HRESULT (STDMETHODCALLTYPE *get_ToolBar) (IWebBrowserApp*, int *Value);
    HRESULT (STDMETHODCALLTYPE *put_ToolBar) (IWebBrowserApp*, int Value);
    HRESULT (STDMETHODCALLTYPE *get_MenuBar) (IWebBrowserApp*, VARIANT_BOOL * Value);
    HRESULT (STDMETHODCALLTYPE *put_MenuBar) (IWebBrowserApp*, VARIANT_BOOL Value);
    HRESULT (STDMETHODCALLTYPE *get_FullScreen) (IWebBrowserApp*, VARIANT_BOOL * pbFullScreen);
    HRESULT (STDMETHODCALLTYPE *put_FullScreen) (IWebBrowserApp*, VARIANT_BOOL bFullScreen);
    END_INTERFACE
} IWebBrowserAppVtbl;

interface IWebBrowserApp {
    CONST_VTBL struct IWebBrowserAppVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define IWebBrowserApp_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IWebBrowserApp_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define IWebBrowserApp_Release(This)  (This)->lpVtbl->Release(This)
#define IWebBrowserApp_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IWebBrowserApp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IWebBrowserApp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IWebBrowserApp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IWebBrowserApp_GoBack(This)  (This)->lpVtbl->GoBack(This)
#define IWebBrowserApp_GoForward(This)  (This)->lpVtbl->GoForward(This)
#define IWebBrowserApp_GoHome(This)  (This)->lpVtbl->GoHome(This)
#define IWebBrowserApp_GoSearch(This)  (This)->lpVtbl->GoSearch(This)
#define IWebBrowserApp_Navigate(This,URL,Flags,TargetFrameName,PostData,Headers)  (This)->lpVtbl->Navigate(This,URL,Flags,TargetFrameName,PostData,Headers)
#define IWebBrowserApp_Refresh(This)  (This)->lpVtbl->Refresh(This)
#define IWebBrowserApp_Refresh2(This,Level)  (This)->lpVtbl->Refresh2(This,Level)
#define IWebBrowserApp_Stop(This)  (This)->lpVtbl->Stop(This)
#define IWebBrowserApp_get_Application(This,ppDisp)  (This)->lpVtbl->get_Application(This,ppDisp)
#define IWebBrowserApp_get_Parent(This,ppDisp)  (This)->lpVtbl->get_Parent(This,ppDisp)
#define IWebBrowserApp_get_Container(This,ppDisp)  (This)->lpVtbl->get_Container(This,ppDisp)
#define IWebBrowserApp_get_Document(This,ppDisp)  (This)->lpVtbl->get_Document(This,ppDisp)
#define IWebBrowserApp_get_TopLevelContainer(This,pBool)  (This)->lpVtbl->get_TopLevelContainer(This,pBool)
#define IWebBrowserApp_get_Type(This,Type)  (This)->lpVtbl->get_Type(This,Type)
#define IWebBrowserApp_get_Left(This,pl)  (This)->lpVtbl->get_Left(This,pl)
#define IWebBrowserApp_put_Left(This,Left)  (This)->lpVtbl->put_Left(This,Left)
#define IWebBrowserApp_get_Top(This,pl)  (This)->lpVtbl->get_Top(This,pl)
#define IWebBrowserApp_put_Top(This,Top)  (This)->lpVtbl->put_Top(This,Top)
#define IWebBrowserApp_get_Width(This,pl)  (This)->lpVtbl->get_Width(This,pl)
#define IWebBrowserApp_put_Width(This,Width)  (This)->lpVtbl->put_Width(This,Width)
#define IWebBrowserApp_get_Height(This,pl)  (This)->lpVtbl->get_Height(This,pl)
#define IWebBrowserApp_put_Height(This,Height)  (This)->lpVtbl->put_Height(This,Height)
#define IWebBrowserApp_get_LocationName(This,LocationName)  (This)->lpVtbl->get_LocationName(This,LocationName)
#define IWebBrowserApp_get_LocationURL(This,LocationURL)  (This)->lpVtbl->get_LocationURL(This,LocationURL)
#define IWebBrowserApp_get_Busy(This,pBool)  (This)->lpVtbl->get_Busy(This,pBool)
#define IWebBrowserApp_Quit(This)  (This)->lpVtbl->Quit(This)
#define IWebBrowserApp_ClientToWindow(This,pcx,pcy)  (This)->lpVtbl->ClientToWindow(This,pcx,pcy)
#define IWebBrowserApp_PutProperty(This,Property,vtValue)  (This)->lpVtbl->PutProperty(This,Property,vtValue)
#define IWebBrowserApp_GetProperty(This,Property,pvtValue)  (This)->lpVtbl->GetProperty(This,Property,pvtValue)
#define IWebBrowserApp_get_Name(This,Name)  (This)->lpVtbl->get_Name(This,Name)
#define IWebBrowserApp_get_HWND(This,pHWND)  (This)->lpVtbl->get_HWND(This,pHWND)
#define IWebBrowserApp_get_FullName(This,FullName)  (This)->lpVtbl->get_FullName(This,FullName)
#define IWebBrowserApp_get_Path(This,Path)  (This)->lpVtbl->get_Path(This,Path)
#define IWebBrowserApp_get_Visible(This,pBool)  (This)->lpVtbl->get_Visible(This,pBool)
#define IWebBrowserApp_put_Visible(This,Value)  (This)->lpVtbl->put_Visible(This,Value)
#define IWebBrowserApp_get_StatusBar(This,pBool)  (This)->lpVtbl->get_StatusBar(This,pBool)
#define IWebBrowserApp_put_StatusBar(This,Value)  (This)->lpVtbl->put_StatusBar(This,Value)
#define IWebBrowserApp_get_StatusText(This,StatusText)  (This)->lpVtbl->get_StatusText(This,StatusText)
#define IWebBrowserApp_put_StatusText(This,StatusText)  (This)->lpVtbl->put_StatusText(This,StatusText)
#define IWebBrowserApp_get_ToolBar(This,Value)  (This)->lpVtbl->get_ToolBar(This,Value)
#define IWebBrowserApp_put_ToolBar(This,Value)  (This)->lpVtbl->put_ToolBar(This,Value)
#define IWebBrowserApp_get_MenuBar(This,Value)  (This)->lpVtbl->get_MenuBar(This,Value)
#define IWebBrowserApp_put_MenuBar(This,Value)  (This)->lpVtbl->put_MenuBar(This,Value)
#define IWebBrowserApp_get_FullScreen(This,pbFullScreen)  (This)->lpVtbl->get_FullScreen(This,pbFullScreen)
#define IWebBrowserApp_put_FullScreen(This,bFullScreen)  (This)->lpVtbl->put_FullScreen(This,bFullScreen)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE IWebBrowserApp_Quit_Proxy(IWebBrowserApp*);
void __RPC_STUB IWebBrowserApp_Quit_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_ClientToWindow_Proxy(IWebBrowserApp*, int *pcx, int *pcy);
void __RPC_STUB IWebBrowserApp_ClientToWindow_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_PutProperty_Proxy(IWebBrowserApp*, BSTR Property, VARIANT vtValue);
void __RPC_STUB IWebBrowserApp_PutProperty_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_GetProperty_Proxy(IWebBrowserApp*, BSTR Property, VARIANT * pvtValue);
void __RPC_STUB IWebBrowserApp_GetProperty_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_Name_Proxy(IWebBrowserApp*, BSTR * Name);
void __RPC_STUB IWebBrowserApp_get_Name_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_HWND_Proxy(IWebBrowserApp*, long *pHWND);
void __RPC_STUB IWebBrowserApp_get_HWND_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_FullName_Proxy(IWebBrowserApp*, BSTR * FullName);
void __RPC_STUB IWebBrowserApp_get_FullName_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_Path_Proxy(IWebBrowserApp*, BSTR * Path);
void __RPC_STUB IWebBrowserApp_get_Path_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_Visible_Proxy(IWebBrowserApp*,VARIANT_BOOL*);
void __RPC_STUB IWebBrowserApp_get_Visible_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_Visible_Proxy(IWebBrowserApp*, VARIANT_BOOL Value);
void __RPC_STUB IWebBrowserApp_put_Visible_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_StatusBar_Proxy(IWebBrowserApp*,VARIANT_BOOL*);
void __RPC_STUB IWebBrowserApp_get_StatusBar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_StatusBar_Proxy(IWebBrowserApp*, VARIANT_BOOL Value);
void __RPC_STUB IWebBrowserApp_put_StatusBar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_StatusText_Proxy(IWebBrowserApp*, BSTR * StatusText);
void __RPC_STUB IWebBrowserApp_get_StatusText_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_StatusText_Proxy(IWebBrowserApp*, BSTR StatusText);
void __RPC_STUB IWebBrowserApp_put_StatusText_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_ToolBar_Proxy(IWebBrowserApp*, int *Value);
void __RPC_STUB IWebBrowserApp_get_ToolBar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_ToolBar_Proxy(IWebBrowserApp*, int Value);
void __RPC_STUB IWebBrowserApp_put_ToolBar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_MenuBar_Proxy(IWebBrowserApp*, VARIANT_BOOL * Value);
void __RPC_STUB IWebBrowserApp_get_MenuBar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_MenuBar_Proxy(IWebBrowserApp*, VARIANT_BOOL Value);
void __RPC_STUB IWebBrowserApp_put_MenuBar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_get_FullScreen_Proxy(IWebBrowserApp*, VARIANT_BOOL * pbFullScreen);
void __RPC_STUB IWebBrowserApp_get_FullScreen_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowserApp_put_FullScreen_Proxy(IWebBrowserApp*, VARIANT_BOOL bFullScreen);
void __RPC_STUB IWebBrowserApp_put_FullScreen_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
#endif /* __IWebBrowserApp_INTERFACE_DEFINED__ */

#ifndef __IWebBrowser2_INTERFACE_DEFINED__
#define __IWebBrowser2_INTERFACE_DEFINED__

EXTERN_C const IID IID_IWebBrowser2;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("D30C1661-CDAF-11d0-8A3E-00C04FC9E26E")
IWebBrowser2:public IWebBrowserApp {
    public:
    virtual HRESULT STDMETHODCALLTYPE Navigate2(VARIANT * URL, VARIANT * Flags, VARIANT * TargetFrameName, VARIANT * PostData, VARIANT * Headers) = 0;
    virtual HRESULT STDMETHODCALLTYPE QueryStatusWB(OLECMDID cmdID, OLECMDF * pcmdf) = 0;
    virtual HRESULT STDMETHODCALLTYPE ExecWB(OLECMDID cmdID, OLECMDEXECOPT cmdexecopt, VARIANT * pvaIn, VARIANT * pvaOut) = 0;
    virtual HRESULT STDMETHODCALLTYPE ShowBrowserBar(VARIANT * pvaClsid, VARIANT * pvarShow, VARIANT * pvarSize) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_ReadyState(READYSTATE * plReadyState) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Offline(VARIANT_BOOL * pbOffline) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_Offline(VARIANT_BOOL bOffline) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Silent(VARIANT_BOOL * pbSilent) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_Silent(VARIANT_BOOL bSilent) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_RegisterAsBrowser(VARIANT_BOOL * pbRegister) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_RegisterAsBrowser(VARIANT_BOOL bRegister) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_RegisterAsDropTarget(VARIANT_BOOL * pbRegister) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_RegisterAsDropTarget(VARIANT_BOOL bRegister) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_TheaterMode(VARIANT_BOOL * pbRegister) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_TheaterMode(VARIANT_BOOL bRegister) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_AddressBar(VARIANT_BOOL * Value) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_AddressBar(VARIANT_BOOL Value) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Resizable(VARIANT_BOOL * Value) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_Resizable(VARIANT_BOOL Value) = 0;
};
#else /* C style interface */
typedef struct IWebBrowser2Vtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (IWebBrowser2*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (IWebBrowser2*);
    ULONG (STDMETHODCALLTYPE * Release) (IWebBrowser2*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (IWebBrowser2*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (IWebBrowser2*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (IWebBrowser2*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (IWebBrowser2*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GoBack) (IWebBrowser2*);
    HRESULT (STDMETHODCALLTYPE * GoForward) (IWebBrowser2*);
    HRESULT (STDMETHODCALLTYPE * GoHome) (IWebBrowser2*);
    HRESULT (STDMETHODCALLTYPE * GoSearch) (IWebBrowser2*);
    HRESULT (STDMETHODCALLTYPE * Navigate) (IWebBrowser2*, BSTR URL, VARIANT * Flags, VARIANT * TargetFrameName, VARIANT * PostData, VARIANT * Headers);
    HRESULT (STDMETHODCALLTYPE * Refresh) (IWebBrowser2*);
    HRESULT (STDMETHODCALLTYPE * Refresh2) (IWebBrowser2*, VARIANT * Level);
    HRESULT (STDMETHODCALLTYPE * Stop) (IWebBrowser2*);
    HRESULT (STDMETHODCALLTYPE * get_Application) (IWebBrowser2*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE * get_Parent) (IWebBrowser2*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE * get_Container) (IWebBrowser2*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE * get_Document) (IWebBrowser2*,IDispatch**);
    HRESULT (STDMETHODCALLTYPE * get_TopLevelContainer) (IWebBrowser2*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * get_Type) (IWebBrowser2*, BSTR * Type);
    HRESULT (STDMETHODCALLTYPE * get_Left) (IWebBrowser2*, long *pl);
    HRESULT (STDMETHODCALLTYPE * put_Left) (IWebBrowser2*, long Left);
    HRESULT (STDMETHODCALLTYPE * get_Top) (IWebBrowser2*, long *pl);
    HRESULT (STDMETHODCALLTYPE * put_Top) (IWebBrowser2*, long Top);
    HRESULT (STDMETHODCALLTYPE * get_Width) (IWebBrowser2*, long *pl);
    HRESULT (STDMETHODCALLTYPE * put_Width) (IWebBrowser2*, long Width);
    HRESULT (STDMETHODCALLTYPE * get_Height) (IWebBrowser2*, long *pl);
    HRESULT (STDMETHODCALLTYPE * put_Height) (IWebBrowser2*, long Height);
    HRESULT (STDMETHODCALLTYPE * get_LocationName) (IWebBrowser2*, BSTR * LocationName);
    HRESULT (STDMETHODCALLTYPE * get_LocationURL) (IWebBrowser2*, BSTR * LocationURL);
    HRESULT (STDMETHODCALLTYPE * get_Busy) (IWebBrowser2*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * Quit) (IWebBrowser2*);
    HRESULT (STDMETHODCALLTYPE * ClientToWindow) (IWebBrowser2*, int *pcx, int *pcy);
    HRESULT (STDMETHODCALLTYPE * PutProperty) (IWebBrowser2*, BSTR Property, VARIANT vtValue);
    HRESULT (STDMETHODCALLTYPE * GetProperty) (IWebBrowser2*, BSTR Property, VARIANT * pvtValue);
    HRESULT (STDMETHODCALLTYPE * get_Name) (IWebBrowser2*, BSTR * Name);
    HRESULT (STDMETHODCALLTYPE * get_HWND) (IWebBrowser2*, long *pHWND);
    HRESULT (STDMETHODCALLTYPE * get_FullName) (IWebBrowser2*, BSTR * FullName);
    HRESULT (STDMETHODCALLTYPE * get_Path) (IWebBrowser2*, BSTR * Path);
    HRESULT (STDMETHODCALLTYPE * get_Visible) (IWebBrowser2*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * put_Visible) (IWebBrowser2*, VARIANT_BOOL Value);
    HRESULT (STDMETHODCALLTYPE * get_StatusBar) (IWebBrowser2*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * put_StatusBar) (IWebBrowser2*, VARIANT_BOOL Value);
    HRESULT (STDMETHODCALLTYPE * get_StatusText) (IWebBrowser2*, BSTR * StatusText);
    HRESULT (STDMETHODCALLTYPE * put_StatusText) (IWebBrowser2*, BSTR StatusText);
    HRESULT (STDMETHODCALLTYPE * get_ToolBar) (IWebBrowser2*, int *Value);
    HRESULT (STDMETHODCALLTYPE * put_ToolBar) (IWebBrowser2*, int Value);
    HRESULT (STDMETHODCALLTYPE * get_MenuBar) (IWebBrowser2*, VARIANT_BOOL * Value);
    HRESULT (STDMETHODCALLTYPE * put_MenuBar) (IWebBrowser2*, VARIANT_BOOL Value);
    HRESULT (STDMETHODCALLTYPE * get_FullScreen) (IWebBrowser2*, VARIANT_BOOL * pbFullScreen);
    HRESULT (STDMETHODCALLTYPE * put_FullScreen) (IWebBrowser2*, VARIANT_BOOL bFullScreen);
    HRESULT (STDMETHODCALLTYPE * Navigate2) (IWebBrowser2*, VARIANT * URL, VARIANT * Flags, VARIANT * TargetFrameName, VARIANT * PostData, VARIANT * Headers);
    HRESULT (STDMETHODCALLTYPE * QueryStatusWB) (IWebBrowser2*, OLECMDID cmdID, OLECMDF * pcmdf);
    HRESULT (STDMETHODCALLTYPE * ExecWB) (IWebBrowser2*, OLECMDID cmdID, OLECMDEXECOPT cmdexecopt, VARIANT * pvaIn, VARIANT * pvaOut);
    HRESULT (STDMETHODCALLTYPE * ShowBrowserBar) (IWebBrowser2*, VARIANT * pvaClsid, VARIANT * pvarShow, VARIANT * pvarSize);
    HRESULT (STDMETHODCALLTYPE * get_ReadyState) (IWebBrowser2*, READYSTATE * plReadyState);
    HRESULT (STDMETHODCALLTYPE * get_Offline) (IWebBrowser2*, VARIANT_BOOL * pbOffline);
    HRESULT (STDMETHODCALLTYPE * put_Offline) (IWebBrowser2*, VARIANT_BOOL bOffline);
    HRESULT (STDMETHODCALLTYPE * get_Silent) (IWebBrowser2*, VARIANT_BOOL * pbSilent);
    HRESULT (STDMETHODCALLTYPE * put_Silent) (IWebBrowser2*, VARIANT_BOOL bSilent);
    HRESULT (STDMETHODCALLTYPE * get_RegisterAsBrowser) (IWebBrowser2*, VARIANT_BOOL * pbRegister);
    HRESULT (STDMETHODCALLTYPE * put_RegisterAsBrowser) (IWebBrowser2*, VARIANT_BOOL bRegister);
    HRESULT (STDMETHODCALLTYPE * get_RegisterAsDropTarget) (IWebBrowser2*, VARIANT_BOOL * pbRegister);
    HRESULT (STDMETHODCALLTYPE * put_RegisterAsDropTarget) (IWebBrowser2*, VARIANT_BOOL bRegister);
    HRESULT (STDMETHODCALLTYPE * get_TheaterMode) (IWebBrowser2*, VARIANT_BOOL * pbRegister);
    HRESULT (STDMETHODCALLTYPE * put_TheaterMode) (IWebBrowser2*, VARIANT_BOOL bRegister);
    HRESULT (STDMETHODCALLTYPE * get_AddressBar) (IWebBrowser2*, VARIANT_BOOL * Value);
    HRESULT (STDMETHODCALLTYPE * put_AddressBar) (IWebBrowser2*, VARIANT_BOOL Value);
    HRESULT (STDMETHODCALLTYPE * get_Resizable) (IWebBrowser2*, VARIANT_BOOL * Value);
    HRESULT (STDMETHODCALLTYPE * put_Resizable) (IWebBrowser2*, VARIANT_BOOL Value);
    END_INTERFACE
} IWebBrowser2Vtbl;

interface IWebBrowser2 {
    CONST_VTBL struct IWebBrowser2Vtbl *lpVtbl;
};

#ifdef COBJMACROS
#define IWebBrowser2_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IWebBrowser2_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define IWebBrowser2_Release(This)  (This)->lpVtbl->Release(This)
#define IWebBrowser2_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IWebBrowser2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IWebBrowser2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IWebBrowser2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IWebBrowser2_GoBack(This)  (This)->lpVtbl->GoBack(This)
#define IWebBrowser2_GoForward(This)  (This)->lpVtbl->GoForward(This)
#define IWebBrowser2_GoHome(This)  (This)->lpVtbl->GoHome(This)
#define IWebBrowser2_GoSearch(This)  (This)->lpVtbl->GoSearch(This)
#define IWebBrowser2_Navigate(This,URL,Flags,TargetFrameName,PostData,Headers)  (This)->lpVtbl->Navigate(This,URL,Flags,TargetFrameName,PostData,Headers)
#define IWebBrowser2_Refresh(This)  (This)->lpVtbl->Refresh(This)
#define IWebBrowser2_Refresh2(This,Level)  (This)->lpVtbl->Refresh2(This,Level)
#define IWebBrowser2_Stop(This)  (This)->lpVtbl->Stop(This)
#define IWebBrowser2_get_Application(This,ppDisp)  (This)->lpVtbl->get_Application(This,ppDisp)
#define IWebBrowser2_get_Parent(This,ppDisp)  (This)->lpVtbl->get_Parent(This,ppDisp)
#define IWebBrowser2_get_Container(This,ppDisp)  (This)->lpVtbl->get_Container(This,ppDisp)
#define IWebBrowser2_get_Document(This,ppDisp)  (This)->lpVtbl->get_Document(This,ppDisp)
#define IWebBrowser2_get_TopLevelContainer(This,pBool)  (This)->lpVtbl->get_TopLevelContainer(This,pBool)
#define IWebBrowser2_get_Type(This,Type)  (This)->lpVtbl->get_Type(This,Type)
#define IWebBrowser2_get_Left(This,pl)  (This)->lpVtbl->get_Left(This,pl)
#define IWebBrowser2_put_Left(This,Left)  (This)->lpVtbl->put_Left(This,Left)
#define IWebBrowser2_get_Top(This,pl)  (This)->lpVtbl->get_Top(This,pl)
#define IWebBrowser2_put_Top(This,Top)  (This)->lpVtbl->put_Top(This,Top)
#define IWebBrowser2_get_Width(This,pl)  (This)->lpVtbl->get_Width(This,pl)
#define IWebBrowser2_put_Width(This,Width)  (This)->lpVtbl->put_Width(This,Width)
#define IWebBrowser2_get_Height(This,pl)  (This)->lpVtbl->get_Height(This,pl)
#define IWebBrowser2_put_Height(This,Height)  (This)->lpVtbl->put_Height(This,Height)
#define IWebBrowser2_get_LocationName(This,LocationName)  (This)->lpVtbl->get_LocationName(This,LocationName)
#define IWebBrowser2_get_LocationURL(This,LocationURL)  (This)->lpVtbl->get_LocationURL(This,LocationURL)
#define IWebBrowser2_get_Busy(This,pBool)  (This)->lpVtbl->get_Busy(This,pBool)
#define IWebBrowser2_Quit(This)  (This)->lpVtbl->Quit(This)
#define IWebBrowser2_ClientToWindow(This,pcx,pcy)  (This)->lpVtbl->ClientToWindow(This,pcx,pcy)
#define IWebBrowser2_PutProperty(This,Property,vtValue)  (This)->lpVtbl->PutProperty(This,Property,vtValue)
#define IWebBrowser2_GetProperty(This,Property,pvtValue)  (This)->lpVtbl->GetProperty(This,Property,pvtValue)
#define IWebBrowser2_get_Name(This,Name)  (This)->lpVtbl->get_Name(This,Name)
#define IWebBrowser2_get_HWND(This,pHWND)  (This)->lpVtbl->get_HWND(This,pHWND)
#define IWebBrowser2_get_FullName(This,FullName)  (This)->lpVtbl->get_FullName(This,FullName)
#define IWebBrowser2_get_Path(This,Path)  (This)->lpVtbl->get_Path(This,Path)
#define IWebBrowser2_get_Visible(This,pBool)  (This)->lpVtbl->get_Visible(This,pBool)
#define IWebBrowser2_put_Visible(This,Value)  (This)->lpVtbl->put_Visible(This,Value)
#define IWebBrowser2_get_StatusBar(This,pBool)  (This)->lpVtbl->get_StatusBar(This,pBool)
#define IWebBrowser2_put_StatusBar(This,Value)  (This)->lpVtbl->put_StatusBar(This,Value)
#define IWebBrowser2_get_StatusText(This,StatusText)  (This)->lpVtbl->get_StatusText(This,StatusText)
#define IWebBrowser2_put_StatusText(This,StatusText)  (This)->lpVtbl->put_StatusText(This,StatusText)
#define IWebBrowser2_get_ToolBar(This,Value)  (This)->lpVtbl->get_ToolBar(This,Value)
#define IWebBrowser2_put_ToolBar(This,Value)  (This)->lpVtbl->put_ToolBar(This,Value)
#define IWebBrowser2_get_MenuBar(This,Value)  (This)->lpVtbl->get_MenuBar(This,Value)
#define IWebBrowser2_put_MenuBar(This,Value)  (This)->lpVtbl->put_MenuBar(This,Value)
#define IWebBrowser2_get_FullScreen(This,pbFullScreen)  (This)->lpVtbl->get_FullScreen(This,pbFullScreen)
#define IWebBrowser2_put_FullScreen(This,bFullScreen)  (This)->lpVtbl->put_FullScreen(This,bFullScreen)
#define IWebBrowser2_Navigate2(This,URL,Flags,TargetFrameName,PostData,Headers)  (This)->lpVtbl->Navigate2(This,URL,Flags,TargetFrameName,PostData,Headers)
#define IWebBrowser2_QueryStatusWB(This,cmdID,pcmdf)  (This)->lpVtbl->QueryStatusWB(This,cmdID,pcmdf)
#define IWebBrowser2_ExecWB(This,cmdID,cmdexecopt,pvaIn,pvaOut)  (This)->lpVtbl->ExecWB(This,cmdID,cmdexecopt,pvaIn,pvaOut)
#define IWebBrowser2_ShowBrowserBar(This,pvaClsid,pvarShow,pvarSize)  (This)->lpVtbl->ShowBrowserBar(This,pvaClsid,pvarShow,pvarSize)
#define IWebBrowser2_get_ReadyState(This,plReadyState)  (This)->lpVtbl->get_ReadyState(This,plReadyState)
#define IWebBrowser2_get_Offline(This,pbOffline)  (This)->lpVtbl->get_Offline(This,pbOffline)
#define IWebBrowser2_put_Offline(This,bOffline)  (This)->lpVtbl->put_Offline(This,bOffline)
#define IWebBrowser2_get_Silent(This,pbSilent)  (This)->lpVtbl->get_Silent(This,pbSilent)
#define IWebBrowser2_put_Silent(This,bSilent)  (This)->lpVtbl->put_Silent(This,bSilent)
#define IWebBrowser2_get_RegisterAsBrowser(This,pbRegister)  (This)->lpVtbl->get_RegisterAsBrowser(This,pbRegister)
#define IWebBrowser2_put_RegisterAsBrowser(This,bRegister)  (This)->lpVtbl->put_RegisterAsBrowser(This,bRegister)
#define IWebBrowser2_get_RegisterAsDropTarget(This,pbRegister)  (This)->lpVtbl->get_RegisterAsDropTarget(This,pbRegister)
#define IWebBrowser2_put_RegisterAsDropTarget(This,bRegister)  (This)->lpVtbl->put_RegisterAsDropTarget(This,bRegister)
#define IWebBrowser2_get_TheaterMode(This,pbRegister)  (This)->lpVtbl->get_TheaterMode(This,pbRegister)
#define IWebBrowser2_put_TheaterMode(This,bRegister)  (This)->lpVtbl->put_TheaterMode(This,bRegister)
#define IWebBrowser2_get_AddressBar(This,Value)  (This)->lpVtbl->get_AddressBar(This,Value)
#define IWebBrowser2_put_AddressBar(This,Value)  (This)->lpVtbl->put_AddressBar(This,Value)
#define IWebBrowser2_get_Resizable(This,Value)  (This)->lpVtbl->get_Resizable(This,Value)
#define IWebBrowser2_put_Resizable(This,Value)  (This)->lpVtbl->put_Resizable(This,Value)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE IWebBrowser2_Navigate2_Proxy(IWebBrowser2*, VARIANT * URL, VARIANT * Flags, VARIANT * TargetFrameName, VARIANT * PostData, VARIANT * Headers);
void __RPC_STUB IWebBrowser2_Navigate2_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_QueryStatusWB_Proxy(IWebBrowser2*, OLECMDID cmdID, OLECMDF * pcmdf);
void __RPC_STUB IWebBrowser2_QueryStatusWB_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_ExecWB_Proxy(IWebBrowser2*, OLECMDID cmdID, OLECMDEXECOPT cmdexecopt, VARIANT * pvaIn, VARIANT * pvaOut);
void __RPC_STUB IWebBrowser2_ExecWB_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_ShowBrowserBar_Proxy(IWebBrowser2*, VARIANT * pvaClsid, VARIANT * pvarShow, VARIANT * pvarSize);
void __RPC_STUB IWebBrowser2_ShowBrowserBar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_get_ReadyState_Proxy(IWebBrowser2*, READYSTATE * plReadyState);
void __RPC_STUB IWebBrowser2_get_ReadyState_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_get_Offline_Proxy(IWebBrowser2*, VARIANT_BOOL * pbOffline);
void __RPC_STUB IWebBrowser2_get_Offline_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_put_Offline_Proxy(IWebBrowser2*, VARIANT_BOOL bOffline);
void __RPC_STUB IWebBrowser2_put_Offline_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_get_Silent_Proxy(IWebBrowser2*, VARIANT_BOOL * pbSilent);
void __RPC_STUB IWebBrowser2_get_Silent_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_put_Silent_Proxy(IWebBrowser2*, VARIANT_BOOL bSilent);
void __RPC_STUB IWebBrowser2_put_Silent_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_get_RegisterAsBrowser_Proxy(IWebBrowser2*, VARIANT_BOOL * pbRegister);
void __RPC_STUB IWebBrowser2_get_RegisterAsBrowser_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_put_RegisterAsBrowser_Proxy(IWebBrowser2*, VARIANT_BOOL bRegister);
void __RPC_STUB IWebBrowser2_put_RegisterAsBrowser_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_get_RegisterAsDropTarget_Proxy(IWebBrowser2*, VARIANT_BOOL * pbRegister);
void __RPC_STUB IWebBrowser2_get_RegisterAsDropTarget_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_put_RegisterAsDropTarget_Proxy(IWebBrowser2*, VARIANT_BOOL bRegister);
void __RPC_STUB IWebBrowser2_put_RegisterAsDropTarget_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_get_TheaterMode_Proxy(IWebBrowser2*, VARIANT_BOOL * pbRegister);
void __RPC_STUB IWebBrowser2_get_TheaterMode_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_put_TheaterMode_Proxy(IWebBrowser2*, VARIANT_BOOL bRegister);
void __RPC_STUB IWebBrowser2_put_TheaterMode_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_get_AddressBar_Proxy(IWebBrowser2*, VARIANT_BOOL * Value);
void __RPC_STUB IWebBrowser2_get_AddressBar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_put_AddressBar_Proxy(IWebBrowser2*, VARIANT_BOOL Value);
void __RPC_STUB IWebBrowser2_put_AddressBar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_get_Resizable_Proxy(IWebBrowser2*, VARIANT_BOOL * Value);
void __RPC_STUB IWebBrowser2_get_Resizable_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IWebBrowser2_put_Resizable_Proxy(IWebBrowser2*, VARIANT_BOOL Value);
void __RPC_STUB IWebBrowser2_put_Resizable_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
#endif /* __IWebBrowser2_INTERFACE_DEFINED__ */

#ifndef __DWebBrowserEvents2_DISPINTERFACE_DEFINED__
#define __DWebBrowserEvents2_DISPINTERFACE_DEFINED__

EXTERN_C const IID DIID_DWebBrowserEvents2;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("34A715A0-6587-11D0-924A-0020AFC7AC4D")
DWebBrowserEvents2:public IDispatch {
};
#else /* C style interface */
typedef struct DWebBrowserEvents2Vtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (DWebBrowserEvents2*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (DWebBrowserEvents2*);
    ULONG (STDMETHODCALLTYPE * Release) (DWebBrowserEvents2*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (DWebBrowserEvents2*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (DWebBrowserEvents2*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (DWebBrowserEvents2*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (DWebBrowserEvents2*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    END_INTERFACE
} DWebBrowserEvents2Vtbl;

interface DWebBrowserEvents2 {
    CONST_VTBL struct DWebBrowserEvents2Vtbl *lpVtbl;
};

#ifdef COBJMACROS
#define DWebBrowserEvents2_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DWebBrowserEvents2_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define DWebBrowserEvents2_Release(This)  (This)->lpVtbl->Release(This)
#define DWebBrowserEvents2_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DWebBrowserEvents2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DWebBrowserEvents2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DWebBrowserEvents2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif /* COBJMACROS */
#endif /* C style interface */

#endif /* __DWebBrowserEvents2_DISPINTERFACE_DEFINED__ */

EXTERN_C const CLSID CLSID_WebBrowser_V1;

#ifdef __cplusplus
class DECLSPEC_UUID("EAB22AC3-30C1-11CF-A7EB-0000C05BAE0B") WebBrowser_V1;
#endif

EXTERN_C const CLSID CLSID_WebBrowser;

#ifdef __cplusplus
class DECLSPEC_UUID("8856F961-340A-11D0-A96B-00C04FD705A2") WebBrowser;
#endif

EXTERN_C const CLSID CLSID_InternetExplorer;

#ifdef __cplusplus
class DECLSPEC_UUID("0002DF01-0000-0000-C000-000000000046") InternetExplorer;
#endif

EXTERN_C const CLSID CLSID_ShellBrowserWindow;

#ifdef __cplusplus
class DECLSPEC_UUID("c08afd90-f2a1-11d1-8455-00a0c91f3880") ShellBrowserWindow;
#endif

#ifndef __DShellWindowsEvents_DISPINTERFACE_DEFINED__
#define __DShellWindowsEvents_DISPINTERFACE_DEFINED__

EXTERN_C const IID DIID_DShellWindowsEvents;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("fe4106e0-399a-11d0-a48c-00a0c90a8f39")
DShellWindowsEvents:public IDispatch {
};
#else /* C style interface */
typedef struct DShellWindowsEventsVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (DShellWindowsEvents*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (DShellWindowsEvents*);
    ULONG (STDMETHODCALLTYPE * Release) (DShellWindowsEvents*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (DShellWindowsEvents*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (DShellWindowsEvents*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (DShellWindowsEvents*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (DShellWindowsEvents*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    END_INTERFACE
} DShellWindowsEventsVtbl;

interface DShellWindowsEvents {
    CONST_VTBL struct DShellWindowsEventsVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define DShellWindowsEvents_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define DShellWindowsEvents_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define DShellWindowsEvents_Release(This)  (This)->lpVtbl->Release(This)
#define DShellWindowsEvents_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define DShellWindowsEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define DShellWindowsEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define DShellWindowsEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif /* COBJMACROS */
#endif /* C style interface */

#endif /* __DShellWindowsEvents_DISPINTERFACE_DEFINED__ */

#ifndef __IShellWindows_INTERFACE_DEFINED__
#define __IShellWindows_INTERFACE_DEFINED__

EXTERN_C const IID IID_IShellWindows;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("85CB6900-4D95-11CF-960C-0080C7F4EE85")
IShellWindows:public IDispatch {
    public:
    virtual HRESULT STDMETHODCALLTYPE get_Count(long *Count) = 0;
    virtual HRESULT STDMETHODCALLTYPE Item(VARIANT index, IDispatch ** Folder) = 0;
    virtual HRESULT STDMETHODCALLTYPE _NewEnum(IUnknown ** ppunk) = 0;
    virtual HRESULT STDMETHODCALLTYPE Register(IDispatch * pid, long hwnd, int swClass, long *plCookie) = 0;
    virtual HRESULT STDMETHODCALLTYPE RegisterPending(long lThreadId, VARIANT * pvarloc, VARIANT * pvarlocRoot, int swClass, long *plCookie) = 0;
    virtual HRESULT STDMETHODCALLTYPE Revoke(long lCookie) = 0;
    virtual HRESULT STDMETHODCALLTYPE OnNavigate(long lCookie, VARIANT * pvarLoc) = 0;
    virtual HRESULT STDMETHODCALLTYPE OnActivated(long lCookie, VARIANT_BOOL fActive) = 0;
    virtual HRESULT STDMETHODCALLTYPE FindWindow(VARIANT * pvarLoc, VARIANT * pvarLocRoot, int swClass, long *phwnd, int swfwOptions,IDispatch**Out) = 0;
    virtual HRESULT STDMETHODCALLTYPE OnCreated(long lCookie, IUnknown * punk) = 0;
    virtual HRESULT STDMETHODCALLTYPE ProcessAttachDetach(VARIANT_BOOL fAttach) = 0;
};
#else /* C style interface */
typedef struct IShellWindowsVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (IShellWindows*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (IShellWindows*);
    ULONG (STDMETHODCALLTYPE * Release) (IShellWindows*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (IShellWindows*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (IShellWindows*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (IShellWindows*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (IShellWindows*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE * get_Count) (IShellWindows*, long *Count);
    HRESULT (STDMETHODCALLTYPE * Item) (IShellWindows*, VARIANT index, IDispatch ** Folder);
    HRESULT (STDMETHODCALLTYPE * _NewEnum) (IShellWindows*, IUnknown ** ppunk);
    HRESULT (STDMETHODCALLTYPE * Register) (IShellWindows*, IDispatch * pid, long hwnd, int swClass, long *plCookie);
    HRESULT (STDMETHODCALLTYPE * RegisterPending) (IShellWindows*, long lThreadId, VARIANT * pvarloc, VARIANT * pvarlocRoot, int swClass, long *plCookie);
    HRESULT (STDMETHODCALLTYPE * Revoke) (IShellWindows*, long lCookie);
    HRESULT (STDMETHODCALLTYPE * OnNavigate) (IShellWindows*, long lCookie, VARIANT * pvarLoc);
    HRESULT (STDMETHODCALLTYPE * OnActivated) (IShellWindows*, long lCookie, VARIANT_BOOL fActive);
    HRESULT (STDMETHODCALLTYPE * FindWindow) (IShellWindows*, VARIANT * pvarLoc, VARIANT * pvarLocRoot, int swClass, long *phwnd, int swfwOptions,IDispatch**Out);
    HRESULT (STDMETHODCALLTYPE * OnCreated) (IShellWindows*, long lCookie, IUnknown * punk);
    HRESULT (STDMETHODCALLTYPE * ProcessAttachDetach) (IShellWindows*, VARIANT_BOOL fAttach);
    END_INTERFACE
} IShellWindowsVtbl;

interface IShellWindows {
    CONST_VTBL struct IShellWindowsVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define IShellWindows_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IShellWindows_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define IShellWindows_Release(This)  (This)->lpVtbl->Release(This)
#define IShellWindows_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IShellWindows_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IShellWindows_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IShellWindows_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IShellWindows_get_Count(This,Count)  (This)->lpVtbl->get_Count(This,Count)
#define IShellWindows_Item(This,index,Folder)  (This)->lpVtbl->Item(This,index,Folder)
#define IShellWindows__NewEnum(This,ppunk)  (This)->lpVtbl->_NewEnum(This,ppunk)
#define IShellWindows_Register(This,pid,hwnd,swClass,plCookie)  (This)->lpVtbl->Register(This,pid,hwnd,swClass,plCookie)
#define IShellWindows_RegisterPending(This,lThreadId,pvarloc,pvarlocRoot,swClass,plCookie)  (This)->lpVtbl->RegisterPending(This,lThreadId,pvarloc,pvarlocRoot,swClass,plCookie)
#define IShellWindows_Revoke(This,lCookie)  (This)->lpVtbl->Revoke(This,lCookie)
#define IShellWindows_OnNavigate(This,lCookie,pvarLoc)  (This)->lpVtbl->OnNavigate(This,lCookie,pvarLoc)
#define IShellWindows_OnActivated(This,lCookie,fActive)  (This)->lpVtbl->OnActivated(This,lCookie,fActive)
#define IShellWindows_FindWindow(This,pvarLoc,pvarLocRoot,swClass,phwnd,swfwOptions,ppdispOut)  (This)->lpVtbl->FindWindow(This,pvarLoc,pvarLocRoot,swClass,phwnd,swfwOptions,ppdispOut)
#define IShellWindows_OnCreated(This,lCookie,punk)  (This)->lpVtbl->OnCreated(This,lCookie,punk)
#define IShellWindows_ProcessAttachDetach(This,fAttach)  (This)->lpVtbl->ProcessAttachDetach(This,fAttach)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE IShellWindows_get_Count_Proxy(IShellWindows*, long *Count);
void __RPC_STUB IShellWindows_get_Count_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows_Item_Proxy(IShellWindows*, VARIANT index, IDispatch ** Folder);
void __RPC_STUB IShellWindows_Item_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows__NewEnum_Proxy(IShellWindows*, IUnknown ** ppunk);
void __RPC_STUB IShellWindows__NewEnum_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows_Register_Proxy(IShellWindows*, IDispatch * pid, long hwnd, int swClass, long *plCookie);
void __RPC_STUB IShellWindows_Register_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows_RegisterPending_Proxy(IShellWindows*, long lThreadId, VARIANT * pvarloc, VARIANT * pvarlocRoot, int swClass, long *plCookie);
void __RPC_STUB IShellWindows_RegisterPending_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows_Revoke_Proxy(IShellWindows*, long lCookie);
void __RPC_STUB IShellWindows_Revoke_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows_OnNavigate_Proxy(IShellWindows*, long lCookie, VARIANT * pvarLoc);
void __RPC_STUB IShellWindows_OnNavigate_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows_OnActivated_Proxy(IShellWindows*, long lCookie, VARIANT_BOOL fActive);
void __RPC_STUB IShellWindows_OnActivated_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows_FindWindow_Proxy(IShellWindows*, VARIANT * pvarLoc, VARIANT * pvarLocRoot, int swClass, long *phwnd, int swfwOptions,IDispatch**);
void __RPC_STUB IShellWindows_FindWindow_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows_OnCreated_Proxy(IShellWindows*, long lCookie, IUnknown * punk);
void __RPC_STUB IShellWindows_OnCreated_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellWindows_ProcessAttachDetach_Proxy(IShellWindows*, VARIANT_BOOL fAttach);
void __RPC_STUB IShellWindows_ProcessAttachDetach_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
#endif /* __IShellWindows_INTERFACE_DEFINED__ */

EXTERN_C const CLSID CLSID_ShellWindows;

#ifdef __cplusplus
class DECLSPEC_UUID("9BA05972-F6A8-11CF-A442-00A0C90A8F39") ShellWindows;
#endif

#ifndef __IShellUIHelper_INTERFACE_DEFINED__
#define __IShellUIHelper_INTERFACE_DEFINED__

EXTERN_C const IID IID_IShellUIHelper;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("729FE2F8-1EA8-11d1-8F85-00C04FC2FBE1")
IShellUIHelper:public IDispatch {
    public:
    virtual HRESULT STDMETHODCALLTYPE ResetFirstBootMode(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE ResetSafeMode(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE RefreshOfflineDesktop(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE AddFavorite(BSTR URL, VARIANT * Title) = 0;
    virtual HRESULT STDMETHODCALLTYPE AddChannel(BSTR URL) = 0;
    virtual HRESULT STDMETHODCALLTYPE AddDesktopComponent(BSTR URL, BSTR Type, VARIANT * Left, VARIANT * Top, VARIANT * Width, VARIANT * Height) = 0;
    virtual HRESULT STDMETHODCALLTYPE IsSubscribed(BSTR URL,VARIANT_BOOL*) = 0;
    virtual HRESULT STDMETHODCALLTYPE NavigateAndFind(BSTR URL, BSTR strQuery, VARIANT * varTargetFrame) = 0;
    virtual HRESULT STDMETHODCALLTYPE ImportExportFavorites(VARIANT_BOOL fImport, BSTR strImpExpPath) = 0;
    virtual HRESULT STDMETHODCALLTYPE AutoCompleteSaveForm(VARIANT * Form) = 0;
    virtual HRESULT STDMETHODCALLTYPE AutoScan(BSTR strSearch, BSTR strFailureUrl, VARIANT * pvarTargetFrame) = 0;
    virtual HRESULT STDMETHODCALLTYPE AutoCompleteAttach(VARIANT * Reserved) = 0;
    virtual HRESULT STDMETHODCALLTYPE ShowBrowserUI(BSTR bstrName, VARIANT * pvarIn, VARIANT * pvarOut) = 0;
};
#else /* C style interface */
typedef struct IShellUIHelperVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (IShellUIHelper*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (IShellUIHelper*);
    ULONG (STDMETHODCALLTYPE * Release) (IShellUIHelper*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (IShellUIHelper*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (IShellUIHelper*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (IShellUIHelper*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (IShellUIHelper*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE * ResetFirstBootMode) (IShellUIHelper*);
    HRESULT (STDMETHODCALLTYPE * ResetSafeMode) (IShellUIHelper*);
    HRESULT (STDMETHODCALLTYPE * RefreshOfflineDesktop) (IShellUIHelper*);
    HRESULT (STDMETHODCALLTYPE * AddFavorite) (IShellUIHelper*, BSTR URL, VARIANT * Title);
    HRESULT (STDMETHODCALLTYPE * AddChannel) (IShellUIHelper*, BSTR URL);
    HRESULT (STDMETHODCALLTYPE * AddDesktopComponent) (IShellUIHelper*, BSTR URL, BSTR Type, VARIANT * Left, VARIANT * Top, VARIANT * Width, VARIANT * Height);
    HRESULT (STDMETHODCALLTYPE * IsSubscribed) (IShellUIHelper*, BSTR URL,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * NavigateAndFind) (IShellUIHelper*, BSTR URL, BSTR strQuery, VARIANT * varTargetFrame);
    HRESULT (STDMETHODCALLTYPE * ImportExportFavorites) (IShellUIHelper*, VARIANT_BOOL fImport, BSTR strImpExpPath);
    HRESULT (STDMETHODCALLTYPE * AutoCompleteSaveForm) (IShellUIHelper*, VARIANT * Form);
    HRESULT (STDMETHODCALLTYPE * AutoScan) (IShellUIHelper*, BSTR strSearch, BSTR strFailureUrl, VARIANT * pvarTargetFrame);
    HRESULT (STDMETHODCALLTYPE * AutoCompleteAttach) (IShellUIHelper*, VARIANT * Reserved);
    HRESULT (STDMETHODCALLTYPE * ShowBrowserUI) (IShellUIHelper*,BSTR, VARIANT * pvarIn, VARIANT * pvarOut);
    END_INTERFACE
} IShellUIHelperVtbl;

interface IShellUIHelper {
    CONST_VTBL struct IShellUIHelperVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define IShellUIHelper_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IShellUIHelper_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define IShellUIHelper_Release(This)  (This)->lpVtbl->Release(This)
#define IShellUIHelper_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IShellUIHelper_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IShellUIHelper_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IShellUIHelper_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IShellUIHelper_ResetFirstBootMode(This)  (This)->lpVtbl->ResetFirstBootMode(This)
#define IShellUIHelper_ResetSafeMode(This)  (This)->lpVtbl->ResetSafeMode(This)
#define IShellUIHelper_RefreshOfflineDesktop(This)  (This)->lpVtbl->RefreshOfflineDesktop(This)
#define IShellUIHelper_AddFavorite(This,URL,Title)  (This)->lpVtbl->AddFavorite(This,URL,Title)
#define IShellUIHelper_AddChannel(This,URL)  (This)->lpVtbl->AddChannel(This,URL)
#define IShellUIHelper_AddDesktopComponent(This,URL,Type,Left,Top,Width,Height)  (This)->lpVtbl->AddDesktopComponent(This,URL,Type,Left,Top,Width,Height)
#define IShellUIHelper_IsSubscribed(This,URL,pBool)  (This)->lpVtbl->IsSubscribed(This,URL,pBool)
#define IShellUIHelper_NavigateAndFind(This,URL,strQuery,varTargetFrame)  (This)->lpVtbl->NavigateAndFind(This,URL,strQuery,varTargetFrame)
#define IShellUIHelper_ImportExportFavorites(This,fImport,strImpExpPath)  (This)->lpVtbl->ImportExportFavorites(This,fImport,strImpExpPath)
#define IShellUIHelper_AutoCompleteSaveForm(This,Form)  (This)->lpVtbl->AutoCompleteSaveForm(This,Form)
#define IShellUIHelper_AutoScan(This,strSearch,strFailureUrl,pvarTargetFrame)  (This)->lpVtbl->AutoScan(This,strSearch,strFailureUrl,pvarTargetFrame)
#define IShellUIHelper_AutoCompleteAttach(This,Reserved)  (This)->lpVtbl->AutoCompleteAttach(This,Reserved)
#define IShellUIHelper_ShowBrowserUI(This,bstrName,pvarIn,pvarOut)  (This)->lpVtbl->ShowBrowserUI(This,bstrName,pvarIn,pvarOut)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE IShellUIHelper_ResetFirstBootMode_Proxy(IShellUIHelper*);
void __RPC_STUB IShellUIHelper_ResetFirstBootMode_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_ResetSafeMode_Proxy(IShellUIHelper*);
void __RPC_STUB IShellUIHelper_ResetSafeMode_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_RefreshOfflineDesktop_Proxy(IShellUIHelper*);
void __RPC_STUB IShellUIHelper_RefreshOfflineDesktop_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_AddFavorite_Proxy(IShellUIHelper*, BSTR URL, VARIANT * Title);
void __RPC_STUB IShellUIHelper_AddFavorite_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_AddChannel_Proxy(IShellUIHelper*, BSTR URL);
void __RPC_STUB IShellUIHelper_AddChannel_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_AddDesktopComponent_Proxy(IShellUIHelper*, BSTR URL, BSTR Type, VARIANT * Left, VARIANT * Top, VARIANT * Width, VARIANT * Height);
void __RPC_STUB IShellUIHelper_AddDesktopComponent_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_IsSubscribed_Proxy(IShellUIHelper*, BSTR URL,VARIANT_BOOL*);
void __RPC_STUB IShellUIHelper_IsSubscribed_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_NavigateAndFind_Proxy(IShellUIHelper*, BSTR URL, BSTR strQuery, VARIANT * varTargetFrame);
void __RPC_STUB IShellUIHelper_NavigateAndFind_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_ImportExportFavorites_Proxy(IShellUIHelper*, VARIANT_BOOL fImport, BSTR strImpExpPath);
void __RPC_STUB IShellUIHelper_ImportExportFavorites_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_AutoCompleteSaveForm_Proxy(IShellUIHelper*, VARIANT * Form);
void __RPC_STUB IShellUIHelper_AutoCompleteSaveForm_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_AutoScan_Proxy(IShellUIHelper*, BSTR strSearch, BSTR strFailureUrl, VARIANT * pvarTargetFrame);
void __RPC_STUB IShellUIHelper_AutoScan_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_AutoCompleteAttach_Proxy(IShellUIHelper*, VARIANT * Reserved);
void __RPC_STUB IShellUIHelper_AutoCompleteAttach_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellUIHelper_ShowBrowserUI_Proxy(IShellUIHelper*,BSTR, VARIANT * pvarIn, VARIANT * pvarOut);
void __RPC_STUB IShellUIHelper_ShowBrowserUI_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);

#endif /* __IShellUIHelper_INTERFACE_DEFINED__ */

EXTERN_C const CLSID CLSID_ShellUIHelper;

#ifdef __cplusplus
class DECLSPEC_UUID("64AB4BB7-111E-11d1-8F79-00C04FC2FBE1") ShellUIHelper;
#endif

#ifndef ___ShellFavoritesNameSpaceEvents_DISPINTERFACE_DEFINED__
#define ___ShellFavoritesNameSpaceEvents_DISPINTERFACE_DEFINED__

EXTERN_C const IID DIID__ShellFavoritesNameSpaceEvents;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("55136806-B2DE-11D1-B9F2-00A0C98BC547")
_ShellFavoritesNameSpaceEvents:public IDispatch {
};
#else /* C style interface */
typedef struct _ShellFavoritesNameSpaceEventsVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (_ShellFavoritesNameSpaceEvents*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (_ShellFavoritesNameSpaceEvents*);
    ULONG (STDMETHODCALLTYPE * Release) (_ShellFavoritesNameSpaceEvents*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (_ShellFavoritesNameSpaceEvents*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (_ShellFavoritesNameSpaceEvents*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (_ShellFavoritesNameSpaceEvents*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (_ShellFavoritesNameSpaceEvents*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    END_INTERFACE
} _ShellFavoritesNameSpaceEventsVtbl;

interface _ShellFavoritesNameSpaceEvents {
    CONST_VTBL struct _ShellFavoritesNameSpaceEventsVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define _ShellFavoritesNameSpaceEvents_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define _ShellFavoritesNameSpaceEvents_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define _ShellFavoritesNameSpaceEvents_Release(This)  (This)->lpVtbl->Release(This)
#define _ShellFavoritesNameSpaceEvents_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define _ShellFavoritesNameSpaceEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define _ShellFavoritesNameSpaceEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define _ShellFavoritesNameSpaceEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif /* COBJMACROS */
#endif /* C style interface */

#endif /* ___ShellFavoritesNameSpaceEvents_DISPINTERFACE_DEFINED__ */

#ifndef __IShellFavoritesNameSpace_INTERFACE_DEFINED__
#define __IShellFavoritesNameSpace_INTERFACE_DEFINED__

EXTERN_C const IID IID_IShellFavoritesNameSpace;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("55136804-B2DE-11D1-B9F2-00A0C98BC547")
IShellFavoritesNameSpace:public IDispatch {
    public:
    virtual HRESULT STDMETHODCALLTYPE MoveSelectionUp(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE MoveSelectionDown(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE ResetSort(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE NewFolder(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE Synchronize(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE Import(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE Export(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE InvokeContextMenuCommand(BSTR strCommand) = 0;
    virtual HRESULT STDMETHODCALLTYPE MoveSelectionTo(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_FOfflinePackInstalled(VARIANT_BOOL * pBool) = 0;
    virtual HRESULT STDMETHODCALLTYPE CreateSubscriptionForSelection(VARIANT_BOOL * pBool) = 0;
    virtual HRESULT STDMETHODCALLTYPE DeleteSubscriptionForSelection(VARIANT_BOOL * pBool) = 0;
    virtual HRESULT STDMETHODCALLTYPE SetRoot(BSTR bstrFullPath) = 0;
};
#else /* C style interface */
typedef struct IShellFavoritesNameSpaceVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (IShellFavoritesNameSpace*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (IShellFavoritesNameSpace*);
    ULONG (STDMETHODCALLTYPE * Release) (IShellFavoritesNameSpace*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (IShellFavoritesNameSpace*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (IShellFavoritesNameSpace*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (IShellFavoritesNameSpace*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (IShellFavoritesNameSpace*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE * MoveSelectionUp) (IShellFavoritesNameSpace*);
    HRESULT (STDMETHODCALLTYPE * MoveSelectionDown) (IShellFavoritesNameSpace*);
    HRESULT (STDMETHODCALLTYPE * ResetSort) (IShellFavoritesNameSpace*);
    HRESULT (STDMETHODCALLTYPE * NewFolder) (IShellFavoritesNameSpace*);
    HRESULT (STDMETHODCALLTYPE * Synchronize) (IShellFavoritesNameSpace*);
    HRESULT (STDMETHODCALLTYPE * Import) (IShellFavoritesNameSpace*);
    HRESULT (STDMETHODCALLTYPE * Export) (IShellFavoritesNameSpace*);
    HRESULT (STDMETHODCALLTYPE * InvokeContextMenuCommand) (IShellFavoritesNameSpace*, BSTR strCommand);
    HRESULT (STDMETHODCALLTYPE * MoveSelectionTo) (IShellFavoritesNameSpace*);
    HRESULT (STDMETHODCALLTYPE * get_FOfflinePackInstalled) (IShellFavoritesNameSpace*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * CreateSubscriptionForSelection) (IShellFavoritesNameSpace*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * DeleteSubscriptionForSelection) (IShellFavoritesNameSpace*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * SetRoot) (IShellFavoritesNameSpace*, BSTR bstrFullPath);
    END_INTERFACE
} IShellFavoritesNameSpaceVtbl;

interface IShellFavoritesNameSpace {
    CONST_VTBL struct IShellFavoritesNameSpaceVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define IShellFavoritesNameSpace_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IShellFavoritesNameSpace_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define IShellFavoritesNameSpace_Release(This)  (This)->lpVtbl->Release(This)
#define IShellFavoritesNameSpace_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IShellFavoritesNameSpace_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IShellFavoritesNameSpace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IShellFavoritesNameSpace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IShellFavoritesNameSpace_MoveSelectionUp(This)  (This)->lpVtbl->MoveSelectionUp(This)
#define IShellFavoritesNameSpace_MoveSelectionDown(This)  (This)->lpVtbl->MoveSelectionDown(This)
#define IShellFavoritesNameSpace_ResetSort(This)  (This)->lpVtbl->ResetSort(This)
#define IShellFavoritesNameSpace_NewFolder(This)  (This)->lpVtbl->NewFolder(This)
#define IShellFavoritesNameSpace_Synchronize(This)  (This)->lpVtbl->Synchronize(This)
#define IShellFavoritesNameSpace_Import(This)  (This)->lpVtbl->Import(This)
#define IShellFavoritesNameSpace_Export(This)  (This)->lpVtbl->Export(This)
#define IShellFavoritesNameSpace_InvokeContextMenuCommand(This,strCommand)  (This)->lpVtbl->InvokeContextMenuCommand(This,strCommand)
#define IShellFavoritesNameSpace_MoveSelectionTo(This)  (This)->lpVtbl->MoveSelectionTo(This)
#define IShellFavoritesNameSpace_get_FOfflinePackInstalled(This,pBool)  (This)->lpVtbl->get_FOfflinePackInstalled(This,pBool)
#define IShellFavoritesNameSpace_CreateSubscriptionForSelection(This,pBool)  (This)->lpVtbl->CreateSubscriptionForSelection(This,pBool)
#define IShellFavoritesNameSpace_DeleteSubscriptionForSelection(This,pBool)  (This)->lpVtbl->DeleteSubscriptionForSelection(This,pBool)
#define IShellFavoritesNameSpace_SetRoot(This,bstrFullPath)  (This)->lpVtbl->SetRoot(This,bstrFullPath)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_MoveSelectionUp_Proxy(IShellFavoritesNameSpace*);
void __RPC_STUB IShellFavoritesNameSpace_MoveSelectionUp_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_MoveSelectionDown_Proxy(IShellFavoritesNameSpace*);
void __RPC_STUB IShellFavoritesNameSpace_MoveSelectionDown_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_ResetSort_Proxy(IShellFavoritesNameSpace*);
void __RPC_STUB IShellFavoritesNameSpace_ResetSort_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_NewFolder_Proxy(IShellFavoritesNameSpace*);
void __RPC_STUB IShellFavoritesNameSpace_NewFolder_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_Synchronize_Proxy(IShellFavoritesNameSpace*);
void __RPC_STUB IShellFavoritesNameSpace_Synchronize_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_Import_Proxy(IShellFavoritesNameSpace*);
void __RPC_STUB IShellFavoritesNameSpace_Import_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_Export_Proxy(IShellFavoritesNameSpace*);
void __RPC_STUB IShellFavoritesNameSpace_Export_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_InvokeContextMenuCommand_Proxy(IShellFavoritesNameSpace*, BSTR strCommand);
void __RPC_STUB IShellFavoritesNameSpace_InvokeContextMenuCommand_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_MoveSelectionTo_Proxy(IShellFavoritesNameSpace*);
void __RPC_STUB IShellFavoritesNameSpace_MoveSelectionTo_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_get_FOfflinePackInstalled_Proxy(IShellFavoritesNameSpace*,VARIANT_BOOL*);
void __RPC_STUB IShellFavoritesNameSpace_get_FOfflinePackInstalled_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_CreateSubscriptionForSelection_Proxy(IShellFavoritesNameSpace*,VARIANT_BOOL*);
void __RPC_STUB IShellFavoritesNameSpace_CreateSubscriptionForSelection_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_DeleteSubscriptionForSelection_Proxy(IShellFavoritesNameSpace*,VARIANT_BOOL*);
void __RPC_STUB IShellFavoritesNameSpace_DeleteSubscriptionForSelection_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IShellFavoritesNameSpace_SetRoot_Proxy(IShellFavoritesNameSpace*, BSTR bstrFullPath);
void __RPC_STUB IShellFavoritesNameSpace_SetRoot_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
#endif /* __IShellFavoritesNameSpace_INTERFACE_DEFINED__ */

EXTERN_C const CLSID CLSID_ShellFavoritesNameSpace;

#ifdef __cplusplus
class DECLSPEC_UUID("55136805-B2DE-11D1-B9F2-00A0C98BC547") ShellFavoritesNameSpace;
#endif

#ifndef __IScriptErrorList_INTERFACE_DEFINED__
#define __IScriptErrorList_INTERFACE_DEFINED__

EXTERN_C const IID IID_IScriptErrorList;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("F3470F24-15FD-11d2-BB2E-00805FF7EFCA")
IScriptErrorList:public IDispatch {
    public:
    virtual HRESULT STDMETHODCALLTYPE advanceError(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE retreatError(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE canAdvanceError(BOOL * pfCanAdvance) = 0;
    virtual HRESULT STDMETHODCALLTYPE canRetreatError(BOOL * pfCanRetreat) = 0;
    virtual HRESULT STDMETHODCALLTYPE getErrorLine(LONG * plLine) = 0;
    virtual HRESULT STDMETHODCALLTYPE getErrorChar(LONG * plChar) = 0;
    virtual HRESULT STDMETHODCALLTYPE getErrorCode(LONG * plCode) = 0;
    virtual HRESULT STDMETHODCALLTYPE getErrorMsg(BSTR * pstr) = 0;
    virtual HRESULT STDMETHODCALLTYPE getErrorUrl(BSTR * pstr) = 0;
    virtual HRESULT STDMETHODCALLTYPE getAlwaysShowLockState(BOOL * pfAlwaysShowLocked) = 0;
    virtual HRESULT STDMETHODCALLTYPE getDetailsPaneOpen(BOOL * pfDetailsPaneOpen) = 0;
    virtual HRESULT STDMETHODCALLTYPE setDetailsPaneOpen(BOOL fDetailsPaneOpen) = 0;
    virtual HRESULT STDMETHODCALLTYPE getPerErrorDisplay(BOOL * pfPerErrorDisplay) = 0;
    virtual HRESULT STDMETHODCALLTYPE setPerErrorDisplay(BOOL fPerErrorDisplay) = 0;
};
#else /* C style interface */
typedef struct IScriptErrorListVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (IScriptErrorList*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (IScriptErrorList*);
    ULONG (STDMETHODCALLTYPE * Release) (IScriptErrorList*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (IScriptErrorList*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (IScriptErrorList*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (IScriptErrorList*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (IScriptErrorList*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE * advanceError) (IScriptErrorList*);
    HRESULT (STDMETHODCALLTYPE * retreatError) (IScriptErrorList*);
    HRESULT (STDMETHODCALLTYPE * canAdvanceError) (IScriptErrorList*, BOOL * pfCanAdvance);
    HRESULT (STDMETHODCALLTYPE * canRetreatError) (IScriptErrorList*, BOOL * pfCanRetreat);
    HRESULT (STDMETHODCALLTYPE * getErrorLine) (IScriptErrorList*, LONG * plLine);
    HRESULT (STDMETHODCALLTYPE * getErrorChar) (IScriptErrorList*, LONG * plChar);
    HRESULT (STDMETHODCALLTYPE * getErrorCode) (IScriptErrorList*, LONG * plCode);
    HRESULT (STDMETHODCALLTYPE * getErrorMsg) (IScriptErrorList*, BSTR * pstr);
    HRESULT (STDMETHODCALLTYPE * getErrorUrl) (IScriptErrorList*, BSTR * pstr);
    HRESULT (STDMETHODCALLTYPE * getAlwaysShowLockState) (IScriptErrorList*, BOOL * pfAlwaysShowLocked);
    HRESULT (STDMETHODCALLTYPE * getDetailsPaneOpen) (IScriptErrorList*, BOOL * pfDetailsPaneOpen);
    HRESULT (STDMETHODCALLTYPE * setDetailsPaneOpen) (IScriptErrorList*, BOOL fDetailsPaneOpen);
    HRESULT (STDMETHODCALLTYPE * getPerErrorDisplay) (IScriptErrorList*, BOOL * pfPerErrorDisplay);
    HRESULT (STDMETHODCALLTYPE * setPerErrorDisplay) (IScriptErrorList*, BOOL fPerErrorDisplay);
    END_INTERFACE
} IScriptErrorListVtbl;

interface IScriptErrorList {
    CONST_VTBL struct IScriptErrorListVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define IScriptErrorList_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IScriptErrorList_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define IScriptErrorList_Release(This)  (This)->lpVtbl->Release(This)
#define IScriptErrorList_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define IScriptErrorList_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define IScriptErrorList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define IScriptErrorList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define IScriptErrorList_advanceError(This)  (This)->lpVtbl->advanceError(This)
#define IScriptErrorList_retreatError(This)  (This)->lpVtbl->retreatError(This)
#define IScriptErrorList_canAdvanceError(This,pfCanAdvance)  (This)->lpVtbl->canAdvanceError(This,pfCanAdvance)
#define IScriptErrorList_canRetreatError(This,pfCanRetreat)  (This)->lpVtbl->canRetreatError(This,pfCanRetreat)
#define IScriptErrorList_getErrorLine(This,plLine)  (This)->lpVtbl->getErrorLine(This,plLine)
#define IScriptErrorList_getErrorChar(This,plChar)  (This)->lpVtbl->getErrorChar(This,plChar)
#define IScriptErrorList_getErrorCode(This,plCode)  (This)->lpVtbl->getErrorCode(This,plCode)
#define IScriptErrorList_getErrorMsg(This,pstr)  (This)->lpVtbl->getErrorMsg(This,pstr)
#define IScriptErrorList_getErrorUrl(This,pstr)  (This)->lpVtbl->getErrorUrl(This,pstr)
#define IScriptErrorList_getAlwaysShowLockState(This,pfAlwaysShowLocked)  (This)->lpVtbl->getAlwaysShowLockState(This,pfAlwaysShowLocked)
#define IScriptErrorList_getDetailsPaneOpen(This,pfDetailsPaneOpen)  (This)->lpVtbl->getDetailsPaneOpen(This,pfDetailsPaneOpen)
#define IScriptErrorList_setDetailsPaneOpen(This,fDetailsPaneOpen)  (This)->lpVtbl->setDetailsPaneOpen(This,fDetailsPaneOpen)
#define IScriptErrorList_getPerErrorDisplay(This,pfPerErrorDisplay)  (This)->lpVtbl->getPerErrorDisplay(This,pfPerErrorDisplay)
#define IScriptErrorList_setPerErrorDisplay(This,fPerErrorDisplay)  (This)->lpVtbl->setPerErrorDisplay(This,fPerErrorDisplay)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE IScriptErrorList_advanceError_Proxy(IScriptErrorList*);
void __RPC_STUB IScriptErrorList_advanceError_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_retreatError_Proxy(IScriptErrorList*);
void __RPC_STUB IScriptErrorList_retreatError_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_canAdvanceError_Proxy(IScriptErrorList*, BOOL * pfCanAdvance);
void __RPC_STUB IScriptErrorList_canAdvanceError_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_canRetreatError_Proxy(IScriptErrorList*, BOOL * pfCanRetreat);
void __RPC_STUB IScriptErrorList_canRetreatError_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorLine_Proxy(IScriptErrorList*, LONG * plLine);
void __RPC_STUB IScriptErrorList_getErrorLine_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorChar_Proxy(IScriptErrorList*, LONG * plChar);
void __RPC_STUB IScriptErrorList_getErrorChar_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorCode_Proxy(IScriptErrorList*, LONG * plCode);
void __RPC_STUB IScriptErrorList_getErrorCode_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorMsg_Proxy(IScriptErrorList*, BSTR * pstr);
void __RPC_STUB IScriptErrorList_getErrorMsg_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_getErrorUrl_Proxy(IScriptErrorList*, BSTR * pstr);
void __RPC_STUB IScriptErrorList_getErrorUrl_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_getAlwaysShowLockState_Proxy(IScriptErrorList*, BOOL * pfAlwaysShowLocked);
void __RPC_STUB IScriptErrorList_getAlwaysShowLockState_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_getDetailsPaneOpen_Proxy(IScriptErrorList*, BOOL * pfDetailsPaneOpen);
void __RPC_STUB IScriptErrorList_getDetailsPaneOpen_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_setDetailsPaneOpen_Proxy(IScriptErrorList*, BOOL fDetailsPaneOpen);
void __RPC_STUB IScriptErrorList_setDetailsPaneOpen_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_getPerErrorDisplay_Proxy(IScriptErrorList*, BOOL * pfPerErrorDisplay);
void __RPC_STUB IScriptErrorList_getPerErrorDisplay_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE IScriptErrorList_setPerErrorDisplay_Proxy(IScriptErrorList*, BOOL fPerErrorDisplay);
void __RPC_STUB IScriptErrorList_setPerErrorDisplay_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
#endif /* __IScriptErrorList_INTERFACE_DEFINED__ */

EXTERN_C const CLSID CLSID_CScriptErrorList;

#ifdef __cplusplus
class DECLSPEC_UUID("EFD01300-160F-11d2-BB2E-00805FF7EFCA") CScriptErrorList;
#endif

#ifndef __ISearch_INTERFACE_DEFINED__
#define __ISearch_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISearch;

#if defined(__cplusplus) && !defined(CINTERFACE)

MIDL_INTERFACE("ba9239a4-3dd5-11d2-bf8b-00c04fb93661")
ISearch:public IDispatch {
    public:
    virtual HRESULT STDMETHODCALLTYPE get_Title(BSTR * pbstrTitle) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Id(BSTR * pbstrId) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Url(BSTR * pbstrUrl) = 0;
};
#else /* C style interface */
typedef struct ISearchVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (ISearch*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (ISearch*);
    ULONG (STDMETHODCALLTYPE * Release) (ISearch*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (ISearch*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (ISearch*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (ISearch*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (ISearch*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE * get_Title) (ISearch*, BSTR * pbstrTitle);
    HRESULT (STDMETHODCALLTYPE * get_Id) (ISearch*, BSTR * pbstrId);
    HRESULT (STDMETHODCALLTYPE * get_Url) (ISearch*, BSTR * pbstrUrl);
    END_INTERFACE
} ISearchVtbl;

interface ISearch {
    CONST_VTBL struct ISearchVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define ISearch_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define ISearch_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define ISearch_Release(This)  (This)->lpVtbl->Release(This)
#define ISearch_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define ISearch_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define ISearch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define ISearch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define ISearch_get_Title(This,pbstrTitle)  (This)->lpVtbl->get_Title(This,pbstrTitle)
#define ISearch_get_Id(This,pbstrId)  (This)->lpVtbl->get_Id(This,pbstrId)
#define ISearch_get_Url(This,pbstrUrl)  (This)->lpVtbl->get_Url(This,pbstrUrl)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE ISearch_get_Title_Proxy(ISearch*, BSTR * pbstrTitle);
void __RPC_STUB ISearch_get_Title_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearch_get_Id_Proxy(ISearch*, BSTR * pbstrId);
void __RPC_STUB ISearch_get_Id_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearch_get_Url_Proxy(ISearch*, BSTR * pbstrUrl);
void __RPC_STUB ISearch_get_Url_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);

#endif /* __ISearch_INTERFACE_DEFINED__ */

#ifndef __ISearches_INTERFACE_DEFINED__
#define __ISearches_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISearches;

#if defined(__cplusplus) && !defined(CINTERFACE)

MIDL_INTERFACE("47c922a2-3dd5-11d2-bf8b-00c04fb93661")
ISearches:public IDispatch {
    public:
    virtual HRESULT STDMETHODCALLTYPE get_Count(long *plCount) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Default(BSTR * pbstrDefault) = 0;
    virtual HRESULT STDMETHODCALLTYPE Item(VARIANT index, ISearch ** ppid) = 0;
    virtual HRESULT STDMETHODCALLTYPE _NewEnum(IUnknown ** ppunk) = 0;
};
#else /* C style interface */
typedef struct ISearchesVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (ISearches*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (ISearches*);
    ULONG (STDMETHODCALLTYPE * Release) (ISearches*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (ISearches*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (ISearches*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (ISearches*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (ISearches*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE * get_Count) (ISearches*, long *plCount);
    HRESULT (STDMETHODCALLTYPE * get_Default) (ISearches*, BSTR * pbstrDefault);
    HRESULT (STDMETHODCALLTYPE * Item) (ISearches*, VARIANT index, ISearch ** ppid);
    HRESULT (STDMETHODCALLTYPE * _NewEnum) (ISearches*, IUnknown ** ppunk);
    END_INTERFACE
} ISearchesVtbl;

interface ISearches {
    CONST_VTBL struct ISearchesVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define ISearches_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define ISearches_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define ISearches_Release(This)  (This)->lpVtbl->Release(This)
#define ISearches_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define ISearches_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define ISearches_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define ISearches_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define ISearches_get_Count(This,plCount)  (This)->lpVtbl->get_Count(This,plCount)
#define ISearches_get_Default(This,pbstrDefault)  (This)->lpVtbl->get_Default(This,pbstrDefault)
#define ISearches_Item(This,index,ppid)  (This)->lpVtbl->Item(This,index,ppid)
#define ISearches__NewEnum(This,ppunk)  (This)->lpVtbl->_NewEnum(This,ppunk)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE ISearches_get_Count_Proxy(ISearches*, long *plCount);
void __RPC_STUB ISearches_get_Count_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearches_get_Default_Proxy(ISearches*, BSTR * pbstrDefault);
void __RPC_STUB ISearches_get_Default_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearches_Item_Proxy(ISearches*, VARIANT index, ISearch ** ppid);
void __RPC_STUB ISearches_Item_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearches__NewEnum_Proxy(ISearches*, IUnknown ** ppunk);
void __RPC_STUB ISearches__NewEnum_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);

#endif /* __ISearches_INTERFACE_DEFINED__ */

#ifndef __ISearchAssistantOC_INTERFACE_DEFINED__
#define __ISearchAssistantOC_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISearchAssistantOC;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("72423E8F-8011-11d2-BE79-00A0C9A83DA1")
ISearchAssistantOC:public IDispatch {
    public:
    virtual HRESULT STDMETHODCALLTYPE AddNextMenuItem(BSTR bstrText, long idItem) = 0;
    virtual HRESULT STDMETHODCALLTYPE SetDefaultSearchUrl(BSTR bstrUrl) = 0;
    virtual HRESULT STDMETHODCALLTYPE NavigateToDefaultSearch(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE IsRestricted(BSTR bstrGuid,VARIANT_BOOL*) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_ShellFeaturesEnabled(VARIANT_BOOL * pVal) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_SearchAssistantDefault(VARIANT_BOOL * pVal) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Searches(ISearches ** ppid) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_InWebFolder(VARIANT_BOOL * pVal) = 0;
    virtual HRESULT STDMETHODCALLTYPE PutProperty(VARIANT_BOOL bPerLocale,BSTR,BSTR) = 0;
    virtual HRESULT STDMETHODCALLTYPE GetProperty(VARIANT_BOOL bPerLocale,BSTR,BSTR*) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_EventHandled(VARIANT_BOOL bHandled) = 0;
    virtual HRESULT STDMETHODCALLTYPE ResetNextMenu(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE FindOnWeb(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE FindFilesOrFolders(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE FindComputer(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE FindPrinter(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE FindPeople(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE GetSearchAssistantURL(VARIANT_BOOL bSubstitute, VARIANT_BOOL bCustomize,BSTR*) = 0;
    virtual HRESULT STDMETHODCALLTYPE NotifySearchSettingsChanged(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_ASProvider(BSTR Provider) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_ASProvider(BSTR*) = 0;
    virtual HRESULT STDMETHODCALLTYPE put_ASSetting(int Setting) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_ASSetting(int *pSetting) = 0;
    virtual HRESULT STDMETHODCALLTYPE NETDetectNextNavigate(void) = 0;
    virtual HRESULT STDMETHODCALLTYPE PutFindText(BSTR FindText) = 0;
    virtual HRESULT STDMETHODCALLTYPE get_Version(int *pVersion) = 0;
    virtual HRESULT STDMETHODCALLTYPE EncodeString(BSTR bstrValue, BSTR bstrCharSet, VARIANT_BOOL bUseUTF8,BSTR*) = 0;
};
#else /* C style interface */
typedef struct ISearchAssistantOCVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (ISearchAssistantOC*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (ISearchAssistantOC*);
    ULONG (STDMETHODCALLTYPE * Release) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (ISearchAssistantOC*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (ISearchAssistantOC*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (ISearchAssistantOC*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (ISearchAssistantOC*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE * AddNextMenuItem) (ISearchAssistantOC*, BSTR bstrText, long idItem);
    HRESULT (STDMETHODCALLTYPE * SetDefaultSearchUrl) (ISearchAssistantOC*, BSTR bstrUrl);
    HRESULT (STDMETHODCALLTYPE * NavigateToDefaultSearch) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * IsRestricted) (ISearchAssistantOC*, BSTR bstrGuid,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * get_ShellFeaturesEnabled) (ISearchAssistantOC*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * get_SearchAssistantDefault) (ISearchAssistantOC*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * get_Searches) (ISearchAssistantOC*, ISearches ** ppid);
    HRESULT (STDMETHODCALLTYPE * get_InWebFolder) (ISearchAssistantOC*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * PutProperty) (ISearchAssistantOC*,VARIANT_BOOL,BSTR,BSTR);
    HRESULT (STDMETHODCALLTYPE * GetProperty) (ISearchAssistantOC*,VARIANT_BOOL,BSTR,BSTR*);
    HRESULT (STDMETHODCALLTYPE * put_EventHandled) (ISearchAssistantOC*, VARIANT_BOOL bHandled);
    HRESULT (STDMETHODCALLTYPE * ResetNextMenu) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * FindOnWeb) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * FindFilesOrFolders) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * FindComputer) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * FindPrinter) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * FindPeople) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * GetSearchAssistantURL) (ISearchAssistantOC*, VARIANT_BOOL bSubstitute, VARIANT_BOOL bCustomize,BSTR*);
    HRESULT (STDMETHODCALLTYPE * NotifySearchSettingsChanged) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * put_ASProvider) (ISearchAssistantOC*, BSTR Provider);
    HRESULT (STDMETHODCALLTYPE * get_ASProvider) (ISearchAssistantOC*, BSTR*);
    HRESULT (STDMETHODCALLTYPE * put_ASSetting) (ISearchAssistantOC*, int Setting);
    HRESULT (STDMETHODCALLTYPE * get_ASSetting) (ISearchAssistantOC*, int *pSetting);
    HRESULT (STDMETHODCALLTYPE * NETDetectNextNavigate) (ISearchAssistantOC*);
    HRESULT (STDMETHODCALLTYPE * PutFindText) (ISearchAssistantOC*, BSTR FindText);
    HRESULT (STDMETHODCALLTYPE * get_Version) (ISearchAssistantOC*, int *pVersion);
    HRESULT (STDMETHODCALLTYPE * EncodeString) (ISearchAssistantOC*,BSTR, BSTR bstrCharSet, VARIANT_BOOL bUseUTF8,BSTR*);
    END_INTERFACE
} ISearchAssistantOCVtbl;

interface ISearchAssistantOC {
    CONST_VTBL struct ISearchAssistantOCVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define ISearchAssistantOC_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define ISearchAssistantOC_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define ISearchAssistantOC_Release(This)  (This)->lpVtbl->Release(This)
#define ISearchAssistantOC_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define ISearchAssistantOC_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define ISearchAssistantOC_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define ISearchAssistantOC_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define ISearchAssistantOC_AddNextMenuItem(This,bstrText,idItem)  (This)->lpVtbl->AddNextMenuItem(This,bstrText,idItem)
#define ISearchAssistantOC_SetDefaultSearchUrl(This,bstrUrl)  (This)->lpVtbl->SetDefaultSearchUrl(This,bstrUrl)
#define ISearchAssistantOC_NavigateToDefaultSearch(This)  (This)->lpVtbl->NavigateToDefaultSearch(This)
#define ISearchAssistantOC_IsRestricted(This,bstrGuid,pVal)  (This)->lpVtbl->IsRestricted(This,bstrGuid,pVal)
#define ISearchAssistantOC_get_ShellFeaturesEnabled(This,pVal)  (This)->lpVtbl->get_ShellFeaturesEnabled(This,pVal)
#define ISearchAssistantOC_get_SearchAssistantDefault(This,pVal)  (This)->lpVtbl->get_SearchAssistantDefault(This,pVal)
#define ISearchAssistantOC_get_Searches(This,ppid)  (This)->lpVtbl->get_Searches(This,ppid)
#define ISearchAssistantOC_get_InWebFolder(This,pVal)  (This)->lpVtbl->get_InWebFolder(This,pVal)
#define ISearchAssistantOC_PutProperty(This,bPerLocale,bstrName,bstrValue)  (This)->lpVtbl->PutProperty(This,bPerLocale,bstrName,bstrValue)
#define ISearchAssistantOC_GetProperty(This,bPerLocale,bstrName,pbstrValue)  (This)->lpVtbl->GetProperty(This,bPerLocale,bstrName,pbstrValue)
#define ISearchAssistantOC_put_EventHandled(This,bHandled)  (This)->lpVtbl->put_EventHandled(This,bHandled)
#define ISearchAssistantOC_ResetNextMenu(This)  (This)->lpVtbl->ResetNextMenu(This)
#define ISearchAssistantOC_FindOnWeb(This)  (This)->lpVtbl->FindOnWeb(This)
#define ISearchAssistantOC_FindFilesOrFolders(This)  (This)->lpVtbl->FindFilesOrFolders(This)
#define ISearchAssistantOC_FindComputer(This)  (This)->lpVtbl->FindComputer(This)
#define ISearchAssistantOC_FindPrinter(This)  (This)->lpVtbl->FindPrinter(This)
#define ISearchAssistantOC_FindPeople(This)  (This)->lpVtbl->FindPeople(This)
#define ISearchAssistantOC_GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue)  (This)->lpVtbl->GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue)
#define ISearchAssistantOC_NotifySearchSettingsChanged(This)  (This)->lpVtbl->NotifySearchSettingsChanged(This)
#define ISearchAssistantOC_put_ASProvider(This,Provider)  (This)->lpVtbl->put_ASProvider(This,Provider)
#define ISearchAssistantOC_get_ASProvider(This,pProvider)  (This)->lpVtbl->get_ASProvider(This,pProvider)
#define ISearchAssistantOC_put_ASSetting(This,Setting)  (This)->lpVtbl->put_ASSetting(This,Setting)
#define ISearchAssistantOC_get_ASSetting(This,pSetting)  (This)->lpVtbl->get_ASSetting(This,pSetting)
#define ISearchAssistantOC_NETDetectNextNavigate(This)  (This)->lpVtbl->NETDetectNextNavigate(This)
#define ISearchAssistantOC_PutFindText(This,FindText)  (This)->lpVtbl->PutFindText(This,FindText)
#define ISearchAssistantOC_get_Version(This,pVersion)  (This)->lpVtbl->get_Version(This,pVersion)
#define ISearchAssistantOC_EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult)  (This)->lpVtbl->EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE ISearchAssistantOC_AddNextMenuItem_Proxy(ISearchAssistantOC*, BSTR bstrText, long idItem);
void __RPC_STUB ISearchAssistantOC_AddNextMenuItem_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_SetDefaultSearchUrl_Proxy(ISearchAssistantOC*, BSTR bstrUrl);
void __RPC_STUB ISearchAssistantOC_SetDefaultSearchUrl_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_NavigateToDefaultSearch_Proxy(ISearchAssistantOC*);
void __RPC_STUB ISearchAssistantOC_NavigateToDefaultSearch_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_IsRestricted_Proxy(ISearchAssistantOC*, BSTR bstrGuid,VARIANT_BOOL*);
void __RPC_STUB ISearchAssistantOC_IsRestricted_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_ShellFeaturesEnabled_Proxy(ISearchAssistantOC*,VARIANT_BOOL*);
void __RPC_STUB ISearchAssistantOC_get_ShellFeaturesEnabled_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_SearchAssistantDefault_Proxy(ISearchAssistantOC*,VARIANT_BOOL*);
void __RPC_STUB ISearchAssistantOC_get_SearchAssistantDefault_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_Searches_Proxy(ISearchAssistantOC*, ISearches ** ppid);
void __RPC_STUB ISearchAssistantOC_get_Searches_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_InWebFolder_Proxy(ISearchAssistantOC*,VARIANT_BOOL*);
void __RPC_STUB ISearchAssistantOC_get_InWebFolder_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_PutProperty_Proxy(ISearchAssistantOC*,VARIANT_BOOL,BSTR,BSTR);
void __RPC_STUB ISearchAssistantOC_PutProperty_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_GetProperty_Proxy(ISearchAssistantOC*,VARIANT_BOOL,BSTR,BSTR*);
void __RPC_STUB ISearchAssistantOC_GetProperty_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_put_EventHandled_Proxy(ISearchAssistantOC*, VARIANT_BOOL bHandled);
void __RPC_STUB ISearchAssistantOC_put_EventHandled_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_ResetNextMenu_Proxy(ISearchAssistantOC*);
void __RPC_STUB ISearchAssistantOC_ResetNextMenu_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindOnWeb_Proxy(ISearchAssistantOC*);
void __RPC_STUB ISearchAssistantOC_FindOnWeb_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindFilesOrFolders_Proxy(ISearchAssistantOC*);
void __RPC_STUB ISearchAssistantOC_FindFilesOrFolders_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindComputer_Proxy(ISearchAssistantOC*);
void __RPC_STUB ISearchAssistantOC_FindComputer_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindPrinter_Proxy(ISearchAssistantOC*);
void __RPC_STUB ISearchAssistantOC_FindPrinter_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_FindPeople_Proxy(ISearchAssistantOC*);
void __RPC_STUB ISearchAssistantOC_FindPeople_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_GetSearchAssistantURL_Proxy(ISearchAssistantOC*, VARIANT_BOOL bSubstitute, VARIANT_BOOL bCustomize,BSTR*);
void __RPC_STUB ISearchAssistantOC_GetSearchAssistantURL_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_NotifySearchSettingsChanged_Proxy(ISearchAssistantOC*);
void __RPC_STUB ISearchAssistantOC_NotifySearchSettingsChanged_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_put_ASProvider_Proxy(ISearchAssistantOC*, BSTR Provider);
void __RPC_STUB ISearchAssistantOC_put_ASProvider_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_ASProvider_Proxy(ISearchAssistantOC*, BSTR*);
void __RPC_STUB ISearchAssistantOC_get_ASProvider_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_put_ASSetting_Proxy(ISearchAssistantOC*, int Setting);
void __RPC_STUB ISearchAssistantOC_put_ASSetting_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_ASSetting_Proxy(ISearchAssistantOC*, int *pSetting);
void __RPC_STUB ISearchAssistantOC_get_ASSetting_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_NETDetectNextNavigate_Proxy(ISearchAssistantOC*);
void __RPC_STUB ISearchAssistantOC_NETDetectNextNavigate_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_PutFindText_Proxy(ISearchAssistantOC*, BSTR FindText);
void __RPC_STUB ISearchAssistantOC_PutFindText_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_get_Version_Proxy(ISearchAssistantOC*, int *pVersion);
void __RPC_STUB ISearchAssistantOC_get_Version_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);
HRESULT STDMETHODCALLTYPE ISearchAssistantOC_EncodeString_Proxy(ISearchAssistantOC*,BSTR, BSTR bstrCharSet, VARIANT_BOOL bUseUTF8,BSTR*);
void __RPC_STUB ISearchAssistantOC_EncodeString_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);

#endif /* __ISearchAssistantOC_INTERFACE_DEFINED__ */

#ifndef __ISearchAssistantOC2_INTERFACE_DEFINED__
#define __ISearchAssistantOC2_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISearchAssistantOC2;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("72423E8F-8011-11d2-BE79-00A0C9A83DA2")
ISearchAssistantOC2:public ISearchAssistantOC {
    public:
    virtual HRESULT STDMETHODCALLTYPE get_ShowFindPrinter(VARIANT_BOOL * pbShowFindPrinter) = 0;
};
#else /* C style interface */
typedef struct ISearchAssistantOC2Vtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (ISearchAssistantOC2*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (ISearchAssistantOC2*);
    ULONG (STDMETHODCALLTYPE * Release) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (ISearchAssistantOC2*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (ISearchAssistantOC2*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (ISearchAssistantOC2*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (ISearchAssistantOC2*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    HRESULT (STDMETHODCALLTYPE * AddNextMenuItem) (ISearchAssistantOC2*, BSTR bstrText, long idItem);
    HRESULT (STDMETHODCALLTYPE * SetDefaultSearchUrl) (ISearchAssistantOC2*, BSTR bstrUrl);
    HRESULT (STDMETHODCALLTYPE * NavigateToDefaultSearch) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * IsRestricted) (ISearchAssistantOC2*, BSTR bstrGuid,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * get_ShellFeaturesEnabled) (ISearchAssistantOC2*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * get_SearchAssistantDefault) (ISearchAssistantOC2*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * get_Searches) (ISearchAssistantOC2*, ISearches ** ppid);
    HRESULT (STDMETHODCALLTYPE * get_InWebFolder) (ISearchAssistantOC2*,VARIANT_BOOL*);
    HRESULT (STDMETHODCALLTYPE * PutProperty) (ISearchAssistantOC2*,VARIANT_BOOL,BSTR,BSTR);
    HRESULT (STDMETHODCALLTYPE * GetProperty) (ISearchAssistantOC2*,VARIANT_BOOL,BSTR,BSTR*);
    HRESULT (STDMETHODCALLTYPE * put_EventHandled) (ISearchAssistantOC2*, VARIANT_BOOL bHandled);
    HRESULT (STDMETHODCALLTYPE * ResetNextMenu) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * FindOnWeb) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * FindFilesOrFolders) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * FindComputer) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * FindPrinter) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * FindPeople) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * GetSearchAssistantURL) (ISearchAssistantOC2*, VARIANT_BOOL bSubstitute, VARIANT_BOOL bCustomize,BSTR*);
    HRESULT (STDMETHODCALLTYPE * NotifySearchSettingsChanged) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * put_ASProvider) (ISearchAssistantOC2*, BSTR Provider);
    HRESULT (STDMETHODCALLTYPE * get_ASProvider) (ISearchAssistantOC2*,BSTR*);
    HRESULT (STDMETHODCALLTYPE * put_ASSetting) (ISearchAssistantOC2*, int Setting);
    HRESULT (STDMETHODCALLTYPE * get_ASSetting) (ISearchAssistantOC2*, int *pSetting);
    HRESULT (STDMETHODCALLTYPE * NETDetectNextNavigate) (ISearchAssistantOC2*);
    HRESULT (STDMETHODCALLTYPE * PutFindText) (ISearchAssistantOC2*, BSTR FindText);
    HRESULT (STDMETHODCALLTYPE * get_Version) (ISearchAssistantOC2*, int *pVersion);
    HRESULT (STDMETHODCALLTYPE * EncodeString) (ISearchAssistantOC2*,BSTR, BSTR bstrCharSet, VARIANT_BOOL bUseUTF8,BSTR*);
    HRESULT (STDMETHODCALLTYPE * get_ShowFindPrinter) (ISearchAssistantOC2*, VARIANT_BOOL * pbShowFindPrinter);
    END_INTERFACE
} ISearchAssistantOC2Vtbl;

interface ISearchAssistantOC2 {
    CONST_VTBL struct ISearchAssistantOC2Vtbl *lpVtbl;
};

#ifdef COBJMACROS
#define ISearchAssistantOC2_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define ISearchAssistantOC2_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define ISearchAssistantOC2_Release(This)  (This)->lpVtbl->Release(This)
#define ISearchAssistantOC2_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define ISearchAssistantOC2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define ISearchAssistantOC2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define ISearchAssistantOC2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#define ISearchAssistantOC2_AddNextMenuItem(This,bstrText,idItem)  (This)->lpVtbl->AddNextMenuItem(This,bstrText,idItem)
#define ISearchAssistantOC2_SetDefaultSearchUrl(This,bstrUrl)  (This)->lpVtbl->SetDefaultSearchUrl(This,bstrUrl)
#define ISearchAssistantOC2_NavigateToDefaultSearch(This)  (This)->lpVtbl->NavigateToDefaultSearch(This)
#define ISearchAssistantOC2_IsRestricted(This,bstrGuid,pVal)  (This)->lpVtbl->IsRestricted(This,bstrGuid,pVal)
#define ISearchAssistantOC2_get_ShellFeaturesEnabled(This,pVal)  (This)->lpVtbl->get_ShellFeaturesEnabled(This,pVal)
#define ISearchAssistantOC2_get_SearchAssistantDefault(This,pVal)  (This)->lpVtbl->get_SearchAssistantDefault(This,pVal)
#define ISearchAssistantOC2_get_Searches(This,ppid)  (This)->lpVtbl->get_Searches(This,ppid)
#define ISearchAssistantOC2_get_InWebFolder(This,pVal)  (This)->lpVtbl->get_InWebFolder(This,pVal)
#define ISearchAssistantOC2_PutProperty(This,bPerLocale,bstrName,bstrValue)  (This)->lpVtbl->PutProperty(This,bPerLocale,bstrName,bstrValue)
#define ISearchAssistantOC2_GetProperty(This,bPerLocale,bstrName,pbstrValue)  (This)->lpVtbl->GetProperty(This,bPerLocale,bstrName,pbstrValue)
#define ISearchAssistantOC2_put_EventHandled(This,bHandled)  (This)->lpVtbl->put_EventHandled(This,bHandled)
#define ISearchAssistantOC2_ResetNextMenu(This)  (This)->lpVtbl->ResetNextMenu(This)
#define ISearchAssistantOC2_FindOnWeb(This)  (This)->lpVtbl->FindOnWeb(This)
#define ISearchAssistantOC2_FindFilesOrFolders(This)  (This)->lpVtbl->FindFilesOrFolders(This)
#define ISearchAssistantOC2_FindComputer(This)  (This)->lpVtbl->FindComputer(This)
#define ISearchAssistantOC2_FindPrinter(This)  (This)->lpVtbl->FindPrinter(This)
#define ISearchAssistantOC2_FindPeople(This)  (This)->lpVtbl->FindPeople(This)
#define ISearchAssistantOC2_GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue)  (This)->lpVtbl->GetSearchAssistantURL(This,bSubstitute,bCustomize,pbstrValue)
#define ISearchAssistantOC2_NotifySearchSettingsChanged(This)  (This)->lpVtbl->NotifySearchSettingsChanged(This)
#define ISearchAssistantOC2_put_ASProvider(This,Provider)  (This)->lpVtbl->put_ASProvider(This,Provider)
#define ISearchAssistantOC2_get_ASProvider(This,pProvider)  (This)->lpVtbl->get_ASProvider(This,pProvider)
#define ISearchAssistantOC2_put_ASSetting(This,Setting)  (This)->lpVtbl->put_ASSetting(This,Setting)
#define ISearchAssistantOC2_get_ASSetting(This,pSetting)  (This)->lpVtbl->get_ASSetting(This,pSetting)
#define ISearchAssistantOC2_NETDetectNextNavigate(This)  (This)->lpVtbl->NETDetectNextNavigate(This)
#define ISearchAssistantOC2_PutFindText(This,FindText)  (This)->lpVtbl->PutFindText(This,FindText)
#define ISearchAssistantOC2_get_Version(This,pVersion)  (This)->lpVtbl->get_Version(This,pVersion)
#define ISearchAssistantOC2_EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult)  (This)->lpVtbl->EncodeString(This,bstrValue,bstrCharSet,bUseUTF8,pbstrResult)
#define ISearchAssistantOC2_get_ShowFindPrinter(This,pbShowFindPrinter)  (This)->lpVtbl->get_ShowFindPrinter(This,pbShowFindPrinter)
#endif /* COBJMACROS */
#endif /* C style interface */

HRESULT STDMETHODCALLTYPE ISearchAssistantOC2_get_ShowFindPrinter_Proxy(ISearchAssistantOC2*, VARIANT_BOOL * pbShowFindPrinter);
void __RPC_STUB ISearchAssistantOC2_get_ShowFindPrinter_Stub(IRpcStubBuffer*,IRpcChannelBuffer*,PRPC_MESSAGE,DWORD*);

#endif /* __ISearchAssistantOC2_INTERFACE_DEFINED__ */

#ifndef ___SearchAssistantEvents_DISPINTERFACE_DEFINED__
#define ___SearchAssistantEvents_DISPINTERFACE_DEFINED__

EXTERN_C const IID DIID__SearchAssistantEvents;

#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("1611FDDA-445B-11d2-85DE-00C04FA35C89")
_SearchAssistantEvents:public IDispatch {
};
#else /* C style interface */
typedef struct _SearchAssistantEventsVtbl {
    BEGIN_INTERFACE
    HRESULT (STDMETHODCALLTYPE * QueryInterface) (_SearchAssistantEvents*,REFIID,void**);
    ULONG (STDMETHODCALLTYPE * AddRef) (_SearchAssistantEvents*);
    ULONG (STDMETHODCALLTYPE * Release) (_SearchAssistantEvents*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfoCount) (_SearchAssistantEvents*,UINT*);
    HRESULT (STDMETHODCALLTYPE * GetTypeInfo) (_SearchAssistantEvents*, UINT iTInfo,LCID,ITypeInfo**);
    HRESULT (STDMETHODCALLTYPE * GetIDsOfNames) (_SearchAssistantEvents*,REFIID,LPOLESTR*,UINT,LCID,DISPID*);
    HRESULT (STDMETHODCALLTYPE * Invoke) (_SearchAssistantEvents*,DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*);
    END_INTERFACE
} _SearchAssistantEventsVtbl;

interface _SearchAssistantEvents {
    CONST_VTBL struct _SearchAssistantEventsVtbl *lpVtbl;
};

#ifdef COBJMACROS
#define _SearchAssistantEvents_QueryInterface(This,riid,ppvObject)  (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define _SearchAssistantEvents_AddRef(This)  (This)->lpVtbl->AddRef(This)
#define _SearchAssistantEvents_Release(This)  (This)->lpVtbl->Release(This)
#define _SearchAssistantEvents_GetTypeInfoCount(This,pctinfo)  (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
#define _SearchAssistantEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)  (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
#define _SearchAssistantEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)  (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
#define _SearchAssistantEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)  (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
#endif /* COBJMACROS */
#endif /* C style interface */

#endif /* ___SearchAssistantEvents_DISPINTERFACE_DEFINED__ */

EXTERN_C const CLSID CLSID_SearchAssistantOC;

#ifdef __cplusplus
class DECLSPEC_UUID("B45FF030-4447-11D2-85DE-00C04FA35C89") SearchAssistantOC;
#endif

#endif /* __SHDocVw_LIBRARY_DEFINED__ */

#ifdef __cplusplus
}
#endif

#endif
