source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/urlmon.idl@ 1186

Last change on this file since 1186 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 94.7 KB
RevLine 
[1166]1cpp_quote("/**")
2cpp_quote(" * This file is part of the mingw-w64 runtime package.")
3cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
4cpp_quote(" */")
5cpp_quote("")
6cpp_quote("#include <winapifamily.h>")
7cpp_quote("")
8cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
9cpp_quote("")
10
11import "objidl.idl";
12import "oleidl.idl";
13import "servprov.idl";
14import "msxml.idl";
15
16cpp_quote("")
17interface IPersistMoniker;
18interface IBindProtocol;
19interface IBinding;
20interface IBindStatusCallback;
21interface IBindStatusCallbackEx;
22interface IBindStatusCallbackMsg;
23interface IAuthenticate;
24interface IAuthenticateEx;
25interface IWindowForBindingUI;
26interface ICodeInstall;
27interface IHttpNegotiate;
28interface IHttpNegotiate2;
29interface IHttpNegotiate3;
30interface IWinInetFileStream;
31interface IXMLElement;
32cpp_quote("")
33cpp_quote("EXTERN_C const IID CLSID_SBS_StdURLMoniker;")
34cpp_quote("EXTERN_C const IID CLSID_SBS_HttpProtocol;")
35cpp_quote("EXTERN_C const IID CLSID_SBS_FtpProtocol;")
36cpp_quote("EXTERN_C const IID CLSID_SBS_GopherProtocol;")
37cpp_quote("EXTERN_C const IID CLSID_SBS_HttpSProtocol;")
38cpp_quote("EXTERN_C const IID CLSID_SBS_FileProtocol;")
39cpp_quote("EXTERN_C const IID CLSID_SBS_MkProtocol;")
40cpp_quote("EXTERN_C const IID CLSID_SBS_UrlMkBindCtx;")
41cpp_quote("EXTERN_C const IID CLSID_SBS_SoftDistExt;")
42cpp_quote("EXTERN_C const IID CLSID_SBS_CdlProtocol;")
43cpp_quote("EXTERN_C const IID CLSID_SBS_ClassInstallFilter;")
44cpp_quote("EXTERN_C const IID CLSID_SBS_InternetSecurityManager;")
45cpp_quote("EXTERN_C const IID CLSID_SBS_InternetZoneManager;")
46cpp_quote("")
47cpp_quote("#define BINDF_DONTUSECACHE BINDF_GETNEWESTVERSION")
48cpp_quote("#define BINDF_DONTPUTINCACHE BINDF_NOWRITECACHE")
49cpp_quote("#define BINDF_NOCOPYDATA BINDF_PULLDATA")
50cpp_quote("#define INVALID_P_ROOT_SECURITY_ID ((BYTE*)-1)")
51cpp_quote("")
52cpp_quote("#define PI_DOCFILECLSIDLOOKUP PI_CLSIDLOOKUP")
53cpp_quote("")
54cpp_quote("EXTERN_C const IID IID_IAsyncMoniker;")
55cpp_quote("EXTERN_C const IID CLSID_StdURLMoniker;")
56cpp_quote("EXTERN_C const IID CLSID_HttpProtocol;")
57cpp_quote("EXTERN_C const IID CLSID_FtpProtocol;")
58cpp_quote("EXTERN_C const IID CLSID_GopherProtocol;")
59cpp_quote("EXTERN_C const IID CLSID_HttpSProtocol;")
60cpp_quote("EXTERN_C const IID CLSID_FileProtocol;")
61cpp_quote("EXTERN_C const IID CLSID_MkProtocol;")
62cpp_quote("EXTERN_C const IID CLSID_StdURLProtocol;")
63cpp_quote("EXTERN_C const IID CLSID_UrlMkBindCtx;")
64cpp_quote("EXTERN_C const IID CLSID_CdlProtocol;")
65cpp_quote("EXTERN_C const IID CLSID_ClassInstallFilter;")
66cpp_quote("EXTERN_C const IID IID_IAsyncBindCtx;")
67cpp_quote("")
68cpp_quote("#define SZ_URLCONTEXT OLESTR(\"URL Context\")")
69cpp_quote("#define SZ_ASYNC_CALLEE OLESTR(\"AsyncCallee\")")
70cpp_quote("")
71cpp_quote("#define MKSYS_URLMONIKER 6")
72cpp_quote("#define URL_MK_LEGACY 0")
73cpp_quote("#define URL_MK_UNIFORM 1")
74cpp_quote("#define URL_MK_NO_CANONICALIZE 2")
75cpp_quote("")
76cpp_quote("STDAPI CreateURLMoniker(LPMONIKER pMkCtx, LPCWSTR szURL, LPMONIKER *ppmk);")
77cpp_quote("STDAPI CreateURLMonikerEx(LPMONIKER pMkCtx, LPCWSTR szURL, LPMONIKER *ppmk, DWORD dwFlags);")
78cpp_quote("STDAPI GetClassURL(LPCWSTR szURL, CLSID *pClsID);")
79cpp_quote("STDAPI CreateAsyncBindCtx(DWORD reserved, IBindStatusCallback *pBSCb, IEnumFORMATETC *pEFetc, IBindCtx **ppBC);")
80cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
81cpp_quote("STDAPI CreateURLMonikerEx2(LPMONIKER pMkCtx, IUri *pUri, LPMONIKER *ppmk, DWORD dwFlags);")
82cpp_quote("#endif")
83cpp_quote("STDAPI CreateAsyncBindCtxEx(IBindCtx *pbc, DWORD dwOptions, IBindStatusCallback *pBSCb, IEnumFORMATETC *pEnum, IBindCtx **ppBC, DWORD reserved);")
84cpp_quote("STDAPI MkParseDisplayNameEx(IBindCtx *pbc, LPCWSTR szDisplayName, ULONG *pchEaten, LPMONIKER *ppmk);")
85cpp_quote("STDAPI RegisterBindStatusCallback(LPBC pBC, IBindStatusCallback *pBSCb, IBindStatusCallback **ppBSCBPrev, DWORD dwReserved);")
86cpp_quote("STDAPI RevokeBindStatusCallback(LPBC pBC, IBindStatusCallback *pBSCb);")
87cpp_quote("STDAPI GetClassFileOrMime(LPBC pBC, LPCWSTR szFilename, LPVOID pBuffer, DWORD cbSize, LPCWSTR szMime, DWORD dwReserved, CLSID *pclsid);")
88cpp_quote("STDAPI IsValidURL(LPBC pBC, LPCWSTR szURL, DWORD dwReserved);")
89cpp_quote("STDAPI CoGetClassObjectFromURL(REFCLSID rCLASSID, LPCWSTR szCODE, DWORD dwFileVersionMS, DWORD dwFileVersionLS, LPCWSTR szTYPE, LPBINDCTX pBindCtx, DWORD dwClsContext, LPVOID pvReserved, REFIID riid, LPVOID *ppv);")
90cpp_quote("STDAPI IEInstallScope(LPDWORD pdwScope);")
91cpp_quote("STDAPI FaultInIEFeature(HWND hWnd, uCLSSPEC *pClassSpec, QUERYCONTEXT *pQuery, DWORD dwFlags);")
92cpp_quote("STDAPI GetComponentIDFromCLSSPEC(uCLSSPEC *pClassspec, LPSTR *ppszComponentID);")
93cpp_quote("")
94cpp_quote("#define FIEF_FLAG_FORCE_JITUI 0x1")
95cpp_quote("#define FIEF_FLAG_PEEK 0x2")
96cpp_quote("#define FIEF_FLAG_SKIP_INSTALLED_VERSION_CHECK 0x4")
97cpp_quote("")
98cpp_quote("STDAPI IsAsyncMoniker(IMoniker *pmk);")
99cpp_quote("STDAPI CreateURLBinding(LPCWSTR lpszUrl, IBindCtx *pbc, IBinding **ppBdg);")
100cpp_quote("STDAPI RegisterMediaTypes(UINT ctypes, const LPCSTR *rgszTypes, CLIPFORMAT *rgcfTypes);")
101cpp_quote("STDAPI FindMediaType(LPCSTR rgszTypes, CLIPFORMAT *rgcfTypes);")
102cpp_quote("STDAPI CreateFormatEnumerator(UINT cfmtetc, FORMATETC *rgfmtetc, IEnumFORMATETC **ppenumfmtetc);")
103cpp_quote("STDAPI RegisterFormatEnumerator(LPBC pBC, IEnumFORMATETC *pEFetc, DWORD reserved);")
104cpp_quote("STDAPI RevokeFormatEnumerator(LPBC pBC, IEnumFORMATETC *pEFetc);")
105cpp_quote("STDAPI RegisterMediaTypeClass(LPBC pBC,UINT ctypes, const LPCSTR *rgszTypes, CLSID *rgclsID, DWORD reserved);")
106cpp_quote("STDAPI FindMediaTypeClass(LPBC pBC, LPCSTR szType, CLSID *pclsID, DWORD reserved);")
107cpp_quote("STDAPI UrlMkSetSessionOption(DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD dwReserved);")
108cpp_quote("STDAPI UrlMkGetSessionOption(DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD *pdwBufferLengthOut, DWORD dwReserved);")
109cpp_quote("STDAPI FindMimeFromData(LPBC pBC, LPCWSTR pwzUrl, LPVOID pBuffer, DWORD cbSize, LPCWSTR pwzMimeProposed, DWORD dwMimeFlags, LPWSTR *ppwzMimeOut, DWORD dwReserved);")
110
111cpp_quote("")
112cpp_quote("#define FMFD_DEFAULT 0x0")
113cpp_quote("#define FMFD_URLASFILENAME 0x1")
114cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
115cpp_quote("#define FMFD_ENABLEMIMESNIFFING 0x2")
116cpp_quote("#define FMFD_IGNOREMIMETEXTPLAIN 0x4")
117cpp_quote("#endif")
118cpp_quote("")
119cpp_quote("#define FMFD_SERVERMIME 0x8")
120cpp_quote("#define FMFD_RESPECTTEXTPLAIN 0x10")
121cpp_quote("#define FMFD_RETURNUPDATEDIMGMIMES 0x20")
122cpp_quote("#define UAS_EXACTLEGACY 0x1000")
123cpp_quote("")
124cpp_quote("STDAPI ObtainUserAgentString(DWORD dwOption, LPSTR pszUAOut, DWORD *cbSize);")
125cpp_quote("STDAPI CompareSecurityIds(BYTE *pbSecurityId1, DWORD dwLen1, BYTE *pbSecurityId2, DWORD dwLen2, DWORD dwReserved);")
126cpp_quote("STDAPI CompatFlagsFromClsid(CLSID *pclsid, LPDWORD pdwCompatFlags, LPDWORD pdwMiscStatusFlags);")
127
128cpp_quote("")
129cpp_quote("#define URLMON_OPTION_USERAGENT 0x10000001")
130cpp_quote("#define URLMON_OPTION_USERAGENT_REFRESH 0x10000002")
131cpp_quote("#define URLMON_OPTION_URL_ENCODING 0x10000004")
132cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
133cpp_quote("#define URLMON_OPTION_USE_BINDSTRINGCREDS 0x10000008")
134cpp_quote("#endif")
135cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
136cpp_quote("#define URLMON_OPTION_USE_BROWSERAPPSDOCUMENTS 0x10000010")
137cpp_quote("#endif")
138cpp_quote("#endif")
139cpp_quote("")
140cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
141cpp_quote("#define CF_NULL 0")
142cpp_quote("#define CFSTR_MIME_NULL NULL")
143cpp_quote("")
144cpp_quote("#define CFSTR_MIME_TEXT (TEXT(\"text/plain\"))")
145cpp_quote("#define CFSTR_MIME_RICHTEXT (TEXT(\"text/richtext\"))")
146cpp_quote("#define CFSTR_MIME_MANIFEST (TEXT(\"text/cache-manifest\"))")
147cpp_quote("#define CFSTR_MIME_WEBVTT (TEXT(\"text/vtt\"))")
148cpp_quote("#define CFSTR_MIME_X_BITMAP (TEXT(\"image/x-xbitmap\"))")
149cpp_quote("#define CFSTR_MIME_POSTSCRIPT (TEXT(\"application/postscript\"))")
150
151cpp_quote("#define CFSTR_MIME_AIFF (TEXT(\"audio/aiff\"))")
152cpp_quote("#define CFSTR_MIME_BASICAUDIO (TEXT(\"audio/basic\"))")
153cpp_quote("#define CFSTR_MIME_WAV (TEXT(\"audio/wav\"))")
154cpp_quote("#define CFSTR_MIME_X_WAV (TEXT(\"audio/x-wav\"))")
155cpp_quote("#define CFSTR_MIME_GIF (TEXT(\"image/gif\"))")
156cpp_quote("#define CFSTR_MIME_PJPEG (TEXT(\"image/pjpeg\"))")
157cpp_quote("#define CFSTR_MIME_JPEG (TEXT(\"image/jpeg\"))")
158cpp_quote("#define CFSTR_MIME_TIFF (TEXT(\"image/tiff\"))")
159cpp_quote("#define CFSTR_MIME_JPEG_XR (TEXT(\"image/vnd.ms-photo\"))")
160cpp_quote("#define CFSTR_MIME_PNG (TEXT(\"image/png\"))")
161cpp_quote("#define CFSTR_MIME_X_PNG (TEXT(\"image/x-png\"))")
162cpp_quote("#define CFSTR_MIME_X_ICON (TEXT(\"image/x-icon\"))")
163cpp_quote("#define CFSTR_MIME_SVG_XML (TEXT(\"image/svg+xml\"))")
164cpp_quote("#define CFSTR_MIME_BMP (TEXT(\"image/bmp\"))")
165cpp_quote("#define CFSTR_MIME_X_EMF (TEXT(\"image/x-emf\"))")
166cpp_quote("#define CFSTR_MIME_X_WMF (TEXT(\"image/x-wmf\"))")
167cpp_quote("#define CFSTR_MIME_AVI (TEXT(\"video/avi\"))")
168cpp_quote("#define CFSTR_MIME_MPEG (TEXT(\"video/mpeg\"))")
169cpp_quote("#define CFSTR_MIME_FRACTALS (TEXT(\"application/fractals\"))")
170cpp_quote("#define CFSTR_MIME_RAWDATA (TEXT(\"application/octet-stream\"))")
171cpp_quote("#define CFSTR_MIME_RAWDATASTRM (TEXT(\"application/octet-stream\"))")
172cpp_quote("#define CFSTR_MIME_PDF (TEXT(\"application/pdf\"))")
173cpp_quote("#define CFSTR_MIME_HTA (TEXT(\"application/hta\"))")
174cpp_quote("#define CFSTR_MIME_APP_XML (TEXT(\"application/xml\"))")
175cpp_quote("#define CFSTR_MIME_XHTML (TEXT(\"application/xhtml+xml\"))")
176cpp_quote("#define CFSTR_MIME_X_AIFF (TEXT(\"audio/x-aiff\"))")
177cpp_quote("#define CFSTR_MIME_X_REALAUDIO (TEXT(\"audio/x-pn-realaudio\"))")
178cpp_quote("#define CFSTR_MIME_XBM (TEXT(\"image/xbm\"))")
179cpp_quote("#define CFSTR_MIME_QUICKTIME (TEXT(\"video/quicktime\"))")
180cpp_quote("#define CFSTR_MIME_X_MSVIDEO (TEXT(\"video/x-msvideo\"))")
181cpp_quote("#define CFSTR_MIME_X_SGI_MOVIE (TEXT(\"video/x-sgi-movie\"))")
182cpp_quote("#define CFSTR_MIME_HTML (TEXT(\"text/html\"))")
183cpp_quote("#define CFSTR_MIME_XML (TEXT(\"text/xml\"))")
184cpp_quote("#define CFSTR_MIME_TTML (TEXT(\"application/ttml+xml\"))")
185cpp_quote("#define CFSTR_MIME_TTAF (TEXT(\"application/ttaf+xml\"))")
186cpp_quote("")
187cpp_quote("#define MK_S_ASYNCHRONOUS _HRESULT_TYPEDEF_(0x401E8L)")
188cpp_quote("#ifndef S_ASYNCHRONOUS")
189cpp_quote("#define S_ASYNCHRONOUS MK_S_ASYNCHRONOUS")
190cpp_quote("#endif")
191cpp_quote("")
192cpp_quote("#ifndef E_PENDING")
193cpp_quote("#define E_PENDING _HRESULT_TYPEDEF_(__MSABI_LONG(0x8000000a))")
194cpp_quote("#endif")
195cpp_quote("#define INET_E_INVALID_URL _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0002))")
196cpp_quote("#define INET_E_NO_SESSION _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0003))")
197cpp_quote("#define INET_E_CANNOT_CONNECT _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0004))")
198cpp_quote("#define INET_E_RESOURCE_NOT_FOUND _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0005))")
199cpp_quote("#define INET_E_OBJECT_NOT_FOUND _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0006))")
200cpp_quote("#define INET_E_DATA_NOT_AVAILABLE _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0007))")
201cpp_quote("#define INET_E_DOWNLOAD_FAILURE _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0008))")
202cpp_quote("#define INET_E_AUTHENTICATION_REQUIRED _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0009))")
203cpp_quote("#define INET_E_NO_VALID_MEDIA _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C000A))")
204cpp_quote("#define INET_E_CONNECTION_TIMEOUT _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C000B))")
205cpp_quote("#define INET_E_INVALID_REQUEST _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C000C))")
206cpp_quote("#define INET_E_UNKNOWN_PROTOCOL _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C000D))")
207cpp_quote("#define INET_E_SECURITY_PROBLEM _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C000E))")
208cpp_quote("#define INET_E_CANNOT_LOAD_DATA _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C000F))")
209cpp_quote("#define INET_E_CANNOT_INSTANTIATE_OBJECT _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0010))")
210cpp_quote("#define INET_E_INVALID_CERTIFICATE _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0019))")
211cpp_quote("#define INET_E_REDIRECT_FAILED _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0014))")
212cpp_quote("#define INET_E_REDIRECT_TO_DIR _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0015))")
213cpp_quote("#define INET_E_CANNOT_LOCK_REQUEST _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0016))")
214cpp_quote("#define INET_E_USE_EXTEND_BINDING _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0017))")
215cpp_quote("#define INET_E_TERMINATED_BIND _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0018))")
216cpp_quote("#define INET_E_RESERVED_1 _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C001A))")
217cpp_quote("#define INET_E_BLOCKED_REDIRECT_XSECURITYID _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C001B))")
218cpp_quote("#define INET_E_DOMINJECTIONVALIDATION _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C001C))")
219cpp_quote("#define INET_E_ERROR_FIRST _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0002))")
220cpp_quote("#define INET_E_CODE_DOWNLOAD_DECLINED _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0100))")
221cpp_quote("#define INET_E_RESULT_DISPATCHED _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0200))")
222cpp_quote("#define INET_E_CANNOT_REPLACE_SFP_FILE _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0300))")
223cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
224cpp_quote("#define INET_E_CODE_INSTALL_SUPPRESSED _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0400))")
225cpp_quote("#endif")
226cpp_quote("#define INET_E_CODE_INSTALL_BLOCKED_BY_HASH_POLICY _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0500))")
227cpp_quote("#define INET_E_DOWNLOAD_BLOCKED_BY_INPRIVATE _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0501))")
228cpp_quote("#define INET_E_CODE_INSTALL_BLOCKED_IMMERSIVE _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0502))")
229cpp_quote("#define INET_E_FORBIDFRAMING _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0503))")
230cpp_quote("#define INET_E_CODE_INSTALL_BLOCKED_ARM _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0504))")
231cpp_quote("#define INET_E_BLOCKED_PLUGGABLE_PROTOCOL _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0505))")
232cpp_quote("#define INET_E_ERROR_LAST INET_E_BLOCKED_PLUGGABLE_PROTOCOL")
233cpp_quote("#endif")
234cpp_quote("")
235cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
236cpp_quote("#ifndef _LPPERSISTMONIKER_DEFINED")
237cpp_quote("#define _LPPERSISTMONIKER_DEFINED")
238[object, uuid (79eac9c9-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
239interface IPersistMoniker : IUnknown {
240 typedef [unique] IPersistMoniker *LPPERSISTMONIKER;
241cpp_quote("")
242 HRESULT GetClassID ([out] CLSID *pClassID);
243 HRESULT IsDirty (void);
244 HRESULT Load ([in] BOOL fFullyAvailable,[in] IMoniker *pimkName,[in] LPBC pibc,[in] DWORD grfMode);
245 HRESULT Save ([in] IMoniker *pimkName,[in] LPBC pbc,[in] BOOL fRemember);
246 HRESULT SaveCompleted ([in] IMoniker *pimkName,[in] LPBC pibc);
247 HRESULT GetCurMoniker ([out] IMoniker **ppimkName);
248}
249cpp_quote("#endif")
250cpp_quote("")
251cpp_quote("#ifndef _LPMONIKERPROP_DEFINED")
252cpp_quote("#define _LPMONIKERPROP_DEFINED")
253[object, uuid (a5ca5f7f-1847-4d87-9c5b-918509f7511d), pointer_default (unique)]
254interface IMonikerProp : IUnknown {
255 typedef [unique] IMonikerProp *LPMONIKERPROP;
256cpp_quote("")
257 typedef enum {
258 MIMETYPEPROP = 0x0,
259 USE_SRC_URL = 0x1,
260 CLASSIDPROP = 0x2,
261 TRUSTEDDOWNLOADPROP = 0x3,
262 POPUPLEVELPROP = 0x4,
263 } MONIKERPROPERTY;
264cpp_quote("")
265 HRESULT PutProperty ([in] MONIKERPROPERTY mkp,[in] LPCWSTR val);
266}
267cpp_quote("#endif")
268
269cpp_quote("")
270cpp_quote("#ifndef _LPBINDPROTOCOL_DEFINED")
271cpp_quote("#define _LPBINDPROTOCOL_DEFINED")
272cpp_quote("")
273[local, object, uuid (79eac9cd-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
274interface IBindProtocol : IUnknown {
275 typedef [unique] IBindProtocol *LPBINDPROTOCOL;
276cpp_quote("")
277 HRESULT CreateBinding ([in] LPCWSTR szUrl,[in] IBindCtx *pbc,[out] IBinding **ppb);
278}
279cpp_quote("#endif")
280
281cpp_quote("")
282cpp_quote("#ifndef _LPBINDING_DEFINED")
283cpp_quote("#define _LPBINDING_DEFINED")
284cpp_quote("")
285[object, uuid (79eac9c0-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
286interface IBinding: IUnknown {
287 typedef [unique] IBinding *LPBINDING;
288cpp_quote("")
289 HRESULT Abort ();
290 HRESULT Suspend ();
291 HRESULT Resume ();
292 HRESULT SetPriority ([in] LONG nPriority);
293 HRESULT GetPriority ([out] LONG *pnPriority);
294 [local] HRESULT GetBindResult ([out] CLSID *pclsidProtocol,[out] DWORD *pdwResult,[out] LPOLESTR *pszResult,[in, out] DWORD *pdwReserved);
295 [call_as (GetBindResult)] HRESULT RemoteGetBindResult ([out] CLSID *pclsidProtocol,[out] DWORD *pdwResult,[out] LPOLESTR *pszResult,[in] DWORD dwReserved);
296}
297cpp_quote("#endif")
298cpp_quote("#endif")
299
300cpp_quote("")
301cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
302cpp_quote("#ifndef _LPBINDSTATUSCALLBACK_DEFINED")
303cpp_quote("#define _LPBINDSTATUSCALLBACK_DEFINED")
304cpp_quote("")
305[object, uuid (79eac9c1-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
306interface IBindStatusCallback: IUnknown {
307 typedef [unique] IBindStatusCallback *LPBINDSTATUSCALLBACK;
308cpp_quote("")
309 typedef enum {
310 BINDVERB_GET = 0x0,
311 BINDVERB_POST = 0x1,
312 BINDVERB_PUT = 0x2,
313 BINDVERB_CUSTOM = 0x3,
314 BINDVERB_RESERVED1 = 0x4,
315 } BINDVERB;
316cpp_quote("")
317 typedef enum {
318 BINDINFOF_URLENCODESTGMEDDATA = 0x1,
319 BINDINFOF_URLENCODEDEXTRAINFO = 0x2,
320 } BINDINFOF;
321cpp_quote("")
322 typedef enum {
323 BINDF_ASYNCHRONOUS = 0x1,
324 BINDF_ASYNCSTORAGE = 0x2,
325 BINDF_NOPROGRESSIVERENDERING = 0x4,
326 BINDF_OFFLINEOPERATION = 0x8,
327 BINDF_GETNEWESTVERSION = 0x10,
328 BINDF_NOWRITECACHE = 0x20,
329 BINDF_NEEDFILE = 0x40,
330 BINDF_PULLDATA = 0x80,
331 BINDF_IGNORESECURITYPROBLEM = 0x100,
332 BINDF_RESYNCHRONIZE = 0x200,
333 BINDF_HYPERLINK = 0x400,
334 BINDF_NO_UI = 0x800,
335 BINDF_SILENTOPERATION = 0x1000,
336 BINDF_PRAGMA_NO_CACHE = 0x2000,
337 BINDF_GETCLASSOBJECT = 0x4000,
338 BINDF_RESERVED_1 = 0x8000,
339 BINDF_FREE_THREADED = 0x10000,
340 BINDF_DIRECT_READ = 0x20000,
341 BINDF_FORMS_SUBMIT = 0x40000,
342 BINDF_GETFROMCACHE_IF_NET_FAIL = 0x80000,
343 BINDF_FROMURLMON = 0x100000,
344 BINDF_FWD_BACK = 0x200000,
345 BINDF_PREFERDEFAULTHANDLER = 0x400000,
346 BINDF_ENFORCERESTRICTED = 0x800000,
347 BINDF_RESERVED_2 = 0x80000000,
348 BINDF_RESERVED_3 = 0x1000000,
349 BINDF_RESERVED_4 = 0x2000000,
350 BINDF_RESERVED_5 = 0x4000000,
351 BINDF_RESERVED_6 = 0x8000000,
352 BINDF_RESERVED_7 = 0x40000000,
353 BINDF_RESERVED_8 = 0x20000000
354 } BINDF;
355
356cpp_quote("")
357 typedef enum {
358 URL_ENCODING_NONE = 0x0,
359 URL_ENCODING_ENABLE_UTF8 = 0x10000000,
360 URL_ENCODING_DISABLE_UTF8 = 0x20000000
361 } URL_ENCODING;
362
363cpp_quote("")
364 typedef struct _tagBINDINFO {
365 ULONG cbSize;
366 LPWSTR szExtraInfo;
367 STGMEDIUM stgmedData;
368 DWORD grfBindInfoF;
369 DWORD dwBindVerb;
370 LPWSTR szCustomVerb;
371 DWORD cbstgmedData;
372 DWORD dwOptions;
373 DWORD dwOptionsFlags;
374 DWORD dwCodePage;
375 SECURITY_ATTRIBUTES securityAttributes;
376 IID iid;
377 IUnknown *pUnk;
378 DWORD dwReserved;
379 } BINDINFO;
380
381cpp_quote("")
382 typedef struct _REMSECURITY_ATTRIBUTES {
383 DWORD nLength;
384 DWORD lpSecurityDescriptor;
385 BOOL bInheritHandle;
386 } REMSECURITY_ATTRIBUTES,*PREMSECURITY_ATTRIBUTES,*LPREMSECURITY_ATTRIBUTES;
387
388cpp_quote("")
389 typedef struct _tagRemBINDINFO {
390 ULONG cbSize;
391 LPWSTR szExtraInfo;
392 DWORD grfBindInfoF;
393 DWORD dwBindVerb;
394 LPWSTR szCustomVerb;
395 DWORD cbstgmedData;
396 DWORD dwOptions;
397 DWORD dwOptionsFlags;
398 DWORD dwCodePage;
399 REMSECURITY_ATTRIBUTES securityAttributes;
400 IID iid;
401 IUnknown *pUnk;
402 DWORD dwReserved;
403 } RemBINDINFO;
404
405cpp_quote("")
406 typedef struct tagRemFORMATETC {
407 DWORD cfFormat;
408 DWORD ptd;
409 DWORD dwAspect;
410 LONG lindex;
411 DWORD tymed;
412 } RemFORMATETC,*LPREMFORMATETC;
413
414cpp_quote("")
415 typedef enum {
416 BINDINFO_OPTIONS_WININETFLAG = 0x10000,
417 BINDINFO_OPTIONS_ENABLE_UTF8 = 0x20000,
418 BINDINFO_OPTIONS_DISABLE_UTF8 = 0x40000,
419 BINDINFO_OPTIONS_USE_IE_ENCODING = 0x80000,
420 BINDINFO_OPTIONS_BINDTOOBJECT = 0x100000,
421 BINDINFO_OPTIONS_SECURITYOPTOUT = 0x200000,
422 BINDINFO_OPTIONS_IGNOREMIMETEXTPLAIN = 0x400000,
423 BINDINFO_OPTIONS_USEBINDSTRINGCREDS = 0x800000,
424 BINDINFO_OPTIONS_IGNOREHTTPHTTPSREDIRECTS = 0x1000000,
425 BINDINFO_OPTIONS_IGNORE_SSLERRORS_ONCE = 0x2000000,
426 BINDINFO_WPC_DOWNLOADBLOCKED = 0x8000000,
427 BINDINFO_WPC_LOGGING_ENABLED = 0x10000000,
428 BINDINFO_OPTIONS_ALLOWCONNECTDATA = 0x20000000,
429 BINDINFO_OPTIONS_DISABLEAUTOREDIRECTS = 0x40000000,
430 BINDINFO_OPTIONS_SHDOCVW_NAVIGATE = (int) 0x80000000
431 } BINDINFO_OPTIONS;
432
433cpp_quote("")
434 typedef enum {
435 BSCF_FIRSTDATANOTIFICATION = 0x1,
436 BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
437 BSCF_LASTDATANOTIFICATION = 0x4,
438 BSCF_DATAFULLYAVAILABLE = 0x8,
439 BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10,
440 BSCF_SKIPDRAINDATAFORFILEURLS = 0x20,
441 BSCF_64BITLENGTHDOWNLOAD = 0x40
442 } BSCF;
443
444cpp_quote("")
445 typedef enum tagBINDSTATUS {
446 BINDSTATUS_FINDINGRESOURCE = 1,
447 BINDSTATUS_CONNECTING,
448 BINDSTATUS_REDIRECTING,
449 BINDSTATUS_BEGINDOWNLOADDATA,
450 BINDSTATUS_DOWNLOADINGDATA,
451 BINDSTATUS_ENDDOWNLOADDATA,
452 BINDSTATUS_BEGINDOWNLOADCOMPONENTS,
453 BINDSTATUS_INSTALLINGCOMPONENTS,
454 BINDSTATUS_ENDDOWNLOADCOMPONENTS,
455 BINDSTATUS_USINGCACHEDCOPY,
456 BINDSTATUS_SENDINGREQUEST,
457 BINDSTATUS_CLASSIDAVAILABLE,
458 BINDSTATUS_MIMETYPEAVAILABLE,
459 BINDSTATUS_CACHEFILENAMEAVAILABLE,
460 BINDSTATUS_BEGINSYNCOPERATION,
461 BINDSTATUS_ENDSYNCOPERATION,
462 BINDSTATUS_BEGINUPLOADDATA,
463 BINDSTATUS_UPLOADINGDATA,
464 BINDSTATUS_ENDUPLOADDATA,
465 BINDSTATUS_PROTOCOLCLASSID,
466 BINDSTATUS_ENCODING,
467 BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE,
468 BINDSTATUS_CLASSINSTALLLOCATION,
469 BINDSTATUS_DECODING,
470 BINDSTATUS_LOADINGMIMEHANDLER,
471 BINDSTATUS_CONTENTDISPOSITIONATTACH,
472 BINDSTATUS_FILTERREPORTMIMETYPE,
473 BINDSTATUS_CLSIDCANINSTANTIATE,
474 BINDSTATUS_IUNKNOWNAVAILABLE,
475 BINDSTATUS_DIRECTBIND,
476 BINDSTATUS_RAWMIMETYPE,
477 BINDSTATUS_PROXYDETECTING,
478 BINDSTATUS_ACCEPTRANGES,
479 BINDSTATUS_COOKIE_SENT,
480 BINDSTATUS_COMPACT_POLICY_RECEIVED,
481 BINDSTATUS_COOKIE_SUPPRESSED,
482 BINDSTATUS_COOKIE_STATE_UNKNOWN,
483 BINDSTATUS_COOKIE_STATE_ACCEPT,
484 BINDSTATUS_COOKIE_STATE_REJECT,
485 BINDSTATUS_COOKIE_STATE_PROMPT,
486 BINDSTATUS_COOKIE_STATE_LEASH,
487 BINDSTATUS_COOKIE_STATE_DOWNGRADE,
488 BINDSTATUS_POLICY_HREF,
489 BINDSTATUS_P3P_HEADER,
490 BINDSTATUS_SESSION_COOKIE_RECEIVED,
491 BINDSTATUS_PERSISTENT_COOKIE_RECEIVED,
492 BINDSTATUS_SESSION_COOKIES_ALLOWED,
493 BINDSTATUS_CACHECONTROL,
494 BINDSTATUS_CONTENTDISPOSITIONFILENAME,
495 BINDSTATUS_MIMETEXTPLAINMISMATCH,
496 BINDSTATUS_PUBLISHERAVAILABLE,
497 BINDSTATUS_DISPLAYNAMEAVAILABLE,
498 BINDSTATUS_SSLUX_NAVBLOCKED,
499 BINDSTATUS_SERVER_MIMETYPEAVAILABLE,
500 BINDSTATUS_SNIFFED_CLASSIDAVAILABLE,
501 BINDSTATUS_64BIT_PROGRESS,
502 BINDSTATUS_LAST = BINDSTATUS_64BIT_PROGRESS,
503 BINDSTATUS_RESERVED_0,
504 BINDSTATUS_RESERVED_1,
505 BINDSTATUS_RESERVED_2,
506 BINDSTATUS_RESERVED_3,
507 BINDSTATUS_RESERVED_4,
508 BINDSTATUS_RESERVED_5,
509 BINDSTATUS_RESERVED_6,
510 BINDSTATUS_RESERVED_7,
511 BINDSTATUS_RESERVED_8,
512 BINDSTATUS_RESERVED_9,
513 BINDSTATUS_LAST_PRIVATE = BINDSTATUS_RESERVED_9
514 } BINDSTATUS;
515cpp_quote("")
516 HRESULT OnStartBinding ([in] DWORD dwReserved,[in] IBinding *pib);
517 HRESULT GetPriority ([out] LONG *pnPriority);
518 HRESULT OnLowResource ([in] DWORD reserved);
519 HRESULT OnProgress ([in] ULONG ulProgress,[in] ULONG ulProgressMax,[in] ULONG ulStatusCode,[in, unique] LPCWSTR szStatusText);
520 HRESULT OnStopBinding ([in] HRESULT hresult,[in, unique] LPCWSTR szError);
521 [local] HRESULT GetBindInfo ([out] DWORD *grfBINDF,[in, out, unique] BINDINFO *pbindinfo);
522 [call_as (GetBindInfo)] HRESULT RemoteGetBindInfo ([out] DWORD *grfBINDF,[in, out, unique] RemBINDINFO *pbindinfo,[in, out, unique] RemSTGMEDIUM *pstgmed);
523 [local] HRESULT OnDataAvailable ([in] DWORD grfBSCF,[in] DWORD dwSize,[in] FORMATETC *pformatetc,[in] STGMEDIUM *pstgmed);
524 [call_as (OnDataAvailable)] HRESULT RemoteOnDataAvailable ([in] DWORD grfBSCF,[in] DWORD dwSize,[in] RemFORMATETC *pformatetc,[in] RemSTGMEDIUM *pstgmed);
525 HRESULT OnObjectAvailable ([in] REFIID riid,[in, iid_is (riid)] IUnknown *punk);
526}
527cpp_quote("#endif")
528cpp_quote("#endif")
529
530cpp_quote("")
531cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
532cpp_quote("#ifndef _LPBINDSTATUSCALLBACKEX_DEFINED")
533cpp_quote("#define _LPBINDSTATUSCALLBACKEX_DEFINED")
534cpp_quote("")
535[object, uuid (aaa74ef9-8ee7-4659-88d9-f8c504da73cc), pointer_default (unique)]
536interface IBindStatusCallbackEx: IBindStatusCallback {
537 typedef [unique] IBindStatusCallbackEx *LPBINDSTATUSCALLBACKEX;
538cpp_quote("")
539 typedef enum {
540 BINDF2_DISABLEBASICOVERHTTP = 0x1,
541 BINDF2_DISABLEAUTOCOOKIEHANDLING = 0x2,
542 BINDF2_READ_DATA_GREATER_THAN_4GB = 0x4,
543 BINDF2_DISABLE_HTTP_REDIRECT_XSECURITYID = 0x8,
544 BINDF2_SETDOWNLOADMODE = 0x20,
545 BINDF2_DISABLE_HTTP_REDIRECT_CACHING = 0x40,
546 BINDF2_KEEP_CALLBACK_MODULE_LOADED = 0x80,
547 BINDF2_ALLOW_PROXY_CRED_PROMPT = 0x100,
548 BINDF2_RESERVED_F = 0x20000,
549 BINDF2_RESERVED_E = 0x40000,
550 BINDF2_RESERVED_D = 0x80000,
551 BINDF2_RESERVED_C = 0x100000,
552 BINDF2_RESERVED_B = 0x200000,
553 BINDF2_RESERVED_A = 0x400000,
554 BINDF2_RESERVED_9 = 0x800000,
555 BINDF2_RESERVED_8 = 0x1000000,
556 BINDF2_RESERVED_7 = 0x2000000,
557 BINDF2_RESERVED_6 = 0x4000000,
558 BINDF2_RESERVED_5 = 0x8000000,
559 BINDF2_RESERVED_4 = 0x10000000,
560 BINDF2_RESERVED_3 = 0x20000000,
561 BINDF2_RESERVED_2 = 0x40000000,
562 BINDF2_RESERVED_1 = 0x80000000,
563 } BINDF2;
564cpp_quote("")
565 [local] HRESULT GetBindInfoEx ([out] DWORD *grfBINDF,[in, out, unique] BINDINFO *pbindinfo,[out] DWORD *grfBINDF2,[out] DWORD *pdwReserved);
566 [call_as (GetBindInfoEx)] HRESULT RemoteGetBindInfoEx ([out] DWORD *grfBINDF,[in, out, unique] RemBINDINFO *pbindinfo,[in, out, unique] RemSTGMEDIUM *pstgmed,[out] DWORD *grfBINDF2,[out] DWORD *pdwReserved);
567}
568cpp_quote("#endif")
569
570cpp_quote("")
571cpp_quote("#ifndef _LPAUTHENTICATION_DEFINED")
572cpp_quote("#define _LPAUTHENTICATION_DEFINED")
573cpp_quote("")
574[object, uuid (79eac9d0-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
575interface IAuthenticate : IUnknown {
576 typedef [unique] IAuthenticate *LPAUTHENTICATION;
577cpp_quote("")
578 HRESULT Authenticate ([out] HWND *phwnd,[out] LPWSTR *pszUsername,[out] LPWSTR *pszPassword);
579}
580cpp_quote("#endif")
581
582cpp_quote("")
583cpp_quote("#ifndef _LPAUTHENTICATIONEX_DEFINED")
584cpp_quote("#define _LPAUTHENTICATIONEX_DEFINED")
585cpp_quote("")
586[object, uuid (2ad1edaf-d83d-48b5-9adf-03dbe19f53bd), pointer_default (unique)]
587interface IAuthenticateEx : IAuthenticate {
588 typedef [unique] IAuthenticateEx *LPAUTHENTICATIONEX;
589cpp_quote("")
590 typedef enum {
591 AUTHENTICATEF_PROXY = 0x1,
592 AUTHENTICATEF_BASIC = 0x2,
593 AUTHENTICATEF_HTTP = 0x4,
594 } AUTHENTICATEF;
595cpp_quote("")
596 typedef struct _tagAUTHENTICATEINFO {
597 DWORD dwFlags;
598 DWORD dwReserved;
599 } AUTHENTICATEINFO;
600cpp_quote("")
601 HRESULT AuthenticateEx ([out] HWND *phwnd,[out] LPWSTR *pszUsername,[out] LPWSTR *pszPassword,[in] AUTHENTICATEINFO *pauthinfo);
602}
603cpp_quote("#endif")
604
605cpp_quote("")
606cpp_quote("#ifndef _LPHTTPNEGOTIATE_DEFINED")
607cpp_quote("#define _LPHTTPNEGOTIATE_DEFINED")
608cpp_quote("")
609[object, uuid (79eac9d2-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
610interface IHttpNegotiate : IUnknown {
611 typedef [unique] IHttpNegotiate *LPHTTPNEGOTIATE;
612cpp_quote("")
613 HRESULT BeginningTransaction ([in] LPCWSTR szURL,[in, unique] LPCWSTR szHeaders,[in] DWORD dwReserved,[out] LPWSTR *pszAdditionalHeaders);
614 HRESULT OnResponse ([in] DWORD dwResponseCode,[in, unique] LPCWSTR szResponseHeaders,[in, unique] LPCWSTR szRequestHeaders,[out] LPWSTR *pszAdditionalRequestHeaders);
615}
616cpp_quote("#endif")
617
618cpp_quote("")
619cpp_quote("#ifndef _LPHTTPNEGOTIATE2_DEFINED")
620cpp_quote("#define _LPHTTPNEGOTIATE2_DEFINED")
621cpp_quote("")
622[object, uuid (4f9f9fcb-E0F4-48eb-B7AB-FA2EA9365CB4), pointer_default (unique)]
623interface IHttpNegotiate2 : IHttpNegotiate {
624 typedef [unique] IHttpNegotiate2 *LPHTTPNEGOTIATE2;
625cpp_quote("")
626 HRESULT GetRootSecurityId ([out, size_is (*pcbSecurityId)]BYTE *pbSecurityId,[in, out]DWORD *pcbSecurityId,[in] DWORD_PTR dwReserved);
627}
628cpp_quote("#endif")
629
630cpp_quote("")
631cpp_quote("#ifndef _LPHTTPNEGOTIATE3_DEFINED")
632cpp_quote("#define _LPHTTPNEGOTIATE3_DEFINED")
633cpp_quote("")
634[object, uuid (57b6c80a-34c2-4602-bc26-66a02fc57153), pointer_default (unique)]
635interface IHttpNegotiate3 : IHttpNegotiate2 {
636 typedef [unique] IHttpNegotiate3 *LPHTTPNEGOTIATE3;
637cpp_quote("")
638 HRESULT GetSerializedClientCertContext ([out, size_is (,*pcbCert)]BYTE **ppbCert,[out] DWORD *pcbCert);
639}
640cpp_quote("#endif")
641
642cpp_quote("")
643cpp_quote("#ifndef _LPWININETFILESTREAM_DEFINED")
644cpp_quote("#define _LPWININETFILESTREAM_DEFINED")
645cpp_quote("")
646[object, uuid (F134C4B7-B1F8-4e75-B886-74b90943becb), pointer_default (unique)]
647interface IWinInetFileStream : IUnknown {
648 typedef [unique] IWinInetFileStream *LPWININETFILESTREAM;
649cpp_quote("")
650 HRESULT SetHandleForUnlock ([in] DWORD_PTR hWinInetLockHandle,[in] DWORD_PTR dwReserved);
651 HRESULT SetDeleteFile ([in] DWORD_PTR dwReserved);
652}
653cpp_quote("#endif")
654
655cpp_quote("")
656cpp_quote("#ifndef _LPWINDOWFORBINDINGUI_DEFINED")
657cpp_quote("#define _LPWINDOWFORBINDINGUI_DEFINED")
658cpp_quote("")
659[local, object, uuid (79eac9d5-bafa-11ce-8c82-00aa004ba90b), pointer_default (unique)]
660interface IWindowForBindingUI : IUnknown {
661 typedef [unique] IWindowForBindingUI *LPWINDOWFORBINDINGUI;
662cpp_quote("")
663 HRESULT GetWindow ([in] REFGUID rguidReason,[out] HWND *phwnd);
664}
665cpp_quote("#endif")
666
667cpp_quote("")
668cpp_quote("#ifndef _LPCODEINSTALL_DEFINED")
669cpp_quote("#define _LPCODEINSTALL_DEFINED")
670cpp_quote("")
671[local, object, uuid (79eac9d1-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
672interface ICodeInstall : IWindowForBindingUI {
673 typedef [unique] ICodeInstall *LPCODEINSTALL;
674cpp_quote("")
675 typedef enum {
676 CIP_DISK_FULL,
677 CIP_ACCESS_DENIED,
678 CIP_NEWER_VERSION_EXISTS,
679 CIP_OLDER_VERSION_EXISTS,
680 CIP_NAME_CONFLICT,
681 CIP_TRUST_VERIFICATION_COMPONENT_MISSING,
682 CIP_EXE_SELF_REGISTERATION_TIMEOUT,
683 CIP_UNSAFE_TO_ABORT,
684 CIP_NEED_REBOOT,
685 CIP_NEED_REBOOT_UI_PERMISSION
686 } CIP_STATUS;
687cpp_quote("")
688 HRESULT OnCodeInstallProblem ([in] ULONG ulStatusCode,[in, unique] LPCWSTR szDestination,[in, unique] LPCWSTR szSource,[in] DWORD dwReserved);
689}
690cpp_quote("#endif")
691cpp_quote("#endif")
692
693cpp_quote("")
694cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
695cpp_quote("#ifndef _LPUri_DEFINED")
696cpp_quote("#define _LPUri_DEFINED")
697cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
698[object, uuid (A39EE748-6a27-4817-A6F2-13914bef5890), pointer_default (unique)]
699interface IUri : IUnknown {
700 typedef enum {
701 Uri_PROPERTY_ABSOLUTE_URI = 0,
702 Uri_PROPERTY_STRING_START = Uri_PROPERTY_ABSOLUTE_URI,
703 Uri_PROPERTY_AUTHORITY = 1,
704 Uri_PROPERTY_DISPLAY_URI = 2,
705 Uri_PROPERTY_DOMAIN = 3,
706 Uri_PROPERTY_EXTENSION = 4,
707 Uri_PROPERTY_FRAGMENT = 5,
708 Uri_PROPERTY_HOST = 6,
709 Uri_PROPERTY_PASSWORD = 7,
710 Uri_PROPERTY_PATH = 8,
711 Uri_PROPERTY_PATH_AND_QUERY = 9,
712 Uri_PROPERTY_QUERY = 10,
713 Uri_PROPERTY_RAW_URI = 11,
714 Uri_PROPERTY_SCHEME_NAME = 12,
715 Uri_PROPERTY_USER_INFO = 13,
716 Uri_PROPERTY_USER_NAME = 14,
717 Uri_PROPERTY_STRING_LAST = Uri_PROPERTY_USER_NAME,
718
719 Uri_PROPERTY_HOST_TYPE = 15,
720 Uri_PROPERTY_DWORD_START = Uri_PROPERTY_HOST_TYPE,
721 Uri_PROPERTY_PORT = 16,
722 Uri_PROPERTY_SCHEME = 17,
723 Uri_PROPERTY_ZONE = 18,
724 Uri_PROPERTY_DWORD_LAST = Uri_PROPERTY_ZONE,
725 } Uri_PROPERTY;
726cpp_quote("")
727 typedef enum {
728 Uri_HOST_UNKNOWN,
729 Uri_HOST_DNS,
730 Uri_HOST_IPV4,
731 Uri_HOST_IPV6,
732 Uri_HOST_IDN,
733 } Uri_HOST_TYPE;
734cpp_quote("")
735 HRESULT GetPropertyBSTR ([in, range (Uri_PROPERTY_STRING_START, Uri_PROPERTY_STRING_LAST)] Uri_PROPERTY uriProp,[out] BSTR *pbstrProperty,[in] DWORD dwFlags);
736 HRESULT GetPropertyLength ([in, range (Uri_PROPERTY_STRING_START, Uri_PROPERTY_STRING_LAST)] Uri_PROPERTY uriProp,[out] DWORD *pcchProperty,[in] DWORD dwFlags);
737 HRESULT GetPropertyDWORD ([in, range (Uri_PROPERTY_DWORD_START, Uri_PROPERTY_DWORD_LAST)] Uri_PROPERTY uriProp,[out] DWORD *pdwProperty,[in] DWORD dwFlags);
738 HRESULT HasProperty ([in, range (Uri_PROPERTY_STRING_START, Uri_PROPERTY_DWORD_LAST)] Uri_PROPERTY uriProp,[out] BOOL *pfHasProperty);
739 HRESULT GetAbsoluteUri ([out] BSTR *pbstrAbsoluteUri);
740 HRESULT GetAuthority ([out] BSTR *pbstrAuthority);
741 HRESULT GetDisplayUri ([out] BSTR *pbstrDisplayString);
742 HRESULT GetDomain ([out] BSTR *pbstrDomain);
743 HRESULT GetExtension ([out] BSTR *pbstrExtension);
744 HRESULT GetFragment ([out] BSTR *pbstrFragment);
745 HRESULT GetHost ([out] BSTR *pbstrHost);
746 HRESULT GetPassword ([out] BSTR *pbstrPassword);
747 HRESULT GetPath ([out] BSTR *pbstrPath);
748 HRESULT GetPathAndQuery ([out] BSTR *pbstrPathAndQuery);
749 HRESULT GetQuery ([out] BSTR *pbstrQuery);
750 HRESULT GetRawUri ([out] BSTR *pbstrRawUri);
751 HRESULT GetSchemeName ([out] BSTR *pbstrSchemeName);
752 HRESULT GetUserInfo ([out] BSTR *pbstrUserInfo);
753 HRESULT GetUserName ([out] BSTR *pbstrUserName);
754 HRESULT GetHostType ([out] DWORD *pdwHostType);
755 HRESULT GetPort ([out] DWORD *pdwPort);
756 HRESULT GetScheme ([out] DWORD *pdwScheme);
757 HRESULT GetZone ([out] DWORD *pdwZone);
758 HRESULT GetProperties ([out] LPDWORD pdwFlags);
759 HRESULT IsEqual ([in] IUri *pUri,[out] BOOL *pfEqual);
760}
761
762cpp_quote("")
763cpp_quote("STDAPI CreateUri(LPCWSTR pwzURI, DWORD dwFlags, DWORD_PTR dwReserved, IUri **ppURI);")
764cpp_quote("STDAPI CreateUriWithFragment(")
765cpp_quote("LPCWSTR pwzURI, LPCWSTR pwzFragment, DWORD dwFlags, DWORD_PTR dwReserved, IUri **ppURI);")
766cpp_quote("#endif")
767
768cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
769cpp_quote("STDAPI CreateUriFromMultiByteString(LPCSTR pszANSIInputUri, DWORD dwEncodingFlags, DWORD dwCodePage, DWORD dwCreateFlags, DWORD_PTR dwReserved, IUri **ppUri);")
770cpp_quote("#endif")
771cpp_quote("")
772cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
773cpp_quote("#define Uri_HAS_ABSOLUTE_URI (1 << Uri_PROPERTY_ABSOLUTE_URI)")
774cpp_quote("#define Uri_HAS_AUTHORITY (1 << Uri_PROPERTY_AUTHORITY)")
775cpp_quote("#define Uri_HAS_DISPLAY_URI (1 << Uri_PROPERTY_DISPLAY_URI)")
776cpp_quote("#define Uri_HAS_DOMAIN (1 << Uri_PROPERTY_DOMAIN)")
777cpp_quote("#define Uri_HAS_EXTENSION (1 << Uri_PROPERTY_EXTENSION)")
778cpp_quote("#define Uri_HAS_FRAGMENT (1 << Uri_PROPERTY_FRAGMENT)")
779cpp_quote("#define Uri_HAS_HOST (1 << Uri_PROPERTY_HOST)")
780cpp_quote("#define Uri_HAS_PASSWORD (1 << Uri_PROPERTY_PASSWORD)")
781cpp_quote("#define Uri_HAS_PATH (1 << Uri_PROPERTY_PATH)")
782cpp_quote("#define Uri_HAS_QUERY (1 << Uri_PROPERTY_QUERY)")
783cpp_quote("#define Uri_HAS_RAW_URI (1 << Uri_PROPERTY_RAW_URI)")
784cpp_quote("#define Uri_HAS_SCHEME_NAME (1 << Uri_PROPERTY_SCHEME_NAME)")
785cpp_quote("#define Uri_HAS_USER_NAME (1 << Uri_PROPERTY_USER_NAME)")
786cpp_quote("#define Uri_HAS_PATH_AND_QUERY (1 << Uri_PROPERTY_PATH_AND_QUERY)")
787cpp_quote("#define Uri_HAS_USER_INFO (1 << Uri_PROPERTY_USER_INFO)")
788cpp_quote("#define Uri_HAS_HOST_TYPE (1 << Uri_PROPERTY_HOST_TYPE)")
789cpp_quote("#define Uri_HAS_PORT (1 << Uri_PROPERTY_PORT)")
790cpp_quote("#define Uri_HAS_SCHEME (1 << Uri_PROPERTY_SCHEME)")
791cpp_quote("#define Uri_HAS_ZONE (1 << Uri_PROPERTY_ZONE)")
792cpp_quote("")
793cpp_quote("#define Uri_CREATE_ALLOW_RELATIVE 0x1")
794cpp_quote("#define Uri_CREATE_ALLOW_IMPLICIT_WILDCARD_SCHEME 0x2")
795cpp_quote("#define Uri_CREATE_ALLOW_IMPLICIT_FILE_SCHEME 0x4")
796cpp_quote("#define Uri_CREATE_NOFRAG 0x8")
797cpp_quote("#define Uri_CREATE_NO_CANONICALIZE 0x10")
798cpp_quote("#define Uri_CREATE_CANONICALIZE 0x100")
799cpp_quote("#define Uri_CREATE_FILE_USE_DOS_PATH 0x20")
800cpp_quote("#define Uri_CREATE_DECODE_EXTRA_INFO 0x40")
801cpp_quote("#define Uri_CREATE_NO_DECODE_EXTRA_INFO 0x80")
802cpp_quote("#define Uri_CREATE_CRACK_UNKNOWN_SCHEMES 0x200")
803cpp_quote("#define Uri_CREATE_NO_CRACK_UNKNOWN_SCHEMES 0x400")
804cpp_quote("#define Uri_CREATE_PRE_PROCESS_HTML_URI 0x800")
805cpp_quote("#define Uri_CREATE_NO_PRE_PROCESS_HTML_URI 0x1000")
806cpp_quote("#define Uri_CREATE_IE_SETTINGS 0x2000")
807cpp_quote("#define Uri_CREATE_NO_IE_SETTINGS 0x4000")
808cpp_quote("#define Uri_CREATE_NO_ENCODE_FORBIDDEN_CHARACTERS 0x8000")
809cpp_quote("#define Uri_CREATE_NORMALIZE_INTL_CHARACTERS 0x10000")
810cpp_quote("#define Uri_CREATE_CANONICALIZE_ABSOLUTE 0x20000")
811cpp_quote("")
812cpp_quote("#define Uri_DISPLAY_NO_FRAGMENT 0x1")
813cpp_quote("#define Uri_PUNYCODE_IDN_HOST 0x2")
814cpp_quote("#define Uri_DISPLAY_IDN_HOST 0x4")
815cpp_quote("#define Uri_DISPLAY_NO_PUNYCODE 0x8")
816cpp_quote("")
817cpp_quote("#define Uri_ENCODING_USER_INFO_AND_PATH_IS_PERCENT_ENCODED_UTF8 0x1")
818cpp_quote("#define Uri_ENCODING_USER_INFO_AND_PATH_IS_CP 0x2")
819cpp_quote("#define Uri_ENCODING_HOST_IS_IDN 0x4")
820cpp_quote("#define Uri_ENCODING_HOST_IS_PERCENT_ENCODED_UTF8 0x8")
821cpp_quote("#define Uri_ENCODING_HOST_IS_PERCENT_ENCODED_CP 0x10")
822cpp_quote("#define Uri_ENCODING_QUERY_AND_FRAGMENT_IS_PERCENT_ENCODED_UTF8 0x20")
823cpp_quote("#define Uri_ENCODING_QUERY_AND_FRAGMENT_IS_CP 0x40")
824cpp_quote("")
825cpp_quote("#define Uri_ENCODING_RFC (Uri_ENCODING_USER_INFO_AND_PATH_IS_PERCENT_ENCODED_UTF8 | Uri_ENCODING_HOST_IS_PERCENT_ENCODED_UTF8 | Uri_ENCODING_QUERY_AND_FRAGMENT_IS_PERCENT_ENCODED_UTF8)")
826cpp_quote("")
827cpp_quote("#define UriBuilder_USE_ORIGINAL_FLAGS 0x1")
828cpp_quote("#endif")
829cpp_quote("#endif")
830
831cpp_quote("")
832cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
833[object, local, uuid (a158a630-ed6f-45fb-b987-f68676f57752), pointer_default (unique)]
834interface IUriContainer : IUnknown {
835 HRESULT GetIUri ([out] IUri **ppIUri);
836}
837cpp_quote("")
838[local, object, uuid (4221b2e1-8955-46c0-BD5B-DE9897565DE7), pointer_default (unique)]
839interface IUriBuilder: IUnknown {
840 HRESULT CreateUriSimple ([in] DWORD dwAllowEncodingPropertyMask,[in] DWORD_PTR dwReserved,[out] IUri **ppIUri);
841 HRESULT CreateUri ([in] DWORD dwCreateFlags,[in] DWORD dwAllowEncodingPropertyMask,[in] DWORD_PTR dwReserved,[out] IUri **ppIUri);
842 HRESULT CreateUriWithFlags ([in] DWORD dwCreateFlags,[in] DWORD dwUriBuilderFlags,[in] DWORD dwAllowEncodingPropertyMask,[in] DWORD_PTR dwReserved,[out] IUri **ppIUri);
843 HRESULT GetIUri ([out]IUri **ppIUri);
844 HRESULT SetIUri ([in, unique]IUri *pIUri);
845 HRESULT GetFragment ([out] DWORD *pcchFragment,[out] LPCWSTR *ppwzFragment);
846 HRESULT GetHost ([out] DWORD *pcchHost,[out] LPCWSTR *ppwzHost);
847 HRESULT GetPassword ([out] DWORD *pcchPassword,[out] LPCWSTR *ppwzPassword);
848 HRESULT GetPath ([out] DWORD *pcchPath,[out] LPCWSTR *ppwzPath);
849 HRESULT GetPort ([out] BOOL *pfHasPort,[out]DWORD *pdwPort);
850 HRESULT GetQuery ([out] DWORD *pcchQuery,[out] LPCWSTR *ppwzQuery);
851 HRESULT GetSchemeName ([out] DWORD *pcchSchemeName,[out] LPCWSTR *ppwzSchemeName);
852 HRESULT GetUserName ([out] DWORD *pcchUserName,[out] LPCWSTR *ppwzUserName);
853 HRESULT SetFragment ([in]LPCWSTR pwzNewValue);
854 HRESULT SetHost ([in]LPCWSTR pwzNewValue);
855 HRESULT SetPassword ([in]LPCWSTR pwzNewValue);
856 HRESULT SetPath ([in]LPCWSTR pwzNewValue);
857 HRESULT SetPort ([in]BOOL fHasPort,[in]DWORD dwNewValue);
858 HRESULT SetQuery ([in]LPCWSTR pwzNewValue);
859 HRESULT SetSchemeName ([in]LPCWSTR pwzNewValue);
860 HRESULT SetUserName ([in]LPCWSTR pwzNewValue);
861 HRESULT RemoveProperties ([in]DWORD dwPropertyMask);
862 HRESULT HasBeenModified ([out]BOOL *pfModified);
863};
864
865cpp_quote("")
866[local, object, uuid (E982CE48-0b96-440c-BC37-0c869b27a29e), pointer_default (unique)]
867interface IUriBuilderFactory: IUnknown {
868 HRESULT CreateIUriBuilder ([in] DWORD dwFlags,[in] DWORD_PTR dwReserved,[out] IUriBuilder **ppIUriBuilder);
869 HRESULT CreateInitializedIUriBuilder ([in] DWORD dwFlags,[in] DWORD_PTR dwReserved,[out] IUriBuilder **ppIUriBuilder);
870};
871
872cpp_quote("")
873cpp_quote("STDAPI CreateIUriBuilder(IUri *pIUri, DWORD dwFlags, DWORD_PTR dwReserved, IUriBuilder **ppIUriBuilder);")
874cpp_quote("#endif")
875cpp_quote("#endif")
876
877cpp_quote("")
878cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
879cpp_quote("#ifndef _LPWININETINFO_DEFINED")
880cpp_quote("#define _LPWININETINFO_DEFINED")
881cpp_quote("")
882[object, uuid (79eac9d6-bafa-11ce-8c82-00aa004ba90b), pointer_default (unique)]
883interface IWinInetInfo : IUnknown {
884 typedef [unique] IWinInetInfo *LPWININETINFO;
885 [local] HRESULT QueryOption ([in] DWORD dwOption,[in, out, size_is (*pcbBuf)] LPVOID pBuffer,[in, out] DWORD *pcbBuf);
886 [call_as (QueryOption)] HRESULT RemoteQueryOption ([in] DWORD dwOption,[in, out, size_is (*pcbBuf)] BYTE *pBuffer,[in, out] DWORD *pcbBuf);
887}
888cpp_quote("#endif")
889
890cpp_quote("")
891cpp_quote("#define WININETINFO_OPTION_LOCK_HANDLE 65534")
892
893cpp_quote("")
894cpp_quote("#ifndef _LPHTTPSECURITY_DEFINED")
895cpp_quote("#define _LPHTTPSECURITY_DEFINED")
896cpp_quote("")
897[local, object, uuid (79eac9d7-bafa-11ce-8c82-00aa004ba90b), pointer_default (unique)]
898interface IHttpSecurity : IWindowForBindingUI {
899 typedef [unique] IHttpSecurity *LPHTTPSECURITY;
900cpp_quote("")
901 HRESULT OnSecurityProblem ([in] DWORD dwProblem);
902}
903cpp_quote("#endif")
904
905cpp_quote("")
906cpp_quote("#ifndef _LPWININETHTTPINFO_DEFINED")
907cpp_quote("#define _LPWININETHTTPINFO_DEFINED")
908cpp_quote("")
909[object, uuid (79eac9d8-bafa-11ce-8c82-00aa004ba90b), pointer_default (unique)]
910interface IWinInetHttpInfo : IWinInetInfo {
911 typedef [unique] IWinInetHttpInfo *LPWININETHTTPINFO;
912cpp_quote("")
913 [local] HRESULT QueryInfo ([in] DWORD dwOption,[in, out, size_is (*pcbBuf)] LPVOID pBuffer,[in, out] DWORD *pcbBuf,[in, out] DWORD *pdwFlags,[in, out] DWORD *pdwReserved);
914 [call_as (QueryInfo)] HRESULT RemoteQueryInfo ([in] DWORD dwOption,[in, out, size_is (*pcbBuf)] BYTE *pBuffer,[in, out] DWORD *pcbBuf,[in, out] DWORD *pdwFlags,[in, out] DWORD *pdwReserved);
915}
916cpp_quote("#endif")
917
918cpp_quote("")
919cpp_quote("#ifndef _LPWININETHTTPTIMEOUTS_DEFINED")
920cpp_quote("#define _LPWININETHTTPTIMEOUTS_DEFINED")
921[local, object, uuid (F286FA56-C1FD-4270-8e67-B3EB790A81E8), pointer_default (unique)]
922interface IWinInetHttpTimeouts : IUnknown {
923 HRESULT GetRequestTimeouts ([out] DWORD *pdwConnectTimeout,[out] DWORD *pdwSendTimeout,[out] DWORD *pdwReceiveTimeout);
924}
925cpp_quote("#endif")
926
927cpp_quote("")
928cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
929cpp_quote("#ifndef _LPWININETCACHEHINTS_DEFINED")
930cpp_quote("#define _LPWININETCACHEHINTS_DEFINED")
931cpp_quote("")
932[local, object, uuid (DD1EC3B3-8391-4fdb-A9E6-347c3caaa7dd), pointer_default (unique)]
933interface IWinInetCacheHints : IUnknown {
934 typedef [unique] IWinInetCacheHints *LPWININETCACHEHINTS;
935cpp_quote("")
936 HRESULT SetCacheExtension ([in] LPCWSTR pwzExt,[in, out, size_is (*pcbCacheFile)] LPVOID pszCacheFile,[in, out] DWORD *pcbCacheFile,[in, out] DWORD *pdwWinInetError,[in, out] DWORD *pdwReserved);
937}
938cpp_quote("#endif")
939cpp_quote("#endif")
940
941cpp_quote("")
942cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
943cpp_quote("#ifndef _LPWININETCACHEHINTS2_DEFINED")
944cpp_quote("#define _LPWININETCACHEHINTS2_DEFINED")
945cpp_quote("")
946[local, object, uuid (7857aeac-D31F-49bf-884e-DD46DF36780A), pointer_default (unique)]
947interface IWinInetCacheHints2 : IWinInetCacheHints {
948 typedef [unique] IWinInetCacheHints2 *LPWININETCACHEHINTS2;
949cpp_quote("")
950 HRESULT SetCacheExtension2 ([in] LPCWSTR pwzExt,[out, size_is (sizeof (WCHAR) *(*pcchCacheFile))]WCHAR *pwzCacheFile,[in, out] DWORD *pcchCacheFile,[out] DWORD *pdwWinInetError,[out] DWORD *pdwReserved);
951}
952cpp_quote("#endif")
953cpp_quote("#endif")
954
955cpp_quote("")
956cpp_quote("#define SID_IBindHost IID_IBindHost")
957cpp_quote("#define SID_SBindHost IID_IBindHost")
958
959cpp_quote("")
960cpp_quote("#ifndef _LPBINDHOST_DEFINED")
961cpp_quote("#define _LPBINDHOST_DEFINED")
962
963cpp_quote("")
964cpp_quote("EXTERN_C const GUID SID_BindHost;")
965cpp_quote("")
966[object, uuid (fc4801a1-2ba9-11cf-a229-00aa003d7352), pointer_default (unique)]
967interface IBindHost : IUnknown {
968 typedef [unique] IBindHost *LPBINDHOST;
969cpp_quote("")
970 HRESULT CreateMoniker ([in] LPOLESTR szName,[in] IBindCtx *pBC,[out] IMoniker **ppmk,[in] DWORD dwReserved);
971 [local] HRESULT MonikerBindToStorage ([in] IMoniker *pMk,[in] IBindCtx *pBC,[in] IBindStatusCallback *pBSC,[in] REFIID riid,[out] void **ppvObj);
972 [call_as (MonikerBindToStorage)] HRESULT RemoteMonikerBindToStorage ([in, unique] IMoniker *pMk,[in, unique] IBindCtx *pBC,[in, unique] IBindStatusCallback *pBSC,[in] REFIID riid,[out, iid_is (riid)] IUnknown **ppvObj);
973 [local] HRESULT MonikerBindToObject ([in] IMoniker *pMk,[in] IBindCtx *pBC,[in] IBindStatusCallback *pBSC,[in] REFIID riid,[out] void **ppvObj);
974 [call_as (MonikerBindToObject)] HRESULT RemoteMonikerBindToObject ([in, unique] IMoniker *pMk,[in, unique] IBindCtx *pBC,[in, unique] IBindStatusCallback *pBSC,[in] REFIID riid,[out, iid_is (riid)] IUnknown **ppvObj);
975}
976cpp_quote("#endif")
977
978cpp_quote("")
979cpp_quote("#define URLOSTRM_USECACHEDCOPY_ONLY 0x1")
980cpp_quote("#define URLOSTRM_USECACHEDCOPY 0x2")
981cpp_quote("#define URLOSTRM_GETNEWESTVERSION 0x3")
982cpp_quote("")
983cpp_quote("struct IBindStatusCallback;")
984cpp_quote("STDAPI HlinkSimpleNavigateToString(LPCWSTR szTarget, LPCWSTR szLocation, LPCWSTR szTargetFrameName, IUnknown *pUnk, IBindCtx *pbc, IBindStatusCallback *, DWORD grfHLNF, DWORD dwReserved);")
985cpp_quote("STDAPI HlinkSimpleNavigateToMoniker(IMoniker *pmkTarget, LPCWSTR szLocation, LPCWSTR szTargetFrameName, IUnknown *pUnk, IBindCtx *pbc, IBindStatusCallback *, DWORD grfHLNF, DWORD dwReserved);")
986cpp_quote("STDAPI URLOpenStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);")
987cpp_quote("STDAPI URLOpenStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);")
988cpp_quote("STDAPI URLOpenPullStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);")
989cpp_quote("STDAPI URLOpenPullStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);")
990cpp_quote("STDAPI URLDownloadToFileA(LPUNKNOWN,LPCSTR,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);")
991cpp_quote("STDAPI URLDownloadToFileW(LPUNKNOWN,LPCWSTR,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);")
992cpp_quote("STDAPI URLDownloadToCacheFileA(LPUNKNOWN, LPCSTR, LPSTR, DWORD, DWORD, LPBINDSTATUSCALLBACK);")
993cpp_quote("STDAPI URLDownloadToCacheFileW(LPUNKNOWN, LPCWSTR, LPWSTR, DWORD, DWORD, LPBINDSTATUSCALLBACK);")
994cpp_quote("STDAPI URLOpenBlockingStreamA(LPUNKNOWN,LPCSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);")
995cpp_quote("STDAPI URLOpenBlockingStreamW(LPUNKNOWN,LPCWSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);")
996cpp_quote("")
997cpp_quote("#define URLOpenStream __MINGW_NAME_AW(URLOpenStream)")
998cpp_quote("#define URLOpenPullStream __MINGW_NAME_AW(URLOpenPullStream)")
999cpp_quote("#define URLDownloadToFile __MINGW_NAME_AW(URLDownloadToFile)")
1000cpp_quote("#define URLDownloadToCacheFile __MINGW_NAME_AW(URLDownloadToCacheFile)")
1001cpp_quote("#define URLOpenBlockingStream __MINGW_NAME_AW(URLOpenBlockingStream)")
1002cpp_quote("")
1003cpp_quote("STDAPI HlinkGoBack(IUnknown *pUnk);")
1004cpp_quote("STDAPI HlinkGoForward(IUnknown *pUnk);")
1005cpp_quote("STDAPI HlinkNavigateString(IUnknown *pUnk, LPCWSTR szTarget);")
1006cpp_quote("STDAPI HlinkNavigateMoniker(IUnknown *pUnk, IMoniker *pmkTarget);")
1007
1008cpp_quote("")
1009cpp_quote("#ifndef _URLMON_NO_ASYNC_PLUGABLE_PROTOCOLS_")
1010interface IInternet;
1011interface IInternetBindInfo;
1012interface IInternetBindInfoEx;
1013interface IInternetProtocolRoot;
1014interface IInternetProtocol;
1015interface IInternetProtocolEx;
1016interface IInternetProtocolSink;
1017interface IInternetProtocolInfo;
1018interface IInternetSession;
1019interface IInternetProtocolSinkStackable;
1020
1021cpp_quote("")
1022cpp_quote("#ifndef _LPIINTERNET")
1023cpp_quote("#define _LPIINTERNET")
1024cpp_quote("")
1025[local, object, uuid (79eac9e0-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1026interface IInternet : IUnknown {
1027 typedef [unique] IInternet *LPIINTERNET;
1028}
1029cpp_quote("#endif")
1030
1031cpp_quote("")
1032cpp_quote("#ifndef _LPIINTERNETBINDINFO")
1033cpp_quote("#define _LPIINTERNETBINDINFO")
1034cpp_quote("")
1035[local, object, uuid (79eac9e1-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1036interface IInternetBindInfo : IUnknown {
1037 typedef [unique] IInternetBindInfo *LPIINTERNETBINDINFO;
1038cpp_quote("")
1039 typedef enum tagBINDSTRING {
1040 BINDSTRING_HEADERS = 1,
1041 BINDSTRING_ACCEPT_MIMES,
1042 BINDSTRING_EXTRA_URL,
1043 BINDSTRING_LANGUAGE,
1044 BINDSTRING_USERNAME,
1045 BINDSTRING_PASSWORD,
1046 BINDSTRING_UA_PIXELS,
1047 BINDSTRING_UA_COLOR,
1048 BINDSTRING_OS,
1049 BINDSTRING_USER_AGENT,
1050 BINDSTRING_ACCEPT_ENCODINGS,
1051 BINDSTRING_POST_COOKIE,
1052 BINDSTRING_POST_DATA_MIME,
1053 BINDSTRING_URL,BINDSTRING_IID,
1054 BINDSTRING_FLAG_BIND_TO_OBJECT,
1055 BINDSTRING_PTR_BIND_CONTEXT,
1056 BINDSTRING_XDR_ORIGIN,
1057 BINDSTRING_DOWNLOADPATH,
1058 BINDSTRING_ROOTDOC_URL,
1059 BINDSTRING_INITIAL_FILENAME,
1060 BINDSTRING_PROXY_USERNAME,
1061 BINDSTRING_PROXY_PASSWORD
1062 } BINDSTRING;
1063cpp_quote("")
1064 HRESULT GetBindInfo ([out] DWORD *grfBINDF,[in, out, unique] BINDINFO *pbindinfo);
1065 HRESULT GetBindString ([in] ULONG ulStringType,[in, out] LPOLESTR *ppwzStr,[in] ULONG cEl,[in, out] ULONG *pcElFetched);
1066}
1067cpp_quote("#endif")
1068
1069cpp_quote("")
1070cpp_quote("#ifndef _LPIINTERNETBINDINFOEX")
1071cpp_quote("#define _LPIINTERNETBINDINFOEX")
1072cpp_quote("")
1073[local, object, uuid (a3e015b7-a82c-4dcd-a150-569aeeed36ab), pointer_default (unique)]
1074interface IInternetBindInfoEx : IInternetBindInfo {
1075 typedef [unique] IInternetBindInfoEx *LPIINTERNETBINDINFOEX;
1076cpp_quote("")
1077 HRESULT GetBindInfoEx ([out] DWORD *grfBINDF,[in, out, unique] BINDINFO *pbindinfo,[out] DWORD *grfBINDF2,[out] DWORD *pdwReserved);
1078}
1079cpp_quote("#endif")
1080
1081cpp_quote("")
1082cpp_quote("#ifndef _LPIINTERNETPROTOCOLROOT_DEFINED")
1083cpp_quote("#define _LPIINTERNETPROTOCOLROOT_DEFINED")
1084cpp_quote("")
1085[local, object, uuid (79eac9e3-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1086interface IInternetProtocolRoot : IUnknown {
1087 typedef [unique] IInternetProtocolRoot *LPIINTERNETPROTOCOLROOT;
1088cpp_quote("")
1089 typedef enum _tagPI_FLAGS {
1090 PI_PARSE_URL = 0x1,
1091 PI_FILTER_MODE = 0x2,
1092 PI_FORCE_ASYNC = 0x4,
1093 PI_USE_WORKERTHREAD = 0x8,
1094 PI_MIMEVERIFICATION = 0x10,
1095 PI_CLSIDLOOKUP = 0x20,
1096 PI_DATAPROGRESS = 0x40,
1097 PI_SYNCHRONOUS = 0x80,
1098 PI_APARTMENTTHREADED = 0x100,
1099 PI_CLASSINSTALL = 0x200,
1100 PI_PASSONBINDCTX = 0x2000,
1101 PI_NOMIMEHANDLER = 0x8000,
1102 PI_LOADAPPDIRECT = 0x4000,
1103 PD_FORCE_SWITCH = 0x10000,
1104 PI_PREFERDEFAULTHANDLER = 0x20000
1105 } PI_FLAGS;
1106 typedef struct _tagPROTOCOLDATA {
1107 DWORD grfFlags;
1108 DWORD dwState;
1109 LPVOID pData;
1110 ULONG cbData;
1111 } PROTOCOLDATA;
1112cpp_quote("")
1113 typedef struct _tagStartParam {
1114 IID iid;
1115 IBindCtx *pIBindCtx;
1116 IUnknown *pItf;
1117 } StartParam;
1118cpp_quote("")
1119 HRESULT Start ([in] LPCWSTR szUrl,[in] IInternetProtocolSink *pOIProtSink,[in] IInternetBindInfo *pOIBindInfo,[in] DWORD grfPI,[in] HANDLE_PTR dwReserved);
1120 HRESULT Continue ([in] PROTOCOLDATA *pProtocolData);
1121 HRESULT Abort ([in] HRESULT hrReason,[in] DWORD dwOptions);
1122 HRESULT Terminate ([in] DWORD dwOptions);
1123 HRESULT Suspend ();
1124 HRESULT Resume ();
1125}
1126cpp_quote("#endif")
1127
1128cpp_quote("")
1129cpp_quote("#ifndef _LPIINTERNETPROTOCOL_DEFINED")
1130cpp_quote("#define _LPIINTERNETPROTOCOL_DEFINED")
1131cpp_quote("")
1132[local, object, uuid (79eac9e4-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1133interface IInternetProtocol : IInternetProtocolRoot {
1134 typedef [unique] IInternetProtocol *LPIINTERNETPROTOCOL;
1135cpp_quote("")
1136 HRESULT Read ([in, out, size_is (cb), length_is (*pcbRead)]void *pv,[in] ULONG cb,[out] ULONG *pcbRead);
1137 HRESULT Seek ([in] LARGE_INTEGER dlibMove,[in] DWORD dwOrigin,[out] ULARGE_INTEGER *plibNewPosition);
1138 HRESULT LockRequest ([in] DWORD dwOptions);
1139 HRESULT UnlockRequest ();
1140}
1141cpp_quote("#endif")
1142
1143cpp_quote("")
1144cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1145cpp_quote("#ifndef _LPIINTERNETPROTOCOLEX_DEFINED")
1146cpp_quote("#define _LPIINTERNETPROTOCOLEX_DEFINED")
1147cpp_quote("")
1148[local, object, uuid (C7A98E66-1010-492c-A1C8-C809E1F75905), pointer_default (unique)]
1149interface IInternetProtocolEx: IInternetProtocol {
1150 HRESULT StartEx ([in] IUri *pUri,[in] IInternetProtocolSink *pOIProtSink,[in] IInternetBindInfo *pOIBindInfo,[in] DWORD grfPI,[in] HANDLE_PTR dwReserved);
1151}
1152cpp_quote("#endif")
1153cpp_quote("#endif")
1154
1155cpp_quote("")
1156cpp_quote("#ifndef _LPIINTERNETPROTOCOLSINK_DEFINED")
1157cpp_quote("#define _LPIINTERNETPROTOCOLSINK_DEFINED")
1158[local, object, uuid (79eac9e5-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1159interface IInternetProtocolSink : IUnknown {
1160 typedef [unique] IInternetProtocolSink *LPIINTERNETPROTOCOLSINK;
1161cpp_quote("")
1162 HRESULT Switch ([in] PROTOCOLDATA *pProtocolData);
1163 HRESULT ReportProgress ([in] ULONG ulStatusCode,[in] LPCWSTR szStatusText);
1164 HRESULT ReportData ([in] DWORD grfBSCF,[in] ULONG ulProgress,[in] ULONG ulProgressMax);
1165 HRESULT ReportResult ([in] HRESULT hrResult,[in] DWORD dwError,[in] LPCWSTR szResult);
1166}
1167cpp_quote("#endif")
1168
1169cpp_quote("")
1170cpp_quote("#ifndef _LPIINTERNETPROTOCOLSINKSTACKABLE_DEFINED")
1171cpp_quote("#define _LPIINTERNETPROTOCOLSINKSTACKABLE_DEFINED")
1172cpp_quote("")
1173[local, object, uuid (79eac9f0-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1174interface IInternetProtocolSinkStackable : IUnknown {
1175 typedef [unique] IInternetProtocolSinkStackable *LPIINTERNETPROTOCOLSINKStackable;
1176cpp_quote("")
1177 HRESULT SwitchSink ([in] IInternetProtocolSink *pOIProtSink);
1178 HRESULT CommitSwitch ();
1179 HRESULT RollbackSwitch ();
1180}
1181cpp_quote("#endif")
1182
1183cpp_quote("")
1184cpp_quote("#ifndef _LPIINTERNETSESSION_DEFINED")
1185cpp_quote("#define _LPIINTERNETSESSION_DEFINED")
1186cpp_quote("")
1187[local, object, uuid (79eac9e7-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1188interface IInternetSession : IUnknown {
1189 typedef [unique] IInternetSession *LPIINTERNETSESSION;
1190cpp_quote("")
1191 typedef enum _tagOIBDG_FLAGS {
1192 OIBDG_APARTMENTTHREADED = 0x100,
1193 OIBDG_DATAONLY = 0x1000
1194 } OIBDG_FLAGS;
1195cpp_quote("")
1196 HRESULT RegisterNameSpace ([in] IClassFactory *pCF,[in] REFCLSID rclsid,[in] LPCWSTR pwzProtocol,[in] ULONG cPatterns,[in] const LPCWSTR *ppwzPatterns,[in] DWORD dwReserved);
1197 HRESULT UnregisterNameSpace ([in] IClassFactory *pCF,[in] LPCWSTR pszProtocol);
1198 HRESULT RegisterMimeFilter ([in] IClassFactory *pCF,[in] REFCLSID rclsid,[in] LPCWSTR pwzType);
1199 HRESULT UnregisterMimeFilter ([in] IClassFactory *pCF,[in] LPCWSTR pwzType);
1200 HRESULT CreateBinding ([in] LPBC pBC,[in] LPCWSTR szUrl,[in] IUnknown *pUnkOuter,[out, unique] IUnknown **ppUnk,[out, unique] IInternetProtocol **ppOInetProt,[in] DWORD dwOption);
1201 HRESULT SetSessionOption ([in] DWORD dwOption,[in] LPVOID pBuffer,[in] DWORD dwBufferLength,[in] DWORD dwReserved);
1202 HRESULT GetSessionOption ([in] DWORD dwOption,[in, out] LPVOID pBuffer,[in, out] DWORD *pdwBufferLength,[in] DWORD dwReserved);
1203}
1204cpp_quote("#endif")
1205
1206cpp_quote("")
1207cpp_quote("#ifndef _LPIINTERNETTHREADSWITCH_DEFINED")
1208cpp_quote("#define _LPIINTERNETTHREADSWITCH_DEFINED")
1209cpp_quote("")
1210[local, object, uuid (79eac9e8-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1211interface IInternetThreadSwitch : IUnknown {
1212 typedef [unique] IInternetThreadSwitch *LPIINTERNETTHREADSWITCH;
1213cpp_quote("")
1214 HRESULT Prepare ();
1215 HRESULT Continue ();
1216}
1217cpp_quote("#endif")
1218
1219cpp_quote("")
1220cpp_quote("#ifndef _LPIINTERNETPRIORITY_DEFINED")
1221cpp_quote("#define _LPIINTERNETPRIORITY_DEFINED")
1222cpp_quote("")
1223[local, object, uuid (79eac9eb-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1224interface IInternetPriority : IUnknown {
1225 typedef [unique] IInternetPriority *LPIINTERNETPRIORITY;
1226cpp_quote("")
1227 HRESULT SetPriority ([in] LONG nPriority);
1228 HRESULT GetPriority ([out] LONG *pnPriority);
1229}
1230cpp_quote("#endif")
1231
1232cpp_quote("")
1233cpp_quote("#ifndef _LPIINTERNETPROTOCOLINFO_DEFINED")
1234cpp_quote("#define _LPIINTERNETPROTOCOLINFO_DEFINED")
1235cpp_quote("")
1236[local, object, uuid (79eac9ec-baf9-11ce-8c82-00aa004ba90b), pointer_default (unique)]
1237interface IInternetProtocolInfo : IUnknown {
1238 typedef [unique] IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;
1239cpp_quote("")
1240 typedef enum _tagPARSEACTION {
1241 PARSE_CANONICALIZE = 1,
1242 PARSE_FRIENDLY,
1243 PARSE_SECURITY_URL,
1244 PARSE_ROOTDOCUMENT,
1245 PARSE_DOCUMENT,
1246 PARSE_ANCHOR,
1247 PARSE_ENCODE_IS_UNESCAPE,
1248 PARSE_DECODE_IS_ESCAPE,
1249 PARSE_PATH_FROM_URL,
1250 PARSE_URL_FROM_PATH,
1251 PARSE_MIME,
1252 PARSE_SERVER,
1253 PARSE_SCHEMA,
1254 PARSE_SITE,
1255 PARSE_DOMAIN,
1256 PARSE_LOCATION,
1257 PARSE_SECURITY_DOMAIN,
1258 PARSE_ESCAPE,
1259 PARSE_UNESCAPE
1260 } PARSEACTION;
1261cpp_quote("")
1262 typedef enum _tagPSUACTION {
1263 PSU_DEFAULT = 1,
1264 PSU_SECURITY_URL_ONLY
1265 } PSUACTION;
1266cpp_quote("")
1267 typedef enum _tagQUERYOPTION {
1268 QUERY_EXPIRATION_DATE = 1,
1269 QUERY_TIME_OF_LAST_CHANGE,
1270 QUERY_CONTENT_ENCODING,
1271 QUERY_CONTENT_TYPE,
1272 QUERY_REFRESH,
1273 QUERY_RECOMBINE,
1274 QUERY_CAN_NAVIGATE,
1275 QUERY_USES_NETWORK,
1276 QUERY_IS_CACHED,
1277 QUERY_IS_INSTALLEDENTRY,
1278 QUERY_IS_CACHED_OR_MAPPED,
1279 QUERY_USES_CACHE,
1280 QUERY_IS_SECURE,
1281 QUERY_IS_SAFE,
1282 QUERY_USES_HISTORYFOLDER,
1283 QUERY_IS_CACHED_AND_USABLE_OFFLINE
1284 } QUERYOPTION;
1285cpp_quote("")
1286 HRESULT ParseUrl ([in] LPCWSTR pwzUrl,[in] PARSEACTION ParseAction,[in] DWORD dwParseFlags,[out] LPWSTR pwzResult,[in] DWORD cchResult,[out] DWORD *pcchResult,[in] DWORD dwReserved);
1287 HRESULT CombineUrl ([in] LPCWSTR pwzBaseUrl,[in] LPCWSTR pwzRelativeUrl,[in] DWORD dwCombineFlags,[out] LPWSTR pwzResult,[in] DWORD cchResult,[out] DWORD *pcchResult,[in] DWORD dwReserved);
1288 HRESULT CompareUrl ([in] LPCWSTR pwzUrl1,[in] LPCWSTR pwzUrl2,[in] DWORD dwCompareFlags);
1289 HRESULT QueryInfo ([in] LPCWSTR pwzUrl,[in] QUERYOPTION OueryOption,[in] DWORD dwQueryFlags,[in, out, size_is (*pcbBuf)] LPVOID pBuffer,[in] DWORD cbBuffer,[in, out] DWORD *pcbBuf,[in] DWORD dwReserved);
1290}
1291
1292cpp_quote("")
1293cpp_quote("#ifndef URLMON_STRICT")
1294cpp_quote("#define PARSE_ENCODE PARSE_ENCODE_IS_UNESCAPE")
1295cpp_quote("#define PARSE_DECODE PARSE_DECODE_IS_ESCAPE")
1296cpp_quote("#endif")
1297cpp_quote("#endif")
1298
1299cpp_quote("")
1300cpp_quote("#define IOInet IInternet")
1301cpp_quote("#define IOInetBindInfo IInternetBindInfo")
1302cpp_quote("#define IOInetBindInfoEx IInternetBindInfoEx")
1303cpp_quote("#define IOInetProtocolRoot IInternetProtocolRoot")
1304cpp_quote("#define IOInetProtocol IInternetProtocol")
1305cpp_quote("")
1306cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1307cpp_quote("#define IOInetProtocolEx IInternetProtocolEx")
1308cpp_quote("#endif")
1309cpp_quote("#define IOInetProtocolSink IInternetProtocolSink")
1310cpp_quote("#define IOInetProtocolInfo IInternetProtocolInfo")
1311cpp_quote("#define IOInetSession IInternetSession")
1312cpp_quote("#define IOInetPriority IInternetPriority")
1313cpp_quote("#define IOInetThreadSwitch IInternetThreadSwitch")
1314cpp_quote("#define IOInetProtocolSinkStackable IInternetProtocolSinkStackable")
1315cpp_quote("")
1316cpp_quote("#define LPOINET LPIINTERNET")
1317cpp_quote("#define LPOINETPROTOCOLINFO LPIINTERNETPROTOCOLINFO")
1318cpp_quote("#define LPOINETBINDINFO LPIINTERNETBINDINFO")
1319cpp_quote("#define LPOINETPROTOCOLROOT LPIINTERNETPROTOCOLROOT")
1320cpp_quote("#define LPOINETPROTOCOL LPIINTERNETPROTOCOL")
1321cpp_quote("")
1322cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1323cpp_quote("#define LPOINETPROTOCOLEX LPIINTERNETPROTOCOLEX")
1324cpp_quote("#endif")
1325cpp_quote("#define LPOINETPROTOCOLSINK LPIINTERNETPROTOCOLSINK")
1326cpp_quote("#define LPOINETSESSION LPIINTERNETSESSION")
1327cpp_quote("#define LPOINETTHREADSWITCH LPIINTERNETTHREADSWITCH")
1328cpp_quote("#define LPOINETPRIORITY LPIINTERNETPRIORITY")
1329cpp_quote("#define LPOINETPROTOCOLINFO LPIINTERNETPROTOCOLINFO")
1330cpp_quote("#define LPOINETPROTOCOLSINKSTACKABLE LPIINTERNETPROTOCOLSINKSTACKABLE")
1331cpp_quote("")
1332cpp_quote("#define IID_IOInet IID_IInternet")
1333cpp_quote("#define IID_IOInetBindInfo IID_IInternetBindInfo")
1334cpp_quote("#define IID_IOInetBindInfoEx IID_IInternetBindInfoEx")
1335cpp_quote("#define IID_IOInetProtocolRoot IID_IInternetProtocolRoot")
1336cpp_quote("#define IID_IOInetProtocol IID_IInternetProtocol")
1337
1338cpp_quote("")
1339cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1340cpp_quote("#define IID_IOInetProtocolEx IID_IInternetProtocolEx")
1341cpp_quote("#endif")
1342
1343cpp_quote("#define IID_IOInetProtocolSink IID_IInternetProtocolSink")
1344cpp_quote("#define IID_IOInetProtocolInfo IID_IInternetProtocolInfo")
1345cpp_quote("#define IID_IOInetSession IID_IInternetSession")
1346cpp_quote("#define IID_IOInetPriority IID_IInternetPriority")
1347cpp_quote("#define IID_IOInetThreadSwitch IID_IInternetThreadSwitch")
1348cpp_quote("#define IID_IOInetProtocolSinkStackable IID_IInternetProtocolSinkStackable")
1349
1350cpp_quote("")
1351cpp_quote("STDAPI CoInternetParseUrl(LPCWSTR pwzUrl, PARSEACTION ParseAction, DWORD dwFlags, LPWSTR pszResult, DWORD cchResult, DWORD *pcchResult, DWORD dwReserved);")
1352cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1353cpp_quote("STDAPI CoInternetParseIUri(IUri *pIUri, PARSEACTION ParseAction, DWORD dwFlags, LPWSTR pwzResult, DWORD cchResult, DWORD *pcchResult, DWORD_PTR dwReserved);")
1354cpp_quote("#endif")
1355cpp_quote("STDAPI CoInternetCombineUrl(LPCWSTR pwzBaseUrl, LPCWSTR pwzRelativeUrl, DWORD dwCombineFlags, LPWSTR pszResult, DWORD cchResult, DWORD *pcchResult, DWORD dwReserved);")
1356cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1357cpp_quote("STDAPI CoInternetCombineUrlEx(IUri *pBaseUri, LPCWSTR pwzRelativeUrl, DWORD dwCombineFlags, IUri **ppCombinedUri, DWORD_PTR dwReserved);")
1358cpp_quote("STDAPI CoInternetCombineIUri (IUri *pBaseUri, IUri *pRelativeUri, DWORD dwCombineFlags, IUri **ppCombinedUri, DWORD_PTR dwReserved);")
1359cpp_quote("#endif")
1360cpp_quote("STDAPI CoInternetCompareUrl(LPCWSTR pwzUrl1, LPCWSTR pwzUrl2, DWORD dwFlags);")
1361cpp_quote("STDAPI CoInternetGetProtocolFlags(LPCWSTR pwzUrl, DWORD *pdwFlags, DWORD dwReserved);")
1362cpp_quote("STDAPI CoInternetQueryInfo(LPCWSTR pwzUrl, QUERYOPTION QueryOptions, DWORD dwQueryFlags, LPVOID pvBuffer, DWORD cbBuffer, DWORD *pcbBuffer, DWORD dwReserved);")
1363cpp_quote("STDAPI CoInternetGetSession(DWORD dwSessionMode, IInternetSession **ppIInternetSession, DWORD dwReserved);")
1364cpp_quote("STDAPI CoInternetGetSecurityUrl(LPCWSTR pwszUrl, LPWSTR *ppwszSecUrl, PSUACTION psuAction, DWORD dwReserved);")
1365cpp_quote("STDAPI AsyncInstallDistributionUnit(LPCWSTR szDistUnit, LPCWSTR szTYPE, LPCWSTR szExt, DWORD dwFileVersionMS, DWORD dwFileVersionLS, LPCWSTR szURL,IBindCtx *pbc, LPVOID pvReserved,DWORD flags);")
1366cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1367cpp_quote("STDAPI CoInternetGetSecurityUrlEx(IUri *pUri, IUri **ppSecUri, PSUACTION psuAction, DWORD_PTR dwReserved);")
1368cpp_quote("#endif")
1369
1370cpp_quote("")
1371cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
1372cpp_quote("#ifndef _INTERNETFEATURELIST_DEFINED")
1373cpp_quote("#define _INTERNETFEATURELIST_DEFINED")
1374
1375cpp_quote("")
1376typedef enum _tagINTERNETFEATURELIST {
1377 FEATURE_OBJECT_CACHING = 0,
1378 FEATURE_ZONE_ELEVATION,
1379 FEATURE_MIME_HANDLING,
1380 FEATURE_MIME_SNIFFING,
1381 FEATURE_WINDOW_RESTRICTIONS,
1382 FEATURE_WEBOC_POPUPMANAGEMENT,
1383 FEATURE_BEHAVIORS,
1384 FEATURE_DISABLE_MK_PROTOCOL,
1385 FEATURE_LOCALMACHINE_LOCKDOWN,
1386 FEATURE_SECURITYBAND,
1387 FEATURE_RESTRICT_ACTIVEXINSTALL,
1388 FEATURE_VALIDATE_NAVIGATE_URL,
1389 FEATURE_RESTRICT_FILEDOWNLOAD,
1390 FEATURE_ADDON_MANAGEMENT,
1391 FEATURE_PROTOCOL_LOCKDOWN,
1392 FEATURE_HTTP_USERNAME_PASSWORD_DISABLE,
1393 FEATURE_SAFE_BINDTOOBJECT,
1394 FEATURE_UNC_SAVEDFILECHECK,
1395 FEATURE_GET_URL_DOM_FILEPATH_UNENCODED,
1396 FEATURE_TABBED_BROWSING,
1397 FEATURE_SSLUX,
1398 FEATURE_DISABLE_NAVIGATION_SOUNDS,
1399 FEATURE_DISABLE_LEGACY_COMPRESSION,
1400 FEATURE_FORCE_ADDR_AND_STATUS,
1401 FEATURE_XMLHTTP,
1402 FEATURE_DISABLE_TELNET_PROTOCOL,
1403 FEATURE_FEEDS,
1404 FEATURE_BLOCK_INPUT_PROMPTS,
1405 FEATURE_ENTRY_COUNT,
1406} INTERNETFEATURELIST;
1407cpp_quote("")
1408cpp_quote("#define SET_FEATURE_ON_THREAD 0x1")
1409cpp_quote("#define SET_FEATURE_ON_PROCESS 0x2")
1410cpp_quote("#define SET_FEATURE_IN_REGISTRY 0x4")
1411cpp_quote("#define SET_FEATURE_ON_THREAD_LOCALMACHINE 0x8")
1412cpp_quote("#define SET_FEATURE_ON_THREAD_INTRANET 0x10")
1413cpp_quote("#define SET_FEATURE_ON_THREAD_TRUSTED 0x20")
1414cpp_quote("#define SET_FEATURE_ON_THREAD_INTERNET 0x40")
1415cpp_quote("#define SET_FEATURE_ON_THREAD_RESTRICTED 0x80")
1416cpp_quote("")
1417cpp_quote("#define GET_FEATURE_FROM_THREAD 0x1")
1418cpp_quote("#define GET_FEATURE_FROM_PROCESS 0x2")
1419cpp_quote("#define GET_FEATURE_FROM_REGISTRY 0x4")
1420cpp_quote("#define GET_FEATURE_FROM_THREAD_LOCALMACHINE 0x8")
1421cpp_quote("#define GET_FEATURE_FROM_THREAD_INTRANET 0x10")
1422cpp_quote("#define GET_FEATURE_FROM_THREAD_TRUSTED 0x20")
1423cpp_quote("#define GET_FEATURE_FROM_THREAD_INTERNET 0x40")
1424cpp_quote("#define GET_FEATURE_FROM_THREAD_RESTRICTED 0x80")
1425cpp_quote("#endif")
1426
1427cpp_quote("")
1428cpp_quote("STDAPI CoInternetSetFeatureEnabled(INTERNETFEATURELIST FeatureEntry, DWORD dwFlags, WINBOOL fEnable);")
1429cpp_quote("STDAPI CoInternetIsFeatureEnabled(INTERNETFEATURELIST FeatureEntry, DWORD dwFlags);")
1430cpp_quote("STDAPI CoInternetIsFeatureEnabledForUrl(INTERNETFEATURELIST FeatureEntry, DWORD dwFlags, LPCWSTR szURL, IInternetSecurityManager *pSecMgr);")
1431cpp_quote("STDAPI CoInternetIsFeatureEnabledForIUri(INTERNETFEATURELIST FeatureEntry, DWORD dwFlags, IUri *pIUri, IInternetSecurityManagerEx2 *pSecMgr);")
1432cpp_quote("STDAPI CoInternetIsFeatureZoneElevationEnabled(LPCWSTR szFromURL, LPCWSTR szToURL, IInternetSecurityManager *pSecMgr, DWORD dwFlags);")
1433cpp_quote("#endif")
1434cpp_quote("STDAPI CopyStgMedium(const STGMEDIUM *pcstgmedSrc, STGMEDIUM *pstgmedDest);")
1435cpp_quote("STDAPI CopyBindInfo(const BINDINFO *pcbiSrc, BINDINFO *pbiDest);")
1436cpp_quote("STDAPI_(void) ReleaseBindInfo(BINDINFO *pbindinfo);")
1437
1438cpp_quote("")
1439cpp_quote("#define INET_E_USE_DEFAULT_PROTOCOLHANDLER _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0011))")
1440cpp_quote("#define INET_E_USE_DEFAULT_SETTING _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0012))")
1441cpp_quote("#define INET_E_DEFAULT_ACTION INET_E_USE_DEFAULT_PROTOCOLHANDLER")
1442cpp_quote("#define INET_E_QUERYOPTION_UNKNOWN _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0013))")
1443cpp_quote("#define INET_E_REDIRECTING _HRESULT_TYPEDEF_(__MSABI_LONG(0x800C0014))")
1444
1445cpp_quote("")
1446cpp_quote("#define OInetParseUrl CoInternetParseUrl")
1447cpp_quote("#define OInetCombineUrl CoInternetCombineUrl")
1448cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1449cpp_quote("#define OInetCombineUrlEx CoInternetCombineUrlEx")
1450cpp_quote("#define OInetCombineIUri CoInternetCombineIUri")
1451cpp_quote("#endif")
1452cpp_quote("#define OInetCompareUrl CoInternetCompareUrl")
1453cpp_quote("#define OInetQueryInfo CoInternetQueryInfo")
1454cpp_quote("#define OInetGetSession CoInternetGetSession")
1455cpp_quote("#endif")
1456
1457cpp_quote("")
1458cpp_quote("#define PROTOCOLFLAG_NO_PICS_CHECK 0x1")
1459cpp_quote("")
1460cpp_quote("STDAPI CoInternetCreateSecurityManager(IServiceProvider *pSP, IInternetSecurityManager **ppSM, DWORD dwReserved);")
1461cpp_quote("STDAPI CoInternetCreateZoneManager(IServiceProvider *pSP, IInternetZoneManager **ppZM, DWORD dwReserved);")
1462cpp_quote("")
1463cpp_quote("EXTERN_C const IID CLSID_InternetSecurityManager;")
1464cpp_quote("EXTERN_C const IID CLSID_InternetZoneManager;")
1465
1466cpp_quote("")
1467cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
1468cpp_quote("EXTERN_C const IID CLSID_PersistentZoneIdentifier;")
1469cpp_quote("#endif")
1470
1471cpp_quote("")
1472cpp_quote("#define SID_SInternetSecurityManager IID_IInternetSecurityManager")
1473cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
1474cpp_quote("#define SID_SInternetSecurityManagerEx IID_IInternetSecurityManagerEx")
1475cpp_quote("#endif")
1476cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1477cpp_quote("#define SID_SInternetSecurityManagerEx2 IID_IInternetSecurityManagerEx2")
1478cpp_quote("#endif")
1479cpp_quote("#define SID_SInternetHostSecurityManager IID_IInternetHostSecurityManager")
1480
1481cpp_quote("")
1482cpp_quote("#ifndef _LPINTERNETSECURITYMGRSITE_DEFINED")
1483cpp_quote("#define _LPINTERNETSECURITYMGRSITE_DEFINED")
1484cpp_quote("")
1485[local, object, uuid (79eac9ed-baf9-11ce-8c82-00aa004ba90b), helpstring ("IInternetSecurityMgrSite Interface"), pointer_default (unique)]
1486interface IInternetSecurityMgrSite : IUnknown {
1487 HRESULT GetWindow ([out] HWND *phwnd);
1488 HRESULT EnableModeless ([in] BOOL fEnable);
1489};
1490cpp_quote("#endif")
1491
1492cpp_quote("")
1493cpp_quote("#ifndef _LPINTERNETSECURITYMANANGER_DEFINED")
1494cpp_quote("#define _LPINTERNETSECURITYMANANGER_DEFINED")
1495cpp_quote("")
1496[uuid (79eac9ee-baf9-11ce-8c82-00aa004ba90b), helpstring ("IInternetSecurityManager Interface"), pointer_default (unique)]
1497interface IInternetSecurityManager : IUnknown {
1498 HRESULT SetSecuritySite ([in, unique] IInternetSecurityMgrSite *pSite);
1499 HRESULT GetSecuritySite ([out] IInternetSecurityMgrSite **ppSite);
1500cpp_quote("")
1501 cpp_quote("#define MUTZ_NOSAVEDFILECHECK 0x1")
1502 cpp_quote("#define MUTZ_ISFILE 0x2")
1503 cpp_quote("#define MUTZ_ACCEPT_WILDCARD_SCHEME 0x80")
1504 cpp_quote("#define MUTZ_ENFORCERESTRICTED 0x100")
1505 cpp_quote("#define MUTZ_RESERVED 0x200")
1506 cpp_quote("#define MUTZ_REQUIRESAVEDFILECHECK 0x400")
1507 cpp_quote("#define MUTZ_DONT_UNESCAPE 0x800")
1508 cpp_quote("#define MUTZ_DONT_USE_CACHE 0x1000")
1509 cpp_quote("#define MUTZ_FORCE_INTRANET_FLAGS 0x2000")
1510 cpp_quote("#define MUTZ_IGNORE_ZONE_MAPPINGS 0x4000")
1511
1512cpp_quote("")
1513 HRESULT MapUrlToZone ([in] LPCWSTR pwszUrl,[out] DWORD *pdwZone,[in] DWORD dwFlags);
1514 cpp_quote("")
1515
1516 cpp_quote("#define MAX_SIZE_SECURITY_ID 512")
1517
1518cpp_quote("")
1519 HRESULT GetSecurityId ([in] LPCWSTR pwszUrl,[out, size_is (*pcbSecurityId)]BYTE *pbSecurityId,[in, out]DWORD *pcbSecurityId,[in] DWORD_PTR dwReserved);
1520cpp_quote("")
1521 typedef enum {
1522 PUAF_DEFAULT = 0x0,
1523 PUAF_NOUI = 0x1,
1524 PUAF_ISFILE = 0x2,
1525 PUAF_WARN_IF_DENIED = 0x4,
1526 PUAF_FORCEUI_FOREGROUND = 0x8,
1527 PUAF_CHECK_TIFS = 0x10,
1528 PUAF_DONTCHECKBOXINDIALOG = 0x20,
1529 PUAF_TRUSTED = 0x40,
1530 PUAF_ACCEPT_WILDCARD_SCHEME = 0x80,
1531 PUAF_ENFORCERESTRICTED = 0x100,
1532 PUAF_NOSAVEDFILECHECK = 0x200,
1533 PUAF_REQUIRESAVEDFILECHECK = 0x400,
1534 PUAF_DONT_USE_CACHE = 0x1000,
1535 PUAF_RESERVED1 = 0x2000,
1536 PUAF_RESERVED2 = 0x4000,
1537 PUAF_LMZ_UNLOCKED = 0x10000,
1538 PUAF_LMZ_LOCKED = 0x20000,
1539 PUAF_DEFAULTZONEPOL = 0x40000,
1540 PUAF_NPL_USE_LOCKED_IF_RESTRICTED = 0x80000,
1541 PUAF_NOUIIFLOCKED = 0x100000,
1542 PUAF_DRAGPROTOCOLCHECK = 0x200000
1543 } PUAF;
1544 typedef enum {
1545 PUAFOUT_DEFAULT = 0x0,
1546 PUAFOUT_ISLOCKZONEPOLICY = 0x1
1547 } PUAFOUT;
1548
1549cpp_quote("")
1550 HRESULT ProcessUrlAction ([in] LPCWSTR pwszUrl,[in] DWORD dwAction,[out, size_is (cbPolicy)]BYTE *pPolicy,[in] DWORD cbPolicy,[in, unique]BYTE *pContext,[in] DWORD cbContext,[in] DWORD dwFlags,[in] DWORD dwReserved);
1551 HRESULT QueryCustomPolicy ([in] LPCWSTR pwszUrl,[in] REFGUID guidKey,[out, size_is (,*pcbPolicy)]BYTE **ppPolicy,[out] DWORD *pcbPolicy,[in] BYTE *pContext,[in] DWORD cbContext,[in] DWORD dwReserved);
1552
1553 cpp_quote("")
1554 typedef enum {
1555 SZM_CREATE = 0x0,
1556 SZM_DELETE = 0x1
1557 } SZM_FLAGS;
1558cpp_quote("")
1559 HRESULT SetZoneMapping ([in] DWORD dwZone,[in] LPCWSTR lpszPattern,[in] DWORD dwFlags);
1560 HRESULT GetZoneMappings ([in] DWORD dwZone,[out] IEnumString **ppenumString,[in] DWORD dwFlags);
1561};
1562cpp_quote("#endif")
1563
1564cpp_quote("")
1565cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
1566cpp_quote("#ifndef _LPINTERNETSECURITYMANANGEREX_DEFINED")
1567cpp_quote("#define _LPINTERNETSECURITYMANANGEREX_DEFINED")
1568cpp_quote("")
1569[uuid (F164EDF1-CC7C-4f0d-9a94-34222625c393), helpstring ("IInternetSecurityManagerEx Interface"), pointer_default (unique)]
1570interface IInternetSecurityManagerEx : IInternetSecurityManager {
1571 HRESULT ProcessUrlActionEx ([in] LPCWSTR pwszUrl,[in] DWORD dwAction,[out, size_is (cbPolicy)]BYTE *pPolicy,[in] DWORD cbPolicy,[in] BYTE *pContext,[in] DWORD cbContext,[in] DWORD dwFlags,[in] DWORD dwReserved,[out] DWORD *pdwOutFlags);
1572}
1573cpp_quote("#endif")
1574cpp_quote("#endif")
1575
1576cpp_quote("")
1577cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1578cpp_quote("#ifndef _LPINTERNETSECURITYMANANGEREx2_DEFINED")
1579cpp_quote("#define _LPINTERNETSECURITYMANANGEREx2_DEFINED")
1580cpp_quote("")
1581[uuid (F1E50292-A795-4117-8e09-2b560a72ac60), helpstring ("IInternetSecurityManagerEx2 Interface"), pointer_default (unique)]
1582interface IInternetSecurityManagerEx2 : IInternetSecurityManagerEx {
1583 HRESULT MapUrlToZoneEx2 ([in]IUri *pUri,[out] DWORD *pdwZone,[in] DWORD dwFlags,[out]LPWSTR *ppwszMappedUrl,[out]DWORD *pdwOutFlags);
1584 HRESULT ProcessUrlActionEx2 ([in]IUri *pUri,[in] DWORD dwAction,[out, size_is (cbPolicy)]BYTE *pPolicy,[in] DWORD cbPolicy,[in, unique]BYTE *pContext,[in] DWORD cbContext,[in] DWORD dwFlags,[in] DWORD_PTR dwReserved,[out] DWORD *pdwOutFlags);
1585 HRESULT GetSecurityIdEx2 ([in]IUri *pUri,[out, size_is (*pcbSecurityId)]BYTE *pbSecurityId,[in, out]DWORD *pcbSecurityId,[in] DWORD_PTR dwReserved);
1586 HRESULT QueryCustomPolicyEx2 ([in]IUri *pUri,[in] REFGUID guidKey,[out, size_is (,*pcbPolicy)]BYTE **ppPolicy,[out] DWORD *pcbPolicy,[in] BYTE *pContext,[in] DWORD cbContext,[in] DWORD_PTR dwReserved);
1587}
1588cpp_quote("#endif")
1589cpp_quote("#endif")
1590
1591cpp_quote("")
1592cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
1593[object, uuid (cd45f185-1b21-48e2-967b-ead743a8914e), pointer_default (unique)]
1594interface IZoneIdentifier : IUnknown {
1595 HRESULT GetId ([out] DWORD *pdwZone);
1596 HRESULT SetId ([in] DWORD dwZone);
1597 HRESULT Remove ();
1598};
1599cpp_quote("#endif")
1600
1601cpp_quote("")
1602cpp_quote("#ifndef _LPINTERNETHOSTSECURITYMANANGER_DEFINED")
1603cpp_quote("#define _LPINTERNETHOSTSECURITYMANANGER_DEFINED")
1604cpp_quote("")
1605[local, object, uuid (3af280b6-cb3f-11d0-891e-00c04fb6bfc4), helpstring ("IInternetHostSecurityManager Interface"), pointer_default (unique)]
1606interface IInternetHostSecurityManager : IUnknown {
1607 HRESULT GetSecurityId ([out, size_is (*pcbSecurityId)]BYTE *pbSecurityId,[in, out]DWORD *pcbSecurityId,[in] DWORD_PTR dwReserved);
1608 HRESULT ProcessUrlAction ([in] DWORD dwAction,[out, size_is (cbPolicy)]BYTE *pPolicy,[in] DWORD cbPolicy,[in] BYTE *pContext,[in] DWORD cbContext,[in] DWORD dwFlags,[in] DWORD dwReserved);
1609 HRESULT QueryCustomPolicy ([in] REFGUID guidKey,[out, size_is (,*pcbPolicy)]BYTE **ppPolicy,[out] DWORD *pcbPolicy,[in] BYTE *pContext,[in] DWORD cbContext,[in] DWORD dwReserved);
1610};
1611cpp_quote("#endif")
1612
1613cpp_quote("")
1614cpp_quote("#define URLACTION_MIN 0x1000")
1615cpp_quote("")
1616cpp_quote("#define URLACTION_DOWNLOAD_MIN 0x1000")
1617cpp_quote("#define URLACTION_DOWNLOAD_SIGNED_ACTIVEX 0x1001")
1618cpp_quote("#define URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX 0x1004")
1619cpp_quote("#define URLACTION_DOWNLOAD_CURR_MAX 0x1004")
1620cpp_quote("#define URLACTION_DOWNLOAD_MAX 0x11FF")
1621cpp_quote("")
1622cpp_quote("#define URLACTION_ACTIVEX_MIN 0x1200")
1623cpp_quote("#define URLACTION_ACTIVEX_RUN 0x1200")
1624cpp_quote("#define URLPOLICY_ACTIVEX_CHECK_LIST 0x10000")
1625cpp_quote("#define URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY 0x1201")
1626cpp_quote("#define URLACTION_ACTIVEX_OVERRIDE_DATA_SAFETY 0x1202")
1627cpp_quote("#define URLACTION_ACTIVEX_OVERRIDE_SCRIPT_SAFETY 0x1203")
1628cpp_quote("#define URLACTION_SCRIPT_OVERRIDE_SAFETY 0x1401")
1629cpp_quote("#define URLACTION_ACTIVEX_CONFIRM_NOOBJECTSAFETY 0x1204")
1630cpp_quote("#define URLACTION_ACTIVEX_TREATASUNTRUSTED 0x1205")
1631cpp_quote("#define URLACTION_ACTIVEX_NO_WEBOC_SCRIPT 0x1206")
1632cpp_quote("#define URLACTION_ACTIVEX_OVERRIDE_REPURPOSEDETECTION 0x1207")
1633cpp_quote("#define URLACTION_ACTIVEX_OVERRIDE_OPTIN 0x1208")
1634cpp_quote("#define URLACTION_ACTIVEX_SCRIPTLET_RUN 0x1209")
1635cpp_quote("#define URLACTION_ACTIVEX_DYNSRC_VIDEO_AND_ANIMATION 0x120A")
1636cpp_quote("#define URLACTION_ACTIVEX_OVERRIDE_DOMAINLIST 0x120B")
1637cpp_quote("#define URLACTION_ACTIVEX_CURR_MAX 0x120B")
1638cpp_quote("#define URLACTION_ACTIVEX_MAX 0x13ff")
1639cpp_quote("")
1640cpp_quote("#define URLACTION_SCRIPT_MIN 0x1400")
1641cpp_quote("#define URLACTION_SCRIPT_RUN 0x1400")
1642cpp_quote("#define URLACTION_SCRIPT_JAVA_USE 0x1402")
1643cpp_quote("#define URLACTION_SCRIPT_SAFE_ACTIVEX 0x1405")
1644cpp_quote("#define URLACTION_CROSS_DOMAIN_DATA 0x1406")
1645cpp_quote("#define URLACTION_SCRIPT_PASTE 0x1407")
1646cpp_quote("#define URLACTION_ALLOW_XDOMAIN_SUBFRAME_RESIZE 0x1408")
1647cpp_quote("#define URLACTION_SCRIPT_XSSFILTER 0x1409")
1648cpp_quote("#define URLACTION_SCRIPT_NAVIGATE 0x140A")
1649cpp_quote("#define URLACTION_PLUGGABLE_PROTOCOL_XHR 0x140B")
1650cpp_quote("#define URLACTION_SCRIPT_CURR_MAX 0x140B")
1651cpp_quote("#define URLACTION_SCRIPT_MAX 0x15ff")
1652cpp_quote("")
1653cpp_quote("#define URLACTION_HTML_MIN 0x1600")
1654cpp_quote("#define URLACTION_HTML_SUBMIT_FORMS 0x1601")
1655cpp_quote("#define URLACTION_HTML_SUBMIT_FORMS_FROM 0x1602")
1656cpp_quote("#define URLACTION_HTML_SUBMIT_FORMS_TO 0x1603")
1657cpp_quote("#define URLACTION_HTML_FONT_DOWNLOAD 0x1604")
1658cpp_quote("#define URLACTION_HTML_JAVA_RUN 0x1605")
1659cpp_quote("#define URLACTION_HTML_USERDATA_SAVE 0x1606")
1660cpp_quote("#define URLACTION_HTML_SUBFRAME_NAVIGATE 0x1607")
1661cpp_quote("#define URLACTION_HTML_META_REFRESH 0x1608")
1662cpp_quote("#define URLACTION_HTML_MIXED_CONTENT 0x1609")
1663cpp_quote("#define URLACTION_HTML_INCLUDE_FILE_PATH 0x160A")
1664cpp_quote("#define URLACTION_HTML_ALLOW_INJECTED_DYNAMIC_HTML 0x160B")
1665cpp_quote("#define URLACTION_HTML_REQUIRE_UTF8_DOCUMENT_CODEPAGE 0x160C")
1666cpp_quote("#define URLACTION_HTML_ALLOW_CROSS_DOMAIN_CANVAS 0x160D")
1667cpp_quote("#define URLACTION_HTML_ALLOW_WINDOW_CLOSE 0x160E")
1668cpp_quote("#define URLACTION_HTML_ALLOW_CROSS_DOMAIN_WEBWORKER 0x160F")
1669cpp_quote("#define URLACTION_HTML_ALLOW_CROSS_DOMAIN_TEXTTRACK 0x1610")
1670cpp_quote("#define URLACTION_HTML_ALLOW_INDEXEDDB 0x1611")
1671cpp_quote("")
1672cpp_quote("#define URLACTION_HTML_MAX 0x17ff")
1673cpp_quote("")
1674cpp_quote("#define URLACTION_SHELL_MIN 0x1800")
1675cpp_quote("#define URLACTION_SHELL_INSTALL_DTITEMS 0x1800")
1676cpp_quote("#define URLACTION_SHELL_MOVE_OR_COPY 0x1802")
1677cpp_quote("#define URLACTION_SHELL_FILE_DOWNLOAD 0x1803")
1678cpp_quote("#define URLACTION_SHELL_VERB 0x1804")
1679cpp_quote("#define URLACTION_SHELL_WEBVIEW_VERB 0x1805")
1680cpp_quote("#define URLACTION_SHELL_SHELLEXECUTE 0x1806")
1681
1682cpp_quote("")
1683cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
1684cpp_quote("#define URLACTION_SHELL_EXECUTE_HIGHRISK 0x1806")
1685cpp_quote("#define URLACTION_SHELL_EXECUTE_MODRISK 0x1807")
1686cpp_quote("#define URLACTION_SHELL_EXECUTE_LOWRISK 0x1808")
1687cpp_quote("#define URLACTION_SHELL_POPUPMGR 0x1809")
1688cpp_quote("#define URLACTION_SHELL_RTF_OBJECTS_LOAD 0x180A")
1689cpp_quote("#define URLACTION_SHELL_ENHANCED_DRAGDROP_SECURITY 0x180B")
1690cpp_quote("#define URLACTION_SHELL_EXTENSIONSECURITY 0x180C")
1691cpp_quote("#define URLACTION_SHELL_SECURE_DRAGSOURCE 0x180D")
1692cpp_quote("#endif")
1693cpp_quote("#if (_WIN32_IE >= _WIN32_IE_WIN7)")
1694cpp_quote("#define URLACTION_SHELL_REMOTEQUERY 0x180E")
1695cpp_quote("#define URLACTION_SHELL_PREVIEW 0x180F")
1696cpp_quote("#define URLACTION_SHELL_SHARE 0x1810")
1697cpp_quote("#define URLACTION_SHELL_ALLOW_CROSS_SITE_SHARE 0x1811")
1698cpp_quote("#endif")
1699cpp_quote("#define URLACTION_SHELL_CURR_MAX 0x1811")
1700cpp_quote("#define URLACTION_SHELL_MAX 0x19ff")
1701cpp_quote("")
1702cpp_quote("#define URLACTION_NETWORK_MIN 0x1A00")
1703cpp_quote("")
1704cpp_quote("#define URLACTION_CREDENTIALS_USE 0x1A00")
1705cpp_quote("#define URLPOLICY_CREDENTIALS_SILENT_LOGON_OK 0x0")
1706cpp_quote("#define URLPOLICY_CREDENTIALS_MUST_PROMPT_USER 0x10000")
1707cpp_quote("#define URLPOLICY_CREDENTIALS_CONDITIONAL_PROMPT 0x20000")
1708cpp_quote("#define URLPOLICY_CREDENTIALS_ANONYMOUS_ONLY 0x30000")
1709cpp_quote("")
1710cpp_quote("#define URLACTION_AUTHENTICATE_CLIENT 0x1A01")
1711cpp_quote("#define URLPOLICY_AUTHENTICATE_CLEARTEXT_OK 0x0")
1712cpp_quote("#define URLPOLICY_AUTHENTICATE_CHALLENGE_RESPONSE 0x10000")
1713cpp_quote("#define URLPOLICY_AUTHENTICATE_MUTUAL_ONLY 0x30000")
1714cpp_quote("")
1715cpp_quote("#define URLACTION_COOKIES 0x1A02")
1716cpp_quote("#define URLACTION_COOKIES_SESSION 0x1A03")
1717cpp_quote("")
1718cpp_quote("#define URLACTION_CLIENT_CERT_PROMPT 0x1A04")
1719cpp_quote("")
1720cpp_quote("#define URLACTION_COOKIES_THIRD_PARTY 0x1A05")
1721cpp_quote("#define URLACTION_COOKIES_SESSION_THIRD_PARTY 0x1A06")
1722cpp_quote("")
1723cpp_quote("#define URLACTION_COOKIES_ENABLED 0x1A10")
1724cpp_quote("")
1725cpp_quote("#define URLACTION_NETWORK_CURR_MAX 0x1A10")
1726cpp_quote("#define URLACTION_NETWORK_MAX 0x1Bff")
1727cpp_quote("")
1728cpp_quote("#define URLACTION_JAVA_MIN 0x1C00")
1729cpp_quote("#define URLACTION_JAVA_PERMISSIONS 0x1C00")
1730cpp_quote("#define URLPOLICY_JAVA_PROHIBIT 0x0")
1731cpp_quote("#define URLPOLICY_JAVA_HIGH 0x10000")
1732cpp_quote("#define URLPOLICY_JAVA_MEDIUM 0x20000")
1733cpp_quote("#define URLPOLICY_JAVA_LOW 0x30000")
1734cpp_quote("#define URLPOLICY_JAVA_CUSTOM 0x800000")
1735cpp_quote("#define URLACTION_JAVA_CURR_MAX 0x1C00")
1736cpp_quote("#define URLACTION_JAVA_MAX 0x1Cff")
1737cpp_quote("")
1738cpp_quote("#define URLACTION_INFODELIVERY_MIN 0x1D00")
1739cpp_quote("#define URLACTION_INFODELIVERY_NO_ADDING_CHANNELS 0x1D00")
1740cpp_quote("#define URLACTION_INFODELIVERY_NO_EDITING_CHANNELS 0x1D01")
1741cpp_quote("#define URLACTION_INFODELIVERY_NO_REMOVING_CHANNELS 0x1D02")
1742cpp_quote("#define URLACTION_INFODELIVERY_NO_ADDING_SUBSCRIPTIONS 0x1D03")
1743cpp_quote("#define URLACTION_INFODELIVERY_NO_EDITING_SUBSCRIPTIONS 0x1D04")
1744cpp_quote("#define URLACTION_INFODELIVERY_NO_REMOVING_SUBSCRIPTIONS 0x1D05")
1745cpp_quote("#define URLACTION_INFODELIVERY_NO_CHANNEL_LOGGING 0x1D06")
1746cpp_quote("#define URLACTION_INFODELIVERY_CURR_MAX 0x1D06")
1747cpp_quote("#define URLACTION_INFODELIVERY_MAX 0x1Dff")
1748cpp_quote("#define URLACTION_CHANNEL_SOFTDIST_MIN 0x1E00")
1749cpp_quote("#define URLACTION_CHANNEL_SOFTDIST_PERMISSIONS 0x1E05")
1750cpp_quote("#define URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT 0x10000")
1751cpp_quote("#define URLPOLICY_CHANNEL_SOFTDIST_PRECACHE 0x20000")
1752cpp_quote("#define URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL 0x30000")
1753cpp_quote("#define URLACTION_CHANNEL_SOFTDIST_MAX 0x1Eff")
1754cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE80)")
1755cpp_quote("#define URLACTION_DOTNET_USERCONTROLS 0x2005")
1756cpp_quote("#endif")
1757cpp_quote("")
1758cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
1759cpp_quote("#define URLACTION_BEHAVIOR_MIN 0x2000")
1760cpp_quote("#define URLACTION_BEHAVIOR_RUN 0x2000")
1761cpp_quote("#define URLPOLICY_BEHAVIOR_CHECK_LIST 0x10000")
1762cpp_quote("")
1763cpp_quote("#define URLACTION_FEATURE_MIN 0x2100")
1764cpp_quote("#define URLACTION_FEATURE_MIME_SNIFFING 0x2100")
1765cpp_quote("#define URLACTION_FEATURE_ZONE_ELEVATION 0x2101")
1766cpp_quote("#define URLACTION_FEATURE_WINDOW_RESTRICTIONS 0x2102")
1767cpp_quote("#define URLACTION_FEATURE_SCRIPT_STATUS_BAR 0x2103")
1768cpp_quote("#define URLACTION_FEATURE_FORCE_ADDR_AND_STATUS 0x2104")
1769cpp_quote("#define URLACTION_FEATURE_BLOCK_INPUT_PROMPTS 0x2105")
1770cpp_quote("#define URLACTION_FEATURE_DATA_BINDING 0x2106")
1771cpp_quote("#define URLACTION_FEATURE_CROSSDOMAIN_FOCUS_CHANGE 0x2107")
1772cpp_quote("")
1773cpp_quote("#define URLACTION_AUTOMATIC_DOWNLOAD_UI_MIN 0x2200")
1774cpp_quote("#define URLACTION_AUTOMATIC_DOWNLOAD_UI 0x2200")
1775cpp_quote("#define URLACTION_AUTOMATIC_ACTIVEX_UI 0x2201")
1776cpp_quote("")
1777cpp_quote("#define URLACTION_ALLOW_RESTRICTEDPROTOCOLS 0x2300")
1778cpp_quote("#endif")
1779cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1780cpp_quote("#define URLACTION_ALLOW_APEVALUATION 0x2301")
1781cpp_quote("#define URLACTION_ALLOW_XHR_EVALUATION 0x2302")
1782cpp_quote("#define URLACTION_WINDOWS_BROWSER_APPLICATIONS 0x2400")
1783cpp_quote("#define URLACTION_XPS_DOCUMENTS 0x2401")
1784cpp_quote("#define URLACTION_LOOSE_XAML 0x2402")
1785cpp_quote("#define URLACTION_LOWRIGHTS 0x2500")
1786cpp_quote("#define URLACTION_WINFX_SETUP 0x2600")
1787cpp_quote("#define URLACTION_INPRIVATE_BLOCKING 0x2700")
1788cpp_quote("#endif")
1789cpp_quote("#define URLACTION_ALLOW_AUDIO_VIDEO 0x2701")
1790cpp_quote("#define URLACTION_ALLOW_ACTIVEX_FILTERING 0x2702")
1791cpp_quote("#define URLACTION_ALLOW_STRUCTURED_STORAGE_SNIFFING 0x2703")
1792cpp_quote("#define URLACTION_ALLOW_AUDIO_VIDEO_PLUGINS 0x2704")
1793cpp_quote("#define URLACTION_ALLOW_ZONE_ELEVATION_VIA_OPT_OUT 0x2705")
1794cpp_quote("#define URLACTION_ALLOW_ZONE_ELEVATION_OPT_OUT_ADDITION 0x2706")
1795cpp_quote("#define URLACTION_ALLOW_CROSSDOMAIN_DROP_WITHIN_WINDOW 0x2708")
1796cpp_quote("#define URLACTION_ALLOW_CROSSDOMAIN_DROP_ACROSS_WINDOWS 0x2709")
1797cpp_quote("#define URLACTION_ALLOW_CROSSDOMAIN_APPCACHE_MANIFEST 0x270A")
1798cpp_quote("#define URLACTION_ALLOW_RENDER_LEGACY_DXTFILTERS 0x270B")
1799cpp_quote("")
1800cpp_quote("#define URLPOLICY_ALLOW 0x0")
1801cpp_quote("#define URLPOLICY_QUERY 0x1")
1802cpp_quote("#define URLPOLICY_DISALLOW 0x3")
1803cpp_quote("#define URLPOLICY_NOTIFY_ON_ALLOW 0x10")
1804cpp_quote("#define URLPOLICY_NOTIFY_ON_DISALLOW 0x20")
1805cpp_quote("#define URLPOLICY_LOG_ON_ALLOW 0x40")
1806cpp_quote("#define URLPOLICY_LOG_ON_DISALLOW 0x80")
1807cpp_quote("")
1808cpp_quote("#define URLPOLICY_MASK_PERMISSIONS 0x0f")
1809cpp_quote("#define GetUrlPolicyPermissions(dw) (dw & URLPOLICY_MASK_PERMISSIONS)")
1810cpp_quote("#define SetUrlPolicyPermissions(dw,dw2) ((dw) = ((dw) & ~(URLPOLICY_MASK_PERMISSIONS)) | (dw2))")
1811cpp_quote("")
1812cpp_quote("#define URLPOLICY_DONTCHECKDLGBOX 0x100")
1813
1814cpp_quote("")
1815cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
1816cpp_quote("EXTERN_C const GUID GUID_CUSTOM_LOCALMACHINEZONEUNLOCKED;")
1817cpp_quote("#endif")
1818
1819cpp_quote("")
1820cpp_quote("#ifndef _LPINTERNETZONEMANAGER_DEFINED")
1821cpp_quote("#define _LPINTERNETZONEMANAGER_DEFINED")
1822cpp_quote("")
1823[local, object, uuid (79eac9ef-baf9-11ce-8c82-00aa004ba90b), helpstring ("IInternetZoneManager Interface"), pointer_default (unique)]
1824interface IInternetZoneManager : IUnknown {
1825 typedef [unique] IInternetZoneManager *LPURLZONEMANAGER;
1826cpp_quote("")
1827 typedef enum tagURLZONE {
1828 URLZONE_INVALID = -1,
1829 URLZONE_PREDEFINED_MIN = 0,
1830 URLZONE_LOCAL_MACHINE = 0,
1831 URLZONE_INTRANET,
1832 URLZONE_TRUSTED,
1833 URLZONE_INTERNET,
1834 URLZONE_UNTRUSTED,
1835 URLZONE_PREDEFINED_MAX = 999,
1836 URLZONE_USER_MIN = 1000,
1837 URLZONE_USER_MAX = 10000,
1838 } URLZONE;
1839 cpp_quote("")
1840 cpp_quote("#define URLZONE_ESC_FLAG 0x100")
1841
1842cpp_quote("")
1843 typedef enum tagURLTEMPLATE {
1844 URLTEMPLATE_CUSTOM = 0x0,
1845 URLTEMPLATE_PREDEFINED_MIN = 0x10000,
1846 URLTEMPLATE_LOW = 0x10000,
1847 URLTEMPLATE_MEDLOW = 0x10500,
1848 URLTEMPLATE_MEDIUM = 0x11000,
1849 URLTEMPLATE_MEDHIGH = 0x11500,
1850 URLTEMPLATE_HIGH = 0x12000,
1851 URLTEMPLATE_PREDEFINED_MAX = 0x20000
1852 } URLTEMPLATE;
1853cpp_quote("")
1854 enum { MAX_ZONE_PATH = 260, MAX_ZONE_DESCRIPTION = 200 };
1855cpp_quote("")
1856 typedef enum {
1857 ZAFLAGS_CUSTOM_EDIT = 0x1,
1858 ZAFLAGS_ADD_SITES = 0x2,
1859 ZAFLAGS_REQUIRE_VERIFICATION = 0x4,
1860 ZAFLAGS_INCLUDE_PROXY_OVERRIDE = 0x8,
1861 ZAFLAGS_INCLUDE_INTRANET_SITES = 0x10,
1862 ZAFLAGS_NO_UI = 0x20,
1863 ZAFLAGS_SUPPORTS_VERIFICATION = 0x40,
1864 ZAFLAGS_UNC_AS_INTRANET = 0x80,
1865 ZAFLAGS_DETECT_INTRANET = 0x100,
1866 ZAFLAGS_USE_LOCKED_ZONES = 0x10000,
1867 ZAFLAGS_VERIFY_TEMPLATE_SETTINGS = 0x20000,
1868 ZAFLAGS_NO_CACHE = 0x40000,
1869 } ZAFLAGS;
1870cpp_quote("")
1871 typedef struct _ZONEATTRIBUTES {
1872 ULONG cbSize;
1873 WCHAR szDisplayName[MAX_ZONE_PATH];
1874 WCHAR szDescription[MAX_ZONE_DESCRIPTION];
1875 WCHAR szIconPath[MAX_ZONE_PATH];
1876 DWORD dwTemplateMinLevel;
1877 DWORD dwTemplateRecommended;
1878 DWORD dwTemplateCurrentLevel;
1879 DWORD dwFlags;
1880 } ZONEATTRIBUTES,*LPZONEATTRIBUTES;
1881cpp_quote("")
1882 HRESULT GetZoneAttributes ([in] DWORD dwZone,[in, out, unique]ZONEATTRIBUTES *pZoneAttributes);
1883 HRESULT SetZoneAttributes ([in] DWORD dwZone,[in] ZONEATTRIBUTES *pZoneAttributes);
1884
1885 cpp_quote("")
1886 typedef enum _URLZONEREG {
1887 URLZONEREG_DEFAULT=0,
1888 URLZONEREG_HKLM,
1889 URLZONEREG_HKCU
1890 } URLZONEREG;
1891cpp_quote("")
1892 HRESULT GetZoneCustomPolicy ([in] DWORD dwZone,[in] REFGUID guidKey,[out, size_is (,*pcbPolicy)]BYTE **ppPolicy,[out] DWORD *pcbPolicy,[in] URLZONEREG urlZoneReg);
1893 HRESULT SetZoneCustomPolicy ([in] DWORD dwZone,[in] REFGUID guidKey,[in, size_is (cbPolicy)]BYTE *pPolicy,[in] DWORD cbPolicy,[in] URLZONEREG urlZoneReg);
1894 HRESULT GetZoneActionPolicy ([in] DWORD dwZone,[in] DWORD dwAction,[out, size_is (cbPolicy)]BYTE *pPolicy,[in] DWORD cbPolicy,[in] URLZONEREG urlZoneReg);
1895 HRESULT SetZoneActionPolicy ([in] DWORD dwZone,[in] DWORD dwAction,[in, size_is (cbPolicy)]BYTE *pPolicy,[in] DWORD cbPolicy,[in] URLZONEREG urlZoneReg);
1896 HRESULT PromptAction ([in] DWORD dwAction,[in] HWND hwndParent,[in] LPCWSTR pwszUrl,[in] LPCWSTR pwszText,[in] DWORD dwPromptFlags);
1897 HRESULT LogAction ([in] DWORD dwAction,[in] LPCWSTR pwszUrl,[in] LPCWSTR pwszText,[in] DWORD dwLogFlags);
1898 HRESULT CreateZoneEnumerator ([out] DWORD *pdwEnum,[out] DWORD *pdwCount,[in] DWORD dwFlags);
1899 HRESULT GetZoneAt ([in] DWORD dwEnum,[in] DWORD dwIndex,[out] DWORD *pdwZone);
1900 HRESULT DestroyZoneEnumerator ([in] DWORD dwEnum);
1901 HRESULT CopyTemplatePoliciesToZone ([in] DWORD dwTemplate,[in] DWORD dwZone,[in] DWORD dwReserved);
1902}
1903cpp_quote("#endif")
1904
1905cpp_quote("")
1906cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE60SP2)")
1907cpp_quote("#ifndef _LPINTERNETZONEMANAGEREX_DEFINED")
1908cpp_quote("#define _LPINTERNETZONEMANAGEREX_DEFINED")
1909cpp_quote("")
1910[local, object, uuid (A4C23339-8e06-431e-9bf4-7e711c085648), helpstring ("IInternetZoneManagerEx Interface"), pointer_default (unique)]
1911interface IInternetZoneManagerEx : IInternetZoneManager {
1912 HRESULT GetZoneActionPolicyEx ([in] DWORD dwZone,[in] DWORD dwAction,[out, size_is (cbPolicy)]BYTE *pPolicy,[in] DWORD cbPolicy,[in] URLZONEREG urlZoneReg,[in] DWORD dwFlags);
1913 HRESULT SetZoneActionPolicyEx ([in] DWORD dwZone,[in] DWORD dwAction,[in, size_is (cbPolicy)]BYTE *pPolicy,[in] DWORD cbPolicy,[in] URLZONEREG urlZoneReg,[in] DWORD dwFlags);
1914}
1915cpp_quote("#endif")
1916cpp_quote("#endif")
1917
1918cpp_quote("")
1919cpp_quote("#if (_WIN32_IE >= _WIN32_IE_IE70)")
1920cpp_quote("#ifndef _LPINTERNETZONEMANAGEREX2_DEFINED")
1921cpp_quote("#define _LPINTERNETZONEMANAGEREX2_DEFINED")
1922cpp_quote("")
1923cpp_quote("#define SECURITY_IE_STATE_GREEN 0x0")
1924cpp_quote("#define SECURITY_IE_STATE_RED 0x1")
1925cpp_quote("")
1926[local, object, uuid (EDC17559-DD5D-4846-8eef-8becba5a4abf), helpstring ("IInternetZoneManagerEx2 Interface"), pointer_default (unique)]
1927interface IInternetZoneManagerEx2 : IInternetZoneManagerEx {
1928 HRESULT GetZoneAttributesEx ([in] DWORD dwZone,[in, out, unique]ZONEATTRIBUTES *pZoneAttributes,[in] DWORD dwFlags);
1929 HRESULT GetZoneSecurityState ([in] DWORD dwZoneIndex,[in] BOOL fRespectPolicy,[in, out] LPDWORD pdwState,[in, out] BOOL *pfPolicyEncountered);
1930 HRESULT GetIESecurityState ([in] BOOL fRespectPolicy,[in, out] LPDWORD pdwState,[in, out] BOOL *pfPolicyEncountered,[in] BOOL fNoCache);
1931 HRESULT FixUnsecureSettings ();
1932}
1933cpp_quote("#endif")
1934cpp_quote("#endif")
1935
1936cpp_quote("")
1937cpp_quote("EXTERN_C const IID CLSID_SoftDistExt;")
1938
1939cpp_quote("")
1940cpp_quote("#ifndef _LPSOFTDISTEXT_DEFINED")
1941cpp_quote("#define _LPSOFTDISTEXT_DEFINED")
1942cpp_quote("")
1943cpp_quote("#define SOFTDIST_FLAG_USAGE_EMAIL 0x1")
1944cpp_quote("#define SOFTDIST_FLAG_USAGE_PRECACHE 0x2")
1945cpp_quote("#define SOFTDIST_FLAG_USAGE_AUTOINSTALL 0x4")
1946cpp_quote("#define SOFTDIST_FLAG_DELETE_SUBSCRIPTION 0x8")
1947cpp_quote("")
1948cpp_quote("#define SOFTDIST_ADSTATE_NONE 0x0")
1949cpp_quote("#define SOFTDIST_ADSTATE_AVAILABLE 0x1")
1950cpp_quote("#define SOFTDIST_ADSTATE_DOWNLOADED 0x2")
1951cpp_quote("#define SOFTDIST_ADSTATE_INSTALLED 0x3")
1952cpp_quote("")
1953typedef struct _tagCODEBASEHOLD {
1954 ULONG cbSize;
1955 LPWSTR szDistUnit;
1956 LPWSTR szCodeBase;
1957 DWORD dwVersionMS;
1958 DWORD dwVersionLS;
1959 DWORD dwStyle;
1960} CODEBASEHOLD,*LPCODEBASEHOLD;
1961
1962cpp_quote("")
1963typedef struct _tagSOFTDISTINFO {
1964 ULONG cbSize;
1965 DWORD dwFlags;
1966 DWORD dwAdState;
1967 LPWSTR szTitle;
1968 LPWSTR szAbstract;
1969 LPWSTR szHREF;
1970 DWORD dwInstalledVersionMS;
1971 DWORD dwInstalledVersionLS;
1972 DWORD dwUpdateVersionMS;
1973 DWORD dwUpdateVersionLS;
1974 DWORD dwAdvertisedVersionMS;
1975 DWORD dwAdvertisedVersionLS;
1976 DWORD dwReserved;
1977} SOFTDISTINFO, *LPSOFTDISTINFO;
1978
1979cpp_quote("")
1980[local, object, uuid (B15B8DC1-C7E1-11d0-8680-00aa00bdcb71), helpstring ("ISoftDistExt Interface"), pointer_default (unique)]
1981interface ISoftDistExt : IUnknown {
1982 HRESULT ProcessSoftDist ([in] LPCWSTR szCDFURL, [in] IXMLElement *pSoftDistElement, [in, out] LPSOFTDISTINFO lpsdi);
1983 HRESULT GetFirstCodeBase ([in] LPWSTR *szCodeBase,[in] LPDWORD dwMaxSize);
1984 HRESULT GetNextCodeBase ([in] LPWSTR *szCodeBase,[in] LPDWORD dwMaxSize);
1985 HRESULT AsyncInstallDistributionUnit ([in] IBindCtx *pbc,[in] LPVOID pvReserved,[in] DWORD flags,[in] LPCODEBASEHOLD lpcbh);
1986}
1987
1988cpp_quote("")
1989cpp_quote("STDAPI GetSoftwareUpdateInfo(LPCWSTR szDistUnit, LPSOFTDISTINFO psdi);")
1990cpp_quote("STDAPI SetSoftwareUpdateAdvertisementState(LPCWSTR szDistUnit, DWORD dwAdState, DWORD dwAdvertisedVersionMS, DWORD dwAdvertisedVersionLS);")
1991cpp_quote("#endif")
1992
1993cpp_quote("")
1994cpp_quote("#ifndef _LPCATALOGFILEINFO_DEFINED")
1995cpp_quote("#define _LPCATALOGFILEINFO_DEFINED")
1996cpp_quote("")
1997[local, object, uuid (711c7600-6b48-11d1-B403-00aa00b92af1), pointer_default (unique)]
1998interface ICatalogFileInfo : IUnknown {
1999 typedef [unique] ICatalogFileInfo *LPCATALOGFILEINFO;
2000cpp_quote("")
2001 HRESULT GetCatalogFile ([out] LPSTR *ppszCatalogFile);
2002 HRESULT GetJavaTrust ([out] void **ppJavaTrust);
2003}
2004cpp_quote("#endif")
2005
2006cpp_quote("")
2007cpp_quote("#ifndef _LPDATAFILTER_DEFINED")
2008cpp_quote("#define _LPDATAFILTER_DEFINED")
2009cpp_quote("")
2010[object, uuid (69d14c80-c18e-11d0-a9ce-006097942311), pointer_default (unique)]
2011interface IDataFilter: IUnknown {
2012 typedef [unique] IDataFilter *LPDATAFILTER;
2013cpp_quote("")
2014 HRESULT DoEncode ([in] DWORD dwFlags,[in] LONG lInBufferSize,[in, size_is (lInBufferSize)]BYTE *pbInBuffer,[in] LONG lOutBufferSize,[out, size_is (lOutBufferSize)]BYTE *pbOutBuffer,[in] LONG lInBytesAvailable,[out] LONG *plInBytesRead,[out] LONG *plOutBytesWritten,[in] DWORD dwReserved);
2015 HRESULT DoDecode ([in] DWORD dwFlags,[in] LONG lInBufferSize,[in, size_is (lInBufferSize)]BYTE *pbInBuffer,[in] LONG lOutBufferSize,[out, size_is (lOutBufferSize)]BYTE *pbOutBuffer,[in] LONG lInBytesAvailable,[out] LONG *plInBytesRead,[out] LONG *plOutBytesWritten,[in] DWORD dwReserved);
2016 HRESULT SetEncodingLevel ([in] DWORD dwEncLevel);
2017}
2018cpp_quote("#endif")
2019
2020cpp_quote("")
2021cpp_quote("#ifndef _LPENCODINGFILTERFACTORY_DEFINED")
2022cpp_quote("#define _LPENCODINGFILTERFACTORY_DEFINED")
2023cpp_quote("")
2024typedef struct _tagPROTOCOLFILTERDATA {
2025 DWORD cbSize;
2026 IInternetProtocolSink *pProtocolSink;
2027 IInternetProtocol *pProtocol;
2028 IUnknown *pUnk;
2029 DWORD dwFilterFlags;
2030} PROTOCOLFILTERDATA;
2031
2032cpp_quote("")
2033[local, object, uuid (70bdde00-c18e-11d0-a9ce-006097942311), pointer_default (unique)]
2034interface IEncodingFilterFactory : IUnknown {
2035 typedef [unique] IEncodingFilterFactory *LPENCODINGFILTERFACTORY;
2036cpp_quote("")
2037 typedef struct _tagDATAINFO {
2038 ULONG ulTotalSize;
2039 ULONG ulavrPacketSize;
2040 ULONG ulConnectSpeed;
2041 ULONG ulProcessorSpeed;
2042 } DATAINFO;
2043cpp_quote("")
2044 HRESULT FindBestFilter ([in] LPCWSTR pwzCodeIn,[in] LPCWSTR pwzCodeOut,[in] DATAINFO info,[out] IDataFilter **ppDF);
2045 HRESULT GetDefaultFilter ([in] LPCWSTR pwzCodeIn,[in] LPCWSTR pwzCodeOut,[out] IDataFilter **ppDF);
2046}
2047cpp_quote("#endif")
2048
2049cpp_quote("")
2050cpp_quote("#ifndef _HITLOGGING_DEFINED")
2051cpp_quote("#define _HITLOGGING_DEFINED")
2052
2053cpp_quote("")
2054cpp_quote("WINBOOL WINAPI IsLoggingEnabledA(LPCSTR pszUrl);")
2055cpp_quote("WINBOOL WINAPI IsLoggingEnabledW(LPCWSTR pwszUrl);")
2056
2057cpp_quote("")
2058cpp_quote("#define IsLoggingEnabled __MINGW_NAME_AW(IsLoggingEnabled)")
2059
2060typedef struct _tagHIT_LOGGING_INFO {
2061 DWORD dwStructSize;
2062 LPSTR lpszLoggedUrlName;
2063 SYSTEMTIME StartTime;
2064 SYSTEMTIME EndTime;
2065 LPSTR lpszExtendedInfo;
2066} HIT_LOGGING_INFO,*LPHIT_LOGGING_INFO;
2067cpp_quote("")
2068cpp_quote("WINBOOL WINAPI WriteHitLogging(LPHIT_LOGGING_INFO lpLogginginfo);")
2069
2070cpp_quote("")
2071cpp_quote("#define CONFIRMSAFETYACTION_LOADOBJECT 0x1")
2072
2073cpp_quote("")
2074struct CONFIRMSAFETY {
2075 CLSID clsid;
2076 IUnknown *pUnk;
2077 DWORD dwFlags;
2078};
2079cpp_quote("")
2080cpp_quote("EXTERN_C const GUID GUID_CUSTOM_CONFIRMOBJECTSAFETY;")
2081cpp_quote("#endif")
2082
2083cpp_quote("")
2084cpp_quote("#ifndef _LPIWRAPPEDPROTOCOL_DEFINED")
2085cpp_quote("#define _LPIWRAPPEDPROTOCOL_DEFINED")
2086cpp_quote("")
2087[local, object, uuid (53c84785-8425-4dc5-971b-e58d9c19f9b6), pointer_default (unique)]
2088interface IWrappedProtocol : IUnknown {
2089 typedef [unique] IWrappedProtocol *LPIWRAPPEDPROTOCOL;
2090cpp_quote("")
2091 HRESULT GetWrapperCode ([out] LONG *pnCode,[in] DWORD_PTR dwReserved);
2092}
2093cpp_quote("#endif")
2094
2095cpp_quote("")
2096cpp_quote("#ifndef _LPGETBINDHANDLE_DEFINED")
2097cpp_quote("#define _LPGETBINDHANDLE_DEFINED")
2098cpp_quote("")
2099[local, object, uuid (AF0FF408-129d-4b20-91f0-02bd23d88352), pointer_default (unique)]
2100interface IGetBindHandle: IUnknown {
2101 typedef [unique] IGetBindHandle *LPGETBINDHANDLE;
2102cpp_quote("")
2103 typedef enum {
2104 BINDHANDLETYPES_APPCACHE = 0x0,
2105 BINDHANDLETYPES_DEPENDENCY = 0x1,
2106 BINDHANDLETYPES_COUNT
2107 } BINDHANDLETYPES;
2108cpp_quote("")
2109 HRESULT GetBindHandle ([in] BINDHANDLETYPES enumRequestedHandle,[out] HANDLE *pRetHandle);
2110}
2111cpp_quote("#endif")
2112
2113cpp_quote("")
2114cpp_quote("#ifndef _XHRPLUGGABLEPROTOCOL_DEFINED")
2115cpp_quote("#define _XHRPLUGGABLEPROTOCOL_DEFINED")
2116cpp_quote("")
2117typedef struct _tagPROTOCOL_ARGUMENT {
2118 LPCWSTR szMethod;
2119 LPCWSTR szTargetUrl;
2120} PROTOCOL_ARGUMENT,*LPPROTOCOL_ARGUMENT;
2121cpp_quote("#endif")
2122
2123cpp_quote("")
2124cpp_quote("#ifndef _LPBINDCALLBACKREDIRECT_DEFINED")
2125cpp_quote("#define _LPBINDCALLBACKREDIRECT_DEFINED")
2126cpp_quote("")
2127[local, object, uuid (11c81bc2-121e-4ed5-B9C4-B430BD54F2C0), pointer_default (unique)]
2128interface IBindCallbackRedirect : IUnknown {
2129 typedef [unique] IBindCallbackRedirect *LPBINDCALLBACKREDIRECT;
2130cpp_quote("")
2131 HRESULT Redirect ([in] LPCWSTR lpcUrl,[out] VARIANT_BOOL *vbCancel);
2132}
2133cpp_quote("#endif")
2134cpp_quote("")
2135cpp_quote("#endif")
Note: See TracBrowser for help on using the repository browser.