/**
 * This file has no copyright assigned and is placed in the Public Domain.
 * This file is part of the mingw-w64 runtime package.
 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
 */

import "objidl.idl";
import "oleidl.idl";

cpp_quote("#include <_mingw_unicode.h>")

cpp_quote("#ifndef __IPersistMoniker_FWD_DEFINED__")
cpp_quote("#define __IPersistMoniker_FWD_DEFINED__")
cpp_quote("typedef struct IPersistMoniker IPersistMoniker;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IMonikerProp_FWD_DEFINED__")
cpp_quote("#define __IMonikerProp_FWD_DEFINED__")
cpp_quote("typedef struct IMonikerProp IMonikerProp;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IBindProtocol_FWD_DEFINED__")
cpp_quote("#define __IBindProtocol_FWD_DEFINED__")
cpp_quote("typedef struct IBindProtocol IBindProtocol;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IAuthenticate_FWD_DEFINED__")
cpp_quote("#define __IAuthenticate_FWD_DEFINED__")
cpp_quote("typedef struct IAuthenticate IAuthenticate;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IHttpNegotiate_FWD_DEFINED__")
cpp_quote("#define __IHttpNegotiate_FWD_DEFINED__")
cpp_quote("typedef struct IHttpNegotiate IHttpNegotiate;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IHttpNegotiate2_FWD_DEFINED__")
cpp_quote("#define __IHttpNegotiate2_FWD_DEFINED__")
cpp_quote("typedef struct IHttpNegotiate2 IHttpNegotiate2;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IWinInetFileStream_FWD_DEFINED__")
cpp_quote("#define __IWinInetFileStream_FWD_DEFINED__")
cpp_quote("typedef struct IWinInetFileStream IWinInetFileStream;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IWindowForBindingUI_FWD_DEFINED__")
cpp_quote("#define __IWindowForBindingUI_FWD_DEFINED__")
cpp_quote("typedef struct IWindowForBindingUI IWindowForBindingUI;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __ICodeInstall_FWD_DEFINED__")
cpp_quote("#define __ICodeInstall_FWD_DEFINED__")
cpp_quote("typedef struct ICodeInstall ICodeInstall;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IWinInetInfo_FWD_DEFINED__")
cpp_quote("#define __IWinInetInfo_FWD_DEFINED__")
cpp_quote("typedef struct IWinInetInfo IWinInetInfo;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IHttpSecurity_FWD_DEFINED__")
cpp_quote("#define __IHttpSecurity_FWD_DEFINED__")
cpp_quote("typedef struct IHttpSecurity IHttpSecurity;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IWinInetHttpInfo_FWD_DEFINED__")
cpp_quote("#define __IWinInetHttpInfo_FWD_DEFINED__")
cpp_quote("typedef struct IWinInetHttpInfo IWinInetHttpInfo;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IWinInetCacheHints_FWD_DEFINED__")
cpp_quote("#define __IWinInetCacheHints_FWD_DEFINED__")
cpp_quote("typedef struct IWinInetCacheHints IWinInetCacheHints;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IBindHost_FWD_DEFINED__")
cpp_quote("#define __IBindHost_FWD_DEFINED__")
cpp_quote("typedef struct IBindHost IBindHost;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternet_FWD_DEFINED__")
cpp_quote("#define __IInternet_FWD_DEFINED__")
cpp_quote("typedef struct IInternet IInternet;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetBindInfo_FWD_DEFINED__")
cpp_quote("#define __IInternetBindInfo_FWD_DEFINED__")
cpp_quote("typedef struct IInternetBindInfo IInternetBindInfo;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetProtocolRoot_FWD_DEFINED__")
cpp_quote("#define __IInternetProtocolRoot_FWD_DEFINED__")
cpp_quote("typedef struct IInternetProtocolRoot IInternetProtocolRoot;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetProtocol_FWD_DEFINED__")
cpp_quote("#define __IInternetProtocol_FWD_DEFINED__")
cpp_quote("typedef struct IInternetProtocol IInternetProtocol;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetProtocolSink_FWD_DEFINED__")
cpp_quote("#define __IInternetProtocolSink_FWD_DEFINED__")
cpp_quote("typedef struct IInternetProtocolSink IInternetProtocolSink;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetProtocolSinkStackable_FWD_DEFINED__")
cpp_quote("#define __IInternetProtocolSinkStackable_FWD_DEFINED__")
cpp_quote("typedef struct IInternetProtocolSinkStackable IInternetProtocolSinkStackable;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetSession_FWD_DEFINED__")
cpp_quote("#define __IInternetSession_FWD_DEFINED__")
cpp_quote("typedef struct IInternetSession IInternetSession;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetThreadSwitch_FWD_DEFINED__")
cpp_quote("#define __IInternetThreadSwitch_FWD_DEFINED__")
cpp_quote("typedef struct IInternetThreadSwitch IInternetThreadSwitch;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetPriority_FWD_DEFINED__")
cpp_quote("#define __IInternetPriority_FWD_DEFINED__")
cpp_quote("typedef struct IInternetPriority IInternetPriority;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetProtocolInfo_FWD_DEFINED__")
cpp_quote("#define __IInternetProtocolInfo_FWD_DEFINED__")
cpp_quote("typedef struct IInternetProtocolInfo IInternetProtocolInfo;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetSecurityMgrSite_FWD_DEFINED__")
cpp_quote("#define __IInternetSecurityMgrSite_FWD_DEFINED__")
cpp_quote("typedef struct IInternetSecurityMgrSite IInternetSecurityMgrSite;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetSecurityManager_FWD_DEFINED__")
cpp_quote("#define __IInternetSecurityManager_FWD_DEFINED__")
cpp_quote("typedef struct IInternetSecurityManager IInternetSecurityManager;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetSecurityManagerEx_FWD_DEFINED__")
cpp_quote("#define __IInternetSecurityManagerEx_FWD_DEFINED__")
cpp_quote("typedef struct IInternetSecurityManagerEx IInternetSecurityManagerEx;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IZoneIdentifier_FWD_DEFINED__")
cpp_quote("#define __IZoneIdentifier_FWD_DEFINED__")
cpp_quote("typedef struct IZoneIdentifier IZoneIdentifier;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetHostSecurityManager_FWD_DEFINED__")
cpp_quote("#define __IInternetHostSecurityManager_FWD_DEFINED__")
cpp_quote("typedef struct IInternetHostSecurityManager IInternetHostSecurityManager;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetZoneManager_FWD_DEFINED__")
cpp_quote("#define __IInternetZoneManager_FWD_DEFINED__")
cpp_quote("typedef struct IInternetZoneManager IInternetZoneManager;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetZoneManagerEx_FWD_DEFINED__")
cpp_quote("#define __IInternetZoneManagerEx_FWD_DEFINED__")
cpp_quote("typedef struct IInternetZoneManagerEx IInternetZoneManagerEx;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __ISoftDistExt_FWD_DEFINED__")
cpp_quote("#define __ISoftDistExt_FWD_DEFINED__")
cpp_quote("typedef struct ISoftDistExt ISoftDistExt;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __ICatalogFileInfo_FWD_DEFINED__")
cpp_quote("#define __ICatalogFileInfo_FWD_DEFINED__")
cpp_quote("typedef struct ICatalogFileInfo ICatalogFileInfo;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IDataFilter_FWD_DEFINED__")
cpp_quote("#define __IDataFilter_FWD_DEFINED__")
cpp_quote("typedef struct IDataFilter IDataFilter;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IEncodingFilterFactory_FWD_DEFINED__")
cpp_quote("#define __IEncodingFilterFactory_FWD_DEFINED__")
cpp_quote("typedef struct IEncodingFilterFactory IEncodingFilterFactory;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IWrappedProtocol_FWD_DEFINED__")
cpp_quote("#define __IWrappedProtocol_FWD_DEFINED__")
cpp_quote("typedef struct IWrappedProtocol IWrappedProtocol;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#include \"servprov.h\"")
cpp_quote("#include \"msxml.h\"")
cpp_quote("")
cpp_quote("  EXTERN_C const IID CLSID_SBS_StdURLMoniker;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_HttpProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_FtpProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_GopherProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_HttpSProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_FileProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_MkProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_UrlMkBindCtx;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_SoftDistExt;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_StdEncodingFilterFac;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_DeCompMimeFilter;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_CdlProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_ClassInstallFilter;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_InternetSecurityManager;")
cpp_quote("  EXTERN_C const IID CLSID_SBS_InternetZoneManager;")
cpp_quote("")
cpp_quote("#define BINDF_DONTUSECACHE BINDF_GETNEWESTVERSION")
cpp_quote("#define BINDF_DONTPUTINCACHE BINDF_NOWRITECACHE")
cpp_quote("#define BINDF_NOCOPYDATA BINDF_PULLDATA")
cpp_quote("#define INVALID_P_ROOT_SECURITY_ID ((BYTE*)-1)")
cpp_quote("#define PI_DOCFILECLSIDLOOKUP PI_CLSIDLOOKUP")
cpp_quote("  EXTERN_C const IID IID_IAsyncMoniker;")
cpp_quote("  EXTERN_C const IID CLSID_StdURLMoniker;")
cpp_quote("  EXTERN_C const IID CLSID_HttpProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_FtpProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_GopherProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_HttpSProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_FileProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_MkProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_StdURLProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_UrlMkBindCtx;")
cpp_quote("  EXTERN_C const IID CLSID_StdEncodingFilterFac;")
cpp_quote("  EXTERN_C const IID CLSID_DeCompMimeFilter;")
cpp_quote("  EXTERN_C const IID CLSID_CdlProtocol;")
cpp_quote("  EXTERN_C const IID CLSID_ClassInstallFilter;")
cpp_quote("  EXTERN_C const IID IID_IAsyncBindCtx;")
cpp_quote("")
cpp_quote("#define SZ_URLCONTEXT OLESTR(\"URL Context\")")
cpp_quote("#define SZ_ASYNC_CALLEE OLESTR(\"AsyncCallee\")")
cpp_quote("#define MKSYS_URLMONIKER 6")
cpp_quote("#define URL_MK_LEGACY 0")
cpp_quote("#define URL_MK_UNIFORM 1")
cpp_quote("#define URL_MK_NO_CANONICALIZE 2")
cpp_quote("")
cpp_quote("  STDAPI CreateURLMoniker(LPMONIKER pMkCtx,LPCWSTR szURL,LPMONIKER *ppmk);")
cpp_quote("  STDAPI CreateURLMonikerEx(LPMONIKER pMkCtx,LPCWSTR szURL,LPMONIKER *ppmk,DWORD dwFlags);")
cpp_quote("  STDAPI GetClassURL(LPCWSTR szURL,CLSID *pClsID);")
cpp_quote("  STDAPI CreateAsyncBindCtx(DWORD reserved,IBindStatusCallback *pBSCb,IEnumFORMATETC *pEFetc,IBindCtx **ppBC);")
cpp_quote("  STDAPI CreateAsyncBindCtxEx(IBindCtx *pbc,DWORD dwOptions,IBindStatusCallback *pBSCb,IEnumFORMATETC *pEnum,IBindCtx **ppBC,DWORD reserved);")
cpp_quote("  STDAPI MkParseDisplayNameEx(IBindCtx *pbc,LPCWSTR szDisplayName,ULONG *pchEaten,LPMONIKER *ppmk);")
cpp_quote("  STDAPI RegisterBindStatusCallback(LPBC pBC,IBindStatusCallback *pBSCb,IBindStatusCallback **ppBSCBPrev,DWORD dwReserved);")
cpp_quote("  STDAPI RevokeBindStatusCallback(LPBC pBC,IBindStatusCallback *pBSCb);")
cpp_quote("  STDAPI GetClassFileOrMime(LPBC pBC,LPCWSTR szFilename,LPVOID pBuffer,DWORD cbSize,LPCWSTR szMime,DWORD dwReserved,CLSID *pclsid);")
cpp_quote("  STDAPI IsValidURL(LPBC pBC,LPCWSTR szURL,DWORD dwReserved);")
cpp_quote("  STDAPI CoGetClassObjectFromURL(REFCLSID rCLASSID,LPCWSTR szCODE,DWORD dwFileVersionMS,DWORD dwFileVersionLS,LPCWSTR szTYPE,LPBINDCTX pBindCtx,DWORD dwClsContext,LPVOID pvReserved,REFIID riid,LPVOID *ppv);")
cpp_quote("  STDAPI FaultInIEFeature(HWND hWnd,uCLSSPEC *pClassSpec,QUERYCONTEXT *pQuery,DWORD dwFlags);")
cpp_quote("  STDAPI GetComponentIDFromCLSSPEC(uCLSSPEC *pClassspec,LPSTR *ppszComponentID);")
cpp_quote("")
cpp_quote("#define FIEF_FLAG_FORCE_JITUI 0x1")
cpp_quote("")
cpp_quote("#define FIEF_FLAG_PEEK 0x2")
cpp_quote("#define FIEF_FLAG_SKIP_INSTALLED_VERSION_CHECK 0x4")
cpp_quote("")
cpp_quote("  STDAPI IsAsyncMoniker(IMoniker *pmk);")
cpp_quote("  STDAPI CreateURLBinding(LPCWSTR lpszUrl,IBindCtx *pbc,IBinding **ppBdg);")
cpp_quote("  STDAPI RegisterMediaTypes(UINT ctypes,const LPCSTR *rgszTypes,CLIPFORMAT *rgcfTypes);")
cpp_quote("  STDAPI FindMediaType(LPCSTR rgszTypes,CLIPFORMAT *rgcfTypes);")
cpp_quote("  STDAPI CreateFormatEnumerator(UINT cfmtetc,FORMATETC *rgfmtetc,IEnumFORMATETC **ppenumfmtetc);")
cpp_quote("  STDAPI RegisterFormatEnumerator(LPBC pBC,IEnumFORMATETC *pEFetc,DWORD reserved);")
cpp_quote("  STDAPI RevokeFormatEnumerator(LPBC pBC,IEnumFORMATETC *pEFetc);")
cpp_quote("  STDAPI RegisterMediaTypeClass(LPBC pBC,UINT ctypes,const LPCSTR *rgszTypes,CLSID *rgclsID,DWORD reserved);")
cpp_quote("  STDAPI FindMediaTypeClass(LPBC pBC,LPCSTR szType,CLSID *pclsID,DWORD reserved);")
cpp_quote("  STDAPI UrlMkSetSessionOption(DWORD dwOption,LPVOID pBuffer,DWORD dwBufferLength,DWORD dwReserved);")
cpp_quote("  STDAPI UrlMkGetSessionOption(DWORD dwOption,LPVOID pBuffer,DWORD dwBufferLength,DWORD *pdwBufferLength,DWORD dwReserved);")
cpp_quote("  STDAPI FindMimeFromData(LPBC pBC,LPCWSTR pwzUrl,LPVOID pBuffer,DWORD cbSize,LPCWSTR pwzMimeProposed,DWORD dwMimeFlags,LPWSTR *ppwzMimeOut,DWORD dwReserved);")
cpp_quote("#define FMFD_DEFAULT 0x00000000")
cpp_quote("#define FMFD_URLASFILENAME 0x00000001")
cpp_quote("#define FMFD_ENABLEMIMESNIFFING 0x00000002")
cpp_quote("#define FMFD_IGNOREMIMETEXTPLAIN 0x00000004")
cpp_quote("  STDAPI ObtainUserAgentString(DWORD dwOption,LPSTR pszUAOut,DWORD *cbSize);")
cpp_quote("  STDAPI CompareSecurityIds(BYTE *pbSecurityId1,DWORD dwLen1,BYTE *pbSecurityId2,DWORD dwLen2,DWORD dwReserved);")
cpp_quote("  STDAPI CompatFlagsFromClsid(CLSID *pclsid,LPDWORD pdwCompatFlags,LPDWORD pdwMiscStatusFlags);")
cpp_quote("")
cpp_quote("#define URLMON_OPTION_USERAGENT 0x10000001")
cpp_quote("#define URLMON_OPTION_USERAGENT_REFRESH 0x10000002")
cpp_quote("#define URLMON_OPTION_URL_ENCODING 0x10000004")
cpp_quote("#define URLMON_OPTION_USE_BINDSTRINGCREDS 0x10000008")
cpp_quote("")
cpp_quote("#define CF_NULL 0")
cpp_quote("#define CFSTR_MIME_NULL NULL")
cpp_quote("#define CFSTR_MIME_TEXT (TEXT(\"text/plain\"))")
cpp_quote("#define CFSTR_MIME_RICHTEXT (TEXT(\"text/richtext\"))")
cpp_quote("#define CFSTR_MIME_X_BITMAP (TEXT(\"image/x-xbitmap\"))")
cpp_quote("#define CFSTR_MIME_POSTSCRIPT (TEXT(\"application/postscript\"))")
cpp_quote("#define CFSTR_MIME_AIFF (TEXT(\"audio/aiff\"))")
cpp_quote("#define CFSTR_MIME_BASICAUDIO (TEXT(\"audio/basic\"))")
cpp_quote("#define CFSTR_MIME_WAV (TEXT(\"audio/wav\"))")
cpp_quote("#define CFSTR_MIME_X_WAV (TEXT(\"audio/x-wav\"))")
cpp_quote("#define CFSTR_MIME_GIF (TEXT(\"image/gif\"))")
cpp_quote("#define CFSTR_MIME_PJPEG (TEXT(\"image/pjpeg\"))")
cpp_quote("#define CFSTR_MIME_JPEG (TEXT(\"image/jpeg\"))")
cpp_quote("#define CFSTR_MIME_TIFF (TEXT(\"image/tiff\"))")
cpp_quote("#define CFSTR_MIME_X_PNG (TEXT(\"image/x-png\"))")
cpp_quote("#define CFSTR_MIME_BMP (TEXT(\"image/bmp\"))")
cpp_quote("#define CFSTR_MIME_X_ART (TEXT(\"image/x-jg\"))")
cpp_quote("#define CFSTR_MIME_X_EMF (TEXT(\"image/x-emf\"))")
cpp_quote("#define CFSTR_MIME_X_WMF (TEXT(\"image/x-wmf\"))")
cpp_quote("#define CFSTR_MIME_AVI (TEXT(\"video/avi\"))")
cpp_quote("#define CFSTR_MIME_MPEG (TEXT(\"video/mpeg\"))")
cpp_quote("#define CFSTR_MIME_FRACTALS (TEXT(\"application/fractals\"))")
cpp_quote("#define CFSTR_MIME_RAWDATA (TEXT(\"application/octet-stream\"))")
cpp_quote("#define CFSTR_MIME_RAWDATASTRM (TEXT(\"application/octet-stream\"))")
cpp_quote("#define CFSTR_MIME_PDF (TEXT(\"application/pdf\"))")
cpp_quote("#define CFSTR_MIME_HTA (TEXT(\"application/hta\"))")
cpp_quote("#define CFSTR_MIME_X_AIFF (TEXT(\"audio/x-aiff\"))")
cpp_quote("#define CFSTR_MIME_X_REALAUDIO (TEXT(\"audio/x-pn-realaudio\"))")
cpp_quote("#define CFSTR_MIME_XBM (TEXT(\"image/xbm\"))")
cpp_quote("#define CFSTR_MIME_QUICKTIME (TEXT(\"video/quicktime\"))")
cpp_quote("#define CFSTR_MIME_X_MSVIDEO (TEXT(\"video/x-msvideo\"))")
cpp_quote("#define CFSTR_MIME_X_SGI_MOVIE (TEXT(\"video/x-sgi-movie\"))")
cpp_quote("#define CFSTR_MIME_HTML (TEXT(\"text/html\"))")
cpp_quote("#define CFSTR_MIME_XML (TEXT(\"text/xml\"))")
cpp_quote("")
cpp_quote("#define MK_S_ASYNCHRONOUS _HRESULT_TYPEDEF_(0x000401E8L)")
cpp_quote("#ifndef S_ASYNCHRONOUS")
cpp_quote("#define S_ASYNCHRONOUS MK_S_ASYNCHRONOUS")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef E_PENDING")
cpp_quote("#define E_PENDING _HRESULT_TYPEDEF_(0x8000000AL)")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#define INET_E_INVALID_URL _HRESULT_TYPEDEF_(0x800C0002L)")
cpp_quote("#define INET_E_NO_SESSION _HRESULT_TYPEDEF_(0x800C0003L)")
cpp_quote("#define INET_E_CANNOT_CONNECT _HRESULT_TYPEDEF_(0x800C0004L)")
cpp_quote("#define INET_E_RESOURCE_NOT_FOUND _HRESULT_TYPEDEF_(0x800C0005L)")
cpp_quote("#define INET_E_OBJECT_NOT_FOUND _HRESULT_TYPEDEF_(0x800C0006L)")
cpp_quote("#define INET_E_DATA_NOT_AVAILABLE _HRESULT_TYPEDEF_(0x800C0007L)")
cpp_quote("#define INET_E_DOWNLOAD_FAILURE _HRESULT_TYPEDEF_(0x800C0008L)")
cpp_quote("#define INET_E_AUTHENTICATION_REQUIRED _HRESULT_TYPEDEF_(0x800C0009L)")
cpp_quote("#define INET_E_NO_VALID_MEDIA _HRESULT_TYPEDEF_(0x800C000AL)")
cpp_quote("#define INET_E_CONNECTION_TIMEOUT _HRESULT_TYPEDEF_(0x800C000BL)")
cpp_quote("#define INET_E_INVALID_REQUEST _HRESULT_TYPEDEF_(0x800C000CL)")
cpp_quote("#define INET_E_UNKNOWN_PROTOCOL _HRESULT_TYPEDEF_(0x800C000DL)")
cpp_quote("#define INET_E_SECURITY_PROBLEM _HRESULT_TYPEDEF_(0x800C000EL)")
cpp_quote("#define INET_E_CANNOT_LOAD_DATA _HRESULT_TYPEDEF_(0x800C000FL)")
cpp_quote("#define INET_E_CANNOT_INSTANTIATE_OBJECT _HRESULT_TYPEDEF_(0x800C0010L)")
cpp_quote("#define INET_E_REDIRECT_FAILED _HRESULT_TYPEDEF_(0x800C0014L)")
cpp_quote("#define INET_E_REDIRECT_TO_DIR _HRESULT_TYPEDEF_(0x800C0015L)")
cpp_quote("#define INET_E_CANNOT_LOCK_REQUEST _HRESULT_TYPEDEF_(0x800C0016L)")
cpp_quote("#define INET_E_USE_EXTEND_BINDING _HRESULT_TYPEDEF_(0x800C0017L)")
cpp_quote("#define INET_E_TERMINATED_BIND _HRESULT_TYPEDEF_(0x800C0018L)")
cpp_quote("#define INET_E_ERROR_FIRST _HRESULT_TYPEDEF_(0x800C0002L)")
cpp_quote("#define INET_E_CODE_DOWNLOAD_DECLINED _HRESULT_TYPEDEF_(0x800C0100L)")
cpp_quote("#define INET_E_RESULT_DISPATCHED _HRESULT_TYPEDEF_(0x800C0200L)")
cpp_quote("#define INET_E_CANNOT_REPLACE_SFP_FILE _HRESULT_TYPEDEF_(0x800C0300L)")
cpp_quote("#define INET_E_CODE_INSTALL_SUPPRESSED _HRESULT_TYPEDEF_(0x800C0400L)")
cpp_quote("#define INET_E_ERROR_LAST INET_E_CANNOT_REPLACE_SFP_FILE")
cpp_quote("")
cpp_quote("#ifndef _LPPERSISTMONIKER_DEFINED")
cpp_quote("#define _LPPERSISTMONIKER_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_v0_0_s_ifspec;")
cpp_quote("#ifndef __IPersistMoniker_INTERFACE_DEFINED__")
cpp_quote("#define __IPersistMoniker_INTERFACE_DEFINED__")
cpp_quote("  typedef IPersistMoniker *LPPERSISTMONIKER;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IPersistMoniker;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IPersistMoniker : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetClassID(CLSID *pClassID) = 0;")
cpp_quote("    virtual HRESULT WINAPI IsDirty(void) = 0;")
cpp_quote("    virtual HRESULT WINAPI Load(WINBOOL fFullyAvailable,IMoniker *pimkName,LPBC pibc,DWORD grfMode) = 0;")
cpp_quote("    virtual HRESULT WINAPI Save(IMoniker *pimkName,LPBC pbc,WINBOOL fRemember) = 0;")
cpp_quote("    virtual HRESULT WINAPI SaveCompleted(IMoniker *pimkName,LPBC pibc) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetCurMoniker(IMoniker **ppimkName) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IPersistMonikerVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IPersistMoniker *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IPersistMoniker *This);")
cpp_quote("      ULONG (WINAPI *Release)(IPersistMoniker *This);")
cpp_quote("      HRESULT (WINAPI *GetClassID)(IPersistMoniker *This,CLSID *pClassID);")
cpp_quote("      HRESULT (WINAPI *IsDirty)(IPersistMoniker *This);")
cpp_quote("      HRESULT (WINAPI *Load)(IPersistMoniker *This,WINBOOL fFullyAvailable,IMoniker *pimkName,LPBC pibc,DWORD grfMode);")
cpp_quote("      HRESULT (WINAPI *Save)(IPersistMoniker *This,IMoniker *pimkName,LPBC pbc,WINBOOL fRemember);")
cpp_quote("      HRESULT (WINAPI *SaveCompleted)(IPersistMoniker *This,IMoniker *pimkName,LPBC pibc);")
cpp_quote("      HRESULT (WINAPI *GetCurMoniker)(IPersistMoniker *This,IMoniker **ppimkName);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IPersistMonikerVtbl;")
cpp_quote("  struct IPersistMoniker {")
cpp_quote("    CONST_VTBL struct IPersistMonikerVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IPersistMoniker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IPersistMoniker_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IPersistMoniker_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IPersistMoniker_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID)")
cpp_quote("#define IPersistMoniker_IsDirty(This) (This)->lpVtbl->IsDirty(This)")
cpp_quote("#define IPersistMoniker_Load(This,fFullyAvailable,pimkName,pibc,grfMode) (This)->lpVtbl->Load(This,fFullyAvailable,pimkName,pibc,grfMode)")
cpp_quote("#define IPersistMoniker_Save(This,pimkName,pbc,fRemember) (This)->lpVtbl->Save(This,pimkName,pbc,fRemember)")
cpp_quote("#define IPersistMoniker_SaveCompleted(This,pimkName,pibc) (This)->lpVtbl->SaveCompleted(This,pimkName,pibc)")
cpp_quote("#define IPersistMoniker_GetCurMoniker(This,ppimkName) (This)->lpVtbl->GetCurMoniker(This,ppimkName)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IPersistMoniker_GetClassID_Proxy(IPersistMoniker *This,CLSID *pClassID);")
cpp_quote("  void __RPC_STUB IPersistMoniker_GetClassID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IPersistMoniker_IsDirty_Proxy(IPersistMoniker *This);")
cpp_quote("  void __RPC_STUB IPersistMoniker_IsDirty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IPersistMoniker_Load_Proxy(IPersistMoniker *This,WINBOOL fFullyAvailable,IMoniker *pimkName,LPBC pibc,DWORD grfMode);")
cpp_quote("  void __RPC_STUB IPersistMoniker_Load_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IPersistMoniker_Save_Proxy(IPersistMoniker *This,IMoniker *pimkName,LPBC pbc,WINBOOL fRemember);")
cpp_quote("  void __RPC_STUB IPersistMoniker_Save_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IPersistMoniker_SaveCompleted_Proxy(IPersistMoniker *This,IMoniker *pimkName,LPBC pibc);")
cpp_quote("  void __RPC_STUB IPersistMoniker_SaveCompleted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IPersistMoniker_GetCurMoniker_Proxy(IPersistMoniker *This,IMoniker **ppimkName);")
cpp_quote("  void __RPC_STUB IPersistMoniker_GetCurMoniker_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPMONIKERPROP_DEFINED")
cpp_quote("#define _LPMONIKERPROP_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0178_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0178_v0_0_s_ifspec;")
cpp_quote("#ifndef __IMonikerProp_INTERFACE_DEFINED__")
cpp_quote("#define __IMonikerProp_INTERFACE_DEFINED__")
cpp_quote("  typedef IMonikerProp *LPMONIKERPROP;")
cpp_quote("")
cpp_quote("  typedef enum __MIDL_IMonikerProp_0001 {")
cpp_quote("    MIMETYPEPROP = 0,USE_SRC_URL = 0x1,CLASSIDPROP = 0x2,TRUSTEDDOWNLOADPROP = 0x3,POPUPLEVELPROP = 0x4")
cpp_quote("  } MONIKERPROPERTY;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IMonikerProp;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IMonikerProp : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI PutProperty(MONIKERPROPERTY mkp,LPCWSTR val) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IMonikerPropVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IMonikerProp *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IMonikerProp *This);")
cpp_quote("      ULONG (WINAPI *Release)(IMonikerProp *This);")
cpp_quote("      HRESULT (WINAPI *PutProperty)(IMonikerProp *This,MONIKERPROPERTY mkp,LPCWSTR val);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IMonikerPropVtbl;")
cpp_quote("  struct IMonikerProp {")
cpp_quote("    CONST_VTBL struct IMonikerPropVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IMonikerProp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IMonikerProp_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IMonikerProp_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IMonikerProp_PutProperty(This,mkp,val) (This)->lpVtbl->PutProperty(This,mkp,val)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IMonikerProp_PutProperty_Proxy(IMonikerProp *This,MONIKERPROPERTY mkp,LPCWSTR val);")
cpp_quote("  void __RPC_STUB IMonikerProp_PutProperty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPBINDPROTOCOL_DEFINED")
cpp_quote("#define _LPBINDPROTOCOL_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0179_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0179_v0_0_s_ifspec;")
cpp_quote("#ifndef __IBindProtocol_INTERFACE_DEFINED__")
cpp_quote("#define __IBindProtocol_INTERFACE_DEFINED__")
cpp_quote("  typedef IBindProtocol *LPBINDPROTOCOL;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IBindProtocol;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IBindProtocol : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI CreateBinding(LPCWSTR szUrl,IBindCtx *pbc,IBinding **ppb) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IBindProtocolVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IBindProtocol *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IBindProtocol *This);")
cpp_quote("      ULONG (WINAPI *Release)(IBindProtocol *This);")
cpp_quote("      HRESULT (WINAPI *CreateBinding)(IBindProtocol *This,LPCWSTR szUrl,IBindCtx *pbc,IBinding **ppb);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IBindProtocolVtbl;")
cpp_quote("  struct IBindProtocol {")
cpp_quote("    CONST_VTBL struct IBindProtocolVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IBindProtocol_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IBindProtocol_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IBindProtocol_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IBindProtocol_CreateBinding(This,szUrl,pbc,ppb) (This)->lpVtbl->CreateBinding(This,szUrl,pbc,ppb)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IBindProtocol_CreateBinding_Proxy(IBindProtocol *This,LPCWSTR szUrl,IBindCtx *pbc,IBinding **ppb);")
cpp_quote("  void __RPC_STUB IBindProtocol_CreateBinding_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")

cpp_quote("#ifndef _LPBINDING_DEFINED")
cpp_quote("#define _LPBINDING_DEFINED")

[
    object,
    uuid(79eac9c0-baf9-11ce-8c82-00aa004ba90b),
    pointer_default(unique)
]
interface IBinding: IUnknown
{
    typedef [unique] IBinding *LPBINDING;

    HRESULT Abort();
    HRESULT Suspend();
    HRESULT Resume();
    HRESULT SetPriority([in] LONG nPriority);
    HRESULT GetPriority([out] LONG *pnPriority);

    [local]
    HRESULT GetBindResult(
            [out] CLSID *pclsidProtocol,
            [out] DWORD *pdwResult,
            [out] LPOLESTR *pszResult,
            [in, out] DWORD *pdwReserved);
    [call_as(GetBindResult)]
    HRESULT RemoteGetBindResult(
            [out] CLSID *pclsidProtocol,
            [out] DWORD *pdwResult,
            [out] LPOLESTR *pszResult,
            [in] DWORD dwReserved);
}

cpp_quote("#endif")

cpp_quote("#ifndef _LPBINDSTATUSCALLBACK_DEFINED")
cpp_quote("#define _LPBINDSTATUSCALLBACK_DEFINED")

[
    object,
    uuid(79eac9c1-baf9-11ce-8c82-00aa004ba90b),
    pointer_default(unique)
]
interface IBindStatusCallback: IUnknown
{
    typedef [unique] IBindStatusCallback *LPBINDSTATUSCALLBACK;

    typedef enum {
        BINDVERB_GET = 0,
        BINDVERB_POST = 1,
        BINDVERB_PUT = 2,
        BINDVERB_CUSTOM = 3
    } BINDVERB;

    typedef enum  {
        BINDINFOF_URLENCODESTGMEDDATA = 0x1,
        BINDINFOF_URLENCODEDEXTRAINFO = 0x2
    } BINDINFOF;

    typedef enum {
        BINDF_ASYNCHRONOUS = 0x1,
        BINDF_ASYNCSTORAGE = 0x2,
        BINDF_NOPROGRESSIVERENDERING = 0x4,
        BINDF_OFFLINEOPERATION = 0x8,
        BINDF_GETNEWESTVERSION = 0x10,
        BINDF_NOWRITECACHE = 0x20,
        BINDF_NEEDFILE = 0x40,
        BINDF_PULLDATA = 0x80,
        BINDF_IGNORESECURITYPROBLEM = 0x100,
        BINDF_RESYNCHRONIZE = 0x200,
        BINDF_HYPERLINK = 0x400,
        BINDF_NO_UI = 0x800,
        BINDF_SILENTOPERATION = 0x1000,
        BINDF_PRAGMA_NO_CACHE = 0x2000,
        BINDF_GETCLASSOBJECT = 0x4000,
        BINDF_RESERVED_1 = 0x8000,
        BINDF_FREE_THREADED = 0x10000,
        BINDF_DIRECT_READ = 0x20000,
        BINDF_FORMS_SUBMIT = 0x40000,
        BINDF_GETFROMCACHE_IF_NET_FAIL = 0x80000,
        BINDF_FROMURLMON = 0x100000,
        BINDF_FWD_BACK = 0x200000,
        BINDF_PREFERDEFAULTHANDLER = 0x400000,
        BINDF_ENFORCERESTRICTED = 0x800000
    } BINDF;

    typedef enum {
        URL_ENCODING_NONE = 0,
        URL_ENCODING_ENABLE_UTF8 = 0x10000000,
        URL_ENCODING_DISABLE_UTF8 = 0x20000000
    } URL_ENCODING;

    typedef struct _tagBINDINFO {
        ULONG cbSize;
        LPWSTR szExtraInfo;
        STGMEDIUM stgmedData;
        DWORD grfBindInfoF;
        DWORD dwBindVerb;
        LPWSTR szCustomVerb;
        DWORD cbstgmedData;
        DWORD dwOptions;
        DWORD dwOptionsFlags;
        DWORD dwCodePage;
        SECURITY_ATTRIBUTES securityAttributes;
        IID iid;
        IUnknown *pUnk;
        DWORD dwReserved;
    } BINDINFO;

    typedef struct _REMSECURITY_ATTRIBUTES {
        DWORD nLength;
        DWORD lpSecurityDescriptor;
        BOOL bInheritHandle;
    } REMSECURITY_ATTRIBUTES, *PREMSECURITY_ATTRIBUTES, *LPREMSECURITY_ATTRIBUTES;

    typedef struct _tagRemBINDINFO {
        ULONG cbSize;
        LPWSTR szExtraInfo;
        DWORD grfBindInfoF;
        DWORD dwBindVerb;
        LPWSTR szCustomVerb;
        DWORD cbstgmedData;
        DWORD dwOptions;
        DWORD dwOptionsFlags;
        DWORD dwCodePage;
        REMSECURITY_ATTRIBUTES securityAttributes;
        IID iid;
        IUnknown *pUnk;
        DWORD dwReserved;
    } RemBINDINFO;

    typedef struct tagRemFORMATETC {
        DWORD cfFormat;
        DWORD ptd;
        DWORD dwAspect;
        LONG lindex;
        DWORD tymed;
    } RemFORMATETC, *LPREMFORMATETC;

    typedef enum {
        BINDINFO_OPTIONS_WININETFLAG = 0x10000,
        BINDINFO_OPTIONS_ENABLE_UTF8 = 0x20000,
        BINDINFO_OPTIONS_DISABLE_UTF8 = 0x40000,
        BINDINFO_OPTIONS_USE_IE_ENCODING = 0x80000,
        BINDINFO_OPTIONS_BINDTOOBJECT = 0x100000,
        BINDINFO_OPTIONS_SECURITYOPTOUT = 0x200000,
        BINDINFO_OPTIONS_IGNOREMIMETEXTPLAIN = 0x400000,
        BINDINFO_OPTIONS_USEBINDSTRINGCREDS = 0x800000,
        BINDINFO_OPTIONS_IGNOREHTTPHTTPSREDIRECTS = 0x1000000,
        BINDINFO_OPTIONS_SHDOCVW_NAVIGATE = 0x80000000
    } BINDINFO_OPTIONS;

    typedef enum {
        BSCF_FIRSTDATANOTIFICATION = 0x1,
        BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
        BSCF_LASTDATANOTIFICATION = 0x4,
        BSCF_DATAFULLYAVAILABLE = 0x8,
        BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10
    } BSCF;

    typedef enum tagBINDSTATUS {
        BINDSTATUS_FINDINGRESOURCE = 1,
        BINDSTATUS_CONNECTING,
        BINDSTATUS_REDIRECTING,
        BINDSTATUS_BEGINDOWNLOADDATA,
        BINDSTATUS_DOWNLOADINGDATA,
        BINDSTATUS_ENDDOWNLOADDATA,
        BINDSTATUS_BEGINDOWNLOADCOMPONENTS,
        BINDSTATUS_INSTALLINGCOMPONENTS,
        BINDSTATUS_ENDDOWNLOADCOMPONENTS,
        BINDSTATUS_USINGCACHEDCOPY,
        BINDSTATUS_SENDINGREQUEST,
        BINDSTATUS_CLASSIDAVAILABLE,
        BINDSTATUS_MIMETYPEAVAILABLE,
        BINDSTATUS_CACHEFILENAMEAVAILABLE,
        BINDSTATUS_BEGINSYNCOPERATION,
        BINDSTATUS_ENDSYNCOPERATION,
        BINDSTATUS_BEGINUPLOADDATA,
        BINDSTATUS_UPLOADINGDATA,
        BINDSTATUS_ENDUPLOADDATA,
        BINDSTATUS_PROTOCOLCLASSID,
        BINDSTATUS_ENCODING,
        BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE,
        BINDSTATUS_CLASSINSTALLLOCATION,
        BINDSTATUS_DECODING,
        BINDSTATUS_LOADINGMIMEHANDLER,
        BINDSTATUS_CONTENTDISPOSITIONATTACH,
        BINDSTATUS_FILTERREPORTMIMETYPE,
        BINDSTATUS_CLSIDCANINSTANTIATE,
        BINDSTATUS_IUNKNOWNAVAILABLE,
        BINDSTATUS_DIRECTBIND,
        BINDSTATUS_RAWMIMETYPE,
        BINDSTATUS_PROXYDETECTING,
        BINDSTATUS_ACCEPTRANGES,
        BINDSTATUS_COOKIE_SENT,
        BINDSTATUS_COMPACT_POLICY_RECEIVED,
        BINDSTATUS_COOKIE_SUPPRESSED,
        BINDSTATUS_COOKIE_STATE_UNKNOWN,
        BINDSTATUS_COOKIE_STATE_ACCEPT,
        BINDSTATUS_COOKIE_STATE_REJECT,
        BINDSTATUS_COOKIE_STATE_PROMPT,
        BINDSTATUS_COOKIE_STATE_LEASH,
        BINDSTATUS_COOKIE_STATE_DOWNGRADE,
        BINDSTATUS_POLICY_HREF,
        BINDSTATUS_P3P_HEADER,
        BINDSTATUS_SESSION_COOKIE_RECEIVED,
        BINDSTATUS_PERSISTENT_COOKIE_RECEIVED,
        BINDSTATUS_SESSION_COOKIES_ALLOWED,
        BINDSTATUS_CACHECONTROL,
        BINDSTATUS_CONTENTDISPOSITIONFILENAME,
        BINDSTATUS_MIMETEXTPLAINMISMATCH,
        BINDSTATUS_PUBLISHERAVAILABLE,
        BINDSTATUS_DISPLAYNAMEAVAILABLE
    } BINDSTATUS;

    HRESULT OnStartBinding(
            [in] DWORD dwReserved,
            [in] IBinding *pib);

    HRESULT GetPriority([out] LONG *pnPriority);
    HRESULT OnLowResource([in] DWORD reserved);

    HRESULT OnProgress(
            [in] ULONG ulProgress,
            [in] ULONG ulProgressMax,
            [in] ULONG ulStatusCode,
            [in, unique] LPCWSTR szStatusText);

    HRESULT OnStopBinding(
            [in] HRESULT hresult,
            [in, unique] LPCWSTR szError);

    [local]
    HRESULT GetBindInfo(
            [out] DWORD *grfBINDF,
            [in, out, unique] BINDINFO *pbindinfo);
    [call_as(GetBindInfo)]
    HRESULT RemoteGetBindInfo(
            [out] DWORD *grfBINDF,
            [in, out, unique] RemBINDINFO *pbindinfo,
            [in, out, unique] RemSTGMEDIUM *pstgmed);

    [local]
    HRESULT OnDataAvailable(
            [in] DWORD grfBSCF,
            [in] DWORD dwSize,
            [in] FORMATETC *pformatetc,
            [in] STGMEDIUM *pstgmed);
    [call_as(OnDataAvailable)]
    HRESULT RemoteOnDataAvailable(
            [in] DWORD grfBSCF,
            [in] DWORD dwSize,
            [in] RemFORMATETC *pformatetc,
            [in] RemSTGMEDIUM *pstgmed);

    HRESULT OnObjectAvailable(
            [in] REFIID riid,
            [in, iid_is(riid)] IUnknown *punk);
}

cpp_quote("#endif")

cpp_quote("#ifndef _LPAUTHENTICATION_DEFINED")
cpp_quote("#define _LPAUTHENTICATION_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0182_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0182_v0_0_s_ifspec;")
cpp_quote("#ifndef __IAuthenticate_INTERFACE_DEFINED__")
cpp_quote("#define __IAuthenticate_INTERFACE_DEFINED__")
cpp_quote("  typedef IAuthenticate *LPAUTHENTICATION;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IAuthenticate;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IAuthenticate : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI Authenticate(HWND *phwnd,LPWSTR *pszUsername,LPWSTR *pszPassword) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IAuthenticateVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IAuthenticate *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IAuthenticate *This);")
cpp_quote("      ULONG (WINAPI *Release)(IAuthenticate *This);")
cpp_quote("      HRESULT (WINAPI *Authenticate)(IAuthenticate *This,HWND *phwnd,LPWSTR *pszUsername,LPWSTR *pszPassword);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IAuthenticateVtbl;")
cpp_quote("  struct IAuthenticate {")
cpp_quote("    CONST_VTBL struct IAuthenticateVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IAuthenticate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IAuthenticate_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IAuthenticate_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IAuthenticate_Authenticate(This,phwnd,pszUsername,pszPassword) (This)->lpVtbl->Authenticate(This,phwnd,pszUsername,pszPassword)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IAuthenticate_Authenticate_Proxy(IAuthenticate *This,HWND *phwnd,LPWSTR *pszUsername,LPWSTR *pszPassword);")
cpp_quote("  void __RPC_STUB IAuthenticate_Authenticate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPHTTPNEGOTIATE_DEFINED")
cpp_quote("#define _LPHTTPNEGOTIATE_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0183_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0183_v0_0_s_ifspec;")
cpp_quote("#ifndef __IHttpNegotiate_INTERFACE_DEFINED__")
cpp_quote("#define __IHttpNegotiate_INTERFACE_DEFINED__")
cpp_quote("  typedef IHttpNegotiate *LPHTTPNEGOTIATE;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IHttpNegotiate;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IHttpNegotiate : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI BeginningTransaction(LPCWSTR szURL,LPCWSTR szHeaders,DWORD dwReserved,LPWSTR *pszAdditionalHeaders) = 0;")
cpp_quote("    virtual HRESULT WINAPI OnResponse(DWORD dwResponseCode,LPCWSTR szResponseHeaders,LPCWSTR szRequestHeaders,LPWSTR *pszAdditionalRequestHeaders) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IHttpNegotiateVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IHttpNegotiate *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IHttpNegotiate *This);")
cpp_quote("      ULONG (WINAPI *Release)(IHttpNegotiate *This);")
cpp_quote("      HRESULT (WINAPI *BeginningTransaction)(IHttpNegotiate *This,LPCWSTR szURL,LPCWSTR szHeaders,DWORD dwReserved,LPWSTR *pszAdditionalHeaders);")
cpp_quote("      HRESULT (WINAPI *OnResponse)(IHttpNegotiate *This,DWORD dwResponseCode,LPCWSTR szResponseHeaders,LPCWSTR szRequestHeaders,LPWSTR *pszAdditionalRequestHeaders);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IHttpNegotiateVtbl;")
cpp_quote("  struct IHttpNegotiate {")
cpp_quote("    CONST_VTBL struct IHttpNegotiateVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IHttpNegotiate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IHttpNegotiate_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IHttpNegotiate_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IHttpNegotiate_BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders) (This)->lpVtbl->BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders)")
cpp_quote("#define IHttpNegotiate_OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders) (This)->lpVtbl->OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IHttpNegotiate_BeginningTransaction_Proxy(IHttpNegotiate *This,LPCWSTR szURL,LPCWSTR szHeaders,DWORD dwReserved,LPWSTR *pszAdditionalHeaders);")
cpp_quote("  void __RPC_STUB IHttpNegotiate_BeginningTransaction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IHttpNegotiate_OnResponse_Proxy(IHttpNegotiate *This,DWORD dwResponseCode,LPCWSTR szResponseHeaders,LPCWSTR szRequestHeaders,LPWSTR *pszAdditionalRequestHeaders);")
cpp_quote("  void __RPC_STUB IHttpNegotiate_OnResponse_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPHTTPNEGOTIATE2_DEFINED")
cpp_quote("#define _LPHTTPNEGOTIATE2_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0184_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0184_v0_0_s_ifspec;")
cpp_quote("#ifndef __IHttpNegotiate2_INTERFACE_DEFINED__")
cpp_quote("#define __IHttpNegotiate2_INTERFACE_DEFINED__")
cpp_quote("  typedef IHttpNegotiate2 *LPHTTPNEGOTIATE2;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IHttpNegotiate2;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IHttpNegotiate2 : public IHttpNegotiate {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetRootSecurityId(BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IHttpNegotiate2Vtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IHttpNegotiate2 *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IHttpNegotiate2 *This);")
cpp_quote("      ULONG (WINAPI *Release)(IHttpNegotiate2 *This);")
cpp_quote("      HRESULT (WINAPI *BeginningTransaction)(IHttpNegotiate2 *This,LPCWSTR szURL,LPCWSTR szHeaders,DWORD dwReserved,LPWSTR *pszAdditionalHeaders);")
cpp_quote("      HRESULT (WINAPI *OnResponse)(IHttpNegotiate2 *This,DWORD dwResponseCode,LPCWSTR szResponseHeaders,LPCWSTR szRequestHeaders,LPWSTR *pszAdditionalRequestHeaders);")
cpp_quote("      HRESULT (WINAPI *GetRootSecurityId)(IHttpNegotiate2 *This,BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IHttpNegotiate2Vtbl;")
cpp_quote("  struct IHttpNegotiate2 {")
cpp_quote("    CONST_VTBL struct IHttpNegotiate2Vtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IHttpNegotiate2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IHttpNegotiate2_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IHttpNegotiate2_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IHttpNegotiate2_BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders) (This)->lpVtbl->BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders)")
cpp_quote("#define IHttpNegotiate2_OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders) (This)->lpVtbl->OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders)")
cpp_quote("#define IHttpNegotiate2_GetRootSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved) (This)->lpVtbl->GetRootSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IHttpNegotiate2_GetRootSecurityId_Proxy(IHttpNegotiate2 *This,BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved);")
cpp_quote("  void __RPC_STUB IHttpNegotiate2_GetRootSecurityId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPWININETFILESTREAM_DEFINED")
cpp_quote("#define _LPWININETFILESTREAM_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0185_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0185_v0_0_s_ifspec;")
cpp_quote("#ifndef __IWinInetFileStream_INTERFACE_DEFINED__")
cpp_quote("#define __IWinInetFileStream_INTERFACE_DEFINED__")
cpp_quote("  typedef IWinInetFileStream *LPWININETFILESTREAM;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IWinInetFileStream;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IWinInetFileStream : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI SetHandleForUnlock(DWORD_PTR hWinInetLockHandle,DWORD_PTR dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI SetDeleteFile(DWORD_PTR dwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IWinInetFileStreamVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IWinInetFileStream *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IWinInetFileStream *This);")
cpp_quote("      ULONG (WINAPI *Release)(IWinInetFileStream *This);")
cpp_quote("      HRESULT (WINAPI *SetHandleForUnlock)(IWinInetFileStream *This,DWORD_PTR hWinInetLockHandle,DWORD_PTR dwReserved);")
cpp_quote("      HRESULT (WINAPI *SetDeleteFile)(IWinInetFileStream *This,DWORD_PTR dwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IWinInetFileStreamVtbl;")
cpp_quote("  struct IWinInetFileStream {")
cpp_quote("    CONST_VTBL struct IWinInetFileStreamVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IWinInetFileStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IWinInetFileStream_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IWinInetFileStream_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IWinInetFileStream_SetHandleForUnlock(This,hWinInetLockHandle,dwReserved) (This)->lpVtbl->SetHandleForUnlock(This,hWinInetLockHandle,dwReserved)")
cpp_quote("#define IWinInetFileStream_SetDeleteFile(This,dwReserved) (This)->lpVtbl->SetDeleteFile(This,dwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IWinInetFileStream_SetHandleForUnlock_Proxy(IWinInetFileStream *This,DWORD_PTR hWinInetLockHandle,DWORD_PTR dwReserved);")
cpp_quote("  void __RPC_STUB IWinInetFileStream_SetHandleForUnlock_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IWinInetFileStream_SetDeleteFile_Proxy(IWinInetFileStream *This,DWORD_PTR dwReserved);")
cpp_quote("  void __RPC_STUB IWinInetFileStream_SetDeleteFile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPWINDOWFORBINDINGUI_DEFINED")
cpp_quote("#define _LPWINDOWFORBINDINGUI_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0186_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0186_v0_0_s_ifspec;")
cpp_quote("#ifndef __IWindowForBindingUI_INTERFACE_DEFINED__")
cpp_quote("#define __IWindowForBindingUI_INTERFACE_DEFINED__")
cpp_quote("  typedef IWindowForBindingUI *LPWINDOWFORBINDINGUI;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IWindowForBindingUI;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IWindowForBindingUI : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetWindow(REFGUID rguidReason,HWND *phwnd) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IWindowForBindingUIVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IWindowForBindingUI *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IWindowForBindingUI *This);")
cpp_quote("      ULONG (WINAPI *Release)(IWindowForBindingUI *This);")
cpp_quote("      HRESULT (WINAPI *GetWindow)(IWindowForBindingUI *This,REFGUID rguidReason,HWND *phwnd);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IWindowForBindingUIVtbl;")
cpp_quote("  struct IWindowForBindingUI {")
cpp_quote("    CONST_VTBL struct IWindowForBindingUIVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IWindowForBindingUI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IWindowForBindingUI_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IWindowForBindingUI_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IWindowForBindingUI_GetWindow(This,rguidReason,phwnd) (This)->lpVtbl->GetWindow(This,rguidReason,phwnd)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IWindowForBindingUI_GetWindow_Proxy(IWindowForBindingUI *This,REFGUID rguidReason,HWND *phwnd);")
cpp_quote("  void __RPC_STUB IWindowForBindingUI_GetWindow_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPCODEINSTALL_DEFINED")
cpp_quote("#define _LPCODEINSTALL_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0187_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0187_v0_0_s_ifspec;")
cpp_quote("#ifndef __ICodeInstall_INTERFACE_DEFINED__")
cpp_quote("#define __ICodeInstall_INTERFACE_DEFINED__")
cpp_quote("  typedef ICodeInstall *LPCODEINSTALL;")
cpp_quote("")
cpp_quote("  typedef enum __MIDL_ICodeInstall_0001 {")
cpp_quote("    CIP_DISK_FULL = 0,")
cpp_quote("    CIP_ACCESS_DENIED,CIP_NEWER_VERSION_EXISTS,CIP_OLDER_VERSION_EXISTS,")
cpp_quote("    CIP_NAME_CONFLICT,CIP_TRUST_VERIFICATION_COMPONENT_MISSING,CIP_EXE_SELF_REGISTERATION_TIMEOUT,")
cpp_quote("    CIP_UNSAFE_TO_ABORT,CIP_NEED_REBOOT,CIP_NEED_REBOOT_UI_PERMISSION")
cpp_quote("  } CIP_STATUS;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_ICodeInstall;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct ICodeInstall : public IWindowForBindingUI {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI OnCodeInstallProblem(ULONG ulStatusCode,LPCWSTR szDestination,LPCWSTR szSource,DWORD dwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct ICodeInstallVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(ICodeInstall *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(ICodeInstall *This);")
cpp_quote("      ULONG (WINAPI *Release)(ICodeInstall *This);")
cpp_quote("      HRESULT (WINAPI *GetWindow)(ICodeInstall *This,REFGUID rguidReason,HWND *phwnd);")
cpp_quote("      HRESULT (WINAPI *OnCodeInstallProblem)(ICodeInstall *This,ULONG ulStatusCode,LPCWSTR szDestination,LPCWSTR szSource,DWORD dwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } ICodeInstallVtbl;")
cpp_quote("  struct ICodeInstall {")
cpp_quote("    CONST_VTBL struct ICodeInstallVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define ICodeInstall_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define ICodeInstall_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define ICodeInstall_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define ICodeInstall_GetWindow(This,rguidReason,phwnd) (This)->lpVtbl->GetWindow(This,rguidReason,phwnd)")
cpp_quote("#define ICodeInstall_OnCodeInstallProblem(This,ulStatusCode,szDestination,szSource,dwReserved) (This)->lpVtbl->OnCodeInstallProblem(This,ulStatusCode,szDestination,szSource,dwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI ICodeInstall_OnCodeInstallProblem_Proxy(ICodeInstall *This,ULONG ulStatusCode,LPCWSTR szDestination,LPCWSTR szSource,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB ICodeInstall_OnCodeInstallProblem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPWININETINFO_DEFINED")
cpp_quote("#define _LPWININETINFO_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0188_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0188_v0_0_s_ifspec;")
cpp_quote("#ifndef __IWinInetInfo_INTERFACE_DEFINED__")
cpp_quote("#define __IWinInetInfo_INTERFACE_DEFINED__")
cpp_quote("  typedef IWinInetInfo *LPWININETINFO;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IWinInetInfo;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IWinInetInfo : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI QueryOption(DWORD dwOption,LPVOID pBuffer,DWORD *pcbBuf) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IWinInetInfoVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IWinInetInfo *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IWinInetInfo *This);")
cpp_quote("      ULONG (WINAPI *Release)(IWinInetInfo *This);")
cpp_quote("      HRESULT (WINAPI *QueryOption)(IWinInetInfo *This,DWORD dwOption,LPVOID pBuffer,DWORD *pcbBuf);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IWinInetInfoVtbl;")
cpp_quote("  struct IWinInetInfo {")
cpp_quote("    CONST_VTBL struct IWinInetInfoVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IWinInetInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IWinInetInfo_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IWinInetInfo_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IWinInetInfo_QueryOption(This,dwOption,pBuffer,pcbBuf) (This)->lpVtbl->QueryOption(This,dwOption,pBuffer,pcbBuf)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IWinInetInfo_RemoteQueryOption_Proxy(IWinInetInfo *This,DWORD dwOption,BYTE *pBuffer,DWORD *pcbBuf);")
cpp_quote("  void __RPC_STUB IWinInetInfo_RemoteQueryOption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("#define WININETINFO_OPTION_LOCK_HANDLE 65534")
cpp_quote("")
cpp_quote("#ifndef _LPHTTPSECURITY_DEFINED")
cpp_quote("#define _LPHTTPSECURITY_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0189_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0189_v0_0_s_ifspec;")
cpp_quote("#ifndef __IHttpSecurity_INTERFACE_DEFINED__")
cpp_quote("#define __IHttpSecurity_INTERFACE_DEFINED__")
cpp_quote("")
cpp_quote("  typedef IHttpSecurity *LPHTTPSECURITY;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IHttpSecurity;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IHttpSecurity : public IWindowForBindingUI {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI OnSecurityProblem(DWORD dwProblem) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IHttpSecurityVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IHttpSecurity *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IHttpSecurity *This);")
cpp_quote("      ULONG (WINAPI *Release)(IHttpSecurity *This);")
cpp_quote("      HRESULT (WINAPI *GetWindow)(IHttpSecurity *This,REFGUID rguidReason,HWND *phwnd);")
cpp_quote("      HRESULT (WINAPI *OnSecurityProblem)(IHttpSecurity *This,DWORD dwProblem);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IHttpSecurityVtbl;")
cpp_quote("  struct IHttpSecurity {")
cpp_quote("    CONST_VTBL struct IHttpSecurityVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IHttpSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IHttpSecurity_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IHttpSecurity_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IHttpSecurity_GetWindow(This,rguidReason,phwnd) (This)->lpVtbl->GetWindow(This,rguidReason,phwnd)")
cpp_quote("#define IHttpSecurity_OnSecurityProblem(This,dwProblem) (This)->lpVtbl->OnSecurityProblem(This,dwProblem)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IHttpSecurity_OnSecurityProblem_Proxy(IHttpSecurity *This,DWORD dwProblem);")
cpp_quote("  void __RPC_STUB IHttpSecurity_OnSecurityProblem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPWININETHTTPINFO_DEFINED")
cpp_quote("#define _LPWININETHTTPINFO_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0190_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0190_v0_0_s_ifspec;")
cpp_quote("#ifndef __IWinInetHttpInfo_INTERFACE_DEFINED__")
cpp_quote("#define __IWinInetHttpInfo_INTERFACE_DEFINED__")
cpp_quote("  typedef IWinInetHttpInfo *LPWININETHTTPINFO;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IWinInetHttpInfo;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IWinInetHttpInfo : public IWinInetInfo {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI QueryInfo(DWORD dwOption,LPVOID pBuffer,DWORD *pcbBuf,DWORD *pdwFlags,DWORD *pdwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IWinInetHttpInfoVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IWinInetHttpInfo *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IWinInetHttpInfo *This);")
cpp_quote("      ULONG (WINAPI *Release)(IWinInetHttpInfo *This);")
cpp_quote("      HRESULT (WINAPI *QueryOption)(IWinInetHttpInfo *This,DWORD dwOption,LPVOID pBuffer,DWORD *pcbBuf);")
cpp_quote("      HRESULT (WINAPI *QueryInfo)(IWinInetHttpInfo *This,DWORD dwOption,LPVOID pBuffer,DWORD *pcbBuf,DWORD *pdwFlags,DWORD *pdwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IWinInetHttpInfoVtbl;")
cpp_quote("  struct IWinInetHttpInfo {")
cpp_quote("    CONST_VTBL struct IWinInetHttpInfoVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IWinInetHttpInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IWinInetHttpInfo_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IWinInetHttpInfo_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IWinInetHttpInfo_QueryOption(This,dwOption,pBuffer,pcbBuf) (This)->lpVtbl->QueryOption(This,dwOption,pBuffer,pcbBuf)")
cpp_quote("#define IWinInetHttpInfo_QueryInfo(This,dwOption,pBuffer,pcbBuf,pdwFlags,pdwReserved) (This)->lpVtbl->QueryInfo(This,dwOption,pBuffer,pcbBuf,pdwFlags,pdwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IWinInetHttpInfo_RemoteQueryInfo_Proxy(IWinInetHttpInfo *This,DWORD dwOption,BYTE *pBuffer,DWORD *pcbBuf,DWORD *pdwFlags,DWORD *pdwReserved);")
cpp_quote("  void __RPC_STUB IWinInetHttpInfo_RemoteQueryInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPWININETCACHEHINTS_DEFINED")
cpp_quote("#define _LPWININETCACHEHINTS_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0191_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0191_v0_0_s_ifspec;")
cpp_quote("#ifndef __IWinInetCacheHints_INTERFACE_DEFINED__")
cpp_quote("#define __IWinInetCacheHints_INTERFACE_DEFINED__")
cpp_quote("  typedef IWinInetCacheHints *LPWININETCACHEHINTS;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IWinInetCacheHints;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IWinInetCacheHints : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI SetCacheExtension(LPCWSTR pwzExt,LPVOID pszCacheFile,DWORD *pcbCacheFile,DWORD *pdwWinInetError,DWORD *pdwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IWinInetCacheHintsVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IWinInetCacheHints *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IWinInetCacheHints *This);")
cpp_quote("      ULONG (WINAPI *Release)(IWinInetCacheHints *This);")
cpp_quote("      HRESULT (WINAPI *SetCacheExtension)(IWinInetCacheHints *This,LPCWSTR pwzExt,LPVOID pszCacheFile,DWORD *pcbCacheFile,DWORD *pdwWinInetError,DWORD *pdwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IWinInetCacheHintsVtbl;")
cpp_quote("  struct IWinInetCacheHints {")
cpp_quote("    CONST_VTBL struct IWinInetCacheHintsVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IWinInetCacheHints_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IWinInetCacheHints_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IWinInetCacheHints_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IWinInetCacheHints_SetCacheExtension(This,pwzExt,pszCacheFile,pcbCacheFile,pdwWinInetError,pdwReserved) (This)->lpVtbl->SetCacheExtension(This,pwzExt,pszCacheFile,pcbCacheFile,pdwWinInetError,pdwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IWinInetCacheHints_SetCacheExtension_Proxy(IWinInetCacheHints *This,LPCWSTR pwzExt,LPVOID pszCacheFile,DWORD *pcbCacheFile,DWORD *pdwWinInetError,DWORD *pdwReserved);")
cpp_quote("  void __RPC_STUB IWinInetCacheHints_SetCacheExtension_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#define SID_IBindHost IID_IBindHost")
cpp_quote("#define SID_SBindHost IID_IBindHost")
cpp_quote("#ifndef _LPBINDHOST_DEFINED")
cpp_quote("#define _LPBINDHOST_DEFINED")
cpp_quote("  EXTERN_C const GUID SID_BindHost;")
cpp_quote("")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0192_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0192_v0_0_s_ifspec;")
cpp_quote("#ifndef __IBindHost_INTERFACE_DEFINED__")
cpp_quote("#define __IBindHost_INTERFACE_DEFINED__")
cpp_quote("  typedef IBindHost *LPBINDHOST;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IBindHost;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IBindHost : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI CreateMoniker(LPOLESTR szName,IBindCtx *pBC,IMoniker **ppmk,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI MonikerBindToStorage(IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,void **ppvObj) = 0;")
cpp_quote("    virtual HRESULT WINAPI MonikerBindToObject(IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,void **ppvObj) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IBindHostVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IBindHost *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IBindHost *This);")
cpp_quote("      ULONG (WINAPI *Release)(IBindHost *This);")
cpp_quote("      HRESULT (WINAPI *CreateMoniker)(IBindHost *This,LPOLESTR szName,IBindCtx *pBC,IMoniker **ppmk,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *MonikerBindToStorage)(IBindHost *This,IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,void **ppvObj);")
cpp_quote("      HRESULT (WINAPI *MonikerBindToObject)(IBindHost *This,IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,void **ppvObj);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IBindHostVtbl;")
cpp_quote("  struct IBindHost {")
cpp_quote("    CONST_VTBL struct IBindHostVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IBindHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IBindHost_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IBindHost_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IBindHost_CreateMoniker(This,szName,pBC,ppmk,dwReserved) (This)->lpVtbl->CreateMoniker(This,szName,pBC,ppmk,dwReserved)")
cpp_quote("#define IBindHost_MonikerBindToStorage(This,pMk,pBC,pBSC,riid,ppvObj) (This)->lpVtbl->MonikerBindToStorage(This,pMk,pBC,pBSC,riid,ppvObj)")
cpp_quote("#define IBindHost_MonikerBindToObject(This,pMk,pBC,pBSC,riid,ppvObj) (This)->lpVtbl->MonikerBindToObject(This,pMk,pBC,pBSC,riid,ppvObj)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IBindHost_CreateMoniker_Proxy(IBindHost *This,LPOLESTR szName,IBindCtx *pBC,IMoniker **ppmk,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IBindHost_CreateMoniker_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IBindHost_RemoteMonikerBindToStorage_Proxy(IBindHost *This,IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,IUnknown **ppvObj);")
cpp_quote("  void __RPC_STUB IBindHost_RemoteMonikerBindToStorage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IBindHost_RemoteMonikerBindToObject_Proxy(IBindHost *This,IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,IUnknown **ppvObj);")
cpp_quote("  void __RPC_STUB IBindHost_RemoteMonikerBindToObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#define URLOSTRM_USECACHEDCOPY_ONLY 0x1")
cpp_quote("#define URLOSTRM_USECACHEDCOPY 0x2")
cpp_quote("#define URLOSTRM_GETNEWESTVERSION 0x3")
cpp_quote("")
cpp_quote("  struct IBindStatusCallback;")
cpp_quote("")
cpp_quote("  STDAPI HlinkSimpleNavigateToString(LPCWSTR szTarget,LPCWSTR szLocation,LPCWSTR szTargetFrameName,IUnknown *pUnk,IBindCtx *pbc,IBindStatusCallback *,DWORD grfHLNF,DWORD dwReserved);")
cpp_quote("  STDAPI HlinkSimpleNavigateToMoniker(IMoniker *pmkTarget,LPCWSTR szLocation,LPCWSTR szTargetFrameName,IUnknown *pUnk,IBindCtx *pbc,IBindStatusCallback *,DWORD grfHLNF,DWORD dwReserved);")
cpp_quote("  STDAPI URLOpenStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("  STDAPI URLOpenStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("  STDAPI URLOpenPullStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("  STDAPI URLOpenPullStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("  STDAPI URLDownloadToFileA(LPUNKNOWN,LPCSTR,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("  STDAPI URLDownloadToFileW(LPUNKNOWN,LPCWSTR,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("  STDAPI URLDownloadToCacheFileA(LPUNKNOWN,LPCSTR,LPTSTR,DWORD,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("  STDAPI URLDownloadToCacheFileW(LPUNKNOWN,LPCWSTR,LPWSTR,DWORD,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("  STDAPI URLOpenBlockingStreamA(LPUNKNOWN,LPCSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("  STDAPI URLOpenBlockingStreamW(LPUNKNOWN,LPCWSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);")
cpp_quote("")
cpp_quote("#define URLOpenStream __MINGW_NAME_AW(URLOpenStream)")
cpp_quote("#define URLOpenPullStream __MINGW_NAME_AW(URLOpenPullStream)")
cpp_quote("#define URLDownloadToFile __MINGW_NAME_AW(URLDownloadToFile)")
cpp_quote("#define URLDownloadToCacheFile __MINGW_NAME_AW(URLDownloadToCacheFile)")
cpp_quote("#define URLOpenBlockingStream __MINGW_NAME_AW(URLOpenBlockingStream)")
cpp_quote("")
cpp_quote("  STDAPI HlinkGoBack(IUnknown *pUnk);")
cpp_quote("  STDAPI HlinkGoForward(IUnknown *pUnk);")
cpp_quote("  STDAPI HlinkNavigateString(IUnknown *pUnk,LPCWSTR szTarget);")
cpp_quote("  STDAPI HlinkNavigateMoniker(IUnknown *pUnk,IMoniker *pmkTarget);")
cpp_quote("")
cpp_quote("#ifndef _URLMON_NO_ASYNC_PLUGABLE_PROTOCOLS_")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNET")
cpp_quote("#define _LPIINTERNET")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0193_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0193_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternet_INTERFACE_DEFINED__")
cpp_quote("#define __IInternet_INTERFACE_DEFINED__")
cpp_quote("  typedef IInternet *LPIINTERNET;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternet;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternet : public IUnknown {")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternet *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternet *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternet *This);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetVtbl;")
cpp_quote("  struct IInternet {")
cpp_quote("    CONST_VTBL struct IInternetVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternet_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternet_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNETBINDINFO")
cpp_quote("#define _LPIINTERNETBINDINFO")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0194_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0194_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetBindInfo_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetBindInfo_INTERFACE_DEFINED__")
cpp_quote("")
cpp_quote("  typedef IInternetBindInfo *LPIINTERNETBINDINFO;")
cpp_quote("")
cpp_quote("  typedef enum tagBINDSTRING {")
cpp_quote("    BINDSTRING_HEADERS = 1,")
cpp_quote("    BINDSTRING_ACCEPT_MIMES,BINDSTRING_EXTRA_URL,BINDSTRING_LANGUAGE,BINDSTRING_USERNAME,")
cpp_quote("    BINDSTRING_PASSWORD,BINDSTRING_UA_PIXELS,BINDSTRING_UA_COLOR,BINDSTRING_OS,")
cpp_quote("    BINDSTRING_USER_AGENT,BINDSTRING_ACCEPT_ENCODINGS,BINDSTRING_POST_COOKIE,")
cpp_quote("    BINDSTRING_POST_DATA_MIME,BINDSTRING_URL,BINDSTRING_IID,BINDSTRING_FLAG_BIND_TO_OBJECT,")
cpp_quote("    BINDSTRING_PTR_BIND_CONTEXT")
cpp_quote("  } BINDSTRING;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetBindInfo;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetBindInfo : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetBindInfo(DWORD *grfBINDF,BINDINFO *pbindinfo) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetBindString(ULONG ulStringType,LPOLESTR *ppwzStr,ULONG cEl,ULONG *pcElFetched) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetBindInfoVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetBindInfo *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetBindInfo *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetBindInfo *This);")
cpp_quote("      HRESULT (WINAPI *GetBindInfo)(IInternetBindInfo *This,DWORD *grfBINDF,BINDINFO *pbindinfo);")
cpp_quote("      HRESULT (WINAPI *GetBindString)(IInternetBindInfo *This,ULONG ulStringType,LPOLESTR *ppwzStr,ULONG cEl,ULONG *pcElFetched);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetBindInfoVtbl;")
cpp_quote("  struct IInternetBindInfo {")
cpp_quote("    CONST_VTBL struct IInternetBindInfoVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetBindInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetBindInfo_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetBindInfo_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetBindInfo_GetBindInfo(This,grfBINDF,pbindinfo) (This)->lpVtbl->GetBindInfo(This,grfBINDF,pbindinfo)")
cpp_quote("#define IInternetBindInfo_GetBindString(This,ulStringType,ppwzStr,cEl,pcElFetched) (This)->lpVtbl->GetBindString(This,ulStringType,ppwzStr,cEl,pcElFetched)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetBindInfo_GetBindInfo_Proxy(IInternetBindInfo *This,DWORD *grfBINDF,BINDINFO *pbindinfo);")
cpp_quote("  void __RPC_STUB IInternetBindInfo_GetBindInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetBindInfo_GetBindString_Proxy(IInternetBindInfo *This,ULONG ulStringType,LPOLESTR *ppwzStr,ULONG cEl,ULONG *pcElFetched);")
cpp_quote("  void __RPC_STUB IInternetBindInfo_GetBindString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNETPROTOCOLROOT_DEFINED")
cpp_quote("#define _LPIINTERNETPROTOCOLROOT_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0195_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0195_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetProtocolRoot_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetProtocolRoot_INTERFACE_DEFINED__")
cpp_quote("  typedef IInternetProtocolRoot *LPIINTERNETPROTOCOLROOT;")
cpp_quote("")
cpp_quote("  typedef enum _tagPI_FLAGS {")
cpp_quote("    PI_PARSE_URL = 0x1,PI_FILTER_MODE = 0x2,PI_FORCE_ASYNC = 0x4,PI_USE_WORKERTHREAD = 0x8,PI_MIMEVERIFICATION = 0x10,PI_CLSIDLOOKUP = 0x20,")
cpp_quote("    PI_DATAPROGRESS = 0x40,PI_SYNCHRONOUS = 0x80,PI_APARTMENTTHREADED = 0x100,PI_CLASSINSTALL = 0x200,PI_PASSONBINDCTX = 0x2000,")
cpp_quote("    PI_NOMIMEHANDLER = 0x8000,PI_LOADAPPDIRECT = 0x4000,PD_FORCE_SWITCH = 0x10000,PI_PREFERDEFAULTHANDLER = 0x20000")
cpp_quote("  } PI_FLAGS;")
cpp_quote("")
cpp_quote("  typedef struct _tagPROTOCOLDATA {")
cpp_quote("    DWORD grfFlags;")
cpp_quote("    DWORD dwState;")
cpp_quote("    LPVOID pData;")
cpp_quote("    ULONG cbData;")
cpp_quote("  } PROTOCOLDATA;")
cpp_quote("")
cpp_quote("  typedef struct _tagStartParam {")
cpp_quote("    IID iid;")
cpp_quote("    IBindCtx *pIBindCtx;")
cpp_quote("    IUnknown *pItf;")
cpp_quote("  } StartParam;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetProtocolRoot;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetProtocolRoot : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI Start(LPCWSTR szUrl,IInternetProtocolSink *pOIProtSink,IInternetBindInfo *pOIBindInfo,DWORD grfPI,HANDLE_PTR dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI Continue(PROTOCOLDATA *pProtocolData) = 0;")
cpp_quote("    virtual HRESULT WINAPI Abort(HRESULT hrReason,DWORD dwOptions) = 0;")
cpp_quote("    virtual HRESULT WINAPI Terminate(DWORD dwOptions) = 0;")
cpp_quote("    virtual HRESULT WINAPI Suspend(void) = 0;")
cpp_quote("    virtual HRESULT WINAPI Resume(void) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetProtocolRootVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetProtocolRoot *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetProtocolRoot *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetProtocolRoot *This);")
cpp_quote("      HRESULT (WINAPI *Start)(IInternetProtocolRoot *This,LPCWSTR szUrl,IInternetProtocolSink *pOIProtSink,IInternetBindInfo *pOIBindInfo,DWORD grfPI,HANDLE_PTR dwReserved);")
cpp_quote("      HRESULT (WINAPI *Continue)(IInternetProtocolRoot *This,PROTOCOLDATA *pProtocolData);")
cpp_quote("      HRESULT (WINAPI *Abort)(IInternetProtocolRoot *This,HRESULT hrReason,DWORD dwOptions);")
cpp_quote("      HRESULT (WINAPI *Terminate)(IInternetProtocolRoot *This,DWORD dwOptions);")
cpp_quote("      HRESULT (WINAPI *Suspend)(IInternetProtocolRoot *This);")
cpp_quote("      HRESULT (WINAPI *Resume)(IInternetProtocolRoot *This);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetProtocolRootVtbl;")
cpp_quote("  struct IInternetProtocolRoot {")
cpp_quote("    CONST_VTBL struct IInternetProtocolRootVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetProtocolRoot_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetProtocolRoot_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetProtocolRoot_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetProtocolRoot_Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved)")
cpp_quote("#define IInternetProtocolRoot_Continue(This,pProtocolData) (This)->lpVtbl->Continue(This,pProtocolData)")
cpp_quote("#define IInternetProtocolRoot_Abort(This,hrReason,dwOptions) (This)->lpVtbl->Abort(This,hrReason,dwOptions)")
cpp_quote("#define IInternetProtocolRoot_Terminate(This,dwOptions) (This)->lpVtbl->Terminate(This,dwOptions)")
cpp_quote("#define IInternetProtocolRoot_Suspend(This) (This)->lpVtbl->Suspend(This)")
cpp_quote("#define IInternetProtocolRoot_Resume(This) (This)->lpVtbl->Resume(This)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetProtocolRoot_Start_Proxy(IInternetProtocolRoot *This,LPCWSTR szUrl,IInternetProtocolSink *pOIProtSink,IInternetBindInfo *pOIBindInfo,DWORD grfPI,HANDLE_PTR dwReserved);")
cpp_quote("  void __RPC_STUB IInternetProtocolRoot_Start_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolRoot_Continue_Proxy(IInternetProtocolRoot *This,PROTOCOLDATA *pProtocolData);")
cpp_quote("  void __RPC_STUB IInternetProtocolRoot_Continue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolRoot_Abort_Proxy(IInternetProtocolRoot *This,HRESULT hrReason,DWORD dwOptions);")
cpp_quote("  void __RPC_STUB IInternetProtocolRoot_Abort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolRoot_Terminate_Proxy(IInternetProtocolRoot *This,DWORD dwOptions);")
cpp_quote("  void __RPC_STUB IInternetProtocolRoot_Terminate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolRoot_Suspend_Proxy(IInternetProtocolRoot *This);")
cpp_quote("  void __RPC_STUB IInternetProtocolRoot_Suspend_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolRoot_Resume_Proxy(IInternetProtocolRoot *This);")
cpp_quote("  void __RPC_STUB IInternetProtocolRoot_Resume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNETPROTOCOL_DEFINED")
cpp_quote("#define _LPIINTERNETPROTOCOL_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0196_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0196_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetProtocol_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetProtocol_INTERFACE_DEFINED__")
cpp_quote("  typedef IInternetProtocol *LPIINTERNETPROTOCOL;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetProtocol;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetProtocol : public IInternetProtocolRoot {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI Read(void *pv,ULONG cb,ULONG *pcbRead) = 0;")
cpp_quote("    virtual HRESULT WINAPI Seek(LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) = 0;")
cpp_quote("    virtual HRESULT WINAPI LockRequest(DWORD dwOptions) = 0;")
cpp_quote("    virtual HRESULT WINAPI UnlockRequest(void) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetProtocolVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetProtocol *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetProtocol *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetProtocol *This);")
cpp_quote("      HRESULT (WINAPI *Start)(IInternetProtocol *This,LPCWSTR szUrl,IInternetProtocolSink *pOIProtSink,IInternetBindInfo *pOIBindInfo,DWORD grfPI,HANDLE_PTR dwReserved);")
cpp_quote("      HRESULT (WINAPI *Continue)(IInternetProtocol *This,PROTOCOLDATA *pProtocolData);")
cpp_quote("      HRESULT (WINAPI *Abort)(IInternetProtocol *This,HRESULT hrReason,DWORD dwOptions);")
cpp_quote("      HRESULT (WINAPI *Terminate)(IInternetProtocol *This,DWORD dwOptions);")
cpp_quote("      HRESULT (WINAPI *Suspend)(IInternetProtocol *This);")
cpp_quote("      HRESULT (WINAPI *Resume)(IInternetProtocol *This);")
cpp_quote("      HRESULT (WINAPI *Read)(IInternetProtocol *This,void *pv,ULONG cb,ULONG *pcbRead);")
cpp_quote("      HRESULT (WINAPI *Seek)(IInternetProtocol *This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition);")
cpp_quote("      HRESULT (WINAPI *LockRequest)(IInternetProtocol *This,DWORD dwOptions);")
cpp_quote("      HRESULT (WINAPI *UnlockRequest)(IInternetProtocol *This);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetProtocolVtbl;")
cpp_quote("  struct IInternetProtocol {")
cpp_quote("    CONST_VTBL struct IInternetProtocolVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetProtocol_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetProtocol_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetProtocol_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetProtocol_Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved)")
cpp_quote("#define IInternetProtocol_Continue(This,pProtocolData) (This)->lpVtbl->Continue(This,pProtocolData)")
cpp_quote("#define IInternetProtocol_Abort(This,hrReason,dwOptions) (This)->lpVtbl->Abort(This,hrReason,dwOptions)")
cpp_quote("#define IInternetProtocol_Terminate(This,dwOptions) (This)->lpVtbl->Terminate(This,dwOptions)")
cpp_quote("#define IInternetProtocol_Suspend(This) (This)->lpVtbl->Suspend(This)")
cpp_quote("#define IInternetProtocol_Resume(This) (This)->lpVtbl->Resume(This)")
cpp_quote("#define IInternetProtocol_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)")
cpp_quote("#define IInternetProtocol_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)")
cpp_quote("#define IInternetProtocol_LockRequest(This,dwOptions) (This)->lpVtbl->LockRequest(This,dwOptions)")
cpp_quote("#define IInternetProtocol_UnlockRequest(This) (This)->lpVtbl->UnlockRequest(This)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetProtocol_Read_Proxy(IInternetProtocol *This,void *pv,ULONG cb,ULONG *pcbRead);")
cpp_quote("  void __RPC_STUB IInternetProtocol_Read_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocol_Seek_Proxy(IInternetProtocol *This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition);")
cpp_quote("  void __RPC_STUB IInternetProtocol_Seek_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocol_LockRequest_Proxy(IInternetProtocol *This,DWORD dwOptions);")
cpp_quote("  void __RPC_STUB IInternetProtocol_LockRequest_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocol_UnlockRequest_Proxy(IInternetProtocol *This);")
cpp_quote("  void __RPC_STUB IInternetProtocol_UnlockRequest_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNETPROTOCOLSINK_DEFINED")
cpp_quote("#define _LPIINTERNETPROTOCOLSINK_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0197_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0197_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetProtocolSink_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetProtocolSink_INTERFACE_DEFINED__")
cpp_quote("  typedef IInternetProtocolSink *LPIINTERNETPROTOCOLSINK;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetProtocolSink;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetProtocolSink : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI Switch(PROTOCOLDATA *pProtocolData) = 0;")
cpp_quote("    virtual HRESULT WINAPI ReportProgress(ULONG ulStatusCode,LPCWSTR szStatusText) = 0;")
cpp_quote("    virtual HRESULT WINAPI ReportData(DWORD grfBSCF,ULONG ulProgress,ULONG ulProgressMax) = 0;")
cpp_quote("    virtual HRESULT WINAPI ReportResult(HRESULT hrResult,DWORD dwError,LPCWSTR szResult) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetProtocolSinkVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetProtocolSink *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetProtocolSink *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetProtocolSink *This);")
cpp_quote("      HRESULT (WINAPI *Switch)(IInternetProtocolSink *This,PROTOCOLDATA *pProtocolData);")
cpp_quote("      HRESULT (WINAPI *ReportProgress)(IInternetProtocolSink *This,ULONG ulStatusCode,LPCWSTR szStatusText);")
cpp_quote("      HRESULT (WINAPI *ReportData)(IInternetProtocolSink *This,DWORD grfBSCF,ULONG ulProgress,ULONG ulProgressMax);")
cpp_quote("      HRESULT (WINAPI *ReportResult)(IInternetProtocolSink *This,HRESULT hrResult,DWORD dwError,LPCWSTR szResult);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetProtocolSinkVtbl;")
cpp_quote("  struct IInternetProtocolSink {")
cpp_quote("    CONST_VTBL struct IInternetProtocolSinkVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetProtocolSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetProtocolSink_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetProtocolSink_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetProtocolSink_Switch(This,pProtocolData) (This)->lpVtbl->Switch(This,pProtocolData)")
cpp_quote("#define IInternetProtocolSink_ReportProgress(This,ulStatusCode,szStatusText) (This)->lpVtbl->ReportProgress(This,ulStatusCode,szStatusText)")
cpp_quote("#define IInternetProtocolSink_ReportData(This,grfBSCF,ulProgress,ulProgressMax) (This)->lpVtbl->ReportData(This,grfBSCF,ulProgress,ulProgressMax)")
cpp_quote("#define IInternetProtocolSink_ReportResult(This,hrResult,dwError,szResult) (This)->lpVtbl->ReportResult(This,hrResult,dwError,szResult)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetProtocolSink_Switch_Proxy(IInternetProtocolSink *This,PROTOCOLDATA *pProtocolData);")
cpp_quote("  void __RPC_STUB IInternetProtocolSink_Switch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolSink_ReportProgress_Proxy(IInternetProtocolSink *This,ULONG ulStatusCode,LPCWSTR szStatusText);")
cpp_quote("  void __RPC_STUB IInternetProtocolSink_ReportProgress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolSink_ReportData_Proxy(IInternetProtocolSink *This,DWORD grfBSCF,ULONG ulProgress,ULONG ulProgressMax);")
cpp_quote("  void __RPC_STUB IInternetProtocolSink_ReportData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolSink_ReportResult_Proxy(IInternetProtocolSink *This,HRESULT hrResult,DWORD dwError,LPCWSTR szResult);")
cpp_quote("  void __RPC_STUB IInternetProtocolSink_ReportResult_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNETPROTOCOLSINKSTACKABLE_DEFINED")
cpp_quote("#define _LPIINTERNETPROTOCOLSINKSTACKABLE_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0198_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0198_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetProtocolSinkStackable_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetProtocolSinkStackable_INTERFACE_DEFINED__")
cpp_quote("  typedef IInternetProtocolSinkStackable *LPIINTERNETPROTOCOLSINKStackable;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetProtocolSinkStackable;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetProtocolSinkStackable : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI SwitchSink(IInternetProtocolSink *pOIProtSink) = 0;")
cpp_quote("    virtual HRESULT WINAPI CommitSwitch(void) = 0;")
cpp_quote("    virtual HRESULT WINAPI RollbackSwitch(void) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetProtocolSinkStackableVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetProtocolSinkStackable *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetProtocolSinkStackable *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetProtocolSinkStackable *This);")
cpp_quote("      HRESULT (WINAPI *SwitchSink)(IInternetProtocolSinkStackable *This,IInternetProtocolSink *pOIProtSink);")
cpp_quote("      HRESULT (WINAPI *CommitSwitch)(IInternetProtocolSinkStackable *This);")
cpp_quote("      HRESULT (WINAPI *RollbackSwitch)(IInternetProtocolSinkStackable *This);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetProtocolSinkStackableVtbl;")
cpp_quote("  struct IInternetProtocolSinkStackable {")
cpp_quote("    CONST_VTBL struct IInternetProtocolSinkStackableVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetProtocolSinkStackable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetProtocolSinkStackable_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetProtocolSinkStackable_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetProtocolSinkStackable_SwitchSink(This,pOIProtSink) (This)->lpVtbl->SwitchSink(This,pOIProtSink)")
cpp_quote("#define IInternetProtocolSinkStackable_CommitSwitch(This) (This)->lpVtbl->CommitSwitch(This)")
cpp_quote("#define IInternetProtocolSinkStackable_RollbackSwitch(This) (This)->lpVtbl->RollbackSwitch(This)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetProtocolSinkStackable_SwitchSink_Proxy(IInternetProtocolSinkStackable *This,IInternetProtocolSink *pOIProtSink);")
cpp_quote("  void __RPC_STUB IInternetProtocolSinkStackable_SwitchSink_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolSinkStackable_CommitSwitch_Proxy(IInternetProtocolSinkStackable *This);")
cpp_quote("  void __RPC_STUB IInternetProtocolSinkStackable_CommitSwitch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolSinkStackable_RollbackSwitch_Proxy(IInternetProtocolSinkStackable *This);")
cpp_quote("  void __RPC_STUB IInternetProtocolSinkStackable_RollbackSwitch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNETSESSION_DEFINED")
cpp_quote("#define _LPIINTERNETSESSION_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0199_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0199_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetSession_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetSession_INTERFACE_DEFINED__")
cpp_quote("  typedef IInternetSession *LPIINTERNETSESSION;")
cpp_quote("")
cpp_quote("  typedef enum _tagOIBDG_FLAGS {")
cpp_quote("    OIBDG_APARTMENTTHREADED = 0x100,OIBDG_DATAONLY = 0x1000")
cpp_quote("  } OIBDG_FLAGS;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetSession;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetSession : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI RegisterNameSpace(IClassFactory *pCF,REFCLSID rclsid,LPCWSTR pwzProtocol,ULONG cPatterns,const LPCWSTR *ppwzPatterns,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI UnregisterNameSpace(IClassFactory *pCF,LPCWSTR pszProtocol) = 0;")
cpp_quote("    virtual HRESULT WINAPI RegisterMimeFilter(IClassFactory *pCF,REFCLSID rclsid,LPCWSTR pwzType) = 0;")
cpp_quote("    virtual HRESULT WINAPI UnregisterMimeFilter(IClassFactory *pCF,LPCWSTR pwzType) = 0;")
cpp_quote("    virtual HRESULT WINAPI CreateBinding(LPBC pBC,LPCWSTR szUrl,IUnknown *pUnkOuter,IUnknown **ppUnk,IInternetProtocol **ppOInetProt,DWORD dwOption) = 0;")
cpp_quote("    virtual HRESULT WINAPI SetSessionOption(DWORD dwOption,LPVOID pBuffer,DWORD dwBufferLength,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetSessionOption(DWORD dwOption,LPVOID pBuffer,DWORD *pdwBufferLength,DWORD dwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetSessionVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetSession *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetSession *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetSession *This);")
cpp_quote("      HRESULT (WINAPI *RegisterNameSpace)(IInternetSession *This,IClassFactory *pCF,REFCLSID rclsid,LPCWSTR pwzProtocol,ULONG cPatterns,const LPCWSTR *ppwzPatterns,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *UnregisterNameSpace)(IInternetSession *This,IClassFactory *pCF,LPCWSTR pszProtocol);")
cpp_quote("      HRESULT (WINAPI *RegisterMimeFilter)(IInternetSession *This,IClassFactory *pCF,REFCLSID rclsid,LPCWSTR pwzType);")
cpp_quote("      HRESULT (WINAPI *UnregisterMimeFilter)(IInternetSession *This,IClassFactory *pCF,LPCWSTR pwzType);")
cpp_quote("      HRESULT (WINAPI *CreateBinding)(IInternetSession *This,LPBC pBC,LPCWSTR szUrl,IUnknown *pUnkOuter,IUnknown **ppUnk,IInternetProtocol **ppOInetProt,DWORD dwOption);")
cpp_quote("      HRESULT (WINAPI *SetSessionOption)(IInternetSession *This,DWORD dwOption,LPVOID pBuffer,DWORD dwBufferLength,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *GetSessionOption)(IInternetSession *This,DWORD dwOption,LPVOID pBuffer,DWORD *pdwBufferLength,DWORD dwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetSessionVtbl;")
cpp_quote("  struct IInternetSession {")
cpp_quote("    CONST_VTBL struct IInternetSessionVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetSession_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetSession_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetSession_RegisterNameSpace(This,pCF,rclsid,pwzProtocol,cPatterns,ppwzPatterns,dwReserved) (This)->lpVtbl->RegisterNameSpace(This,pCF,rclsid,pwzProtocol,cPatterns,ppwzPatterns,dwReserved)")
cpp_quote("#define IInternetSession_UnregisterNameSpace(This,pCF,pszProtocol) (This)->lpVtbl->UnregisterNameSpace(This,pCF,pszProtocol)")
cpp_quote("#define IInternetSession_RegisterMimeFilter(This,pCF,rclsid,pwzType) (This)->lpVtbl->RegisterMimeFilter(This,pCF,rclsid,pwzType)")
cpp_quote("#define IInternetSession_UnregisterMimeFilter(This,pCF,pwzType) (This)->lpVtbl->UnregisterMimeFilter(This,pCF,pwzType)")
cpp_quote("#define IInternetSession_CreateBinding(This,pBC,szUrl,pUnkOuter,ppUnk,ppOInetProt,dwOption) (This)->lpVtbl->CreateBinding(This,pBC,szUrl,pUnkOuter,ppUnk,ppOInetProt,dwOption)")
cpp_quote("#define IInternetSession_SetSessionOption(This,dwOption,pBuffer,dwBufferLength,dwReserved) (This)->lpVtbl->SetSessionOption(This,dwOption,pBuffer,dwBufferLength,dwReserved)")
cpp_quote("#define IInternetSession_GetSessionOption(This,dwOption,pBuffer,pdwBufferLength,dwReserved) (This)->lpVtbl->GetSessionOption(This,dwOption,pBuffer,pdwBufferLength,dwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetSession_RegisterNameSpace_Proxy(IInternetSession *This,IClassFactory *pCF,REFCLSID rclsid,LPCWSTR pwzProtocol,ULONG cPatterns,const LPCWSTR *ppwzPatterns,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetSession_RegisterNameSpace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSession_UnregisterNameSpace_Proxy(IInternetSession *This,IClassFactory *pCF,LPCWSTR pszProtocol);")
cpp_quote("  void __RPC_STUB IInternetSession_UnregisterNameSpace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSession_RegisterMimeFilter_Proxy(IInternetSession *This,IClassFactory *pCF,REFCLSID rclsid,LPCWSTR pwzType);")
cpp_quote("  void __RPC_STUB IInternetSession_RegisterMimeFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSession_UnregisterMimeFilter_Proxy(IInternetSession *This,IClassFactory *pCF,LPCWSTR pwzType);")
cpp_quote("  void __RPC_STUB IInternetSession_UnregisterMimeFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSession_CreateBinding_Proxy(IInternetSession *This,LPBC pBC,LPCWSTR szUrl,IUnknown *pUnkOuter,IUnknown **ppUnk,IInternetProtocol **ppOInetProt,DWORD dwOption);")
cpp_quote("  void __RPC_STUB IInternetSession_CreateBinding_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSession_SetSessionOption_Proxy(IInternetSession *This,DWORD dwOption,LPVOID pBuffer,DWORD dwBufferLength,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetSession_SetSessionOption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSession_GetSessionOption_Proxy(IInternetSession *This,DWORD dwOption,LPVOID pBuffer,DWORD *pdwBufferLength,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetSession_GetSessionOption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNETTHREADSWITCH_DEFINED")
cpp_quote("#define _LPIINTERNETTHREADSWITCH_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0200_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0200_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetThreadSwitch_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetThreadSwitch_INTERFACE_DEFINED__")
cpp_quote("  typedef IInternetThreadSwitch *LPIINTERNETTHREADSWITCH;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetThreadSwitch;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetThreadSwitch : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI Prepare(void) = 0;")
cpp_quote("    virtual HRESULT WINAPI Continue(void) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetThreadSwitchVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetThreadSwitch *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetThreadSwitch *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetThreadSwitch *This);")
cpp_quote("      HRESULT (WINAPI *Prepare)(IInternetThreadSwitch *This);")
cpp_quote("      HRESULT (WINAPI *Continue)(IInternetThreadSwitch *This);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetThreadSwitchVtbl;")
cpp_quote("  struct IInternetThreadSwitch {")
cpp_quote("    CONST_VTBL struct IInternetThreadSwitchVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetThreadSwitch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetThreadSwitch_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetThreadSwitch_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetThreadSwitch_Prepare(This) (This)->lpVtbl->Prepare(This)")
cpp_quote("#define IInternetThreadSwitch_Continue(This) (This)->lpVtbl->Continue(This)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetThreadSwitch_Prepare_Proxy(IInternetThreadSwitch *This);")
cpp_quote("  void __RPC_STUB IInternetThreadSwitch_Prepare_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetThreadSwitch_Continue_Proxy(IInternetThreadSwitch *This);")
cpp_quote("  void __RPC_STUB IInternetThreadSwitch_Continue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNETPRIORITY_DEFINED")
cpp_quote("#define _LPIINTERNETPRIORITY_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0201_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0201_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetPriority_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetPriority_INTERFACE_DEFINED__")
cpp_quote("  typedef IInternetPriority *LPIINTERNETPRIORITY;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetPriority;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetPriority : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI SetPriority(LONG nPriority) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetPriority(LONG *pnPriority) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetPriorityVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetPriority *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetPriority *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetPriority *This);")
cpp_quote("      HRESULT (WINAPI *SetPriority)(IInternetPriority *This,LONG nPriority);")
cpp_quote("      HRESULT (WINAPI *GetPriority)(IInternetPriority *This,LONG *pnPriority);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetPriorityVtbl;")
cpp_quote("  struct IInternetPriority {")
cpp_quote("    CONST_VTBL struct IInternetPriorityVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetPriority_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetPriority_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetPriority_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetPriority_SetPriority(This,nPriority) (This)->lpVtbl->SetPriority(This,nPriority)")
cpp_quote("#define IInternetPriority_GetPriority(This,pnPriority) (This)->lpVtbl->GetPriority(This,pnPriority)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetPriority_SetPriority_Proxy(IInternetPriority *This,LONG nPriority);")
cpp_quote("  void __RPC_STUB IInternetPriority_SetPriority_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetPriority_GetPriority_Proxy(IInternetPriority *This,LONG *pnPriority);")
cpp_quote("  void __RPC_STUB IInternetPriority_GetPriority_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIINTERNETPROTOCOLINFO_DEFINED")
cpp_quote("#define _LPIINTERNETPROTOCOLINFO_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0202_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0202_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetProtocolInfo_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetProtocolInfo_INTERFACE_DEFINED__")
cpp_quote("  typedef IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;")
cpp_quote("")
cpp_quote("  typedef enum _tagPARSEACTION {")
cpp_quote("    PARSE_CANONICALIZE = 1,")
cpp_quote("    PARSE_FRIENDLY,PARSE_SECURITY_URL,PARSE_ROOTDOCUMENT,PARSE_DOCUMENT,PARSE_ANCHOR,")
cpp_quote("    PARSE_ENCODE,PARSE_DECODE,PARSE_PATH_FROM_URL,PARSE_URL_FROM_PATH,PARSE_MIME,")
cpp_quote("    PARSE_SERVER,PARSE_SCHEMA,PARSE_SITE,PARSE_DOMAIN,PARSE_LOCATION,PARSE_SECURITY_DOMAIN,")
cpp_quote("    PARSE_ESCAPE,PARSE_UNESCAPE")
cpp_quote("  } PARSEACTION;")
cpp_quote("")
cpp_quote("  typedef enum _tagPSUACTION {")
cpp_quote("    PSU_DEFAULT = 1,")
cpp_quote("    PSU_SECURITY_URL_ONLY")
cpp_quote("  } PSUACTION;")
cpp_quote("")
cpp_quote("  typedef enum _tagQUERYOPTION {")
cpp_quote("    QUERY_EXPIRATION_DATE = 1,")
cpp_quote("    QUERY_TIME_OF_LAST_CHANGE,QUERY_CONTENT_ENCODING,QUERY_CONTENT_TYPE,QUERY_REFRESH,")
cpp_quote("    QUERY_RECOMBINE,QUERY_CAN_NAVIGATE,QUERY_USES_NETWORK,QUERY_IS_CACHED,QUERY_IS_INSTALLEDENTRY,")
cpp_quote("    QUERY_IS_CACHED_OR_MAPPED,QUERY_USES_CACHE,QUERY_IS_SECURE,QUERY_IS_SAFE")
cpp_quote("  } QUERYOPTION;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetProtocolInfo;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetProtocolInfo : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI ParseUrl(LPCWSTR pwzUrl,PARSEACTION ParseAction,DWORD dwParseFlags,LPWSTR pwzResult,DWORD cchResult,DWORD *pcchResult,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI CombineUrl(LPCWSTR pwzBaseUrl,LPCWSTR pwzRelativeUrl,DWORD dwCombineFlags,LPWSTR pwzResult,DWORD cchResult,DWORD *pcchResult,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI CompareUrl(LPCWSTR pwzUrl1,LPCWSTR pwzUrl2,DWORD dwCompareFlags) = 0;")
cpp_quote("    virtual HRESULT WINAPI QueryInfo(LPCWSTR pwzUrl,QUERYOPTION OueryOption,DWORD dwQueryFlags,LPVOID pBuffer,DWORD cbBuffer,DWORD *pcbBuf,DWORD dwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetProtocolInfoVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetProtocolInfo *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetProtocolInfo *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetProtocolInfo *This);")
cpp_quote("      HRESULT (WINAPI *ParseUrl)(IInternetProtocolInfo *This,LPCWSTR pwzUrl,PARSEACTION ParseAction,DWORD dwParseFlags,LPWSTR pwzResult,DWORD cchResult,DWORD *pcchResult,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *CombineUrl)(IInternetProtocolInfo *This,LPCWSTR pwzBaseUrl,LPCWSTR pwzRelativeUrl,DWORD dwCombineFlags,LPWSTR pwzResult,DWORD cchResult,DWORD *pcchResult,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *CompareUrl)(IInternetProtocolInfo *This,LPCWSTR pwzUrl1,LPCWSTR pwzUrl2,DWORD dwCompareFlags);")
cpp_quote("      HRESULT (WINAPI *QueryInfo)(IInternetProtocolInfo *This,LPCWSTR pwzUrl,QUERYOPTION OueryOption,DWORD dwQueryFlags,LPVOID pBuffer,DWORD cbBuffer,DWORD *pcbBuf,DWORD dwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetProtocolInfoVtbl;")
cpp_quote("  struct IInternetProtocolInfo {")
cpp_quote("    CONST_VTBL struct IInternetProtocolInfoVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetProtocolInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetProtocolInfo_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetProtocolInfo_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetProtocolInfo_ParseUrl(This,pwzUrl,ParseAction,dwParseFlags,pwzResult,cchResult,pcchResult,dwReserved) (This)->lpVtbl->ParseUrl(This,pwzUrl,ParseAction,dwParseFlags,pwzResult,cchResult,pcchResult,dwReserved)")
cpp_quote("#define IInternetProtocolInfo_CombineUrl(This,pwzBaseUrl,pwzRelativeUrl,dwCombineFlags,pwzResult,cchResult,pcchResult,dwReserved) (This)->lpVtbl->CombineUrl(This,pwzBaseUrl,pwzRelativeUrl,dwCombineFlags,pwzResult,cchResult,pcchResult,dwReserved)")
cpp_quote("#define IInternetProtocolInfo_CompareUrl(This,pwzUrl1,pwzUrl2,dwCompareFlags) (This)->lpVtbl->CompareUrl(This,pwzUrl1,pwzUrl2,dwCompareFlags)")
cpp_quote("#define IInternetProtocolInfo_QueryInfo(This,pwzUrl,OueryOption,dwQueryFlags,pBuffer,cbBuffer,pcbBuf,dwReserved) (This)->lpVtbl->QueryInfo(This,pwzUrl,OueryOption,dwQueryFlags,pBuffer,cbBuffer,pcbBuf,dwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetProtocolInfo_ParseUrl_Proxy(IInternetProtocolInfo *This,LPCWSTR pwzUrl,PARSEACTION ParseAction,DWORD dwParseFlags,LPWSTR pwzResult,DWORD cchResult,DWORD *pcchResult,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetProtocolInfo_ParseUrl_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolInfo_CombineUrl_Proxy(IInternetProtocolInfo *This,LPCWSTR pwzBaseUrl,LPCWSTR pwzRelativeUrl,DWORD dwCombineFlags,LPWSTR pwzResult,DWORD cchResult,DWORD *pcchResult,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetProtocolInfo_CombineUrl_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolInfo_CompareUrl_Proxy(IInternetProtocolInfo *This,LPCWSTR pwzUrl1,LPCWSTR pwzUrl2,DWORD dwCompareFlags);")
cpp_quote("  void __RPC_STUB IInternetProtocolInfo_CompareUrl_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetProtocolInfo_QueryInfo_Proxy(IInternetProtocolInfo *This,LPCWSTR pwzUrl,QUERYOPTION OueryOption,DWORD dwQueryFlags,LPVOID pBuffer,DWORD cbBuffer,DWORD *pcbBuf,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetProtocolInfo_QueryInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#define IOInet IInternet")
cpp_quote("#define IOInetBindInfo IInternetBindInfo")
cpp_quote("#define IOInetProtocolRoot IInternetProtocolRoot")
cpp_quote("#define IOInetProtocol IInternetProtocol")
cpp_quote("#define IOInetProtocolSink IInternetProtocolSink")
cpp_quote("#define IOInetProtocolInfo IInternetProtocolInfo")
cpp_quote("#define IOInetSession IInternetSession")
cpp_quote("#define IOInetPriority IInternetPriority")
cpp_quote("#define IOInetThreadSwitch IInternetThreadSwitch")
cpp_quote("#define IOInetProtocolSinkStackable IInternetProtocolSinkStackable")
cpp_quote("#define LPOINET LPIINTERNET")
cpp_quote("#define LPOINETPROTOCOLINFO LPIINTERNETPROTOCOLINFO")
cpp_quote("#define LPOINETBINDINFO LPIINTERNETBINDINFO")
cpp_quote("#define LPOINETPROTOCOLROOT LPIINTERNETPROTOCOLROOT")
cpp_quote("#define LPOINETPROTOCOL LPIINTERNETPROTOCOL")
cpp_quote("#define LPOINETPROTOCOLSINK LPIINTERNETPROTOCOLSINK")
cpp_quote("#define LPOINETSESSION LPIINTERNETSESSION")
cpp_quote("#define LPOINETTHREADSWITCH LPIINTERNETTHREADSWITCH")
cpp_quote("#define LPOINETPRIORITY LPIINTERNETPRIORITY")
cpp_quote("#define LPOINETPROTOCOLINFO LPIINTERNETPROTOCOLINFO")
cpp_quote("#define LPOINETPROTOCOLSINKSTACKABLE LPIINTERNETPROTOCOLSINKSTACKABLE")
cpp_quote("#define IID_IOInet IID_IInternet")
cpp_quote("#define IID_IOInetBindInfo IID_IInternetBindInfo")
cpp_quote("#define IID_IOInetProtocolRoot IID_IInternetProtocolRoot")
cpp_quote("#define IID_IOInetProtocol IID_IInternetProtocol")
cpp_quote("#define IID_IOInetProtocolSink IID_IInternetProtocolSink")
cpp_quote("#define IID_IOInetProtocolInfo IID_IInternetProtocolInfo")
cpp_quote("#define IID_IOInetSession IID_IInternetSession")
cpp_quote("#define IID_IOInetPriority IID_IInternetPriority")
cpp_quote("#define IID_IOInetThreadSwitch IID_IInternetThreadSwitch")
cpp_quote("#define IID_IOInetProtocolSinkStackable IID_IInternetProtocolSinkStackable")
cpp_quote("  STDAPI CoInternetParseUrl(LPCWSTR pwzUrl,PARSEACTION ParseAction,DWORD dwFlags,LPWSTR pszResult,DWORD cchResult,DWORD *pcchResult,DWORD dwReserved);")
cpp_quote("  STDAPI CoInternetCombineUrl(LPCWSTR pwzBaseUrl,LPCWSTR pwzRelativeUrl,DWORD dwCombineFlags,LPWSTR pszResult,DWORD cchResult,DWORD *pcchResult,DWORD dwReserved);")
cpp_quote("  STDAPI CoInternetCompareUrl(LPCWSTR pwzUrl1,LPCWSTR pwzUrl2,DWORD dwFlags);")
cpp_quote("  STDAPI CoInternetGetProtocolFlags(LPCWSTR pwzUrl,DWORD *pdwFlags,DWORD dwReserved);")
cpp_quote("  STDAPI CoInternetQueryInfo(LPCWSTR pwzUrl,QUERYOPTION QueryOptions,DWORD dwQueryFlags,LPVOID pvBuffer,DWORD cbBuffer,DWORD *pcbBuffer,DWORD dwReserved);")
cpp_quote("  STDAPI CoInternetGetSession(DWORD dwSessionMode,IInternetSession **ppIInternetSession,DWORD dwReserved);")
cpp_quote("  STDAPI CoInternetGetSecurityUrl(LPCWSTR pwzUrl,LPWSTR *ppwzSecUrl,PSUACTION psuAction,DWORD dwReserved);")
cpp_quote("  STDAPI AsyncInstallDistributionUnit(LPCWSTR szDistUnit,LPCWSTR szTYPE,LPCWSTR szExt,DWORD dwFileVersionMS,DWORD dwFileVersionLS,LPCWSTR szURL,IBindCtx *pbc,LPVOID pvReserved,DWORD flags);")
cpp_quote("#ifndef _INTERNETFEATURELIST_DEFINED")
cpp_quote("#define _INTERNETFEATURELIST_DEFINED")
cpp_quote("")
cpp_quote("  typedef enum _tagINTERNETFEATURELIST {")
cpp_quote("    FEATURE_OBJECT_CACHING = 0,")
cpp_quote("    FEATURE_ZONE_ELEVATION,FEATURE_MIME_HANDLING,FEATURE_MIME_SNIFFING,")
cpp_quote("    FEATURE_WINDOW_RESTRICTIONS,FEATURE_WEBOC_POPUPMANAGEMENT,")
cpp_quote("    FEATURE_BEHAVIORS,FEATURE_DISABLE_MK_PROTOCOL,FEATURE_LOCALMACHINE_LOCKDOWN,")
cpp_quote("    FEATURE_SECURITYBAND,FEATURE_RESTRICT_ACTIVEXINSTALL,FEATURE_VALIDATE_NAVIGATE_URL,")
cpp_quote("    FEATURE_RESTRICT_FILEDOWNLOAD,FEATURE_ADDON_MANAGEMENT,FEATURE_PROTOCOL_LOCKDOWN,")
cpp_quote("    FEATURE_HTTP_USERNAME_PASSWORD_DISABLE,FEATURE_SAFE_BINDTOOBJECT,")
cpp_quote("    FEATURE_UNC_SAVEDFILECHECK,FEATURE_GET_URL_DOM_FILEPATH_UNENCODED,")
cpp_quote("    FEATURE_ENTRY_COUNT")
cpp_quote("  } INTERNETFEATURELIST;")
cpp_quote("")
cpp_quote("#define SET_FEATURE_ON_THREAD 0x00000001")
cpp_quote("#define SET_FEATURE_ON_PROCESS 0x00000002")
cpp_quote("#define SET_FEATURE_IN_REGISTRY 0x00000004")
cpp_quote("#define SET_FEATURE_ON_THREAD_LOCALMACHINE 0x00000008")
cpp_quote("#define SET_FEATURE_ON_THREAD_INTRANET 0x00000010")
cpp_quote("#define SET_FEATURE_ON_THREAD_TRUSTED 0x00000020")
cpp_quote("#define SET_FEATURE_ON_THREAD_INTERNET 0x00000040")
cpp_quote("#define SET_FEATURE_ON_THREAD_RESTRICTED 0x00000080")
cpp_quote("")
cpp_quote("#define GET_FEATURE_FROM_THREAD 0x00000001")
cpp_quote("#define GET_FEATURE_FROM_PROCESS 0x00000002")
cpp_quote("#define GET_FEATURE_FROM_REGISTRY 0x00000004")
cpp_quote("#define GET_FEATURE_FROM_THREAD_LOCALMACHINE 0x00000008")
cpp_quote("#define GET_FEATURE_FROM_THREAD_INTRANET 0x00000010")
cpp_quote("#define GET_FEATURE_FROM_THREAD_TRUSTED 0x00000020")
cpp_quote("#define GET_FEATURE_FROM_THREAD_INTERNET 0x00000040")
cpp_quote("#define GET_FEATURE_FROM_THREAD_RESTRICTED 0x00000080")
cpp_quote("#endif")
cpp_quote("  STDAPI CoInternetSetFeatureEnabled(INTERNETFEATURELIST FeatureEntry,DWORD dwFlags,WINBOOL fEnable);")
cpp_quote("  STDAPI CoInternetIsFeatureEnabled(INTERNETFEATURELIST FeatureEntry,DWORD dwFlags);")
cpp_quote("  STDAPI CoInternetIsFeatureEnabledForUrl(INTERNETFEATURELIST FeatureEntry,DWORD dwFlags,LPCWSTR szURL,IInternetSecurityManager *pSecMgr);")
cpp_quote("  STDAPI CoInternetIsFeatureZoneElevationEnabled(LPCWSTR szFromURL,LPCWSTR szToURL,IInternetSecurityManager *pSecMgr,DWORD dwFlags);")
cpp_quote("  STDAPI CopyStgMedium(const STGMEDIUM *pcstgmedSrc,STGMEDIUM *pstgmedDest);")
cpp_quote("  STDAPI CopyBindInfo(const BINDINFO *pcbiSrc,BINDINFO *pbiDest);")
cpp_quote("  STDAPI_(void) ReleaseBindInfo(BINDINFO *pbindinfo);")
cpp_quote("")
cpp_quote("#define INET_E_USE_DEFAULT_PROTOCOLHANDLER _HRESULT_TYPEDEF_(0x800C0011L)")
cpp_quote("#define INET_E_USE_DEFAULT_SETTING _HRESULT_TYPEDEF_(0x800C0012L)")
cpp_quote("#define INET_E_DEFAULT_ACTION INET_E_USE_DEFAULT_PROTOCOLHANDLER")
cpp_quote("#define INET_E_QUERYOPTION_UNKNOWN _HRESULT_TYPEDEF_(0x800C0013L)")
cpp_quote("#define INET_E_REDIRECTING _HRESULT_TYPEDEF_(0x800C0014L)")
cpp_quote("#define OInetParseUrl CoInternetParseUrl")
cpp_quote("#define OInetCombineUrl CoInternetCombineUrl")
cpp_quote("#define OInetCompareUrl CoInternetCompareUrl")
cpp_quote("#define OInetQueryInfo CoInternetQueryInfo")
cpp_quote("#define OInetGetSession CoInternetGetSession")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#define PROTOCOLFLAG_NO_PICS_CHECK 0x00000001")
cpp_quote("")
cpp_quote("  STDAPI CoInternetCreateSecurityManager(IServiceProvider *pSP,IInternetSecurityManager **ppSM,DWORD dwReserved);")
cpp_quote("  STDAPI CoInternetCreateZoneManager(IServiceProvider *pSP,IInternetZoneManager **ppZM,DWORD dwReserved);")
cpp_quote("")
cpp_quote("  EXTERN_C const IID CLSID_InternetSecurityManager;")
cpp_quote("  EXTERN_C const IID CLSID_InternetZoneManager;")
cpp_quote("  EXTERN_C const IID CLSID_PersistentZoneIdentifier;")
cpp_quote("")
cpp_quote("#define SID_SInternetSecurityManager IID_IInternetSecurityManager")
cpp_quote("#define SID_SInternetSecurityManagerEx IID_IInternetSecurityManagerEx")
cpp_quote("#define SID_SInternetHostSecurityManager IID_IInternetHostSecurityManager")
cpp_quote("")
cpp_quote("#ifndef _LPINTERNETSECURITYMGRSITE_DEFINED")
cpp_quote("#define _LPINTERNETSECURITYMGRSITE_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0203_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0203_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetSecurityMgrSite_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetSecurityMgrSite_INTERFACE_DEFINED__")
cpp_quote("  EXTERN_C const IID IID_IInternetSecurityMgrSite;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetSecurityMgrSite : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetWindow(HWND *phwnd) = 0;")
cpp_quote("    virtual HRESULT WINAPI EnableModeless(WINBOOL fEnable) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetSecurityMgrSiteVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetSecurityMgrSite *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetSecurityMgrSite *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetSecurityMgrSite *This);")
cpp_quote("      HRESULT (WINAPI *GetWindow)(IInternetSecurityMgrSite *This,HWND *phwnd);")
cpp_quote("      HRESULT (WINAPI *EnableModeless)(IInternetSecurityMgrSite *This,WINBOOL fEnable);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetSecurityMgrSiteVtbl;")
cpp_quote("  struct IInternetSecurityMgrSite {")
cpp_quote("    CONST_VTBL struct IInternetSecurityMgrSiteVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetSecurityMgrSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetSecurityMgrSite_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetSecurityMgrSite_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetSecurityMgrSite_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd)")
cpp_quote("#define IInternetSecurityMgrSite_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetSecurityMgrSite_GetWindow_Proxy(IInternetSecurityMgrSite *This,HWND *phwnd);")
cpp_quote("  void __RPC_STUB IInternetSecurityMgrSite_GetWindow_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSecurityMgrSite_EnableModeless_Proxy(IInternetSecurityMgrSite *This,WINBOOL fEnable);")
cpp_quote("  void __RPC_STUB IInternetSecurityMgrSite_EnableModeless_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPINTERNETSECURITYMANANGEREX_DEFINED")
cpp_quote("#define _LPINTERNETSECURITYMANANGEREX_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0204_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0204_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetSecurityManager_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetSecurityManager_INTERFACE_DEFINED__")
cpp_quote("")
cpp_quote("#define MUTZ_NOSAVEDFILECHECK 0x00000001")
cpp_quote("#define MUTZ_ISFILE 0x00000002")
cpp_quote("#define MUTZ_ACCEPT_WILDCARD_SCHEME 0x00000080")
cpp_quote("#define MUTZ_ENFORCERESTRICTED 0x00000100")
cpp_quote("#define MUTZ_REQUIRESAVEDFILECHECK 0x00000400")
cpp_quote("#define MUTZ_DONT_UNESCAPE 0x00000800")
cpp_quote("")
cpp_quote("#define MAX_SIZE_SECURITY_ID 512")
cpp_quote("")
cpp_quote("  typedef enum __MIDL_IInternetSecurityManager_0001 {")
cpp_quote("    PUAF_DEFAULT = 0,PUAF_NOUI = 0x1,PUAF_ISFILE = 0x2,PUAF_WARN_IF_DENIED = 0x4,PUAF_FORCEUI_FOREGROUND = 0x8,PUAF_CHECK_TIFS = 0x10,")
cpp_quote("    PUAF_DONTCHECKBOXINDIALOG = 0x20,PUAF_TRUSTED = 0x40,PUAF_ACCEPT_WILDCARD_SCHEME = 0x80,PUAF_ENFORCERESTRICTED = 0x100,")
cpp_quote("    PUAF_NOSAVEDFILECHECK = 0x200,PUAF_REQUIRESAVEDFILECHECK = 0x400,PUAF_LMZ_UNLOCKED = 0x10000,PUAF_LMZ_LOCKED = 0x20000,")
cpp_quote("    PUAF_DEFAULTZONEPOL = 0x40000,PUAF_NPL_USE_LOCKED_IF_RESTRICTED = 0x80000,PUAF_NOUIIFLOCKED = 0x100000,PUAF_DRAGPROTOCOLCHECK = 0x200000")
cpp_quote("  } PUAF;")
cpp_quote("")
cpp_quote("  typedef enum __MIDL_IInternetSecurityManager_0002 {")
cpp_quote("    PUAFOUT_DEFAULT = 0,PUAFOUT_ISLOCKZONEPOLICY = 0x1")
cpp_quote("  } PUAFOUT;")
cpp_quote("")
cpp_quote("  typedef enum __MIDL_IInternetSecurityManager_0003 {")
cpp_quote("    SZM_CREATE = 0,SZM_DELETE = 0x1")
cpp_quote("  } SZM_FLAGS;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetSecurityManager;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetSecurityManager : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI SetSecuritySite(IInternetSecurityMgrSite *pSite) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetSecuritySite(IInternetSecurityMgrSite **ppSite) = 0;")
cpp_quote("    virtual HRESULT WINAPI MapUrlToZone(LPCWSTR pwszUrl,DWORD *pdwZone,DWORD dwFlags) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetSecurityId(LPCWSTR pwszUrl,BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI ProcessUrlAction(LPCWSTR pwszUrl,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI QueryCustomPolicy(LPCWSTR pwszUrl,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI SetZoneMapping(DWORD dwZone,LPCWSTR lpszPattern,DWORD dwFlags) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetZoneMappings(DWORD dwZone,IEnumString **ppenumString,DWORD dwFlags) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetSecurityManagerVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetSecurityManager *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetSecurityManager *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetSecurityManager *This);")
cpp_quote("      HRESULT (WINAPI *SetSecuritySite)(IInternetSecurityManager *This,IInternetSecurityMgrSite *pSite);")
cpp_quote("      HRESULT (WINAPI *GetSecuritySite)(IInternetSecurityManager *This,IInternetSecurityMgrSite **ppSite);")
cpp_quote("      HRESULT (WINAPI *MapUrlToZone)(IInternetSecurityManager *This,LPCWSTR pwszUrl,DWORD *pdwZone,DWORD dwFlags);")
cpp_quote("      HRESULT (WINAPI *GetSecurityId)(IInternetSecurityManager *This,LPCWSTR pwszUrl,BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved);")
cpp_quote("      HRESULT (WINAPI *ProcessUrlAction)(IInternetSecurityManager *This,LPCWSTR pwszUrl,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *QueryCustomPolicy)(IInternetSecurityManager *This,LPCWSTR pwszUrl,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *SetZoneMapping)(IInternetSecurityManager *This,DWORD dwZone,LPCWSTR lpszPattern,DWORD dwFlags);")
cpp_quote("      HRESULT (WINAPI *GetZoneMappings)(IInternetSecurityManager *This,DWORD dwZone,IEnumString **ppenumString,DWORD dwFlags);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetSecurityManagerVtbl;")
cpp_quote("  struct IInternetSecurityManager {")
cpp_quote("    CONST_VTBL struct IInternetSecurityManagerVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetSecurityManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetSecurityManager_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetSecurityManager_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetSecurityManager_SetSecuritySite(This,pSite) (This)->lpVtbl->SetSecuritySite(This,pSite)")
cpp_quote("#define IInternetSecurityManager_GetSecuritySite(This,ppSite) (This)->lpVtbl->GetSecuritySite(This,ppSite)")
cpp_quote("#define IInternetSecurityManager_MapUrlToZone(This,pwszUrl,pdwZone,dwFlags) (This)->lpVtbl->MapUrlToZone(This,pwszUrl,pdwZone,dwFlags)")
cpp_quote("#define IInternetSecurityManager_GetSecurityId(This,pwszUrl,pbSecurityId,pcbSecurityId,dwReserved) (This)->lpVtbl->GetSecurityId(This,pwszUrl,pbSecurityId,pcbSecurityId,dwReserved)")
cpp_quote("#define IInternetSecurityManager_ProcessUrlAction(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved) (This)->lpVtbl->ProcessUrlAction(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved)")
cpp_quote("#define IInternetSecurityManager_QueryCustomPolicy(This,pwszUrl,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved) (This)->lpVtbl->QueryCustomPolicy(This,pwszUrl,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved)")
cpp_quote("#define IInternetSecurityManager_SetZoneMapping(This,dwZone,lpszPattern,dwFlags) (This)->lpVtbl->SetZoneMapping(This,dwZone,lpszPattern,dwFlags)")
cpp_quote("#define IInternetSecurityManager_GetZoneMappings(This,dwZone,ppenumString,dwFlags) (This)->lpVtbl->GetZoneMappings(This,dwZone,ppenumString,dwFlags)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetSecurityManager_SetSecuritySite_Proxy(IInternetSecurityManager *This,IInternetSecurityMgrSite *pSite);")
cpp_quote("  void __RPC_STUB IInternetSecurityManager_SetSecuritySite_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSecurityManager_GetSecuritySite_Proxy(IInternetSecurityManager *This,IInternetSecurityMgrSite **ppSite);")
cpp_quote("  void __RPC_STUB IInternetSecurityManager_GetSecuritySite_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSecurityManager_MapUrlToZone_Proxy(IInternetSecurityManager *This,LPCWSTR pwszUrl,DWORD *pdwZone,DWORD dwFlags);")
cpp_quote("  void __RPC_STUB IInternetSecurityManager_MapUrlToZone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSecurityManager_GetSecurityId_Proxy(IInternetSecurityManager *This,LPCWSTR pwszUrl,BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved);")
cpp_quote("  void __RPC_STUB IInternetSecurityManager_GetSecurityId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSecurityManager_ProcessUrlAction_Proxy(IInternetSecurityManager *This,LPCWSTR pwszUrl,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetSecurityManager_ProcessUrlAction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSecurityManager_QueryCustomPolicy_Proxy(IInternetSecurityManager *This,LPCWSTR pwszUrl,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetSecurityManager_QueryCustomPolicy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSecurityManager_SetZoneMapping_Proxy(IInternetSecurityManager *This,DWORD dwZone,LPCWSTR lpszPattern,DWORD dwFlags);")
cpp_quote("  void __RPC_STUB IInternetSecurityManager_SetZoneMapping_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetSecurityManager_GetZoneMappings_Proxy(IInternetSecurityManager *This,DWORD dwZone,IEnumString **ppenumString,DWORD dwFlags);")
cpp_quote("  void __RPC_STUB IInternetSecurityManager_GetZoneMappings_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef __IInternetSecurityManagerEx_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetSecurityManagerEx_INTERFACE_DEFINED__")
cpp_quote("  EXTERN_C const IID IID_IInternetSecurityManagerEx;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetSecurityManagerEx : public IInternetSecurityManager {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI ProcessUrlActionEx(LPCWSTR pwszUrl,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved,DWORD *pdwOutFlags) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetSecurityManagerExVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetSecurityManagerEx *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetSecurityManagerEx *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetSecurityManagerEx *This);")
cpp_quote("      HRESULT (WINAPI *SetSecuritySite)(IInternetSecurityManagerEx *This,IInternetSecurityMgrSite *pSite);")
cpp_quote("      HRESULT (WINAPI *GetSecuritySite)(IInternetSecurityManagerEx *This,IInternetSecurityMgrSite **ppSite);")
cpp_quote("      HRESULT (WINAPI *MapUrlToZone)(IInternetSecurityManagerEx *This,LPCWSTR pwszUrl,DWORD *pdwZone,DWORD dwFlags);")
cpp_quote("      HRESULT (WINAPI *GetSecurityId)(IInternetSecurityManagerEx *This,LPCWSTR pwszUrl,BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved);")
cpp_quote("      HRESULT (WINAPI *ProcessUrlAction)(IInternetSecurityManagerEx *This,LPCWSTR pwszUrl,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *QueryCustomPolicy)(IInternetSecurityManagerEx *This,LPCWSTR pwszUrl,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *SetZoneMapping)(IInternetSecurityManagerEx *This,DWORD dwZone,LPCWSTR lpszPattern,DWORD dwFlags);")
cpp_quote("      HRESULT (WINAPI *GetZoneMappings)(IInternetSecurityManagerEx *This,DWORD dwZone,IEnumString **ppenumString,DWORD dwFlags);")
cpp_quote("      HRESULT (WINAPI *ProcessUrlActionEx)(IInternetSecurityManagerEx *This,LPCWSTR pwszUrl,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved,DWORD *pdwOutFlags);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetSecurityManagerExVtbl;")
cpp_quote("  struct IInternetSecurityManagerEx {")
cpp_quote("    CONST_VTBL struct IInternetSecurityManagerExVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetSecurityManagerEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetSecurityManagerEx_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetSecurityManagerEx_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetSecurityManagerEx_SetSecuritySite(This,pSite) (This)->lpVtbl->SetSecuritySite(This,pSite)")
cpp_quote("#define IInternetSecurityManagerEx_GetSecuritySite(This,ppSite) (This)->lpVtbl->GetSecuritySite(This,ppSite)")
cpp_quote("#define IInternetSecurityManagerEx_MapUrlToZone(This,pwszUrl,pdwZone,dwFlags) (This)->lpVtbl->MapUrlToZone(This,pwszUrl,pdwZone,dwFlags)")
cpp_quote("#define IInternetSecurityManagerEx_GetSecurityId(This,pwszUrl,pbSecurityId,pcbSecurityId,dwReserved) (This)->lpVtbl->GetSecurityId(This,pwszUrl,pbSecurityId,pcbSecurityId,dwReserved)")
cpp_quote("#define IInternetSecurityManagerEx_ProcessUrlAction(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved) (This)->lpVtbl->ProcessUrlAction(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved)")
cpp_quote("#define IInternetSecurityManagerEx_QueryCustomPolicy(This,pwszUrl,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved) (This)->lpVtbl->QueryCustomPolicy(This,pwszUrl,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved)")
cpp_quote("#define IInternetSecurityManagerEx_SetZoneMapping(This,dwZone,lpszPattern,dwFlags) (This)->lpVtbl->SetZoneMapping(This,dwZone,lpszPattern,dwFlags)")
cpp_quote("#define IInternetSecurityManagerEx_GetZoneMappings(This,dwZone,ppenumString,dwFlags) (This)->lpVtbl->GetZoneMappings(This,dwZone,ppenumString,dwFlags)")
cpp_quote("#define IInternetSecurityManagerEx_ProcessUrlActionEx(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved,pdwOutFlags) (This)->lpVtbl->ProcessUrlActionEx(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved,pdwOutFlags)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetSecurityManagerEx_ProcessUrlActionEx_Proxy(IInternetSecurityManagerEx *This,LPCWSTR pwszUrl,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved,DWORD *pdwOutFlags);")
cpp_quote("  void __RPC_STUB IInternetSecurityManagerEx_ProcessUrlActionEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPINTERNETSECURITYMANANGER_DEFINED")
cpp_quote("#define _LPINTERNETSECURITYMANANGER_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0205_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0205_v0_0_s_ifspec;")
cpp_quote("#ifndef __IZoneIdentifier_INTERFACE_DEFINED__")
cpp_quote("#define __IZoneIdentifier_INTERFACE_DEFINED__")
cpp_quote("  EXTERN_C const IID IID_IZoneIdentifier;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IZoneIdentifier : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetId(DWORD *pdwZone) = 0;")
cpp_quote("    virtual HRESULT WINAPI SetId(DWORD dwZone) = 0;")
cpp_quote("    virtual HRESULT WINAPI Remove(void) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IZoneIdentifierVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IZoneIdentifier *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IZoneIdentifier *This);")
cpp_quote("      ULONG (WINAPI *Release)(IZoneIdentifier *This);")
cpp_quote("      HRESULT (WINAPI *GetId)(IZoneIdentifier *This,DWORD *pdwZone);")
cpp_quote("      HRESULT (WINAPI *SetId)(IZoneIdentifier *This,DWORD dwZone);")
cpp_quote("      HRESULT (WINAPI *Remove)(IZoneIdentifier *This);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IZoneIdentifierVtbl;")
cpp_quote("  struct IZoneIdentifier {")
cpp_quote("    CONST_VTBL struct IZoneIdentifierVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IZoneIdentifier_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IZoneIdentifier_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IZoneIdentifier_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IZoneIdentifier_GetId(This,pdwZone) (This)->lpVtbl->GetId(This,pdwZone)")
cpp_quote("#define IZoneIdentifier_SetId(This,dwZone) (This)->lpVtbl->SetId(This,dwZone)")
cpp_quote("#define IZoneIdentifier_Remove(This) (This)->lpVtbl->Remove(This)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IZoneIdentifier_GetId_Proxy(IZoneIdentifier *This,DWORD *pdwZone);")
cpp_quote("  void __RPC_STUB IZoneIdentifier_GetId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IZoneIdentifier_SetId_Proxy(IZoneIdentifier *This,DWORD dwZone);")
cpp_quote("  void __RPC_STUB IZoneIdentifier_SetId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IZoneIdentifier_Remove_Proxy(IZoneIdentifier *This);")
cpp_quote("  void __RPC_STUB IZoneIdentifier_Remove_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPINTERNETHOSTSECURITYMANANGER_DEFINED")
cpp_quote("#define _LPINTERNETHOSTSECURITYMANANGER_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0207_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0207_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetHostSecurityManager_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetHostSecurityManager_INTERFACE_DEFINED__")
cpp_quote("  EXTERN_C const IID IID_IInternetHostSecurityManager;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetHostSecurityManager : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetSecurityId(BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI ProcessUrlAction(DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI QueryCustomPolicy(REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetHostSecurityManagerVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetHostSecurityManager *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetHostSecurityManager *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetHostSecurityManager *This);")
cpp_quote("      HRESULT (WINAPI *GetSecurityId)(IInternetHostSecurityManager *This,BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved);")
cpp_quote("      HRESULT (WINAPI *ProcessUrlAction)(IInternetHostSecurityManager *This,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *QueryCustomPolicy)(IInternetHostSecurityManager *This,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetHostSecurityManagerVtbl;")
cpp_quote("  struct IInternetHostSecurityManager {")
cpp_quote("    CONST_VTBL struct IInternetHostSecurityManagerVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetHostSecurityManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetHostSecurityManager_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetHostSecurityManager_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetHostSecurityManager_GetSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved) (This)->lpVtbl->GetSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved)")
cpp_quote("#define IInternetHostSecurityManager_ProcessUrlAction(This,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved) (This)->lpVtbl->ProcessUrlAction(This,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved)")
cpp_quote("#define IInternetHostSecurityManager_QueryCustomPolicy(This,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved) (This)->lpVtbl->QueryCustomPolicy(This,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetHostSecurityManager_GetSecurityId_Proxy(IInternetHostSecurityManager *This,BYTE *pbSecurityId,DWORD *pcbSecurityId,DWORD_PTR dwReserved);")
cpp_quote("  void __RPC_STUB IInternetHostSecurityManager_GetSecurityId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetHostSecurityManager_ProcessUrlAction_Proxy(IInternetHostSecurityManager *This,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwFlags,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetHostSecurityManager_ProcessUrlAction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetHostSecurityManager_QueryCustomPolicy_Proxy(IInternetHostSecurityManager *This,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,BYTE *pContext,DWORD cbContext,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetHostSecurityManager_QueryCustomPolicy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#define URLACTION_MIN 0x00001000")
cpp_quote("#define URLACTION_DOWNLOAD_MIN 0x00001000")
cpp_quote("#define URLACTION_DOWNLOAD_SIGNED_ACTIVEX 0x00001001")
cpp_quote("#define URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX 0x00001004")
cpp_quote("#define URLACTION_DOWNLOAD_CURR_MAX 0x00001004")
cpp_quote("#define URLACTION_DOWNLOAD_MAX 0x000011FF")
cpp_quote("")
cpp_quote("#define URLACTION_ACTIVEX_MIN 0x00001200")
cpp_quote("#define URLACTION_ACTIVEX_RUN 0x00001200")
cpp_quote("#define URLPOLICY_ACTIVEX_CHECK_LIST 0x00010000")
cpp_quote("#define URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY 0x00001201")
cpp_quote("#define URLACTION_ACTIVEX_OVERRIDE_DATA_SAFETY 0x00001202")
cpp_quote("#define URLACTION_ACTIVEX_OVERRIDE_SCRIPT_SAFETY 0x00001203")
cpp_quote("#define URLACTION_SCRIPT_OVERRIDE_SAFETY 0x00001401")
cpp_quote("#define URLACTION_ACTIVEX_CONFIRM_NOOBJECTSAFETY 0x00001204")
cpp_quote("#define URLACTION_ACTIVEX_TREATASUNTRUSTED 0x00001205")
cpp_quote("#define URLACTION_ACTIVEX_NO_WEBOC_SCRIPT 0x00001206")
cpp_quote("#define URLACTION_ACTIVEX_CURR_MAX 0x00001206")
cpp_quote("#define URLACTION_ACTIVEX_MAX 0x000013ff")
cpp_quote("")
cpp_quote("#define URLACTION_SCRIPT_MIN 0x00001400")
cpp_quote("#define URLACTION_SCRIPT_RUN 0x00001400")
cpp_quote("#define URLACTION_SCRIPT_JAVA_USE 0x00001402")
cpp_quote("#define URLACTION_SCRIPT_SAFE_ACTIVEX 0x00001405")
cpp_quote("#define URLACTION_CROSS_DOMAIN_DATA 0x00001406")
cpp_quote("#define URLACTION_SCRIPT_PASTE 0x00001407")
cpp_quote("#define URLACTION_SCRIPT_CURR_MAX 0x00001407")
cpp_quote("#define URLACTION_SCRIPT_MAX 0x000015ff")
cpp_quote("")
cpp_quote("#define URLACTION_HTML_MIN 0x00001600")
cpp_quote("#define URLACTION_HTML_SUBMIT_FORMS 0x00001601")
cpp_quote("#define URLACTION_HTML_SUBMIT_FORMS_FROM 0x00001602")
cpp_quote("#define URLACTION_HTML_SUBMIT_FORMS_TO 0x00001603")
cpp_quote("#define URLACTION_HTML_FONT_DOWNLOAD 0x00001604")
cpp_quote("#define URLACTION_HTML_JAVA_RUN 0x00001605")
cpp_quote("#define URLACTION_HTML_USERDATA_SAVE 0x00001606")
cpp_quote("#define URLACTION_HTML_SUBFRAME_NAVIGATE 0x00001607")
cpp_quote("#define URLACTION_HTML_META_REFRESH 0x00001608")
cpp_quote("#define URLACTION_HTML_MIXED_CONTENT 0x00001609")
cpp_quote("#define URLACTION_HTML_MAX 0x000017ff")
cpp_quote("")
cpp_quote("#define URLACTION_SHELL_MIN 0x00001800")
cpp_quote("#define URLACTION_SHELL_INSTALL_DTITEMS 0x00001800")
cpp_quote("#define URLACTION_SHELL_MOVE_OR_COPY 0x00001802")
cpp_quote("#define URLACTION_SHELL_FILE_DOWNLOAD 0x00001803")
cpp_quote("#define URLACTION_SHELL_VERB 0x00001804")
cpp_quote("#define URLACTION_SHELL_WEBVIEW_VERB 0x00001805")
cpp_quote("#define URLACTION_SHELL_SHELLEXECUTE 0x00001806")
cpp_quote("#define URLACTION_SHELL_EXECUTE_HIGHRISK 0x00001806")
cpp_quote("#define URLACTION_SHELL_EXECUTE_MODRISK 0x00001807")
cpp_quote("#define URLACTION_SHELL_EXECUTE_LOWRISK 0x00001808")
cpp_quote("#define URLACTION_SHELL_POPUPMGR 0x00001809")
cpp_quote("#define URLACTION_SHELL_RTF_OBJECTS_LOAD 0x0000180A")
cpp_quote("#define URLACTION_SHELL_ENHANCED_DRAGDROP_SECURITY 0x0000180B")
cpp_quote("#define URLACTION_SHELL_CURR_MAX 0x0000180B")
cpp_quote("#define URLACTION_SHELL_MAX 0x000019ff")
cpp_quote("")
cpp_quote("#define URLACTION_NETWORK_MIN 0x00001A00")
cpp_quote("")
cpp_quote("#define URLACTION_CREDENTIALS_USE 0x00001A00")
cpp_quote("#define URLPOLICY_CREDENTIALS_SILENT_LOGON_OK 0x00000000")
cpp_quote("#define URLPOLICY_CREDENTIALS_MUST_PROMPT_USER 0x00010000")
cpp_quote("#define URLPOLICY_CREDENTIALS_CONDITIONAL_PROMPT 0x00020000")
cpp_quote("#define URLPOLICY_CREDENTIALS_ANONYMOUS_ONLY 0x00030000")
cpp_quote("")
cpp_quote("#define URLACTION_AUTHENTICATE_CLIENT 0x00001A01")
cpp_quote("#define URLPOLICY_AUTHENTICATE_CLEARTEXT_OK 0x00000000")
cpp_quote("#define URLPOLICY_AUTHENTICATE_CHALLENGE_RESPONSE 0x00010000")
cpp_quote("#define URLPOLICY_AUTHENTICATE_MUTUAL_ONLY 0x00030000")
cpp_quote("")
cpp_quote("#define URLACTION_COOKIES 0x00001A02")
cpp_quote("#define URLACTION_COOKIES_SESSION 0x00001A03")
cpp_quote("")
cpp_quote("#define URLACTION_CLIENT_CERT_PROMPT 0x00001A04")
cpp_quote("")
cpp_quote("#define URLACTION_COOKIES_THIRD_PARTY 0x00001A05")
cpp_quote("#define URLACTION_COOKIES_SESSION_THIRD_PARTY 0x00001A06")
cpp_quote("")
cpp_quote("#define URLACTION_COOKIES_ENABLED 0x00001A10")
cpp_quote("")
cpp_quote("#define URLACTION_NETWORK_CURR_MAX 0x00001A10")
cpp_quote("#define URLACTION_NETWORK_MAX 0x00001Bff")
cpp_quote("")
cpp_quote("#define URLACTION_JAVA_MIN 0x00001C00")
cpp_quote("#define URLACTION_JAVA_PERMISSIONS 0x00001C00")
cpp_quote("#define URLPOLICY_JAVA_PROHIBIT 0x00000000")
cpp_quote("#define URLPOLICY_JAVA_HIGH 0x00010000")
cpp_quote("#define URLPOLICY_JAVA_MEDIUM 0x00020000")
cpp_quote("#define URLPOLICY_JAVA_LOW 0x00030000")
cpp_quote("#define URLPOLICY_JAVA_CUSTOM 0x00800000")
cpp_quote("#define URLACTION_JAVA_CURR_MAX 0x00001C00")
cpp_quote("#define URLACTION_JAVA_MAX 0x00001Cff")
cpp_quote("")
cpp_quote("#define URLACTION_INFODELIVERY_MIN 0x00001D00")
cpp_quote("#define URLACTION_INFODELIVERY_NO_ADDING_CHANNELS 0x00001D00")
cpp_quote("#define URLACTION_INFODELIVERY_NO_EDITING_CHANNELS 0x00001D01")
cpp_quote("#define URLACTION_INFODELIVERY_NO_REMOVING_CHANNELS 0x00001D02")
cpp_quote("#define URLACTION_INFODELIVERY_NO_ADDING_SUBSCRIPTIONS 0x00001D03")
cpp_quote("#define URLACTION_INFODELIVERY_NO_EDITING_SUBSCRIPTIONS 0x00001D04")
cpp_quote("#define URLACTION_INFODELIVERY_NO_REMOVING_SUBSCRIPTIONS 0x00001D05")
cpp_quote("#define URLACTION_INFODELIVERY_NO_CHANNEL_LOGGING 0x00001D06")
cpp_quote("#define URLACTION_INFODELIVERY_CURR_MAX 0x00001D06")
cpp_quote("#define URLACTION_INFODELIVERY_MAX 0x00001Dff")
cpp_quote("#define URLACTION_CHANNEL_SOFTDIST_MIN 0x00001E00")
cpp_quote("#define URLACTION_CHANNEL_SOFTDIST_PERMISSIONS 0x00001E05")
cpp_quote("#define URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT 0x00010000")
cpp_quote("#define URLPOLICY_CHANNEL_SOFTDIST_PRECACHE 0x00020000")
cpp_quote("#define URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL 0x00030000")
cpp_quote("#define URLACTION_CHANNEL_SOFTDIST_MAX 0x00001Eff")
cpp_quote("#define URLACTION_BEHAVIOR_MIN 0x00002000")
cpp_quote("#define URLACTION_BEHAVIOR_RUN 0x00002000")
cpp_quote("#define URLPOLICY_BEHAVIOR_CHECK_LIST 0x00010000")
cpp_quote("")
cpp_quote("#define URLACTION_FEATURE_MIN 0x00002100")
cpp_quote("#define URLACTION_FEATURE_MIME_SNIFFING 0x00002100")
cpp_quote("#define URLACTION_FEATURE_ZONE_ELEVATION 0x00002101")
cpp_quote("#define URLACTION_FEATURE_WINDOW_RESTRICTIONS 0x00002102")
cpp_quote("")
cpp_quote("#define URLACTION_AUTOMATIC_DOWNLOAD_UI_MIN 0x00002200")
cpp_quote("#define URLACTION_AUTOMATIC_DOWNLOAD_UI 0x00002200")
cpp_quote("#define URLACTION_AUTOMATIC_ACTIVEX_UI 0x00002201")
cpp_quote("")
cpp_quote("#define URLACTION_ALLOW_RESTRICTEDPROTOCOLS 0x00002300")
cpp_quote("")
cpp_quote("#define URLPOLICY_ALLOW 0x00")
cpp_quote("#define URLPOLICY_QUERY 0x01")
cpp_quote("#define URLPOLICY_DISALLOW 0x03")
cpp_quote("")
cpp_quote("#define URLPOLICY_NOTIFY_ON_ALLOW 0x10")
cpp_quote("#define URLPOLICY_NOTIFY_ON_DISALLOW 0x20")
cpp_quote("")
cpp_quote("#define URLPOLICY_LOG_ON_ALLOW 0x40")
cpp_quote("#define URLPOLICY_LOG_ON_DISALLOW 0x80")
cpp_quote("")
cpp_quote("#define URLPOLICY_MASK_PERMISSIONS 0x0f")
cpp_quote("#define GetUrlPolicyPermissions(dw) (dw & URLPOLICY_MASK_PERMISSIONS)")
cpp_quote("#define SetUrlPolicyPermissions(dw,dw2) ((dw) = ((dw) & ~(URLPOLICY_MASK_PERMISSIONS)) | (dw2))")
cpp_quote("")
cpp_quote("#define URLPOLICY_DONTCHECKDLGBOX 0x100")
cpp_quote("")
cpp_quote("  EXTERN_C const GUID GUID_CUSTOM_LOCALMACHINEZONEUNLOCKED;")
cpp_quote("#ifndef _LPINTERNETZONEMANAGER_DEFINED")
cpp_quote("#define _LPINTERNETZONEMANAGER_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0208_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0208_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetZoneManager_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetZoneManager_INTERFACE_DEFINED__")
cpp_quote("")
cpp_quote("  typedef IInternetZoneManager *LPURLZONEMANAGER;")
cpp_quote("")
cpp_quote("  typedef enum tagURLZONE {")
cpp_quote("    URLZONE_PREDEFINED_MIN = 0,URLZONE_LOCAL_MACHINE = 0,")
cpp_quote("    URLZONE_INTRANET,URLZONE_TRUSTED,URLZONE_INTERNET,URLZONE_UNTRUSTED,")
cpp_quote("    URLZONE_PREDEFINED_MAX = 999,URLZONE_USER_MIN = 1000,")
cpp_quote("    URLZONE_USER_MAX = 10000")
cpp_quote("  } URLZONE;")
cpp_quote("")
cpp_quote("#define URLZONE_ESC_FLAG 0x100")
cpp_quote("")
cpp_quote("  typedef enum tagURLTEMPLATE {")
cpp_quote("    URLTEMPLATE_CUSTOM = 0,")
cpp_quote("    URLTEMPLATE_PREDEFINED_MIN = 0x10000,")
cpp_quote("    URLTEMPLATE_LOW = 0x10000,")
cpp_quote("    URLTEMPLATE_MEDLOW = 0x10500,")
cpp_quote("    URLTEMPLATE_MEDIUM = 0x11000,")
cpp_quote("    URLTEMPLATE_HIGH = 0x12000,")
cpp_quote("    URLTEMPLATE_PREDEFINED_MAX = 0x20000")
cpp_quote("  } URLTEMPLATE;")
cpp_quote("")
cpp_quote("  enum __MIDL_IInternetZoneManager_0001 {")
cpp_quote("    MAX_ZONE_PATH = 260,MAX_ZONE_DESCRIPTION = 200")
cpp_quote("  };")
cpp_quote("  typedef enum __MIDL_IInternetZoneManager_0002 {")
cpp_quote("    ZAFLAGS_CUSTOM_EDIT = 0x1,ZAFLAGS_ADD_SITES = 0x2,ZAFLAGS_REQUIRE_VERIFICATION = 0x4,ZAFLAGS_INCLUDE_PROXY_OVERRIDE = 0x8,")
cpp_quote("    ZAFLAGS_INCLUDE_INTRANET_SITES = 0x10,ZAFLAGS_NO_UI = 0x20,ZAFLAGS_SUPPORTS_VERIFICATION = 0x40,ZAFLAGS_UNC_AS_INTRANET = 0x80,")
cpp_quote("    ZAFLAGS_USE_LOCKED_ZONES = 0x10000")
cpp_quote("  } ZAFLAGS;")
cpp_quote("")
cpp_quote("  typedef struct _ZONEATTRIBUTES {")
cpp_quote("    ULONG cbSize;")
cpp_quote("    WCHAR szDisplayName[260 ];")
cpp_quote("    WCHAR szDescription[200 ];")
cpp_quote("    WCHAR szIconPath[260 ];")
cpp_quote("    DWORD dwTemplateMinLevel;")
cpp_quote("    DWORD dwTemplateRecommended;")
cpp_quote("    DWORD dwTemplateCurrentLevel;")
cpp_quote("    DWORD dwFlags;")
cpp_quote("  } ZONEATTRIBUTES;")
cpp_quote("")
cpp_quote("  typedef struct _ZONEATTRIBUTES *LPZONEATTRIBUTES;")
cpp_quote("")
cpp_quote("  typedef enum _URLZONEREG {")
cpp_quote("    URLZONEREG_DEFAULT = 0,")
cpp_quote("    URLZONEREG_HKLM,URLZONEREG_HKCU")
cpp_quote("  } URLZONEREG;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IInternetZoneManager;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetZoneManager : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetZoneAttributes(DWORD dwZone,ZONEATTRIBUTES *pZoneAttributes) = 0;")
cpp_quote("    virtual HRESULT WINAPI SetZoneAttributes(DWORD dwZone,ZONEATTRIBUTES *pZoneAttributes) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetZoneCustomPolicy(DWORD dwZone,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,URLZONEREG urlZoneReg) = 0;")
cpp_quote("    virtual HRESULT WINAPI SetZoneCustomPolicy(DWORD dwZone,REFGUID guidKey,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetZoneActionPolicy(DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg) = 0;")
cpp_quote("    virtual HRESULT WINAPI SetZoneActionPolicy(DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg) = 0;")
cpp_quote("    virtual HRESULT WINAPI PromptAction(DWORD dwAction,HWND hwndParent,LPCWSTR pwszUrl,LPCWSTR pwszText,DWORD dwPromptFlags) = 0;")
cpp_quote("    virtual HRESULT WINAPI LogAction(DWORD dwAction,LPCWSTR pwszUrl,LPCWSTR pwszText,DWORD dwLogFlags) = 0;")
cpp_quote("    virtual HRESULT WINAPI CreateZoneEnumerator(DWORD *pdwEnum,DWORD *pdwCount,DWORD dwFlags) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetZoneAt(DWORD dwEnum,DWORD dwIndex,DWORD *pdwZone) = 0;")
cpp_quote("    virtual HRESULT WINAPI DestroyZoneEnumerator(DWORD dwEnum) = 0;")
cpp_quote("    virtual HRESULT WINAPI CopyTemplatePoliciesToZone(DWORD dwTemplate,DWORD dwZone,DWORD dwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetZoneManagerVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetZoneManager *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetZoneManager *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetZoneManager *This);")
cpp_quote("      HRESULT (WINAPI *GetZoneAttributes)(IInternetZoneManager *This,DWORD dwZone,ZONEATTRIBUTES *pZoneAttributes);")
cpp_quote("      HRESULT (WINAPI *SetZoneAttributes)(IInternetZoneManager *This,DWORD dwZone,ZONEATTRIBUTES *pZoneAttributes);")
cpp_quote("      HRESULT (WINAPI *GetZoneCustomPolicy)(IInternetZoneManager *This,DWORD dwZone,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("      HRESULT (WINAPI *SetZoneCustomPolicy)(IInternetZoneManager *This,DWORD dwZone,REFGUID guidKey,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("      HRESULT (WINAPI *GetZoneActionPolicy)(IInternetZoneManager *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("      HRESULT (WINAPI *SetZoneActionPolicy)(IInternetZoneManager *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("      HRESULT (WINAPI *PromptAction)(IInternetZoneManager *This,DWORD dwAction,HWND hwndParent,LPCWSTR pwszUrl,LPCWSTR pwszText,DWORD dwPromptFlags);")
cpp_quote("      HRESULT (WINAPI *LogAction)(IInternetZoneManager *This,DWORD dwAction,LPCWSTR pwszUrl,LPCWSTR pwszText,DWORD dwLogFlags);")
cpp_quote("      HRESULT (WINAPI *CreateZoneEnumerator)(IInternetZoneManager *This,DWORD *pdwEnum,DWORD *pdwCount,DWORD dwFlags);")
cpp_quote("      HRESULT (WINAPI *GetZoneAt)(IInternetZoneManager *This,DWORD dwEnum,DWORD dwIndex,DWORD *pdwZone);")
cpp_quote("      HRESULT (WINAPI *DestroyZoneEnumerator)(IInternetZoneManager *This,DWORD dwEnum);")
cpp_quote("      HRESULT (WINAPI *CopyTemplatePoliciesToZone)(IInternetZoneManager *This,DWORD dwTemplate,DWORD dwZone,DWORD dwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetZoneManagerVtbl;")
cpp_quote("  struct IInternetZoneManager {")
cpp_quote("    CONST_VTBL struct IInternetZoneManagerVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetZoneManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetZoneManager_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetZoneManager_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetZoneManager_GetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->GetZoneAttributes(This,dwZone,pZoneAttributes)")
cpp_quote("#define IInternetZoneManager_SetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->SetZoneAttributes(This,dwZone,pZoneAttributes)")
cpp_quote("#define IInternetZoneManager_GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,urlZoneReg) (This)->lpVtbl->GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,urlZoneReg)")
cpp_quote("#define IInternetZoneManager_SetZoneCustomPolicy(This,dwZone,guidKey,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->SetZoneCustomPolicy(This,dwZone,guidKey,pPolicy,cbPolicy,urlZoneReg)")
cpp_quote("#define IInternetZoneManager_GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)")
cpp_quote("#define IInternetZoneManager_SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)")
cpp_quote("#define IInternetZoneManager_PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags) (This)->lpVtbl->PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags)")
cpp_quote("#define IInternetZoneManager_LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags) (This)->lpVtbl->LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags)")
cpp_quote("#define IInternetZoneManager_CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags) (This)->lpVtbl->CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags)")
cpp_quote("#define IInternetZoneManager_GetZoneAt(This,dwEnum,dwIndex,pdwZone) (This)->lpVtbl->GetZoneAt(This,dwEnum,dwIndex,pdwZone)")
cpp_quote("#define IInternetZoneManager_DestroyZoneEnumerator(This,dwEnum) (This)->lpVtbl->DestroyZoneEnumerator(This,dwEnum)")
cpp_quote("#define IInternetZoneManager_CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved) (This)->lpVtbl->CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_GetZoneAttributes_Proxy(IInternetZoneManager *This,DWORD dwZone,ZONEATTRIBUTES *pZoneAttributes);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_GetZoneAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_SetZoneAttributes_Proxy(IInternetZoneManager *This,DWORD dwZone,ZONEATTRIBUTES *pZoneAttributes);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_SetZoneAttributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_GetZoneCustomPolicy_Proxy(IInternetZoneManager *This,DWORD dwZone,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_GetZoneCustomPolicy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_SetZoneCustomPolicy_Proxy(IInternetZoneManager *This,DWORD dwZone,REFGUID guidKey,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_SetZoneCustomPolicy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_GetZoneActionPolicy_Proxy(IInternetZoneManager *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_GetZoneActionPolicy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_SetZoneActionPolicy_Proxy(IInternetZoneManager *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_SetZoneActionPolicy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_PromptAction_Proxy(IInternetZoneManager *This,DWORD dwAction,HWND hwndParent,LPCWSTR pwszUrl,LPCWSTR pwszText,DWORD dwPromptFlags);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_PromptAction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_LogAction_Proxy(IInternetZoneManager *This,DWORD dwAction,LPCWSTR pwszUrl,LPCWSTR pwszText,DWORD dwLogFlags);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_LogAction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_CreateZoneEnumerator_Proxy(IInternetZoneManager *This,DWORD *pdwEnum,DWORD *pdwCount,DWORD dwFlags);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_CreateZoneEnumerator_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_GetZoneAt_Proxy(IInternetZoneManager *This,DWORD dwEnum,DWORD dwIndex,DWORD *pdwZone);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_GetZoneAt_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_DestroyZoneEnumerator_Proxy(IInternetZoneManager *This,DWORD dwEnum);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_DestroyZoneEnumerator_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManager_CopyTemplatePoliciesToZone_Proxy(IInternetZoneManager *This,DWORD dwTemplate,DWORD dwZone,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IInternetZoneManager_CopyTemplatePoliciesToZone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPINTERNETZONEMANAGEREX_DEFINED")
cpp_quote("#define _LPINTERNETZONEMANAGEREX_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0209_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0209_v0_0_s_ifspec;")
cpp_quote("#ifndef __IInternetZoneManagerEx_INTERFACE_DEFINED__")
cpp_quote("#define __IInternetZoneManagerEx_INTERFACE_DEFINED__")
cpp_quote("  EXTERN_C const IID IID_IInternetZoneManagerEx;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IInternetZoneManagerEx : public IInternetZoneManager {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetZoneActionPolicyEx(DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg,DWORD dwFlags) = 0;")
cpp_quote("    virtual HRESULT WINAPI SetZoneActionPolicyEx(DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg,DWORD dwFlags) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IInternetZoneManagerExVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IInternetZoneManagerEx *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IInternetZoneManagerEx *This);")
cpp_quote("      ULONG (WINAPI *Release)(IInternetZoneManagerEx *This);")
cpp_quote("      HRESULT (WINAPI *GetZoneAttributes)(IInternetZoneManagerEx *This,DWORD dwZone,ZONEATTRIBUTES *pZoneAttributes);")
cpp_quote("      HRESULT (WINAPI *SetZoneAttributes)(IInternetZoneManagerEx *This,DWORD dwZone,ZONEATTRIBUTES *pZoneAttributes);")
cpp_quote("      HRESULT (WINAPI *GetZoneCustomPolicy)(IInternetZoneManagerEx *This,DWORD dwZone,REFGUID guidKey,BYTE **ppPolicy,DWORD *pcbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("      HRESULT (WINAPI *SetZoneCustomPolicy)(IInternetZoneManagerEx *This,DWORD dwZone,REFGUID guidKey,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("      HRESULT (WINAPI *GetZoneActionPolicy)(IInternetZoneManagerEx *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("      HRESULT (WINAPI *SetZoneActionPolicy)(IInternetZoneManagerEx *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg);")
cpp_quote("      HRESULT (WINAPI *PromptAction)(IInternetZoneManagerEx *This,DWORD dwAction,HWND hwndParent,LPCWSTR pwszUrl,LPCWSTR pwszText,DWORD dwPromptFlags);")
cpp_quote("      HRESULT (WINAPI *LogAction)(IInternetZoneManagerEx *This,DWORD dwAction,LPCWSTR pwszUrl,LPCWSTR pwszText,DWORD dwLogFlags);")
cpp_quote("      HRESULT (WINAPI *CreateZoneEnumerator)(IInternetZoneManagerEx *This,DWORD *pdwEnum,DWORD *pdwCount,DWORD dwFlags);")
cpp_quote("      HRESULT (WINAPI *GetZoneAt)(IInternetZoneManagerEx *This,DWORD dwEnum,DWORD dwIndex,DWORD *pdwZone);")
cpp_quote("      HRESULT (WINAPI *DestroyZoneEnumerator)(IInternetZoneManagerEx *This,DWORD dwEnum);")
cpp_quote("      HRESULT (WINAPI *CopyTemplatePoliciesToZone)(IInternetZoneManagerEx *This,DWORD dwTemplate,DWORD dwZone,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *GetZoneActionPolicyEx)(IInternetZoneManagerEx *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg,DWORD dwFlags);")
cpp_quote("      HRESULT (WINAPI *SetZoneActionPolicyEx)(IInternetZoneManagerEx *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg,DWORD dwFlags);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IInternetZoneManagerExVtbl;")
cpp_quote("  struct IInternetZoneManagerEx {")
cpp_quote("    CONST_VTBL struct IInternetZoneManagerExVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IInternetZoneManagerEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IInternetZoneManagerEx_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IInternetZoneManagerEx_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IInternetZoneManagerEx_GetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->GetZoneAttributes(This,dwZone,pZoneAttributes)")
cpp_quote("#define IInternetZoneManagerEx_SetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->SetZoneAttributes(This,dwZone,pZoneAttributes)")
cpp_quote("#define IInternetZoneManagerEx_GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,urlZoneReg) (This)->lpVtbl->GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,urlZoneReg)")
cpp_quote("#define IInternetZoneManagerEx_SetZoneCustomPolicy(This,dwZone,guidKey,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->SetZoneCustomPolicy(This,dwZone,guidKey,pPolicy,cbPolicy,urlZoneReg)")
cpp_quote("#define IInternetZoneManagerEx_GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)")
cpp_quote("#define IInternetZoneManagerEx_SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)")
cpp_quote("#define IInternetZoneManagerEx_PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags) (This)->lpVtbl->PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags)")
cpp_quote("#define IInternetZoneManagerEx_LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags) (This)->lpVtbl->LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags)")
cpp_quote("#define IInternetZoneManagerEx_CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags) (This)->lpVtbl->CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags)")
cpp_quote("#define IInternetZoneManagerEx_GetZoneAt(This,dwEnum,dwIndex,pdwZone) (This)->lpVtbl->GetZoneAt(This,dwEnum,dwIndex,pdwZone)")
cpp_quote("#define IInternetZoneManagerEx_DestroyZoneEnumerator(This,dwEnum) (This)->lpVtbl->DestroyZoneEnumerator(This,dwEnum)")
cpp_quote("#define IInternetZoneManagerEx_CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved) (This)->lpVtbl->CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved)")
cpp_quote("#define IInternetZoneManagerEx_GetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags) (This)->lpVtbl->GetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags)")
cpp_quote("#define IInternetZoneManagerEx_SetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags) (This)->lpVtbl->SetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IInternetZoneManagerEx_GetZoneActionPolicyEx_Proxy(IInternetZoneManagerEx *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg,DWORD dwFlags);")
cpp_quote("  void __RPC_STUB IInternetZoneManagerEx_GetZoneActionPolicyEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IInternetZoneManagerEx_SetZoneActionPolicyEx_Proxy(IInternetZoneManagerEx *This,DWORD dwZone,DWORD dwAction,BYTE *pPolicy,DWORD cbPolicy,URLZONEREG urlZoneReg,DWORD dwFlags);")
cpp_quote("  void __RPC_STUB IInternetZoneManagerEx_SetZoneActionPolicyEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("  EXTERN_C const IID CLSID_SoftDistExt;")
cpp_quote("")
cpp_quote("#ifndef _LPSOFTDISTEXT_DEFINED")
cpp_quote("#define _LPSOFTDISTEXT_DEFINED")
cpp_quote("")
cpp_quote("#define SOFTDIST_FLAG_USAGE_EMAIL 0x00000001")
cpp_quote("#define SOFTDIST_FLAG_USAGE_PRECACHE 0x00000002")
cpp_quote("#define SOFTDIST_FLAG_USAGE_AUTOINSTALL 0x00000004")
cpp_quote("#define SOFTDIST_FLAG_DELETE_SUBSCRIPTION 0x00000008")
cpp_quote("")
cpp_quote("#define SOFTDIST_ADSTATE_NONE 0x00000000")
cpp_quote("#define SOFTDIST_ADSTATE_AVAILABLE 0x00000001")
cpp_quote("#define SOFTDIST_ADSTATE_DOWNLOADED 0x00000002")
cpp_quote("#define SOFTDIST_ADSTATE_INSTALLED 0x00000003")
cpp_quote("")
cpp_quote("  typedef struct _tagCODEBASEHOLD {")
cpp_quote("    ULONG cbSize;")
cpp_quote("    LPWSTR szDistUnit;")
cpp_quote("    LPWSTR szCodeBase;")
cpp_quote("    DWORD dwVersionMS;")
cpp_quote("    DWORD dwVersionLS;")
cpp_quote("    DWORD dwStyle;")
cpp_quote("  } CODEBASEHOLD;")
cpp_quote("")
cpp_quote("  typedef struct _tagCODEBASEHOLD *LPCODEBASEHOLD;")
cpp_quote("")
cpp_quote("  typedef struct _tagSOFTDISTINFO {")
cpp_quote("    ULONG cbSize;")
cpp_quote("    DWORD dwFlags;")
cpp_quote("    DWORD dwAdState;")
cpp_quote("    LPWSTR szTitle;")
cpp_quote("    LPWSTR szAbstract;")
cpp_quote("    LPWSTR szHREF;")
cpp_quote("    DWORD dwInstalledVersionMS;")
cpp_quote("    DWORD dwInstalledVersionLS;")
cpp_quote("    DWORD dwUpdateVersionMS;")
cpp_quote("    DWORD dwUpdateVersionLS;")
cpp_quote("    DWORD dwAdvertisedVersionMS;")
cpp_quote("    DWORD dwAdvertisedVersionLS;")
cpp_quote("    DWORD dwReserved;")
cpp_quote("  } SOFTDISTINFO;")
cpp_quote("")
cpp_quote("  typedef struct _tagSOFTDISTINFO *LPSOFTDISTINFO;")
cpp_quote("")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0210_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0210_v0_0_s_ifspec;")
cpp_quote("#ifndef __ISoftDistExt_INTERFACE_DEFINED__")
cpp_quote("#define __ISoftDistExt_INTERFACE_DEFINED__")
cpp_quote("  EXTERN_C const IID IID_ISoftDistExt;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct ISoftDistExt : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI ProcessSoftDist(LPCWSTR szCDFURL,IXMLElement *pSoftDistElement,LPSOFTDISTINFO lpsdi) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetFirstCodeBase(LPWSTR *szCodeBase,LPDWORD dwMaxSize) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetNextCodeBase(LPWSTR *szCodeBase,LPDWORD dwMaxSize) = 0;")
cpp_quote("    virtual HRESULT WINAPI AsyncInstallDistributionUnit(IBindCtx *pbc,LPVOID pvReserved,DWORD flags,LPCODEBASEHOLD lpcbh) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct ISoftDistExtVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(ISoftDistExt *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(ISoftDistExt *This);")
cpp_quote("      ULONG (WINAPI *Release)(ISoftDistExt *This);")
cpp_quote("      HRESULT (WINAPI *ProcessSoftDist)(ISoftDistExt *This,LPCWSTR szCDFURL,IXMLElement *pSoftDistElement,LPSOFTDISTINFO lpsdi);")
cpp_quote("      HRESULT (WINAPI *GetFirstCodeBase)(ISoftDistExt *This,LPWSTR *szCodeBase,LPDWORD dwMaxSize);")
cpp_quote("      HRESULT (WINAPI *GetNextCodeBase)(ISoftDistExt *This,LPWSTR *szCodeBase,LPDWORD dwMaxSize);")
cpp_quote("      HRESULT (WINAPI *AsyncInstallDistributionUnit)(ISoftDistExt *This,IBindCtx *pbc,LPVOID pvReserved,DWORD flags,LPCODEBASEHOLD lpcbh);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } ISoftDistExtVtbl;")
cpp_quote("  struct ISoftDistExt {")
cpp_quote("    CONST_VTBL struct ISoftDistExtVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define ISoftDistExt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define ISoftDistExt_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define ISoftDistExt_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define ISoftDistExt_ProcessSoftDist(This,szCDFURL,pSoftDistElement,lpsdi) (This)->lpVtbl->ProcessSoftDist(This,szCDFURL,pSoftDistElement,lpsdi)")
cpp_quote("#define ISoftDistExt_GetFirstCodeBase(This,szCodeBase,dwMaxSize) (This)->lpVtbl->GetFirstCodeBase(This,szCodeBase,dwMaxSize)")
cpp_quote("#define ISoftDistExt_GetNextCodeBase(This,szCodeBase,dwMaxSize) (This)->lpVtbl->GetNextCodeBase(This,szCodeBase,dwMaxSize)")
cpp_quote("#define ISoftDistExt_AsyncInstallDistributionUnit(This,pbc,pvReserved,flags,lpcbh) (This)->lpVtbl->AsyncInstallDistributionUnit(This,pbc,pvReserved,flags,lpcbh)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI ISoftDistExt_ProcessSoftDist_Proxy(ISoftDistExt *This,LPCWSTR szCDFURL,IXMLElement *pSoftDistElement,LPSOFTDISTINFO lpsdi);")
cpp_quote("  void __RPC_STUB ISoftDistExt_ProcessSoftDist_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI ISoftDistExt_GetFirstCodeBase_Proxy(ISoftDistExt *This,LPWSTR *szCodeBase,LPDWORD dwMaxSize);")
cpp_quote("  void __RPC_STUB ISoftDistExt_GetFirstCodeBase_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI ISoftDistExt_GetNextCodeBase_Proxy(ISoftDistExt *This,LPWSTR *szCodeBase,LPDWORD dwMaxSize);")
cpp_quote("  void __RPC_STUB ISoftDistExt_GetNextCodeBase_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI ISoftDistExt_AsyncInstallDistributionUnit_Proxy(ISoftDistExt *This,IBindCtx *pbc,LPVOID pvReserved,DWORD flags,LPCODEBASEHOLD lpcbh);")
cpp_quote("  void __RPC_STUB ISoftDistExt_AsyncInstallDistributionUnit_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("  STDAPI GetSoftwareUpdateInfo(LPCWSTR szDistUnit,LPSOFTDISTINFO psdi);")
cpp_quote("  STDAPI SetSoftwareUpdateAdvertisementState(LPCWSTR szDistUnit,DWORD dwAdState,DWORD dwAdvertisedVersionMS,DWORD dwAdvertisedVersionLS);")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPCATALOGFILEINFO_DEFINED")
cpp_quote("#define _LPCATALOGFILEINFO_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0211_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0211_v0_0_s_ifspec;")
cpp_quote("#ifndef __ICatalogFileInfo_INTERFACE_DEFINED__")
cpp_quote("#define __ICatalogFileInfo_INTERFACE_DEFINED__")
cpp_quote("  typedef ICatalogFileInfo *LPCATALOGFILEINFO;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_ICatalogFileInfo;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct ICatalogFileInfo : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetCatalogFile(LPSTR *ppszCatalogFile) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetJavaTrust(void **ppJavaTrust) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct ICatalogFileInfoVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(ICatalogFileInfo *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(ICatalogFileInfo *This);")
cpp_quote("      ULONG (WINAPI *Release)(ICatalogFileInfo *This);")
cpp_quote("      HRESULT (WINAPI *GetCatalogFile)(ICatalogFileInfo *This,LPSTR *ppszCatalogFile);")
cpp_quote("      HRESULT (WINAPI *GetJavaTrust)(ICatalogFileInfo *This,void **ppJavaTrust);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } ICatalogFileInfoVtbl;")
cpp_quote("  struct ICatalogFileInfo {")
cpp_quote("    CONST_VTBL struct ICatalogFileInfoVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define ICatalogFileInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define ICatalogFileInfo_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define ICatalogFileInfo_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define ICatalogFileInfo_GetCatalogFile(This,ppszCatalogFile) (This)->lpVtbl->GetCatalogFile(This,ppszCatalogFile)")
cpp_quote("#define ICatalogFileInfo_GetJavaTrust(This,ppJavaTrust) (This)->lpVtbl->GetJavaTrust(This,ppJavaTrust)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI ICatalogFileInfo_GetCatalogFile_Proxy(ICatalogFileInfo *This,LPSTR *ppszCatalogFile);")
cpp_quote("  void __RPC_STUB ICatalogFileInfo_GetCatalogFile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI ICatalogFileInfo_GetJavaTrust_Proxy(ICatalogFileInfo *This,void **ppJavaTrust);")
cpp_quote("  void __RPC_STUB ICatalogFileInfo_GetJavaTrust_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPDATAFILTER_DEFINED")
cpp_quote("#define _LPDATAFILTER_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0212_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0212_v0_0_s_ifspec;")
cpp_quote("#ifndef __IDataFilter_INTERFACE_DEFINED__")
cpp_quote("#define __IDataFilter_INTERFACE_DEFINED__")
cpp_quote("  typedef IDataFilter *LPDATAFILTER;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IDataFilter;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IDataFilter : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI DoEncode(DWORD dwFlags,LONG lInBufferSize,BYTE *pbInBuffer,LONG lOutBufferSize,BYTE *pbOutBuffer,LONG lInBytesAvailable,LONG *plInBytesRead,LONG *plOutBytesWritten,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI DoDecode(DWORD dwFlags,LONG lInBufferSize,BYTE *pbInBuffer,LONG lOutBufferSize,BYTE *pbOutBuffer,LONG lInBytesAvailable,LONG *plInBytesRead,LONG *plOutBytesWritten,DWORD dwReserved) = 0;")
cpp_quote("    virtual HRESULT WINAPI SetEncodingLevel(DWORD dwEncLevel) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IDataFilterVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IDataFilter *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IDataFilter *This);")
cpp_quote("      ULONG (WINAPI *Release)(IDataFilter *This);")
cpp_quote("      HRESULT (WINAPI *DoEncode)(IDataFilter *This,DWORD dwFlags,LONG lInBufferSize,BYTE *pbInBuffer,LONG lOutBufferSize,BYTE *pbOutBuffer,LONG lInBytesAvailable,LONG *plInBytesRead,LONG *plOutBytesWritten,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *DoDecode)(IDataFilter *This,DWORD dwFlags,LONG lInBufferSize,BYTE *pbInBuffer,LONG lOutBufferSize,BYTE *pbOutBuffer,LONG lInBytesAvailable,LONG *plInBytesRead,LONG *plOutBytesWritten,DWORD dwReserved);")
cpp_quote("      HRESULT (WINAPI *SetEncodingLevel)(IDataFilter *This,DWORD dwEncLevel);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IDataFilterVtbl;")
cpp_quote("  struct IDataFilter {")
cpp_quote("    CONST_VTBL struct IDataFilterVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IDataFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IDataFilter_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IDataFilter_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IDataFilter_DoEncode(This,dwFlags,lInBufferSize,pbInBuffer,lOutBufferSize,pbOutBuffer,lInBytesAvailable,plInBytesRead,plOutBytesWritten,dwReserved) (This)->lpVtbl->DoEncode(This,dwFlags,lInBufferSize,pbInBuffer,lOutBufferSize,pbOutBuffer,lInBytesAvailable,plInBytesRead,plOutBytesWritten,dwReserved)")
cpp_quote("#define IDataFilter_DoDecode(This,dwFlags,lInBufferSize,pbInBuffer,lOutBufferSize,pbOutBuffer,lInBytesAvailable,plInBytesRead,plOutBytesWritten,dwReserved) (This)->lpVtbl->DoDecode(This,dwFlags,lInBufferSize,pbInBuffer,lOutBufferSize,pbOutBuffer,lInBytesAvailable,plInBytesRead,plOutBytesWritten,dwReserved)")
cpp_quote("#define IDataFilter_SetEncodingLevel(This,dwEncLevel) (This)->lpVtbl->SetEncodingLevel(This,dwEncLevel)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IDataFilter_DoEncode_Proxy(IDataFilter *This,DWORD dwFlags,LONG lInBufferSize,BYTE *pbInBuffer,LONG lOutBufferSize,BYTE *pbOutBuffer,LONG lInBytesAvailable,LONG *plInBytesRead,LONG *plOutBytesWritten,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IDataFilter_DoEncode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IDataFilter_DoDecode_Proxy(IDataFilter *This,DWORD dwFlags,LONG lInBufferSize,BYTE *pbInBuffer,LONG lOutBufferSize,BYTE *pbOutBuffer,LONG lInBytesAvailable,LONG *plInBytesRead,LONG *plOutBytesWritten,DWORD dwReserved);")
cpp_quote("  void __RPC_STUB IDataFilter_DoDecode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IDataFilter_SetEncodingLevel_Proxy(IDataFilter *This,DWORD dwEncLevel);")
cpp_quote("  void __RPC_STUB IDataFilter_SetEncodingLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPENCODINGFILTERFACTORY_DEFINED")
cpp_quote("#define _LPENCODINGFILTERFACTORY_DEFINED")
cpp_quote("  typedef struct _tagPROTOCOLFILTERDATA {")
cpp_quote("    DWORD cbSize;")
cpp_quote("    IInternetProtocolSink *pProtocolSink;")
cpp_quote("    IInternetProtocol *pProtocol;")
cpp_quote("    IUnknown *pUnk;")
cpp_quote("    DWORD dwFilterFlags;")
cpp_quote("  } PROTOCOLFILTERDATA;")
cpp_quote("")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0213_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0213_v0_0_s_ifspec;")
cpp_quote("#ifndef __IEncodingFilterFactory_INTERFACE_DEFINED__")
cpp_quote("#define __IEncodingFilterFactory_INTERFACE_DEFINED__")
cpp_quote("  typedef IEncodingFilterFactory *LPENCODINGFILTERFACTORY;")
cpp_quote("")
cpp_quote("  typedef struct _tagDATAINFO {")
cpp_quote("    ULONG ulTotalSize;")
cpp_quote("    ULONG ulavrPacketSize;")
cpp_quote("    ULONG ulConnectSpeed;")
cpp_quote("    ULONG ulProcessorSpeed;")
cpp_quote("  } DATAINFO;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IEncodingFilterFactory;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IEncodingFilterFactory : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI FindBestFilter(LPCWSTR pwzCodeIn,LPCWSTR pwzCodeOut,DATAINFO info,IDataFilter **ppDF) = 0;")
cpp_quote("    virtual HRESULT WINAPI GetDefaultFilter(LPCWSTR pwzCodeIn,LPCWSTR pwzCodeOut,IDataFilter **ppDF) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IEncodingFilterFactoryVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IEncodingFilterFactory *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IEncodingFilterFactory *This);")
cpp_quote("      ULONG (WINAPI *Release)(IEncodingFilterFactory *This);")
cpp_quote("      HRESULT (WINAPI *FindBestFilter)(IEncodingFilterFactory *This,LPCWSTR pwzCodeIn,LPCWSTR pwzCodeOut,DATAINFO info,IDataFilter **ppDF);")
cpp_quote("      HRESULT (WINAPI *GetDefaultFilter)(IEncodingFilterFactory *This,LPCWSTR pwzCodeIn,LPCWSTR pwzCodeOut,IDataFilter **ppDF);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IEncodingFilterFactoryVtbl;")
cpp_quote("  struct IEncodingFilterFactory {")
cpp_quote("    CONST_VTBL struct IEncodingFilterFactoryVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IEncodingFilterFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IEncodingFilterFactory_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IEncodingFilterFactory_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IEncodingFilterFactory_FindBestFilter(This,pwzCodeIn,pwzCodeOut,info,ppDF) (This)->lpVtbl->FindBestFilter(This,pwzCodeIn,pwzCodeOut,info,ppDF)")
cpp_quote("#define IEncodingFilterFactory_GetDefaultFilter(This,pwzCodeIn,pwzCodeOut,ppDF) (This)->lpVtbl->GetDefaultFilter(This,pwzCodeIn,pwzCodeOut,ppDF)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IEncodingFilterFactory_FindBestFilter_Proxy(IEncodingFilterFactory *This,LPCWSTR pwzCodeIn,LPCWSTR pwzCodeOut,DATAINFO info,IDataFilter **ppDF);")
cpp_quote("  void __RPC_STUB IEncodingFilterFactory_FindBestFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("  HRESULT WINAPI IEncodingFilterFactory_GetDefaultFilter_Proxy(IEncodingFilterFactory *This,LPCWSTR pwzCodeIn,LPCWSTR pwzCodeOut,IDataFilter **ppDF);")
cpp_quote("  void __RPC_STUB IEncodingFilterFactory_GetDefaultFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _HITLOGGING_DEFINED")
cpp_quote("#define _HITLOGGING_DEFINED")
cpp_quote("  WINBOOL WINAPI IsLoggingEnabledA(LPCSTR pszUrl);")
cpp_quote("  WINBOOL WINAPI IsLoggingEnabledW(LPCWSTR pwszUrl);")
cpp_quote("")
cpp_quote("#define IsLoggingEnabled __MINGW_NAME_AW(IsLoggingEnabled)")
cpp_quote("")
cpp_quote("  typedef struct _tagHIT_LOGGING_INFO {")
cpp_quote("    DWORD dwStructSize;")
cpp_quote("    LPSTR lpszLoggedUrlName;")
cpp_quote("    SYSTEMTIME StartTime;")
cpp_quote("    SYSTEMTIME EndTime;")
cpp_quote("    LPSTR lpszExtendedInfo;")
cpp_quote("  } HIT_LOGGING_INFO;")
cpp_quote("")
cpp_quote("  typedef struct _tagHIT_LOGGING_INFO *LPHIT_LOGGING_INFO;")
cpp_quote("")
cpp_quote("  WINBOOL WINAPI WriteHitLogging(LPHIT_LOGGING_INFO lpLogginginfo);")
cpp_quote("#define CONFIRMSAFETYACTION_LOADOBJECT 0x00000001")
cpp_quote("")
cpp_quote("  struct CONFIRMSAFETY {")
cpp_quote("    CLSID clsid;")
cpp_quote("    IUnknown *pUnk;")
cpp_quote("    DWORD dwFlags;")
cpp_quote("  };")
cpp_quote("  EXTERN_C const GUID GUID_CUSTOM_CONFIRMOBJECTSAFETY;")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("#ifndef _LPIWRAPPEDPROTOCOL_DEFINED")
cpp_quote("#define _LPIWRAPPEDPROTOCOL_DEFINED")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0214_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0214_v0_0_s_ifspec;")
cpp_quote("#ifndef __IWrappedProtocol_INTERFACE_DEFINED__")
cpp_quote("#define __IWrappedProtocol_INTERFACE_DEFINED__")
cpp_quote("  typedef IWrappedProtocol *LPIWRAPPEDPROTOCOL;")
cpp_quote("")
cpp_quote("  EXTERN_C const IID IID_IWrappedProtocol;")
cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote("  struct IWrappedProtocol : public IUnknown {")
cpp_quote("  public:")
cpp_quote("    virtual HRESULT WINAPI GetWrapperCode(LONG *pnCode,DWORD_PTR dwReserved) = 0;")
cpp_quote("  };")
cpp_quote("#else")
cpp_quote("  typedef struct IWrappedProtocolVtbl {")
cpp_quote("    BEGIN_INTERFACE")
cpp_quote("      HRESULT (WINAPI *QueryInterface)(IWrappedProtocol *This,REFIID riid,void **ppvObject);")
cpp_quote("      ULONG (WINAPI *AddRef)(IWrappedProtocol *This);")
cpp_quote("      ULONG (WINAPI *Release)(IWrappedProtocol *This);")
cpp_quote("      HRESULT (WINAPI *GetWrapperCode)(IWrappedProtocol *This,LONG *pnCode,DWORD_PTR dwReserved);")
cpp_quote("    END_INTERFACE")
cpp_quote("  } IWrappedProtocolVtbl;")
cpp_quote("  struct IWrappedProtocol {")
cpp_quote("    CONST_VTBL struct IWrappedProtocolVtbl *lpVtbl;")
cpp_quote("  };")
cpp_quote("#ifdef COBJMACROS")
cpp_quote("#define IWrappedProtocol_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
cpp_quote("#define IWrappedProtocol_AddRef(This) (This)->lpVtbl->AddRef(This)")
cpp_quote("#define IWrappedProtocol_Release(This) (This)->lpVtbl->Release(This)")
cpp_quote("#define IWrappedProtocol_GetWrapperCode(This,pnCode,dwReserved) (This)->lpVtbl->GetWrapperCode(This,pnCode,dwReserved)")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("  HRESULT WINAPI IWrappedProtocol_GetWrapperCode_Proxy(IWrappedProtocol *This,LONG *pnCode,DWORD_PTR dwReserved);")
cpp_quote("  void __RPC_STUB IWrappedProtocol_GetWrapperCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
cpp_quote("#endif")
cpp_quote("#endif")
cpp_quote("")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0215_v0_0_c_ifspec;")
cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_urlmon_0215_v0_0_s_ifspec;")
cpp_quote("")
cpp_quote("  ULONG __RPC_API HWND_UserSize(ULONG *,ULONG,HWND *);")
cpp_quote("  unsigned char *__RPC_API HWND_UserMarshal(ULONG *,unsigned char *,HWND *);")
cpp_quote("  unsigned char *__RPC_API HWND_UserUnmarshal(ULONG *,unsigned char *,HWND *);")
cpp_quote("  void __RPC_API HWND_UserFree(ULONG *,HWND *);")
cpp_quote("")
cpp_quote("  HRESULT WINAPI IWinInetInfo_QueryOption_Proxy(IWinInetInfo *This,DWORD dwOption,LPVOID pBuffer,DWORD *pcbBuf);")
cpp_quote("  HRESULT WINAPI IWinInetInfo_QueryOption_Stub(IWinInetInfo *This,DWORD dwOption,BYTE *pBuffer,DWORD *pcbBuf);")
cpp_quote("  HRESULT WINAPI IWinInetHttpInfo_QueryInfo_Proxy(IWinInetHttpInfo *This,DWORD dwOption,LPVOID pBuffer,DWORD *pcbBuf,DWORD *pdwFlags,DWORD *pdwReserved);")
cpp_quote("  HRESULT WINAPI IWinInetHttpInfo_QueryInfo_Stub(IWinInetHttpInfo *This,DWORD dwOption,BYTE *pBuffer,DWORD *pcbBuf,DWORD *pdwFlags,DWORD *pdwReserved);")
cpp_quote("  HRESULT WINAPI IBindHost_MonikerBindToStorage_Proxy(IBindHost *This,IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,void **ppvObj);")
cpp_quote("  HRESULT WINAPI IBindHost_MonikerBindToStorage_Stub(IBindHost *This,IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,IUnknown **ppvObj);")
cpp_quote("  HRESULT WINAPI IBindHost_MonikerBindToObject_Proxy(IBindHost *This,IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,void **ppvObj);")
cpp_quote("  HRESULT WINAPI IBindHost_MonikerBindToObject_Stub(IBindHost *This,IMoniker *pMk,IBindCtx *pBC,IBindStatusCallback *pBSC,REFIID riid,IUnknown **ppvObj);")
