VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/urlmon.h@ 33282

Last change on this file since 33282 was 28475, checked in by vboxsync, 15 years ago

crOpenGL: update to wine 1.1.43

  • Property svn:eol-style set to native
File size: 202.7 KB
Line 
1/*** Autogenerated by WIDL 1.1.43 from ../../include/urlmon.idl - Do not edit ***/
2
3#include <rpc.h>
4#include <rpcndr.h>
5
6#ifndef __WIDL_URLMON_H
7#define __WIDL_URLMON_H
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13/* Headers for imported files */
14
15#include <objidl.h>
16#include <oleidl.h>
17#include <servprov.h>
18#include <msxml.h>
19
20/* Forward declarations */
21
22#ifndef __IInternet_FWD_DEFINED__
23#define __IInternet_FWD_DEFINED__
24typedef interface IInternet IInternet;
25#endif
26
27#ifndef __IBinding_FWD_DEFINED__
28#define __IBinding_FWD_DEFINED__
29typedef interface IBinding IBinding;
30#endif
31
32#ifndef __IBindStatusCallback_FWD_DEFINED__
33#define __IBindStatusCallback_FWD_DEFINED__
34typedef interface IBindStatusCallback IBindStatusCallback;
35#endif
36
37#ifndef __IBindStatusCallbackEx_FWD_DEFINED__
38#define __IBindStatusCallbackEx_FWD_DEFINED__
39typedef interface IBindStatusCallbackEx IBindStatusCallbackEx;
40#endif
41
42#ifndef __IAuthenticate_FWD_DEFINED__
43#define __IAuthenticate_FWD_DEFINED__
44typedef interface IAuthenticate IAuthenticate;
45#endif
46
47#ifndef __IHttpNegotiate_FWD_DEFINED__
48#define __IHttpNegotiate_FWD_DEFINED__
49typedef interface IHttpNegotiate IHttpNegotiate;
50#endif
51
52#ifndef __IHttpNegotiate2_FWD_DEFINED__
53#define __IHttpNegotiate2_FWD_DEFINED__
54typedef interface IHttpNegotiate2 IHttpNegotiate2;
55#endif
56
57#ifndef __IBindHost_FWD_DEFINED__
58#define __IBindHost_FWD_DEFINED__
59typedef interface IBindHost IBindHost;
60#endif
61
62#ifndef __IWinInetInfo_FWD_DEFINED__
63#define __IWinInetInfo_FWD_DEFINED__
64typedef interface IWinInetInfo IWinInetInfo;
65#endif
66
67#ifndef __IWinInetHttpInfo_FWD_DEFINED__
68#define __IWinInetHttpInfo_FWD_DEFINED__
69typedef interface IWinInetHttpInfo IWinInetHttpInfo;
70#endif
71
72#ifndef __IWindowForBindingUI_FWD_DEFINED__
73#define __IWindowForBindingUI_FWD_DEFINED__
74typedef interface IWindowForBindingUI IWindowForBindingUI;
75#endif
76
77#ifndef __IHttpSecurity_FWD_DEFINED__
78#define __IHttpSecurity_FWD_DEFINED__
79typedef interface IHttpSecurity IHttpSecurity;
80#endif
81
82#ifndef __IPersistMoniker_FWD_DEFINED__
83#define __IPersistMoniker_FWD_DEFINED__
84typedef interface IPersistMoniker IPersistMoniker;
85#endif
86
87#ifndef __IMonikerProp_FWD_DEFINED__
88#define __IMonikerProp_FWD_DEFINED__
89typedef interface IMonikerProp IMonikerProp;
90#endif
91
92#ifndef __IBindProtocol_FWD_DEFINED__
93#define __IBindProtocol_FWD_DEFINED__
94typedef interface IBindProtocol IBindProtocol;
95#endif
96
97#ifndef __IInternetBindInfo_FWD_DEFINED__
98#define __IInternetBindInfo_FWD_DEFINED__
99typedef interface IInternetBindInfo IInternetBindInfo;
100#endif
101
102#ifndef __IInternetPriority_FWD_DEFINED__
103#define __IInternetPriority_FWD_DEFINED__
104typedef interface IInternetPriority IInternetPriority;
105#endif
106
107#ifndef __IInternetProtocolRoot_FWD_DEFINED__
108#define __IInternetProtocolRoot_FWD_DEFINED__
109typedef interface IInternetProtocolRoot IInternetProtocolRoot;
110#endif
111
112#ifndef __IInternetProtocolSink_FWD_DEFINED__
113#define __IInternetProtocolSink_FWD_DEFINED__
114typedef interface IInternetProtocolSink IInternetProtocolSink;
115#endif
116
117#ifndef __IInternetProtocol_FWD_DEFINED__
118#define __IInternetProtocol_FWD_DEFINED__
119typedef interface IInternetProtocol IInternetProtocol;
120#endif
121
122#ifndef __IInternetProtocolInfo_FWD_DEFINED__
123#define __IInternetProtocolInfo_FWD_DEFINED__
124typedef interface IInternetProtocolInfo IInternetProtocolInfo;
125#endif
126
127#ifndef __IInternetSession_FWD_DEFINED__
128#define __IInternetSession_FWD_DEFINED__
129typedef interface IInternetSession IInternetSession;
130#endif
131
132#ifndef __IInternetSecurityMgrSite_FWD_DEFINED__
133#define __IInternetSecurityMgrSite_FWD_DEFINED__
134typedef interface IInternetSecurityMgrSite IInternetSecurityMgrSite;
135#endif
136
137#ifndef __IInternetSecurityManager_FWD_DEFINED__
138#define __IInternetSecurityManager_FWD_DEFINED__
139typedef interface IInternetSecurityManager IInternetSecurityManager;
140#endif
141
142#ifndef __IInternetHostSecurityManager_FWD_DEFINED__
143#define __IInternetHostSecurityManager_FWD_DEFINED__
144typedef interface IInternetHostSecurityManager IInternetHostSecurityManager;
145#endif
146
147#ifndef __IInternetZoneManager_FWD_DEFINED__
148#define __IInternetZoneManager_FWD_DEFINED__
149typedef interface IInternetZoneManager IInternetZoneManager;
150#endif
151
152#ifndef __IInternetZoneManagerEx_FWD_DEFINED__
153#define __IInternetZoneManagerEx_FWD_DEFINED__
154typedef interface IInternetZoneManagerEx IInternetZoneManagerEx;
155#endif
156
157#ifndef __IInternetZoneManagerEx2_FWD_DEFINED__
158#define __IInternetZoneManagerEx2_FWD_DEFINED__
159typedef interface IInternetZoneManagerEx2 IInternetZoneManagerEx2;
160#endif
161
162#ifndef __ISoftDistExt_FWD_DEFINED__
163#define __ISoftDistExt_FWD_DEFINED__
164typedef interface ISoftDistExt ISoftDistExt;
165#endif
166
167#ifndef __IUri_FWD_DEFINED__
168#define __IUri_FWD_DEFINED__
169typedef interface IUri IUri;
170#endif
171
172#ifndef __IUriContainer_FWD_DEFINED__
173#define __IUriContainer_FWD_DEFINED__
174typedef interface IUriContainer IUriContainer;
175#endif
176
177#ifndef __IUriBuilder_FWD_DEFINED__
178#define __IUriBuilder_FWD_DEFINED__
179typedef interface IUriBuilder IUriBuilder;
180#endif
181
182#ifndef __IInternetProtocolEx_FWD_DEFINED__
183#define __IInternetProtocolEx_FWD_DEFINED__
184typedef interface IInternetProtocolEx IInternetProtocolEx;
185#endif
186
187
188#ifdef WINE_NO_UNICODE_MACROS
189#undef GetUserName
190#undef SetPort
191#endif
192#ifndef __IInternetProtocolSink_FWD_DEFINED__
193#define __IInternetProtocolSink_FWD_DEFINED__
194typedef interface IInternetProtocolSink IInternetProtocolSink;
195#endif
196
197/*****************************************************************************
198 * IInternet interface
199 */
200#ifndef __IInternet_INTERFACE_DEFINED__
201#define __IInternet_INTERFACE_DEFINED__
202
203typedef IInternet *LPIINTERNET;
204DEFINE_GUID(IID_IInternet, 0x79eac9e0, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
205#if defined(__cplusplus) && !defined(CINTERFACE)
206interface IInternet : public IUnknown
207{
208};
209#else
210typedef struct IInternetVtbl {
211 BEGIN_INTERFACE
212
213 /*** IUnknown methods ***/
214 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
215 IInternet* This,
216 REFIID riid,
217 void **ppvObject);
218
219 ULONG (STDMETHODCALLTYPE *AddRef)(
220 IInternet* This);
221
222 ULONG (STDMETHODCALLTYPE *Release)(
223 IInternet* This);
224
225 END_INTERFACE
226} IInternetVtbl;
227interface IInternet {
228 CONST_VTBL IInternetVtbl* lpVtbl;
229};
230
231#ifdef COBJMACROS
232/*** IUnknown methods ***/
233#define IInternet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
234#define IInternet_AddRef(This) (This)->lpVtbl->AddRef(This)
235#define IInternet_Release(This) (This)->lpVtbl->Release(This)
236#endif
237
238#endif
239
240
241#endif /* __IInternet_INTERFACE_DEFINED__ */
242
243/*****************************************************************************
244 * IBinding interface
245 */
246#ifndef __IBinding_INTERFACE_DEFINED__
247#define __IBinding_INTERFACE_DEFINED__
248
249typedef IBinding *LPBINDING;
250DEFINE_GUID(IID_IBinding, 0x79eac9c0, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
251#if defined(__cplusplus) && !defined(CINTERFACE)
252interface IBinding : public IUnknown
253{
254 virtual HRESULT STDMETHODCALLTYPE Abort(
255 ) = 0;
256
257 virtual HRESULT STDMETHODCALLTYPE Suspend(
258 ) = 0;
259
260 virtual HRESULT STDMETHODCALLTYPE Resume(
261 ) = 0;
262
263 virtual HRESULT STDMETHODCALLTYPE SetPriority(
264 LONG nPriority) = 0;
265
266 virtual HRESULT STDMETHODCALLTYPE GetPriority(
267 LONG *pnPriority) = 0;
268
269 virtual HRESULT STDMETHODCALLTYPE GetBindResult(
270 CLSID *pclsidProtocol,
271 DWORD *pdwResult,
272 LPOLESTR *pszResult,
273 DWORD *pdwReserved) = 0;
274
275};
276#else
277typedef struct IBindingVtbl {
278 BEGIN_INTERFACE
279
280 /*** IUnknown methods ***/
281 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
282 IBinding* This,
283 REFIID riid,
284 void **ppvObject);
285
286 ULONG (STDMETHODCALLTYPE *AddRef)(
287 IBinding* This);
288
289 ULONG (STDMETHODCALLTYPE *Release)(
290 IBinding* This);
291
292 /*** IBinding methods ***/
293 HRESULT (STDMETHODCALLTYPE *Abort)(
294 IBinding* This);
295
296 HRESULT (STDMETHODCALLTYPE *Suspend)(
297 IBinding* This);
298
299 HRESULT (STDMETHODCALLTYPE *Resume)(
300 IBinding* This);
301
302 HRESULT (STDMETHODCALLTYPE *SetPriority)(
303 IBinding* This,
304 LONG nPriority);
305
306 HRESULT (STDMETHODCALLTYPE *GetPriority)(
307 IBinding* This,
308 LONG *pnPriority);
309
310 HRESULT (STDMETHODCALLTYPE *GetBindResult)(
311 IBinding* This,
312 CLSID *pclsidProtocol,
313 DWORD *pdwResult,
314 LPOLESTR *pszResult,
315 DWORD *pdwReserved);
316
317 END_INTERFACE
318} IBindingVtbl;
319interface IBinding {
320 CONST_VTBL IBindingVtbl* lpVtbl;
321};
322
323#ifdef COBJMACROS
324/*** IUnknown methods ***/
325#define IBinding_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
326#define IBinding_AddRef(This) (This)->lpVtbl->AddRef(This)
327#define IBinding_Release(This) (This)->lpVtbl->Release(This)
328/*** IBinding methods ***/
329#define IBinding_Abort(This) (This)->lpVtbl->Abort(This)
330#define IBinding_Suspend(This) (This)->lpVtbl->Suspend(This)
331#define IBinding_Resume(This) (This)->lpVtbl->Resume(This)
332#define IBinding_SetPriority(This,nPriority) (This)->lpVtbl->SetPriority(This,nPriority)
333#define IBinding_GetPriority(This,pnPriority) (This)->lpVtbl->GetPriority(This,pnPriority)
334#define IBinding_GetBindResult(This,pclsidProtocol,pdwResult,pszResult,pdwReserved) (This)->lpVtbl->GetBindResult(This,pclsidProtocol,pdwResult,pszResult,pdwReserved)
335#endif
336
337#endif
338
339HRESULT STDMETHODCALLTYPE IBinding_Abort_Proxy(
340 IBinding* This);
341void __RPC_STUB IBinding_Abort_Stub(
342 IRpcStubBuffer* This,
343 IRpcChannelBuffer* pRpcChannelBuffer,
344 PRPC_MESSAGE pRpcMessage,
345 DWORD* pdwStubPhase);
346HRESULT STDMETHODCALLTYPE IBinding_Suspend_Proxy(
347 IBinding* This);
348void __RPC_STUB IBinding_Suspend_Stub(
349 IRpcStubBuffer* This,
350 IRpcChannelBuffer* pRpcChannelBuffer,
351 PRPC_MESSAGE pRpcMessage,
352 DWORD* pdwStubPhase);
353HRESULT STDMETHODCALLTYPE IBinding_Resume_Proxy(
354 IBinding* This);
355void __RPC_STUB IBinding_Resume_Stub(
356 IRpcStubBuffer* This,
357 IRpcChannelBuffer* pRpcChannelBuffer,
358 PRPC_MESSAGE pRpcMessage,
359 DWORD* pdwStubPhase);
360HRESULT STDMETHODCALLTYPE IBinding_SetPriority_Proxy(
361 IBinding* This,
362 LONG nPriority);
363void __RPC_STUB IBinding_SetPriority_Stub(
364 IRpcStubBuffer* This,
365 IRpcChannelBuffer* pRpcChannelBuffer,
366 PRPC_MESSAGE pRpcMessage,
367 DWORD* pdwStubPhase);
368HRESULT STDMETHODCALLTYPE IBinding_GetPriority_Proxy(
369 IBinding* This,
370 LONG *pnPriority);
371void __RPC_STUB IBinding_GetPriority_Stub(
372 IRpcStubBuffer* This,
373 IRpcChannelBuffer* pRpcChannelBuffer,
374 PRPC_MESSAGE pRpcMessage,
375 DWORD* pdwStubPhase);
376HRESULT STDMETHODCALLTYPE IBinding_RemoteGetBindResult_Proxy(
377 IBinding* This,
378 CLSID *pclsidProtocol,
379 DWORD *pdwResult,
380 LPOLESTR *pszResult,
381 DWORD dwReserved);
382void __RPC_STUB IBinding_RemoteGetBindResult_Stub(
383 IRpcStubBuffer* This,
384 IRpcChannelBuffer* pRpcChannelBuffer,
385 PRPC_MESSAGE pRpcMessage,
386 DWORD* pdwStubPhase);
387HRESULT CALLBACK IBinding_GetBindResult_Proxy(
388 IBinding* This,
389 CLSID *pclsidProtocol,
390 DWORD *pdwResult,
391 LPOLESTR *pszResult,
392 DWORD *pdwReserved);
393HRESULT __RPC_STUB IBinding_GetBindResult_Stub(
394 IBinding* This,
395 CLSID *pclsidProtocol,
396 DWORD *pdwResult,
397 LPOLESTR *pszResult,
398 DWORD dwReserved);
399
400#endif /* __IBinding_INTERFACE_DEFINED__ */
401
402/*****************************************************************************
403 * IBindStatusCallback interface
404 */
405#ifndef __IBindStatusCallback_INTERFACE_DEFINED__
406#define __IBindStatusCallback_INTERFACE_DEFINED__
407
408typedef IBindStatusCallback *LPBINDSTATUSCALLBACK;
409typedef enum __WIDL_urlmon_generated_name_00000000 {
410 BINDVERB_GET = 0x0,
411 BINDVERB_POST = 0x1,
412 BINDVERB_PUT = 0x2,
413 BINDVERB_CUSTOM = 0x3
414} BINDVERB;
415typedef enum __WIDL_urlmon_generated_name_00000001 {
416 BINDINFOF_URLENCODESTGMEDDATA = 0x1,
417 BINDINFOF_URLENCODEDEXTRAINFO = 0x2
418} BINDINFOF;
419typedef enum __WIDL_urlmon_generated_name_00000002 {
420 BINDF_ASYNCHRONOUS = 0x1,
421 BINDF_ASYNCSTORAGE = 0x2,
422 BINDF_NOPROGRESSIVERENDERING = 0x4,
423 BINDF_OFFLINEOPERATION = 0x8,
424 BINDF_GETNEWESTVERSION = 0x10,
425 BINDF_NOWRITECACHE = 0x20,
426 BINDF_NEEDFILE = 0x40,
427 BINDF_PULLDATA = 0x80,
428 BINDF_IGNORESECURITYPROBLEM = 0x100,
429 BINDF_RESYNCHRONIZE = 0x200,
430 BINDF_HYPERLINK = 0x400,
431 BINDF_NO_UI = 0x800,
432 BINDF_SILENTOPERATION = 0x1000,
433 BINDF_PRAGMA_NO_CACHE = 0x2000,
434 BINDF_GETCLASSOBJECT = 0x4000,
435 BINDF_RESERVED_1 = 0x8000,
436 BINDF_FREE_THREADED = 0x10000,
437 BINDF_DIRECT_READ = 0x20000,
438 BINDF_FORMS_SUBMIT = 0x40000,
439 BINDF_GETFROMCACHE_IF_NET_FAIL = 0x80000,
440 BINDF_FROMURLMON = 0x100000,
441 BINDF_FWD_BACK = 0x200000,
442 BINDF_PREFERDEFAULTHANDLER = 0x400000,
443 BINDF_ENFORCERESTRICTED = 0x800000
444} BINDF;
445typedef enum __WIDL_urlmon_generated_name_00000003 {
446 URL_ENCODING_NONE = 0x0,
447 URL_ENCODING_ENABLE_UTF8 = 0x10000000,
448 URL_ENCODING_DISABLE_UTF8 = 0x20000000
449} URL_ENCODING;
450typedef struct _tagBINDINFO {
451 ULONG cbSize;
452 LPWSTR szExtraInfo;
453 STGMEDIUM stgmedData;
454 DWORD grfBindInfoF;
455 DWORD dwBindVerb;
456 LPWSTR szCustomVerb;
457 DWORD cbstgmedData;
458 DWORD dwOptions;
459 DWORD dwOptionsFlags;
460 DWORD dwCodePage;
461 SECURITY_ATTRIBUTES securityAttributes;
462 IID iid;
463 IUnknown *pUnk;
464 DWORD dwReserved;
465} BINDINFO;
466typedef struct _REMSECURITY_ATTRIBUTES {
467 DWORD nLength;
468 DWORD lpSecurityDescriptor;
469 BOOL bInheritHandle;
470} REMSECURITY_ATTRIBUTES;
471typedef struct _REMSECURITY_ATTRIBUTES *PREMSECURITY_ATTRIBUTES;
472typedef struct _REMSECURITY_ATTRIBUTES *LPREMSECURITY_ATTRIBUTES;
473typedef struct _tagRemBINDINFO {
474 ULONG cbSize;
475 LPWSTR szExtraInfo;
476 DWORD grfBindInfoF;
477 DWORD dwBindVerb;
478 LPWSTR szCustomVerb;
479 DWORD cbstgmedData;
480 DWORD dwOptions;
481 DWORD dwOptionsFlags;
482 DWORD dwCodePage;
483 REMSECURITY_ATTRIBUTES securityAttributes;
484 IID iid;
485 IUnknown *pUnk;
486 DWORD dwReserved;
487} RemBINDINFO;
488typedef struct tagRemFORMATETC {
489 DWORD cfFormat;
490 DWORD ptd;
491 DWORD dwAspect;
492 LONG lindex;
493 DWORD tymed;
494} RemFORMATETC;
495typedef struct tagRemFORMATETC *LPREMFORMATETC;
496typedef enum __WIDL_urlmon_generated_name_00000004 {
497 BSCF_FIRSTDATANOTIFICATION = 0x1,
498 BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
499 BSCF_LASTDATANOTIFICATION = 0x4,
500 BSCF_DATAFULLYAVAILABLE = 0x8,
501 BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10,
502 BSCF_SKIPDRAINDATAFORFILEURLS = 0x20,
503 BSCF_64BITLENGTHDOWNLOAD = 0x40
504} BSCF;
505typedef enum BINDSTATUS {
506 BINDSTATUS_FINDINGRESOURCE = 1,
507 BINDSTATUS_CONNECTING = 2,
508 BINDSTATUS_REDIRECTING = 3,
509 BINDSTATUS_BEGINDOWNLOADDATA = 4,
510 BINDSTATUS_DOWNLOADINGDATA = 5,
511 BINDSTATUS_ENDDOWNLOADDATA = 6,
512 BINDSTATUS_BEGINDOWNLOADCOMPONENTS = 7,
513 BINDSTATUS_INSTALLINGCOMPONENTS = 8,
514 BINDSTATUS_ENDDOWNLOADCOMPONENTS = 9,
515 BINDSTATUS_USINGCACHEDCOPY = 10,
516 BINDSTATUS_SENDINGREQUEST = 11,
517 BINDSTATUS_CLASSIDAVAILABLE = 12,
518 BINDSTATUS_MIMETYPEAVAILABLE = 13,
519 BINDSTATUS_CACHEFILENAMEAVAILABLE = 14,
520 BINDSTATUS_BEGINSYNCOPERATION = 15,
521 BINDSTATUS_ENDSYNCOPERATION = 16,
522 BINDSTATUS_BEGINUPLOADDATA = 17,
523 BINDSTATUS_UPLOADINGDATA = 18,
524 BINDSTATUS_ENDUPLOADINGDATA = 19,
525 BINDSTATUS_PROTOCOLCLASSID = 20,
526 BINDSTATUS_ENCODING = 21,
527 BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE = 22,
528 BINDSTATUS_CLASSINSTALLLOCATION = 23,
529 BINDSTATUS_DECODING = 24,
530 BINDSTATUS_LOADINGMIMEHANDLER = 25,
531 BINDSTATUS_CONTENTDISPOSITIONATTACH = 26,
532 BINDSTATUS_FILTERREPORTMIMETYPE = 27,
533 BINDSTATUS_CLSIDCANINSTANTIATE = 28,
534 BINDSTATUS_IUNKNOWNAVAILABLE = 29,
535 BINDSTATUS_DIRECTBIND = 30,
536 BINDSTATUS_RAWMIMETYPE = 31,
537 BINDSTATUS_PROXYDETECTING = 32,
538 BINDSTATUS_ACCEPTRANGES = 33,
539 BINDSTATUS_COOKIE_SENT = 34,
540 BINDSTATUS_COMPACT_POLICY_RECEIVED = 35,
541 BINDSTATUS_COOKIE_SUPPRESSED = 36,
542 BINDSTATUS_COOKIE_STATE_UNKNOWN = 37,
543 BINDSTATUS_COOKIE_STATE_ACCEPT = 38,
544 BINDSTATUS_COOKIE_STATE_REJECT = 39,
545 BINDSTATUS_COOKIE_STATE_PROMPT = 40,
546 BINDSTATUS_COOKIE_STATE_LEASH = 41,
547 BINDSTATUS_COOKIE_STATE_DOWNGRADE = 42,
548 BINDSTATUS_POLICY_HREF = 43,
549 BINDSTATUS_P3P_HEADER = 44,
550 BINDSTATUS_SESSION_COOKIE_RECEIVED = 45,
551 BINDSTATUS_PERSISTENT_COOKIE_RECEIVED = 46,
552 BINDSTATUS_SESSION_COOKIES_ALLOWED = 47,
553 BINDSTATUS_CACHECONTROL = 48,
554 BINDSTATUS_CONTENTDISPOSITIONFILENAME = 49,
555 BINDSTATUS_MIMETEXTPLAINMISMATCH = 50,
556 BINDSTATUS_PUBLISHERAVAILABLE = 51,
557 BINDSTATUS_DISPLAYNAMEAVAILABLE = 52
558} BINDSTATUS;
559DEFINE_GUID(IID_IBindStatusCallback, 0x79eac9c1, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
560#if defined(__cplusplus) && !defined(CINTERFACE)
561interface IBindStatusCallback : public IUnknown
562{
563 virtual HRESULT STDMETHODCALLTYPE OnStartBinding(
564 DWORD dwReserved,
565 IBinding *pib) = 0;
566
567 virtual HRESULT STDMETHODCALLTYPE GetPriority(
568 LONG *pnPriority) = 0;
569
570 virtual HRESULT STDMETHODCALLTYPE OnLowResource(
571 DWORD reserved) = 0;
572
573 virtual HRESULT STDMETHODCALLTYPE OnProgress(
574 ULONG ulProgress,
575 ULONG ulProgressMax,
576 ULONG ulStatusCode,
577 LPCWSTR szStatusText) = 0;
578
579 virtual HRESULT STDMETHODCALLTYPE OnStopBinding(
580 HRESULT hresult,
581 LPCWSTR szError) = 0;
582
583 virtual HRESULT STDMETHODCALLTYPE GetBindInfo(
584 DWORD *grfBINDF,
585 BINDINFO *pbindinfo) = 0;
586
587 virtual HRESULT STDMETHODCALLTYPE OnDataAvailable(
588 DWORD grfBSCF,
589 DWORD dwSize,
590 FORMATETC *pformatetc,
591 STGMEDIUM *pstgmed) = 0;
592
593 virtual HRESULT STDMETHODCALLTYPE OnObjectAvailable(
594 REFIID riid,
595 IUnknown *punk) = 0;
596
597};
598#else
599typedef struct IBindStatusCallbackVtbl {
600 BEGIN_INTERFACE
601
602 /*** IUnknown methods ***/
603 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
604 IBindStatusCallback* This,
605 REFIID riid,
606 void **ppvObject);
607
608 ULONG (STDMETHODCALLTYPE *AddRef)(
609 IBindStatusCallback* This);
610
611 ULONG (STDMETHODCALLTYPE *Release)(
612 IBindStatusCallback* This);
613
614 /*** IBindStatusCallback methods ***/
615 HRESULT (STDMETHODCALLTYPE *OnStartBinding)(
616 IBindStatusCallback* This,
617 DWORD dwReserved,
618 IBinding *pib);
619
620 HRESULT (STDMETHODCALLTYPE *GetPriority)(
621 IBindStatusCallback* This,
622 LONG *pnPriority);
623
624 HRESULT (STDMETHODCALLTYPE *OnLowResource)(
625 IBindStatusCallback* This,
626 DWORD reserved);
627
628 HRESULT (STDMETHODCALLTYPE *OnProgress)(
629 IBindStatusCallback* This,
630 ULONG ulProgress,
631 ULONG ulProgressMax,
632 ULONG ulStatusCode,
633 LPCWSTR szStatusText);
634
635 HRESULT (STDMETHODCALLTYPE *OnStopBinding)(
636 IBindStatusCallback* This,
637 HRESULT hresult,
638 LPCWSTR szError);
639
640 HRESULT (STDMETHODCALLTYPE *GetBindInfo)(
641 IBindStatusCallback* This,
642 DWORD *grfBINDF,
643 BINDINFO *pbindinfo);
644
645 HRESULT (STDMETHODCALLTYPE *OnDataAvailable)(
646 IBindStatusCallback* This,
647 DWORD grfBSCF,
648 DWORD dwSize,
649 FORMATETC *pformatetc,
650 STGMEDIUM *pstgmed);
651
652 HRESULT (STDMETHODCALLTYPE *OnObjectAvailable)(
653 IBindStatusCallback* This,
654 REFIID riid,
655 IUnknown *punk);
656
657 END_INTERFACE
658} IBindStatusCallbackVtbl;
659interface IBindStatusCallback {
660 CONST_VTBL IBindStatusCallbackVtbl* lpVtbl;
661};
662
663#ifdef COBJMACROS
664/*** IUnknown methods ***/
665#define IBindStatusCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
666#define IBindStatusCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
667#define IBindStatusCallback_Release(This) (This)->lpVtbl->Release(This)
668/*** IBindStatusCallback methods ***/
669#define IBindStatusCallback_OnStartBinding(This,dwReserved,pib) (This)->lpVtbl->OnStartBinding(This,dwReserved,pib)
670#define IBindStatusCallback_GetPriority(This,pnPriority) (This)->lpVtbl->GetPriority(This,pnPriority)
671#define IBindStatusCallback_OnLowResource(This,reserved) (This)->lpVtbl->OnLowResource(This,reserved)
672#define IBindStatusCallback_OnProgress(This,ulProgress,ulProgressMax,ulStatusCode,szStatusText) (This)->lpVtbl->OnProgress(This,ulProgress,ulProgressMax,ulStatusCode,szStatusText)
673#define IBindStatusCallback_OnStopBinding(This,hresult,szError) (This)->lpVtbl->OnStopBinding(This,hresult,szError)
674#define IBindStatusCallback_GetBindInfo(This,grfBINDF,pbindinfo) (This)->lpVtbl->GetBindInfo(This,grfBINDF,pbindinfo)
675#define IBindStatusCallback_OnDataAvailable(This,grfBSCF,dwSize,pformatetc,pstgmed) (This)->lpVtbl->OnDataAvailable(This,grfBSCF,dwSize,pformatetc,pstgmed)
676#define IBindStatusCallback_OnObjectAvailable(This,riid,punk) (This)->lpVtbl->OnObjectAvailable(This,riid,punk)
677#endif
678
679#endif
680
681HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnStartBinding_Proxy(
682 IBindStatusCallback* This,
683 DWORD dwReserved,
684 IBinding *pib);
685void __RPC_STUB IBindStatusCallback_OnStartBinding_Stub(
686 IRpcStubBuffer* This,
687 IRpcChannelBuffer* pRpcChannelBuffer,
688 PRPC_MESSAGE pRpcMessage,
689 DWORD* pdwStubPhase);
690HRESULT STDMETHODCALLTYPE IBindStatusCallback_GetPriority_Proxy(
691 IBindStatusCallback* This,
692 LONG *pnPriority);
693void __RPC_STUB IBindStatusCallback_GetPriority_Stub(
694 IRpcStubBuffer* This,
695 IRpcChannelBuffer* pRpcChannelBuffer,
696 PRPC_MESSAGE pRpcMessage,
697 DWORD* pdwStubPhase);
698HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnLowResource_Proxy(
699 IBindStatusCallback* This,
700 DWORD reserved);
701void __RPC_STUB IBindStatusCallback_OnLowResource_Stub(
702 IRpcStubBuffer* This,
703 IRpcChannelBuffer* pRpcChannelBuffer,
704 PRPC_MESSAGE pRpcMessage,
705 DWORD* pdwStubPhase);
706HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnProgress_Proxy(
707 IBindStatusCallback* This,
708 ULONG ulProgress,
709 ULONG ulProgressMax,
710 ULONG ulStatusCode,
711 LPCWSTR szStatusText);
712void __RPC_STUB IBindStatusCallback_OnProgress_Stub(
713 IRpcStubBuffer* This,
714 IRpcChannelBuffer* pRpcChannelBuffer,
715 PRPC_MESSAGE pRpcMessage,
716 DWORD* pdwStubPhase);
717HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnStopBinding_Proxy(
718 IBindStatusCallback* This,
719 HRESULT hresult,
720 LPCWSTR szError);
721void __RPC_STUB IBindStatusCallback_OnStopBinding_Stub(
722 IRpcStubBuffer* This,
723 IRpcChannelBuffer* pRpcChannelBuffer,
724 PRPC_MESSAGE pRpcMessage,
725 DWORD* pdwStubPhase);
726HRESULT STDMETHODCALLTYPE IBindStatusCallback_RemoteGetBindInfo_Proxy(
727 IBindStatusCallback* This,
728 DWORD *grfBINDF,
729 RemBINDINFO *pbindinfo,
730 RemSTGMEDIUM *pstgmed);
731void __RPC_STUB IBindStatusCallback_RemoteGetBindInfo_Stub(
732 IRpcStubBuffer* This,
733 IRpcChannelBuffer* pRpcChannelBuffer,
734 PRPC_MESSAGE pRpcMessage,
735 DWORD* pdwStubPhase);
736HRESULT STDMETHODCALLTYPE IBindStatusCallback_RemoteOnDataAvailable_Proxy(
737 IBindStatusCallback* This,
738 DWORD grfBSCF,
739 DWORD dwSize,
740 RemFORMATETC *pformatetc,
741 RemSTGMEDIUM *pstgmed);
742void __RPC_STUB IBindStatusCallback_RemoteOnDataAvailable_Stub(
743 IRpcStubBuffer* This,
744 IRpcChannelBuffer* pRpcChannelBuffer,
745 PRPC_MESSAGE pRpcMessage,
746 DWORD* pdwStubPhase);
747HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnObjectAvailable_Proxy(
748 IBindStatusCallback* This,
749 REFIID riid,
750 IUnknown *punk);
751void __RPC_STUB IBindStatusCallback_OnObjectAvailable_Stub(
752 IRpcStubBuffer* This,
753 IRpcChannelBuffer* pRpcChannelBuffer,
754 PRPC_MESSAGE pRpcMessage,
755 DWORD* pdwStubPhase);
756HRESULT CALLBACK IBindStatusCallback_GetBindInfo_Proxy(
757 IBindStatusCallback* This,
758 DWORD *grfBINDF,
759 BINDINFO *pbindinfo);
760HRESULT __RPC_STUB IBindStatusCallback_GetBindInfo_Stub(
761 IBindStatusCallback* This,
762 DWORD *grfBINDF,
763 RemBINDINFO *pbindinfo,
764 RemSTGMEDIUM *pstgmed);
765HRESULT CALLBACK IBindStatusCallback_OnDataAvailable_Proxy(
766 IBindStatusCallback* This,
767 DWORD grfBSCF,
768 DWORD dwSize,
769 FORMATETC *pformatetc,
770 STGMEDIUM *pstgmed);
771HRESULT __RPC_STUB IBindStatusCallback_OnDataAvailable_Stub(
772 IBindStatusCallback* This,
773 DWORD grfBSCF,
774 DWORD dwSize,
775 RemFORMATETC *pformatetc,
776 RemSTGMEDIUM *pstgmed);
777
778#endif /* __IBindStatusCallback_INTERFACE_DEFINED__ */
779
780/*****************************************************************************
781 * IBindStatusCallbackEx interface
782 */
783#ifndef __IBindStatusCallbackEx_INTERFACE_DEFINED__
784#define __IBindStatusCallbackEx_INTERFACE_DEFINED__
785
786typedef IBindStatusCallbackEx *LPBINDSTATUSCALLBACKEX;
787typedef enum __WIDL_urlmon_generated_name_00000005 {
788 BINDF2_DISABLEBASICOVERHTTP = 0x1,
789 BINDF2_DISABLEAUTOCOOKIEHANDLING = 0x2,
790 BINDF2_READ_DATA_GREATER_THAN_4GB = 0x4,
791 BINDF2_DISABLE_HTTP_REDIRECT_XSECURITYID = 0x8,
792 BINDF2_RESERVED_3 = 0x20000000,
793 BINDF2_RESERVED_2 = 0x40000000,
794 BINDF2_RESERVED_1 = 0x80000000
795} BINDF2;
796DEFINE_GUID(IID_IBindStatusCallbackEx, 0xaaa74ef9, 0x8ee7, 0x4659, 0x88,0xd9, 0xf8,0xc5,0x04,0xda,0x73,0xcc);
797#if defined(__cplusplus) && !defined(CINTERFACE)
798interface IBindStatusCallbackEx : public IBindStatusCallback
799{
800 virtual HRESULT STDMETHODCALLTYPE GetBindInfoEx(
801 DWORD *grfBINDF,
802 BINDINFO *pbindinfo,
803 DWORD *grfBINDF2,
804 DWORD *pdwReserved) = 0;
805
806};
807#else
808typedef struct IBindStatusCallbackExVtbl {
809 BEGIN_INTERFACE
810
811 /*** IUnknown methods ***/
812 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
813 IBindStatusCallbackEx* This,
814 REFIID riid,
815 void **ppvObject);
816
817 ULONG (STDMETHODCALLTYPE *AddRef)(
818 IBindStatusCallbackEx* This);
819
820 ULONG (STDMETHODCALLTYPE *Release)(
821 IBindStatusCallbackEx* This);
822
823 /*** IBindStatusCallback methods ***/
824 HRESULT (STDMETHODCALLTYPE *OnStartBinding)(
825 IBindStatusCallbackEx* This,
826 DWORD dwReserved,
827 IBinding *pib);
828
829 HRESULT (STDMETHODCALLTYPE *GetPriority)(
830 IBindStatusCallbackEx* This,
831 LONG *pnPriority);
832
833 HRESULT (STDMETHODCALLTYPE *OnLowResource)(
834 IBindStatusCallbackEx* This,
835 DWORD reserved);
836
837 HRESULT (STDMETHODCALLTYPE *OnProgress)(
838 IBindStatusCallbackEx* This,
839 ULONG ulProgress,
840 ULONG ulProgressMax,
841 ULONG ulStatusCode,
842 LPCWSTR szStatusText);
843
844 HRESULT (STDMETHODCALLTYPE *OnStopBinding)(
845 IBindStatusCallbackEx* This,
846 HRESULT hresult,
847 LPCWSTR szError);
848
849 HRESULT (STDMETHODCALLTYPE *GetBindInfo)(
850 IBindStatusCallbackEx* This,
851 DWORD *grfBINDF,
852 BINDINFO *pbindinfo);
853
854 HRESULT (STDMETHODCALLTYPE *OnDataAvailable)(
855 IBindStatusCallbackEx* This,
856 DWORD grfBSCF,
857 DWORD dwSize,
858 FORMATETC *pformatetc,
859 STGMEDIUM *pstgmed);
860
861 HRESULT (STDMETHODCALLTYPE *OnObjectAvailable)(
862 IBindStatusCallbackEx* This,
863 REFIID riid,
864 IUnknown *punk);
865
866 /*** IBindStatusCallbackEx methods ***/
867 HRESULT (STDMETHODCALLTYPE *GetBindInfoEx)(
868 IBindStatusCallbackEx* This,
869 DWORD *grfBINDF,
870 BINDINFO *pbindinfo,
871 DWORD *grfBINDF2,
872 DWORD *pdwReserved);
873
874 END_INTERFACE
875} IBindStatusCallbackExVtbl;
876interface IBindStatusCallbackEx {
877 CONST_VTBL IBindStatusCallbackExVtbl* lpVtbl;
878};
879
880#ifdef COBJMACROS
881/*** IUnknown methods ***/
882#define IBindStatusCallbackEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
883#define IBindStatusCallbackEx_AddRef(This) (This)->lpVtbl->AddRef(This)
884#define IBindStatusCallbackEx_Release(This) (This)->lpVtbl->Release(This)
885/*** IBindStatusCallback methods ***/
886#define IBindStatusCallbackEx_OnStartBinding(This,dwReserved,pib) (This)->lpVtbl->OnStartBinding(This,dwReserved,pib)
887#define IBindStatusCallbackEx_GetPriority(This,pnPriority) (This)->lpVtbl->GetPriority(This,pnPriority)
888#define IBindStatusCallbackEx_OnLowResource(This,reserved) (This)->lpVtbl->OnLowResource(This,reserved)
889#define IBindStatusCallbackEx_OnProgress(This,ulProgress,ulProgressMax,ulStatusCode,szStatusText) (This)->lpVtbl->OnProgress(This,ulProgress,ulProgressMax,ulStatusCode,szStatusText)
890#define IBindStatusCallbackEx_OnStopBinding(This,hresult,szError) (This)->lpVtbl->OnStopBinding(This,hresult,szError)
891#define IBindStatusCallbackEx_GetBindInfo(This,grfBINDF,pbindinfo) (This)->lpVtbl->GetBindInfo(This,grfBINDF,pbindinfo)
892#define IBindStatusCallbackEx_OnDataAvailable(This,grfBSCF,dwSize,pformatetc,pstgmed) (This)->lpVtbl->OnDataAvailable(This,grfBSCF,dwSize,pformatetc,pstgmed)
893#define IBindStatusCallbackEx_OnObjectAvailable(This,riid,punk) (This)->lpVtbl->OnObjectAvailable(This,riid,punk)
894/*** IBindStatusCallbackEx methods ***/
895#define IBindStatusCallbackEx_GetBindInfoEx(This,grfBINDF,pbindinfo,grfBINDF2,pdwReserved) (This)->lpVtbl->GetBindInfoEx(This,grfBINDF,pbindinfo,grfBINDF2,pdwReserved)
896#endif
897
898#endif
899
900HRESULT STDMETHODCALLTYPE IBindStatusCallbackEx_RemoteGetBindInfoEx_Proxy(
901 IBindStatusCallbackEx* This,
902 DWORD *grfBINDF,
903 RemBINDINFO *pbindinfo,
904 RemSTGMEDIUM *pstgmed,
905 DWORD *grfBINDF2,
906 DWORD *pdwReserved);
907void __RPC_STUB IBindStatusCallbackEx_RemoteGetBindInfoEx_Stub(
908 IRpcStubBuffer* This,
909 IRpcChannelBuffer* pRpcChannelBuffer,
910 PRPC_MESSAGE pRpcMessage,
911 DWORD* pdwStubPhase);
912HRESULT CALLBACK IBindStatusCallbackEx_GetBindInfoEx_Proxy(
913 IBindStatusCallbackEx* This,
914 DWORD *grfBINDF,
915 BINDINFO *pbindinfo,
916 DWORD *grfBINDF2,
917 DWORD *pdwReserved);
918HRESULT __RPC_STUB IBindStatusCallbackEx_GetBindInfoEx_Stub(
919 IBindStatusCallbackEx* This,
920 DWORD *grfBINDF,
921 RemBINDINFO *pbindinfo,
922 RemSTGMEDIUM *pstgmed,
923 DWORD *grfBINDF2,
924 DWORD *pdwReserved);
925
926#endif /* __IBindStatusCallbackEx_INTERFACE_DEFINED__ */
927
928/*****************************************************************************
929 * IAuthenticate interface
930 */
931#ifndef __IAuthenticate_INTERFACE_DEFINED__
932#define __IAuthenticate_INTERFACE_DEFINED__
933
934typedef IAuthenticate *LPAUTHENTICATION;
935DEFINE_GUID(IID_IAuthenticate, 0x79eac9d0, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
936#if defined(__cplusplus) && !defined(CINTERFACE)
937interface IAuthenticate : public IUnknown
938{
939 virtual HRESULT STDMETHODCALLTYPE Authenticate(
940 HWND *phwnd,
941 LPWSTR *pszUsername,
942 LPWSTR *pszPassword) = 0;
943
944};
945#else
946typedef struct IAuthenticateVtbl {
947 BEGIN_INTERFACE
948
949 /*** IUnknown methods ***/
950 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
951 IAuthenticate* This,
952 REFIID riid,
953 void **ppvObject);
954
955 ULONG (STDMETHODCALLTYPE *AddRef)(
956 IAuthenticate* This);
957
958 ULONG (STDMETHODCALLTYPE *Release)(
959 IAuthenticate* This);
960
961 /*** IAuthenticate methods ***/
962 HRESULT (STDMETHODCALLTYPE *Authenticate)(
963 IAuthenticate* This,
964 HWND *phwnd,
965 LPWSTR *pszUsername,
966 LPWSTR *pszPassword);
967
968 END_INTERFACE
969} IAuthenticateVtbl;
970interface IAuthenticate {
971 CONST_VTBL IAuthenticateVtbl* lpVtbl;
972};
973
974#ifdef COBJMACROS
975/*** IUnknown methods ***/
976#define IAuthenticate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
977#define IAuthenticate_AddRef(This) (This)->lpVtbl->AddRef(This)
978#define IAuthenticate_Release(This) (This)->lpVtbl->Release(This)
979/*** IAuthenticate methods ***/
980#define IAuthenticate_Authenticate(This,phwnd,pszUsername,pszPassword) (This)->lpVtbl->Authenticate(This,phwnd,pszUsername,pszPassword)
981#endif
982
983#endif
984
985HRESULT STDMETHODCALLTYPE IAuthenticate_Authenticate_Proxy(
986 IAuthenticate* This,
987 HWND *phwnd,
988 LPWSTR *pszUsername,
989 LPWSTR *pszPassword);
990void __RPC_STUB IAuthenticate_Authenticate_Stub(
991 IRpcStubBuffer* This,
992 IRpcChannelBuffer* pRpcChannelBuffer,
993 PRPC_MESSAGE pRpcMessage,
994 DWORD* pdwStubPhase);
995
996#endif /* __IAuthenticate_INTERFACE_DEFINED__ */
997
998/*****************************************************************************
999 * IHttpNegotiate interface
1000 */
1001#ifndef __IHttpNegotiate_INTERFACE_DEFINED__
1002#define __IHttpNegotiate_INTERFACE_DEFINED__
1003
1004typedef IHttpNegotiate *LPHTTPNEGOTIATE;
1005DEFINE_GUID(IID_IHttpNegotiate, 0x79eac9d2, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1006#if defined(__cplusplus) && !defined(CINTERFACE)
1007interface IHttpNegotiate : public IUnknown
1008{
1009 virtual HRESULT STDMETHODCALLTYPE BeginningTransaction(
1010 LPCWSTR szURL,
1011 LPCWSTR szHeaders,
1012 DWORD dwReserved,
1013 LPWSTR *pszAdditionalHeaders) = 0;
1014
1015 virtual HRESULT STDMETHODCALLTYPE OnResponse(
1016 DWORD dwResponseCode,
1017 LPCWSTR szResponseHeaders,
1018 LPCWSTR szRequestHeaders,
1019 LPWSTR *pszAdditionalRequestHeaders) = 0;
1020
1021};
1022#else
1023typedef struct IHttpNegotiateVtbl {
1024 BEGIN_INTERFACE
1025
1026 /*** IUnknown methods ***/
1027 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1028 IHttpNegotiate* This,
1029 REFIID riid,
1030 void **ppvObject);
1031
1032 ULONG (STDMETHODCALLTYPE *AddRef)(
1033 IHttpNegotiate* This);
1034
1035 ULONG (STDMETHODCALLTYPE *Release)(
1036 IHttpNegotiate* This);
1037
1038 /*** IHttpNegotiate methods ***/
1039 HRESULT (STDMETHODCALLTYPE *BeginningTransaction)(
1040 IHttpNegotiate* This,
1041 LPCWSTR szURL,
1042 LPCWSTR szHeaders,
1043 DWORD dwReserved,
1044 LPWSTR *pszAdditionalHeaders);
1045
1046 HRESULT (STDMETHODCALLTYPE *OnResponse)(
1047 IHttpNegotiate* This,
1048 DWORD dwResponseCode,
1049 LPCWSTR szResponseHeaders,
1050 LPCWSTR szRequestHeaders,
1051 LPWSTR *pszAdditionalRequestHeaders);
1052
1053 END_INTERFACE
1054} IHttpNegotiateVtbl;
1055interface IHttpNegotiate {
1056 CONST_VTBL IHttpNegotiateVtbl* lpVtbl;
1057};
1058
1059#ifdef COBJMACROS
1060/*** IUnknown methods ***/
1061#define IHttpNegotiate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1062#define IHttpNegotiate_AddRef(This) (This)->lpVtbl->AddRef(This)
1063#define IHttpNegotiate_Release(This) (This)->lpVtbl->Release(This)
1064/*** IHttpNegotiate methods ***/
1065#define IHttpNegotiate_BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders) (This)->lpVtbl->BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders)
1066#define IHttpNegotiate_OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders) (This)->lpVtbl->OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders)
1067#endif
1068
1069#endif
1070
1071HRESULT STDMETHODCALLTYPE IHttpNegotiate_BeginningTransaction_Proxy(
1072 IHttpNegotiate* This,
1073 LPCWSTR szURL,
1074 LPCWSTR szHeaders,
1075 DWORD dwReserved,
1076 LPWSTR *pszAdditionalHeaders);
1077void __RPC_STUB IHttpNegotiate_BeginningTransaction_Stub(
1078 IRpcStubBuffer* This,
1079 IRpcChannelBuffer* pRpcChannelBuffer,
1080 PRPC_MESSAGE pRpcMessage,
1081 DWORD* pdwStubPhase);
1082HRESULT STDMETHODCALLTYPE IHttpNegotiate_OnResponse_Proxy(
1083 IHttpNegotiate* This,
1084 DWORD dwResponseCode,
1085 LPCWSTR szResponseHeaders,
1086 LPCWSTR szRequestHeaders,
1087 LPWSTR *pszAdditionalRequestHeaders);
1088void __RPC_STUB IHttpNegotiate_OnResponse_Stub(
1089 IRpcStubBuffer* This,
1090 IRpcChannelBuffer* pRpcChannelBuffer,
1091 PRPC_MESSAGE pRpcMessage,
1092 DWORD* pdwStubPhase);
1093
1094#endif /* __IHttpNegotiate_INTERFACE_DEFINED__ */
1095
1096/*****************************************************************************
1097 * IHttpNegotiate2 interface
1098 */
1099#ifndef __IHttpNegotiate2_INTERFACE_DEFINED__
1100#define __IHttpNegotiate2_INTERFACE_DEFINED__
1101
1102typedef IHttpNegotiate2 *LPHTTPNEGOTIATE2;
1103DEFINE_GUID(IID_IHttpNegotiate2, 0x4f9f9fcb, 0xe0f4, 0x48eb, 0xb7,0xab, 0xfa,0x2e,0xa9,0x36,0x5c,0xb4);
1104#if defined(__cplusplus) && !defined(CINTERFACE)
1105interface IHttpNegotiate2 : public IHttpNegotiate
1106{
1107 virtual HRESULT STDMETHODCALLTYPE GetRootSecurityId(
1108 BYTE *pbSecurityId,
1109 DWORD *pcbSecurityId,
1110 DWORD_PTR dwReserved) = 0;
1111
1112};
1113#else
1114typedef struct IHttpNegotiate2Vtbl {
1115 BEGIN_INTERFACE
1116
1117 /*** IUnknown methods ***/
1118 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1119 IHttpNegotiate2* This,
1120 REFIID riid,
1121 void **ppvObject);
1122
1123 ULONG (STDMETHODCALLTYPE *AddRef)(
1124 IHttpNegotiate2* This);
1125
1126 ULONG (STDMETHODCALLTYPE *Release)(
1127 IHttpNegotiate2* This);
1128
1129 /*** IHttpNegotiate methods ***/
1130 HRESULT (STDMETHODCALLTYPE *BeginningTransaction)(
1131 IHttpNegotiate2* This,
1132 LPCWSTR szURL,
1133 LPCWSTR szHeaders,
1134 DWORD dwReserved,
1135 LPWSTR *pszAdditionalHeaders);
1136
1137 HRESULT (STDMETHODCALLTYPE *OnResponse)(
1138 IHttpNegotiate2* This,
1139 DWORD dwResponseCode,
1140 LPCWSTR szResponseHeaders,
1141 LPCWSTR szRequestHeaders,
1142 LPWSTR *pszAdditionalRequestHeaders);
1143
1144 /*** IHttpNegotiate2 methods ***/
1145 HRESULT (STDMETHODCALLTYPE *GetRootSecurityId)(
1146 IHttpNegotiate2* This,
1147 BYTE *pbSecurityId,
1148 DWORD *pcbSecurityId,
1149 DWORD_PTR dwReserved);
1150
1151 END_INTERFACE
1152} IHttpNegotiate2Vtbl;
1153interface IHttpNegotiate2 {
1154 CONST_VTBL IHttpNegotiate2Vtbl* lpVtbl;
1155};
1156
1157#ifdef COBJMACROS
1158/*** IUnknown methods ***/
1159#define IHttpNegotiate2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1160#define IHttpNegotiate2_AddRef(This) (This)->lpVtbl->AddRef(This)
1161#define IHttpNegotiate2_Release(This) (This)->lpVtbl->Release(This)
1162/*** IHttpNegotiate methods ***/
1163#define IHttpNegotiate2_BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders) (This)->lpVtbl->BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders)
1164#define IHttpNegotiate2_OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders) (This)->lpVtbl->OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders)
1165/*** IHttpNegotiate2 methods ***/
1166#define IHttpNegotiate2_GetRootSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved) (This)->lpVtbl->GetRootSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved)
1167#endif
1168
1169#endif
1170
1171HRESULT STDMETHODCALLTYPE IHttpNegotiate2_GetRootSecurityId_Proxy(
1172 IHttpNegotiate2* This,
1173 BYTE *pbSecurityId,
1174 DWORD *pcbSecurityId,
1175 DWORD_PTR dwReserved);
1176void __RPC_STUB IHttpNegotiate2_GetRootSecurityId_Stub(
1177 IRpcStubBuffer* This,
1178 IRpcChannelBuffer* pRpcChannelBuffer,
1179 PRPC_MESSAGE pRpcMessage,
1180 DWORD* pdwStubPhase);
1181
1182#endif /* __IHttpNegotiate2_INTERFACE_DEFINED__ */
1183
1184#define SID_IBindHost IID_IBindHost
1185#define SID_SBindHost IID_IBindHost
1186/*****************************************************************************
1187 * IBindHost interface
1188 */
1189#ifndef __IBindHost_INTERFACE_DEFINED__
1190#define __IBindHost_INTERFACE_DEFINED__
1191
1192typedef IBindHost *LPBINDHOST;
1193DEFINE_GUID(IID_IBindHost, 0xfc4801a1, 0x2ba9, 0x11cf, 0xa2,0x29, 0x00,0xaa,0x00,0x3d,0x73,0x52);
1194#if defined(__cplusplus) && !defined(CINTERFACE)
1195interface IBindHost : public IUnknown
1196{
1197 virtual HRESULT STDMETHODCALLTYPE CreateMoniker(
1198 LPOLESTR szName,
1199 IBindCtx *pBC,
1200 IMoniker **ppmk,
1201 DWORD dwReserved) = 0;
1202
1203 virtual HRESULT STDMETHODCALLTYPE MonikerBindToStorage(
1204 IMoniker *pMk,
1205 IBindCtx *pBC,
1206 IBindStatusCallback *pBSC,
1207 REFIID riid,
1208 void **ppvObj) = 0;
1209
1210 virtual HRESULT STDMETHODCALLTYPE MonikerBindToObject(
1211 IMoniker *pMk,
1212 IBindCtx *pBC,
1213 IBindStatusCallback *pBSC,
1214 REFIID riid,
1215 void **ppvObj) = 0;
1216
1217};
1218#else
1219typedef struct IBindHostVtbl {
1220 BEGIN_INTERFACE
1221
1222 /*** IUnknown methods ***/
1223 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1224 IBindHost* This,
1225 REFIID riid,
1226 void **ppvObject);
1227
1228 ULONG (STDMETHODCALLTYPE *AddRef)(
1229 IBindHost* This);
1230
1231 ULONG (STDMETHODCALLTYPE *Release)(
1232 IBindHost* This);
1233
1234 /*** IBindHost methods ***/
1235 HRESULT (STDMETHODCALLTYPE *CreateMoniker)(
1236 IBindHost* This,
1237 LPOLESTR szName,
1238 IBindCtx *pBC,
1239 IMoniker **ppmk,
1240 DWORD dwReserved);
1241
1242 HRESULT (STDMETHODCALLTYPE *MonikerBindToStorage)(
1243 IBindHost* This,
1244 IMoniker *pMk,
1245 IBindCtx *pBC,
1246 IBindStatusCallback *pBSC,
1247 REFIID riid,
1248 void **ppvObj);
1249
1250 HRESULT (STDMETHODCALLTYPE *MonikerBindToObject)(
1251 IBindHost* This,
1252 IMoniker *pMk,
1253 IBindCtx *pBC,
1254 IBindStatusCallback *pBSC,
1255 REFIID riid,
1256 void **ppvObj);
1257
1258 END_INTERFACE
1259} IBindHostVtbl;
1260interface IBindHost {
1261 CONST_VTBL IBindHostVtbl* lpVtbl;
1262};
1263
1264#ifdef COBJMACROS
1265/*** IUnknown methods ***/
1266#define IBindHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1267#define IBindHost_AddRef(This) (This)->lpVtbl->AddRef(This)
1268#define IBindHost_Release(This) (This)->lpVtbl->Release(This)
1269/*** IBindHost methods ***/
1270#define IBindHost_CreateMoniker(This,szName,pBC,ppmk,dwReserved) (This)->lpVtbl->CreateMoniker(This,szName,pBC,ppmk,dwReserved)
1271#define IBindHost_MonikerBindToStorage(This,pMk,pBC,pBSC,riid,ppvObj) (This)->lpVtbl->MonikerBindToStorage(This,pMk,pBC,pBSC,riid,ppvObj)
1272#define IBindHost_MonikerBindToObject(This,pMk,pBC,pBSC,riid,ppvObj) (This)->lpVtbl->MonikerBindToObject(This,pMk,pBC,pBSC,riid,ppvObj)
1273#endif
1274
1275#endif
1276
1277HRESULT STDMETHODCALLTYPE IBindHost_CreateMoniker_Proxy(
1278 IBindHost* This,
1279 LPOLESTR szName,
1280 IBindCtx *pBC,
1281 IMoniker **ppmk,
1282 DWORD dwReserved);
1283void __RPC_STUB IBindHost_CreateMoniker_Stub(
1284 IRpcStubBuffer* This,
1285 IRpcChannelBuffer* pRpcChannelBuffer,
1286 PRPC_MESSAGE pRpcMessage,
1287 DWORD* pdwStubPhase);
1288HRESULT STDMETHODCALLTYPE IBindHost_RemoteMonikerBindToStorage_Proxy(
1289 IBindHost* This,
1290 IMoniker *pMk,
1291 IBindCtx *pBC,
1292 IBindStatusCallback *pBSC,
1293 REFIID riid,
1294 IUnknown **ppvObj);
1295void __RPC_STUB IBindHost_RemoteMonikerBindToStorage_Stub(
1296 IRpcStubBuffer* This,
1297 IRpcChannelBuffer* pRpcChannelBuffer,
1298 PRPC_MESSAGE pRpcMessage,
1299 DWORD* pdwStubPhase);
1300HRESULT STDMETHODCALLTYPE IBindHost_RemoteMonikerBindToObject_Proxy(
1301 IBindHost* This,
1302 IMoniker *pMk,
1303 IBindCtx *pBC,
1304 IBindStatusCallback *pBSC,
1305 REFIID riid,
1306 IUnknown **ppvObj);
1307void __RPC_STUB IBindHost_RemoteMonikerBindToObject_Stub(
1308 IRpcStubBuffer* This,
1309 IRpcChannelBuffer* pRpcChannelBuffer,
1310 PRPC_MESSAGE pRpcMessage,
1311 DWORD* pdwStubPhase);
1312HRESULT CALLBACK IBindHost_MonikerBindToStorage_Proxy(
1313 IBindHost* This,
1314 IMoniker *pMk,
1315 IBindCtx *pBC,
1316 IBindStatusCallback *pBSC,
1317 REFIID riid,
1318 void **ppvObj);
1319HRESULT __RPC_STUB IBindHost_MonikerBindToStorage_Stub(
1320 IBindHost* This,
1321 IMoniker *pMk,
1322 IBindCtx *pBC,
1323 IBindStatusCallback *pBSC,
1324 REFIID riid,
1325 IUnknown **ppvObj);
1326HRESULT CALLBACK IBindHost_MonikerBindToObject_Proxy(
1327 IBindHost* This,
1328 IMoniker *pMk,
1329 IBindCtx *pBC,
1330 IBindStatusCallback *pBSC,
1331 REFIID riid,
1332 void **ppvObj);
1333HRESULT __RPC_STUB IBindHost_MonikerBindToObject_Stub(
1334 IBindHost* This,
1335 IMoniker *pMk,
1336 IBindCtx *pBC,
1337 IBindStatusCallback *pBSC,
1338 REFIID riid,
1339 IUnknown **ppvObj);
1340
1341#endif /* __IBindHost_INTERFACE_DEFINED__ */
1342
1343/*****************************************************************************
1344 * IWinInetInfo interface
1345 */
1346#ifndef __IWinInetInfo_INTERFACE_DEFINED__
1347#define __IWinInetInfo_INTERFACE_DEFINED__
1348
1349typedef IWinInetInfo *LPWININETINFO;
1350DEFINE_GUID(IID_IWinInetInfo, 0x79eac9d6, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1351#if defined(__cplusplus) && !defined(CINTERFACE)
1352interface IWinInetInfo : public IUnknown
1353{
1354 virtual HRESULT STDMETHODCALLTYPE QueryOption(
1355 DWORD dwOption,
1356 LPVOID pBuffer,
1357 DWORD *pcbBuf) = 0;
1358
1359};
1360#else
1361typedef struct IWinInetInfoVtbl {
1362 BEGIN_INTERFACE
1363
1364 /*** IUnknown methods ***/
1365 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1366 IWinInetInfo* This,
1367 REFIID riid,
1368 void **ppvObject);
1369
1370 ULONG (STDMETHODCALLTYPE *AddRef)(
1371 IWinInetInfo* This);
1372
1373 ULONG (STDMETHODCALLTYPE *Release)(
1374 IWinInetInfo* This);
1375
1376 /*** IWinInetInfo methods ***/
1377 HRESULT (STDMETHODCALLTYPE *QueryOption)(
1378 IWinInetInfo* This,
1379 DWORD dwOption,
1380 LPVOID pBuffer,
1381 DWORD *pcbBuf);
1382
1383 END_INTERFACE
1384} IWinInetInfoVtbl;
1385interface IWinInetInfo {
1386 CONST_VTBL IWinInetInfoVtbl* lpVtbl;
1387};
1388
1389#ifdef COBJMACROS
1390/*** IUnknown methods ***/
1391#define IWinInetInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1392#define IWinInetInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
1393#define IWinInetInfo_Release(This) (This)->lpVtbl->Release(This)
1394/*** IWinInetInfo methods ***/
1395#define IWinInetInfo_QueryOption(This,dwOption,pBuffer,pcbBuf) (This)->lpVtbl->QueryOption(This,dwOption,pBuffer,pcbBuf)
1396#endif
1397
1398#endif
1399
1400HRESULT STDMETHODCALLTYPE IWinInetInfo_RemoteQueryOption_Proxy(
1401 IWinInetInfo* This,
1402 DWORD dwOption,
1403 BYTE *pBuffer,
1404 DWORD *pcbBuf);
1405void __RPC_STUB IWinInetInfo_RemoteQueryOption_Stub(
1406 IRpcStubBuffer* This,
1407 IRpcChannelBuffer* pRpcChannelBuffer,
1408 PRPC_MESSAGE pRpcMessage,
1409 DWORD* pdwStubPhase);
1410HRESULT CALLBACK IWinInetInfo_QueryOption_Proxy(
1411 IWinInetInfo* This,
1412 DWORD dwOption,
1413 LPVOID pBuffer,
1414 DWORD *pcbBuf);
1415HRESULT __RPC_STUB IWinInetInfo_QueryOption_Stub(
1416 IWinInetInfo* This,
1417 DWORD dwOption,
1418 BYTE *pBuffer,
1419 DWORD *pcbBuf);
1420
1421#endif /* __IWinInetInfo_INTERFACE_DEFINED__ */
1422
1423/*****************************************************************************
1424 * IWinInetHttpInfo interface
1425 */
1426#ifndef __IWinInetHttpInfo_INTERFACE_DEFINED__
1427#define __IWinInetHttpInfo_INTERFACE_DEFINED__
1428
1429typedef IWinInetHttpInfo *LPWININETHTTPINFO;
1430DEFINE_GUID(IID_IWinInetHttpInfo, 0x79eac9d8, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1431#if defined(__cplusplus) && !defined(CINTERFACE)
1432interface IWinInetHttpInfo : public IWinInetInfo
1433{
1434 virtual HRESULT STDMETHODCALLTYPE QueryInfo(
1435 DWORD dwOption,
1436 LPVOID pBuffer,
1437 DWORD *pcbBuf,
1438 DWORD *pdwFlags,
1439 DWORD *pdwReserved) = 0;
1440
1441};
1442#else
1443typedef struct IWinInetHttpInfoVtbl {
1444 BEGIN_INTERFACE
1445
1446 /*** IUnknown methods ***/
1447 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1448 IWinInetHttpInfo* This,
1449 REFIID riid,
1450 void **ppvObject);
1451
1452 ULONG (STDMETHODCALLTYPE *AddRef)(
1453 IWinInetHttpInfo* This);
1454
1455 ULONG (STDMETHODCALLTYPE *Release)(
1456 IWinInetHttpInfo* This);
1457
1458 /*** IWinInetInfo methods ***/
1459 HRESULT (STDMETHODCALLTYPE *QueryOption)(
1460 IWinInetHttpInfo* This,
1461 DWORD dwOption,
1462 LPVOID pBuffer,
1463 DWORD *pcbBuf);
1464
1465 /*** IWinInetHttpInfo methods ***/
1466 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
1467 IWinInetHttpInfo* This,
1468 DWORD dwOption,
1469 LPVOID pBuffer,
1470 DWORD *pcbBuf,
1471 DWORD *pdwFlags,
1472 DWORD *pdwReserved);
1473
1474 END_INTERFACE
1475} IWinInetHttpInfoVtbl;
1476interface IWinInetHttpInfo {
1477 CONST_VTBL IWinInetHttpInfoVtbl* lpVtbl;
1478};
1479
1480#ifdef COBJMACROS
1481/*** IUnknown methods ***/
1482#define IWinInetHttpInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1483#define IWinInetHttpInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
1484#define IWinInetHttpInfo_Release(This) (This)->lpVtbl->Release(This)
1485/*** IWinInetInfo methods ***/
1486#define IWinInetHttpInfo_QueryOption(This,dwOption,pBuffer,pcbBuf) (This)->lpVtbl->QueryOption(This,dwOption,pBuffer,pcbBuf)
1487/*** IWinInetHttpInfo methods ***/
1488#define IWinInetHttpInfo_QueryInfo(This,dwOption,pBuffer,pcbBuf,pdwFlags,pdwReserved) (This)->lpVtbl->QueryInfo(This,dwOption,pBuffer,pcbBuf,pdwFlags,pdwReserved)
1489#endif
1490
1491#endif
1492
1493HRESULT STDMETHODCALLTYPE IWinInetHttpInfo_RemoteQueryInfo_Proxy(
1494 IWinInetHttpInfo* This,
1495 DWORD dwOption,
1496 BYTE *pBuffer,
1497 DWORD *pcbBuf,
1498 DWORD *pdwFlags,
1499 DWORD *pdwReserved);
1500void __RPC_STUB IWinInetHttpInfo_RemoteQueryInfo_Stub(
1501 IRpcStubBuffer* This,
1502 IRpcChannelBuffer* pRpcChannelBuffer,
1503 PRPC_MESSAGE pRpcMessage,
1504 DWORD* pdwStubPhase);
1505HRESULT CALLBACK IWinInetHttpInfo_QueryInfo_Proxy(
1506 IWinInetHttpInfo* This,
1507 DWORD dwOption,
1508 LPVOID pBuffer,
1509 DWORD *pcbBuf,
1510 DWORD *pdwFlags,
1511 DWORD *pdwReserved);
1512HRESULT __RPC_STUB IWinInetHttpInfo_QueryInfo_Stub(
1513 IWinInetHttpInfo* This,
1514 DWORD dwOption,
1515 BYTE *pBuffer,
1516 DWORD *pcbBuf,
1517 DWORD *pdwFlags,
1518 DWORD *pdwReserved);
1519
1520#endif /* __IWinInetHttpInfo_INTERFACE_DEFINED__ */
1521
1522/*****************************************************************************
1523 * IWindowForBindingUI interface
1524 */
1525#ifndef __IWindowForBindingUI_INTERFACE_DEFINED__
1526#define __IWindowForBindingUI_INTERFACE_DEFINED__
1527
1528typedef IWindowForBindingUI *LPWINDOWFORBINDINGUI;
1529DEFINE_GUID(IID_IWindowForBindingUI, 0x79eac9d5, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1530#if defined(__cplusplus) && !defined(CINTERFACE)
1531interface IWindowForBindingUI : public IUnknown
1532{
1533 virtual HRESULT STDMETHODCALLTYPE GetWindow(
1534 REFGUID rguidReason,
1535 HWND *phwnd) = 0;
1536
1537};
1538#else
1539typedef struct IWindowForBindingUIVtbl {
1540 BEGIN_INTERFACE
1541
1542 /*** IUnknown methods ***/
1543 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1544 IWindowForBindingUI* This,
1545 REFIID riid,
1546 void **ppvObject);
1547
1548 ULONG (STDMETHODCALLTYPE *AddRef)(
1549 IWindowForBindingUI* This);
1550
1551 ULONG (STDMETHODCALLTYPE *Release)(
1552 IWindowForBindingUI* This);
1553
1554 /*** IWindowForBindingUI methods ***/
1555 HRESULT (STDMETHODCALLTYPE *GetWindow)(
1556 IWindowForBindingUI* This,
1557 REFGUID rguidReason,
1558 HWND *phwnd);
1559
1560 END_INTERFACE
1561} IWindowForBindingUIVtbl;
1562interface IWindowForBindingUI {
1563 CONST_VTBL IWindowForBindingUIVtbl* lpVtbl;
1564};
1565
1566#ifdef COBJMACROS
1567/*** IUnknown methods ***/
1568#define IWindowForBindingUI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1569#define IWindowForBindingUI_AddRef(This) (This)->lpVtbl->AddRef(This)
1570#define IWindowForBindingUI_Release(This) (This)->lpVtbl->Release(This)
1571/*** IWindowForBindingUI methods ***/
1572#define IWindowForBindingUI_GetWindow(This,rguidReason,phwnd) (This)->lpVtbl->GetWindow(This,rguidReason,phwnd)
1573#endif
1574
1575#endif
1576
1577HRESULT STDMETHODCALLTYPE IWindowForBindingUI_GetWindow_Proxy(
1578 IWindowForBindingUI* This,
1579 REFGUID rguidReason,
1580 HWND *phwnd);
1581void __RPC_STUB IWindowForBindingUI_GetWindow_Stub(
1582 IRpcStubBuffer* This,
1583 IRpcChannelBuffer* pRpcChannelBuffer,
1584 PRPC_MESSAGE pRpcMessage,
1585 DWORD* pdwStubPhase);
1586
1587#endif /* __IWindowForBindingUI_INTERFACE_DEFINED__ */
1588
1589/*****************************************************************************
1590 * IHttpSecurity interface
1591 */
1592#ifndef __IHttpSecurity_INTERFACE_DEFINED__
1593#define __IHttpSecurity_INTERFACE_DEFINED__
1594
1595typedef IHttpSecurity *LPHTTPSECURITY;
1596DEFINE_GUID(IID_IHttpSecurity, 0x79eac9d7, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1597#if defined(__cplusplus) && !defined(CINTERFACE)
1598interface IHttpSecurity : public IWindowForBindingUI
1599{
1600 virtual HRESULT STDMETHODCALLTYPE OnSecurityProblem(
1601 DWORD dwProblem) = 0;
1602
1603};
1604#else
1605typedef struct IHttpSecurityVtbl {
1606 BEGIN_INTERFACE
1607
1608 /*** IUnknown methods ***/
1609 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1610 IHttpSecurity* This,
1611 REFIID riid,
1612 void **ppvObject);
1613
1614 ULONG (STDMETHODCALLTYPE *AddRef)(
1615 IHttpSecurity* This);
1616
1617 ULONG (STDMETHODCALLTYPE *Release)(
1618 IHttpSecurity* This);
1619
1620 /*** IWindowForBindingUI methods ***/
1621 HRESULT (STDMETHODCALLTYPE *GetWindow)(
1622 IHttpSecurity* This,
1623 REFGUID rguidReason,
1624 HWND *phwnd);
1625
1626 /*** IHttpSecurity methods ***/
1627 HRESULT (STDMETHODCALLTYPE *OnSecurityProblem)(
1628 IHttpSecurity* This,
1629 DWORD dwProblem);
1630
1631 END_INTERFACE
1632} IHttpSecurityVtbl;
1633interface IHttpSecurity {
1634 CONST_VTBL IHttpSecurityVtbl* lpVtbl;
1635};
1636
1637#ifdef COBJMACROS
1638/*** IUnknown methods ***/
1639#define IHttpSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1640#define IHttpSecurity_AddRef(This) (This)->lpVtbl->AddRef(This)
1641#define IHttpSecurity_Release(This) (This)->lpVtbl->Release(This)
1642/*** IWindowForBindingUI methods ***/
1643#define IHttpSecurity_GetWindow(This,rguidReason,phwnd) (This)->lpVtbl->GetWindow(This,rguidReason,phwnd)
1644/*** IHttpSecurity methods ***/
1645#define IHttpSecurity_OnSecurityProblem(This,dwProblem) (This)->lpVtbl->OnSecurityProblem(This,dwProblem)
1646#endif
1647
1648#endif
1649
1650HRESULT STDMETHODCALLTYPE IHttpSecurity_OnSecurityProblem_Proxy(
1651 IHttpSecurity* This,
1652 DWORD dwProblem);
1653void __RPC_STUB IHttpSecurity_OnSecurityProblem_Stub(
1654 IRpcStubBuffer* This,
1655 IRpcChannelBuffer* pRpcChannelBuffer,
1656 PRPC_MESSAGE pRpcMessage,
1657 DWORD* pdwStubPhase);
1658
1659#endif /* __IHttpSecurity_INTERFACE_DEFINED__ */
1660
1661/*****************************************************************************
1662 * IPersistMoniker interface
1663 */
1664#ifndef __IPersistMoniker_INTERFACE_DEFINED__
1665#define __IPersistMoniker_INTERFACE_DEFINED__
1666
1667typedef IPersistMoniker *LPPERSISTMONIKER;
1668DEFINE_GUID(IID_IPersistMoniker, 0x79eac9c9, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1669#if defined(__cplusplus) && !defined(CINTERFACE)
1670interface IPersistMoniker : public IUnknown
1671{
1672 virtual HRESULT STDMETHODCALLTYPE GetClassID(
1673 CLSID *pClassID) = 0;
1674
1675 virtual HRESULT STDMETHODCALLTYPE IsDirty(
1676 ) = 0;
1677
1678 virtual HRESULT STDMETHODCALLTYPE Load(
1679 BOOL fFullyAvailable,
1680 IMoniker *pimkName,
1681 LPBC pibc,
1682 DWORD grfMode) = 0;
1683
1684 virtual HRESULT STDMETHODCALLTYPE Save(
1685 IMoniker *pimkName,
1686 LPBC pbc,
1687 BOOL fRemember) = 0;
1688
1689 virtual HRESULT STDMETHODCALLTYPE SaveCompleted(
1690 IMoniker *pimkName,
1691 LPBC pibc) = 0;
1692
1693 virtual HRESULT STDMETHODCALLTYPE GetCurMoniker(
1694 IMoniker **ppimkName) = 0;
1695
1696};
1697#else
1698typedef struct IPersistMonikerVtbl {
1699 BEGIN_INTERFACE
1700
1701 /*** IUnknown methods ***/
1702 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1703 IPersistMoniker* This,
1704 REFIID riid,
1705 void **ppvObject);
1706
1707 ULONG (STDMETHODCALLTYPE *AddRef)(
1708 IPersistMoniker* This);
1709
1710 ULONG (STDMETHODCALLTYPE *Release)(
1711 IPersistMoniker* This);
1712
1713 /*** IPersistMoniker methods ***/
1714 HRESULT (STDMETHODCALLTYPE *GetClassID)(
1715 IPersistMoniker* This,
1716 CLSID *pClassID);
1717
1718 HRESULT (STDMETHODCALLTYPE *IsDirty)(
1719 IPersistMoniker* This);
1720
1721 HRESULT (STDMETHODCALLTYPE *Load)(
1722 IPersistMoniker* This,
1723 BOOL fFullyAvailable,
1724 IMoniker *pimkName,
1725 LPBC pibc,
1726 DWORD grfMode);
1727
1728 HRESULT (STDMETHODCALLTYPE *Save)(
1729 IPersistMoniker* This,
1730 IMoniker *pimkName,
1731 LPBC pbc,
1732 BOOL fRemember);
1733
1734 HRESULT (STDMETHODCALLTYPE *SaveCompleted)(
1735 IPersistMoniker* This,
1736 IMoniker *pimkName,
1737 LPBC pibc);
1738
1739 HRESULT (STDMETHODCALLTYPE *GetCurMoniker)(
1740 IPersistMoniker* This,
1741 IMoniker **ppimkName);
1742
1743 END_INTERFACE
1744} IPersistMonikerVtbl;
1745interface IPersistMoniker {
1746 CONST_VTBL IPersistMonikerVtbl* lpVtbl;
1747};
1748
1749#ifdef COBJMACROS
1750/*** IUnknown methods ***/
1751#define IPersistMoniker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1752#define IPersistMoniker_AddRef(This) (This)->lpVtbl->AddRef(This)
1753#define IPersistMoniker_Release(This) (This)->lpVtbl->Release(This)
1754/*** IPersistMoniker methods ***/
1755#define IPersistMoniker_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID)
1756#define IPersistMoniker_IsDirty(This) (This)->lpVtbl->IsDirty(This)
1757#define IPersistMoniker_Load(This,fFullyAvailable,pimkName,pibc,grfMode) (This)->lpVtbl->Load(This,fFullyAvailable,pimkName,pibc,grfMode)
1758#define IPersistMoniker_Save(This,pimkName,pbc,fRemember) (This)->lpVtbl->Save(This,pimkName,pbc,fRemember)
1759#define IPersistMoniker_SaveCompleted(This,pimkName,pibc) (This)->lpVtbl->SaveCompleted(This,pimkName,pibc)
1760#define IPersistMoniker_GetCurMoniker(This,ppimkName) (This)->lpVtbl->GetCurMoniker(This,ppimkName)
1761#endif
1762
1763#endif
1764
1765HRESULT STDMETHODCALLTYPE IPersistMoniker_GetClassID_Proxy(
1766 IPersistMoniker* This,
1767 CLSID *pClassID);
1768void __RPC_STUB IPersistMoniker_GetClassID_Stub(
1769 IRpcStubBuffer* This,
1770 IRpcChannelBuffer* pRpcChannelBuffer,
1771 PRPC_MESSAGE pRpcMessage,
1772 DWORD* pdwStubPhase);
1773HRESULT STDMETHODCALLTYPE IPersistMoniker_IsDirty_Proxy(
1774 IPersistMoniker* This);
1775void __RPC_STUB IPersistMoniker_IsDirty_Stub(
1776 IRpcStubBuffer* This,
1777 IRpcChannelBuffer* pRpcChannelBuffer,
1778 PRPC_MESSAGE pRpcMessage,
1779 DWORD* pdwStubPhase);
1780HRESULT STDMETHODCALLTYPE IPersistMoniker_Load_Proxy(
1781 IPersistMoniker* This,
1782 BOOL fFullyAvailable,
1783 IMoniker *pimkName,
1784 LPBC pibc,
1785 DWORD grfMode);
1786void __RPC_STUB IPersistMoniker_Load_Stub(
1787 IRpcStubBuffer* This,
1788 IRpcChannelBuffer* pRpcChannelBuffer,
1789 PRPC_MESSAGE pRpcMessage,
1790 DWORD* pdwStubPhase);
1791HRESULT STDMETHODCALLTYPE IPersistMoniker_Save_Proxy(
1792 IPersistMoniker* This,
1793 IMoniker *pimkName,
1794 LPBC pbc,
1795 BOOL fRemember);
1796void __RPC_STUB IPersistMoniker_Save_Stub(
1797 IRpcStubBuffer* This,
1798 IRpcChannelBuffer* pRpcChannelBuffer,
1799 PRPC_MESSAGE pRpcMessage,
1800 DWORD* pdwStubPhase);
1801HRESULT STDMETHODCALLTYPE IPersistMoniker_SaveCompleted_Proxy(
1802 IPersistMoniker* This,
1803 IMoniker *pimkName,
1804 LPBC pibc);
1805void __RPC_STUB IPersistMoniker_SaveCompleted_Stub(
1806 IRpcStubBuffer* This,
1807 IRpcChannelBuffer* pRpcChannelBuffer,
1808 PRPC_MESSAGE pRpcMessage,
1809 DWORD* pdwStubPhase);
1810HRESULT STDMETHODCALLTYPE IPersistMoniker_GetCurMoniker_Proxy(
1811 IPersistMoniker* This,
1812 IMoniker **ppimkName);
1813void __RPC_STUB IPersistMoniker_GetCurMoniker_Stub(
1814 IRpcStubBuffer* This,
1815 IRpcChannelBuffer* pRpcChannelBuffer,
1816 PRPC_MESSAGE pRpcMessage,
1817 DWORD* pdwStubPhase);
1818
1819#endif /* __IPersistMoniker_INTERFACE_DEFINED__ */
1820
1821/*****************************************************************************
1822 * IMonikerProp interface
1823 */
1824#ifndef __IMonikerProp_INTERFACE_DEFINED__
1825#define __IMonikerProp_INTERFACE_DEFINED__
1826
1827typedef IMonikerProp *LPMONIKERPROP;
1828typedef enum __WIDL_urlmon_generated_name_00000006 {
1829 MIMETYPEPROP = 0,
1830 USE_SRC_URL = 1,
1831 CLASSIDPROP = 2,
1832 TRUSTEDDOWNLOADPROP = 3,
1833 POPUPLEVELPROP = 4
1834} MONIKERPROPERTY;
1835DEFINE_GUID(IID_IMonikerProp, 0xa5ca5f7f, 0x1847, 0x4d87, 0x9c,0x5b, 0x91,0x85,0x09,0xf7,0x51,0x1d);
1836#if defined(__cplusplus) && !defined(CINTERFACE)
1837interface IMonikerProp : public IUnknown
1838{
1839 virtual HRESULT STDMETHODCALLTYPE PutProperty(
1840 MONIKERPROPERTY mkp,
1841 LPCWSTR val) = 0;
1842
1843};
1844#else
1845typedef struct IMonikerPropVtbl {
1846 BEGIN_INTERFACE
1847
1848 /*** IUnknown methods ***/
1849 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1850 IMonikerProp* This,
1851 REFIID riid,
1852 void **ppvObject);
1853
1854 ULONG (STDMETHODCALLTYPE *AddRef)(
1855 IMonikerProp* This);
1856
1857 ULONG (STDMETHODCALLTYPE *Release)(
1858 IMonikerProp* This);
1859
1860 /*** IMonikerProp methods ***/
1861 HRESULT (STDMETHODCALLTYPE *PutProperty)(
1862 IMonikerProp* This,
1863 MONIKERPROPERTY mkp,
1864 LPCWSTR val);
1865
1866 END_INTERFACE
1867} IMonikerPropVtbl;
1868interface IMonikerProp {
1869 CONST_VTBL IMonikerPropVtbl* lpVtbl;
1870};
1871
1872#ifdef COBJMACROS
1873/*** IUnknown methods ***/
1874#define IMonikerProp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1875#define IMonikerProp_AddRef(This) (This)->lpVtbl->AddRef(This)
1876#define IMonikerProp_Release(This) (This)->lpVtbl->Release(This)
1877/*** IMonikerProp methods ***/
1878#define IMonikerProp_PutProperty(This,mkp,val) (This)->lpVtbl->PutProperty(This,mkp,val)
1879#endif
1880
1881#endif
1882
1883HRESULT STDMETHODCALLTYPE IMonikerProp_PutProperty_Proxy(
1884 IMonikerProp* This,
1885 MONIKERPROPERTY mkp,
1886 LPCWSTR val);
1887void __RPC_STUB IMonikerProp_PutProperty_Stub(
1888 IRpcStubBuffer* This,
1889 IRpcChannelBuffer* pRpcChannelBuffer,
1890 PRPC_MESSAGE pRpcMessage,
1891 DWORD* pdwStubPhase);
1892
1893#endif /* __IMonikerProp_INTERFACE_DEFINED__ */
1894
1895#ifndef _LPBINDPROTOCOL_DEFINED
1896#define _LPBINDPROTOCOL_DEFINED
1897/*****************************************************************************
1898 * IBindProtocol interface
1899 */
1900#ifndef __IBindProtocol_INTERFACE_DEFINED__
1901#define __IBindProtocol_INTERFACE_DEFINED__
1902
1903typedef IBindProtocol *LPBINDPROTOCOL;
1904DEFINE_GUID(IID_IBindProtocol, 0x79eac9cd, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1905#if defined(__cplusplus) && !defined(CINTERFACE)
1906interface IBindProtocol : public IUnknown
1907{
1908 virtual HRESULT STDMETHODCALLTYPE CreateBinding(
1909 LPCWSTR szUrl,
1910 IBindCtx *pbc,
1911 IBinding **ppb) = 0;
1912
1913};
1914#else
1915typedef struct IBindProtocolVtbl {
1916 BEGIN_INTERFACE
1917
1918 /*** IUnknown methods ***/
1919 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1920 IBindProtocol* This,
1921 REFIID riid,
1922 void **ppvObject);
1923
1924 ULONG (STDMETHODCALLTYPE *AddRef)(
1925 IBindProtocol* This);
1926
1927 ULONG (STDMETHODCALLTYPE *Release)(
1928 IBindProtocol* This);
1929
1930 /*** IBindProtocol methods ***/
1931 HRESULT (STDMETHODCALLTYPE *CreateBinding)(
1932 IBindProtocol* This,
1933 LPCWSTR szUrl,
1934 IBindCtx *pbc,
1935 IBinding **ppb);
1936
1937 END_INTERFACE
1938} IBindProtocolVtbl;
1939interface IBindProtocol {
1940 CONST_VTBL IBindProtocolVtbl* lpVtbl;
1941};
1942
1943#ifdef COBJMACROS
1944/*** IUnknown methods ***/
1945#define IBindProtocol_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1946#define IBindProtocol_AddRef(This) (This)->lpVtbl->AddRef(This)
1947#define IBindProtocol_Release(This) (This)->lpVtbl->Release(This)
1948/*** IBindProtocol methods ***/
1949#define IBindProtocol_CreateBinding(This,szUrl,pbc,ppb) (This)->lpVtbl->CreateBinding(This,szUrl,pbc,ppb)
1950#endif
1951
1952#endif
1953
1954HRESULT STDMETHODCALLTYPE IBindProtocol_CreateBinding_Proxy(
1955 IBindProtocol* This,
1956 LPCWSTR szUrl,
1957 IBindCtx *pbc,
1958 IBinding **ppb);
1959void __RPC_STUB IBindProtocol_CreateBinding_Stub(
1960 IRpcStubBuffer* This,
1961 IRpcChannelBuffer* pRpcChannelBuffer,
1962 PRPC_MESSAGE pRpcMessage,
1963 DWORD* pdwStubPhase);
1964
1965#endif /* __IBindProtocol_INTERFACE_DEFINED__ */
1966
1967#endif /* !defined _LPBINDPROTOCOL_DEFINED */
1968/*****************************************************************************
1969 * IInternetBindInfo interface
1970 */
1971#ifndef __IInternetBindInfo_INTERFACE_DEFINED__
1972#define __IInternetBindInfo_INTERFACE_DEFINED__
1973
1974typedef IInternetBindInfo *LPIINTERNETBINDINFO;
1975typedef enum tagBINDSTRING {
1976 BINDSTRING_HEADERS = 1,
1977 BINDSTRING_ACCEPT_MIMES = 2,
1978 BINDSTRING_EXTRA_URL = 3,
1979 BINDSTRING_LANGUAGE = 4,
1980 BINDSTRING_USERNAME = 5,
1981 BINDSTRING_PASSWORD = 6,
1982 BINDSTRING_UA_PIXELS = 7,
1983 BINDSTRING_UA_COLOR = 8,
1984 BINDSTRING_OS = 9,
1985 BINDSTRING_USER_AGENT = 10,
1986 BINDSTRING_ACCEPT_ENCODINGS = 11,
1987 BINDSTRING_POST_COOKIE = 12,
1988 BINDSTRING_POST_DATA_MIME = 13,
1989 BINDSTRING_URL = 14,
1990 BINDSTRING_IID = 15,
1991 BINDSTRING_FLAG_BIND_TO_OBJECT = 16,
1992 BINDSTRING_PTR_BIND_CONTEXT = 17
1993} BINDSTRING;
1994DEFINE_GUID(IID_IInternetBindInfo, 0x79eac9e1, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1995#if defined(__cplusplus) && !defined(CINTERFACE)
1996interface IInternetBindInfo : public IUnknown
1997{
1998 virtual HRESULT STDMETHODCALLTYPE GetBindInfo(
1999 DWORD *grfBINDF,
2000 BINDINFO *pbindinfo) = 0;
2001
2002 virtual HRESULT STDMETHODCALLTYPE GetBindString(
2003 ULONG ulStringType,
2004 LPOLESTR *ppwzStr,
2005 ULONG cEl,
2006 ULONG *pcElFetched) = 0;
2007
2008};
2009#else
2010typedef struct IInternetBindInfoVtbl {
2011 BEGIN_INTERFACE
2012
2013 /*** IUnknown methods ***/
2014 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2015 IInternetBindInfo* This,
2016 REFIID riid,
2017 void **ppvObject);
2018
2019 ULONG (STDMETHODCALLTYPE *AddRef)(
2020 IInternetBindInfo* This);
2021
2022 ULONG (STDMETHODCALLTYPE *Release)(
2023 IInternetBindInfo* This);
2024
2025 /*** IInternetBindInfo methods ***/
2026 HRESULT (STDMETHODCALLTYPE *GetBindInfo)(
2027 IInternetBindInfo* This,
2028 DWORD *grfBINDF,
2029 BINDINFO *pbindinfo);
2030
2031 HRESULT (STDMETHODCALLTYPE *GetBindString)(
2032 IInternetBindInfo* This,
2033 ULONG ulStringType,
2034 LPOLESTR *ppwzStr,
2035 ULONG cEl,
2036 ULONG *pcElFetched);
2037
2038 END_INTERFACE
2039} IInternetBindInfoVtbl;
2040interface IInternetBindInfo {
2041 CONST_VTBL IInternetBindInfoVtbl* lpVtbl;
2042};
2043
2044#ifdef COBJMACROS
2045/*** IUnknown methods ***/
2046#define IInternetBindInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2047#define IInternetBindInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
2048#define IInternetBindInfo_Release(This) (This)->lpVtbl->Release(This)
2049/*** IInternetBindInfo methods ***/
2050#define IInternetBindInfo_GetBindInfo(This,grfBINDF,pbindinfo) (This)->lpVtbl->GetBindInfo(This,grfBINDF,pbindinfo)
2051#define IInternetBindInfo_GetBindString(This,ulStringType,ppwzStr,cEl,pcElFetched) (This)->lpVtbl->GetBindString(This,ulStringType,ppwzStr,cEl,pcElFetched)
2052#endif
2053
2054#endif
2055
2056HRESULT STDMETHODCALLTYPE IInternetBindInfo_GetBindInfo_Proxy(
2057 IInternetBindInfo* This,
2058 DWORD *grfBINDF,
2059 BINDINFO *pbindinfo);
2060void __RPC_STUB IInternetBindInfo_GetBindInfo_Stub(
2061 IRpcStubBuffer* This,
2062 IRpcChannelBuffer* pRpcChannelBuffer,
2063 PRPC_MESSAGE pRpcMessage,
2064 DWORD* pdwStubPhase);
2065HRESULT STDMETHODCALLTYPE IInternetBindInfo_GetBindString_Proxy(
2066 IInternetBindInfo* This,
2067 ULONG ulStringType,
2068 LPOLESTR *ppwzStr,
2069 ULONG cEl,
2070 ULONG *pcElFetched);
2071void __RPC_STUB IInternetBindInfo_GetBindString_Stub(
2072 IRpcStubBuffer* This,
2073 IRpcChannelBuffer* pRpcChannelBuffer,
2074 PRPC_MESSAGE pRpcMessage,
2075 DWORD* pdwStubPhase);
2076
2077#endif /* __IInternetBindInfo_INTERFACE_DEFINED__ */
2078
2079/*****************************************************************************
2080 * IInternetPriority interface
2081 */
2082#ifndef __IInternetPriority_INTERFACE_DEFINED__
2083#define __IInternetPriority_INTERFACE_DEFINED__
2084
2085typedef IInternetPriority *LPIINTERNETPRIORITY;
2086DEFINE_GUID(IID_IInternetPriority, 0x79eac9eb, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2087#if defined(__cplusplus) && !defined(CINTERFACE)
2088interface IInternetPriority : public IUnknown
2089{
2090 virtual HRESULT STDMETHODCALLTYPE SetPriority(
2091 LONG nPriority) = 0;
2092
2093 virtual HRESULT STDMETHODCALLTYPE GetPriority(
2094 LONG *pnPriority) = 0;
2095
2096};
2097#else
2098typedef struct IInternetPriorityVtbl {
2099 BEGIN_INTERFACE
2100
2101 /*** IUnknown methods ***/
2102 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2103 IInternetPriority* This,
2104 REFIID riid,
2105 void **ppvObject);
2106
2107 ULONG (STDMETHODCALLTYPE *AddRef)(
2108 IInternetPriority* This);
2109
2110 ULONG (STDMETHODCALLTYPE *Release)(
2111 IInternetPriority* This);
2112
2113 /*** IInternetPriority methods ***/
2114 HRESULT (STDMETHODCALLTYPE *SetPriority)(
2115 IInternetPriority* This,
2116 LONG nPriority);
2117
2118 HRESULT (STDMETHODCALLTYPE *GetPriority)(
2119 IInternetPriority* This,
2120 LONG *pnPriority);
2121
2122 END_INTERFACE
2123} IInternetPriorityVtbl;
2124interface IInternetPriority {
2125 CONST_VTBL IInternetPriorityVtbl* lpVtbl;
2126};
2127
2128#ifdef COBJMACROS
2129/*** IUnknown methods ***/
2130#define IInternetPriority_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2131#define IInternetPriority_AddRef(This) (This)->lpVtbl->AddRef(This)
2132#define IInternetPriority_Release(This) (This)->lpVtbl->Release(This)
2133/*** IInternetPriority methods ***/
2134#define IInternetPriority_SetPriority(This,nPriority) (This)->lpVtbl->SetPriority(This,nPriority)
2135#define IInternetPriority_GetPriority(This,pnPriority) (This)->lpVtbl->GetPriority(This,pnPriority)
2136#endif
2137
2138#endif
2139
2140HRESULT STDMETHODCALLTYPE IInternetPriority_SetPriority_Proxy(
2141 IInternetPriority* This,
2142 LONG nPriority);
2143void __RPC_STUB IInternetPriority_SetPriority_Stub(
2144 IRpcStubBuffer* This,
2145 IRpcChannelBuffer* pRpcChannelBuffer,
2146 PRPC_MESSAGE pRpcMessage,
2147 DWORD* pdwStubPhase);
2148HRESULT STDMETHODCALLTYPE IInternetPriority_GetPriority_Proxy(
2149 IInternetPriority* This,
2150 LONG *pnPriority);
2151void __RPC_STUB IInternetPriority_GetPriority_Stub(
2152 IRpcStubBuffer* This,
2153 IRpcChannelBuffer* pRpcChannelBuffer,
2154 PRPC_MESSAGE pRpcMessage,
2155 DWORD* pdwStubPhase);
2156
2157#endif /* __IInternetPriority_INTERFACE_DEFINED__ */
2158
2159/*****************************************************************************
2160 * IInternetProtocolRoot interface
2161 */
2162#ifndef __IInternetProtocolRoot_INTERFACE_DEFINED__
2163#define __IInternetProtocolRoot_INTERFACE_DEFINED__
2164
2165typedef IInternetProtocolRoot *LPIINTERNETPROTOCOLROOT;
2166typedef enum _tagPI_FLAGS {
2167 PI_PARSE_URL = 0x1,
2168 PI_FILTER_MODE = 0x2,
2169 PI_FORCE_ASYNC = 0x4,
2170 PI_USE_WORKERTHREAD = 0x8,
2171 PI_MIMEVERIFICATION = 0x10,
2172 PI_CLSIDLOOKUP = 0x20,
2173 PI_DATAPROGRESS = 0x40,
2174 PI_SYNCHRONOUS = 0x80,
2175 PI_APARTMENTTHREADED = 0x100,
2176 PI_CLASSINSTALL = 0x200,
2177 PD_FORCE_SWITCH = 0x10000
2178} PI_FLAGS;
2179typedef struct _tagPROTOCOLDATA {
2180 DWORD grfFlags;
2181 DWORD dwState;
2182 LPVOID pData;
2183 ULONG cbData;
2184} PROTOCOLDATA;
2185DEFINE_GUID(IID_IInternetProtocolRoot, 0x79eac9e3, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2186#if defined(__cplusplus) && !defined(CINTERFACE)
2187interface IInternetProtocolRoot : public IUnknown
2188{
2189 virtual HRESULT STDMETHODCALLTYPE Start(
2190 LPCWSTR szUrl,
2191 IInternetProtocolSink *pOIProtSink,
2192 IInternetBindInfo *pOIBindInfo,
2193 DWORD grfPI,
2194 HANDLE_PTR dwReserved) = 0;
2195
2196 virtual HRESULT STDMETHODCALLTYPE Continue(
2197 PROTOCOLDATA *pProtocolData) = 0;
2198
2199 virtual HRESULT STDMETHODCALLTYPE Abort(
2200 HRESULT hrReason,
2201 DWORD dwOptions) = 0;
2202
2203 virtual HRESULT STDMETHODCALLTYPE Terminate(
2204 DWORD dwOptions) = 0;
2205
2206 virtual HRESULT STDMETHODCALLTYPE Suspend(
2207 ) = 0;
2208
2209 virtual HRESULT STDMETHODCALLTYPE Resume(
2210 ) = 0;
2211
2212};
2213#else
2214typedef struct IInternetProtocolRootVtbl {
2215 BEGIN_INTERFACE
2216
2217 /*** IUnknown methods ***/
2218 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2219 IInternetProtocolRoot* This,
2220 REFIID riid,
2221 void **ppvObject);
2222
2223 ULONG (STDMETHODCALLTYPE *AddRef)(
2224 IInternetProtocolRoot* This);
2225
2226 ULONG (STDMETHODCALLTYPE *Release)(
2227 IInternetProtocolRoot* This);
2228
2229 /*** IInternetProtocolRoot methods ***/
2230 HRESULT (STDMETHODCALLTYPE *Start)(
2231 IInternetProtocolRoot* This,
2232 LPCWSTR szUrl,
2233 IInternetProtocolSink *pOIProtSink,
2234 IInternetBindInfo *pOIBindInfo,
2235 DWORD grfPI,
2236 HANDLE_PTR dwReserved);
2237
2238 HRESULT (STDMETHODCALLTYPE *Continue)(
2239 IInternetProtocolRoot* This,
2240 PROTOCOLDATA *pProtocolData);
2241
2242 HRESULT (STDMETHODCALLTYPE *Abort)(
2243 IInternetProtocolRoot* This,
2244 HRESULT hrReason,
2245 DWORD dwOptions);
2246
2247 HRESULT (STDMETHODCALLTYPE *Terminate)(
2248 IInternetProtocolRoot* This,
2249 DWORD dwOptions);
2250
2251 HRESULT (STDMETHODCALLTYPE *Suspend)(
2252 IInternetProtocolRoot* This);
2253
2254 HRESULT (STDMETHODCALLTYPE *Resume)(
2255 IInternetProtocolRoot* This);
2256
2257 END_INTERFACE
2258} IInternetProtocolRootVtbl;
2259interface IInternetProtocolRoot {
2260 CONST_VTBL IInternetProtocolRootVtbl* lpVtbl;
2261};
2262
2263#ifdef COBJMACROS
2264/*** IUnknown methods ***/
2265#define IInternetProtocolRoot_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2266#define IInternetProtocolRoot_AddRef(This) (This)->lpVtbl->AddRef(This)
2267#define IInternetProtocolRoot_Release(This) (This)->lpVtbl->Release(This)
2268/*** IInternetProtocolRoot methods ***/
2269#define IInternetProtocolRoot_Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved)
2270#define IInternetProtocolRoot_Continue(This,pProtocolData) (This)->lpVtbl->Continue(This,pProtocolData)
2271#define IInternetProtocolRoot_Abort(This,hrReason,dwOptions) (This)->lpVtbl->Abort(This,hrReason,dwOptions)
2272#define IInternetProtocolRoot_Terminate(This,dwOptions) (This)->lpVtbl->Terminate(This,dwOptions)
2273#define IInternetProtocolRoot_Suspend(This) (This)->lpVtbl->Suspend(This)
2274#define IInternetProtocolRoot_Resume(This) (This)->lpVtbl->Resume(This)
2275#endif
2276
2277#endif
2278
2279HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Start_Proxy(
2280 IInternetProtocolRoot* This,
2281 LPCWSTR szUrl,
2282 IInternetProtocolSink *pOIProtSink,
2283 IInternetBindInfo *pOIBindInfo,
2284 DWORD grfPI,
2285 HANDLE_PTR dwReserved);
2286void __RPC_STUB IInternetProtocolRoot_Start_Stub(
2287 IRpcStubBuffer* This,
2288 IRpcChannelBuffer* pRpcChannelBuffer,
2289 PRPC_MESSAGE pRpcMessage,
2290 DWORD* pdwStubPhase);
2291HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Continue_Proxy(
2292 IInternetProtocolRoot* This,
2293 PROTOCOLDATA *pProtocolData);
2294void __RPC_STUB IInternetProtocolRoot_Continue_Stub(
2295 IRpcStubBuffer* This,
2296 IRpcChannelBuffer* pRpcChannelBuffer,
2297 PRPC_MESSAGE pRpcMessage,
2298 DWORD* pdwStubPhase);
2299HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Abort_Proxy(
2300 IInternetProtocolRoot* This,
2301 HRESULT hrReason,
2302 DWORD dwOptions);
2303void __RPC_STUB IInternetProtocolRoot_Abort_Stub(
2304 IRpcStubBuffer* This,
2305 IRpcChannelBuffer* pRpcChannelBuffer,
2306 PRPC_MESSAGE pRpcMessage,
2307 DWORD* pdwStubPhase);
2308HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Terminate_Proxy(
2309 IInternetProtocolRoot* This,
2310 DWORD dwOptions);
2311void __RPC_STUB IInternetProtocolRoot_Terminate_Stub(
2312 IRpcStubBuffer* This,
2313 IRpcChannelBuffer* pRpcChannelBuffer,
2314 PRPC_MESSAGE pRpcMessage,
2315 DWORD* pdwStubPhase);
2316HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Suspend_Proxy(
2317 IInternetProtocolRoot* This);
2318void __RPC_STUB IInternetProtocolRoot_Suspend_Stub(
2319 IRpcStubBuffer* This,
2320 IRpcChannelBuffer* pRpcChannelBuffer,
2321 PRPC_MESSAGE pRpcMessage,
2322 DWORD* pdwStubPhase);
2323HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Resume_Proxy(
2324 IInternetProtocolRoot* This);
2325void __RPC_STUB IInternetProtocolRoot_Resume_Stub(
2326 IRpcStubBuffer* This,
2327 IRpcChannelBuffer* pRpcChannelBuffer,
2328 PRPC_MESSAGE pRpcMessage,
2329 DWORD* pdwStubPhase);
2330
2331#endif /* __IInternetProtocolRoot_INTERFACE_DEFINED__ */
2332
2333/*****************************************************************************
2334 * IInternetProtocolSink interface
2335 */
2336#ifndef __IInternetProtocolSink_INTERFACE_DEFINED__
2337#define __IInternetProtocolSink_INTERFACE_DEFINED__
2338
2339typedef IInternetProtocolSink *LPIINTERNETPROTOCOLSINK;
2340DEFINE_GUID(IID_IInternetProtocolSink, 0x79eac9e5, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2341#if defined(__cplusplus) && !defined(CINTERFACE)
2342interface IInternetProtocolSink : public IUnknown
2343{
2344 virtual HRESULT STDMETHODCALLTYPE Switch(
2345 PROTOCOLDATA *pProtocolData) = 0;
2346
2347 virtual HRESULT STDMETHODCALLTYPE ReportProgress(
2348 ULONG ulStatusCode,
2349 LPCWSTR szStatusText) = 0;
2350
2351 virtual HRESULT STDMETHODCALLTYPE ReportData(
2352 DWORD grfBSCF,
2353 ULONG ulProgress,
2354 ULONG ulProgressMax) = 0;
2355
2356 virtual HRESULT STDMETHODCALLTYPE ReportResult(
2357 HRESULT hrResult,
2358 DWORD dwError,
2359 LPCWSTR szResult) = 0;
2360
2361};
2362#else
2363typedef struct IInternetProtocolSinkVtbl {
2364 BEGIN_INTERFACE
2365
2366 /*** IUnknown methods ***/
2367 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2368 IInternetProtocolSink* This,
2369 REFIID riid,
2370 void **ppvObject);
2371
2372 ULONG (STDMETHODCALLTYPE *AddRef)(
2373 IInternetProtocolSink* This);
2374
2375 ULONG (STDMETHODCALLTYPE *Release)(
2376 IInternetProtocolSink* This);
2377
2378 /*** IInternetProtocolSink methods ***/
2379 HRESULT (STDMETHODCALLTYPE *Switch)(
2380 IInternetProtocolSink* This,
2381 PROTOCOLDATA *pProtocolData);
2382
2383 HRESULT (STDMETHODCALLTYPE *ReportProgress)(
2384 IInternetProtocolSink* This,
2385 ULONG ulStatusCode,
2386 LPCWSTR szStatusText);
2387
2388 HRESULT (STDMETHODCALLTYPE *ReportData)(
2389 IInternetProtocolSink* This,
2390 DWORD grfBSCF,
2391 ULONG ulProgress,
2392 ULONG ulProgressMax);
2393
2394 HRESULT (STDMETHODCALLTYPE *ReportResult)(
2395 IInternetProtocolSink* This,
2396 HRESULT hrResult,
2397 DWORD dwError,
2398 LPCWSTR szResult);
2399
2400 END_INTERFACE
2401} IInternetProtocolSinkVtbl;
2402interface IInternetProtocolSink {
2403 CONST_VTBL IInternetProtocolSinkVtbl* lpVtbl;
2404};
2405
2406#ifdef COBJMACROS
2407/*** IUnknown methods ***/
2408#define IInternetProtocolSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2409#define IInternetProtocolSink_AddRef(This) (This)->lpVtbl->AddRef(This)
2410#define IInternetProtocolSink_Release(This) (This)->lpVtbl->Release(This)
2411/*** IInternetProtocolSink methods ***/
2412#define IInternetProtocolSink_Switch(This,pProtocolData) (This)->lpVtbl->Switch(This,pProtocolData)
2413#define IInternetProtocolSink_ReportProgress(This,ulStatusCode,szStatusText) (This)->lpVtbl->ReportProgress(This,ulStatusCode,szStatusText)
2414#define IInternetProtocolSink_ReportData(This,grfBSCF,ulProgress,ulProgressMax) (This)->lpVtbl->ReportData(This,grfBSCF,ulProgress,ulProgressMax)
2415#define IInternetProtocolSink_ReportResult(This,hrResult,dwError,szResult) (This)->lpVtbl->ReportResult(This,hrResult,dwError,szResult)
2416#endif
2417
2418#endif
2419
2420HRESULT STDMETHODCALLTYPE IInternetProtocolSink_Switch_Proxy(
2421 IInternetProtocolSink* This,
2422 PROTOCOLDATA *pProtocolData);
2423void __RPC_STUB IInternetProtocolSink_Switch_Stub(
2424 IRpcStubBuffer* This,
2425 IRpcChannelBuffer* pRpcChannelBuffer,
2426 PRPC_MESSAGE pRpcMessage,
2427 DWORD* pdwStubPhase);
2428HRESULT STDMETHODCALLTYPE IInternetProtocolSink_ReportProgress_Proxy(
2429 IInternetProtocolSink* This,
2430 ULONG ulStatusCode,
2431 LPCWSTR szStatusText);
2432void __RPC_STUB IInternetProtocolSink_ReportProgress_Stub(
2433 IRpcStubBuffer* This,
2434 IRpcChannelBuffer* pRpcChannelBuffer,
2435 PRPC_MESSAGE pRpcMessage,
2436 DWORD* pdwStubPhase);
2437HRESULT STDMETHODCALLTYPE IInternetProtocolSink_ReportData_Proxy(
2438 IInternetProtocolSink* This,
2439 DWORD grfBSCF,
2440 ULONG ulProgress,
2441 ULONG ulProgressMax);
2442void __RPC_STUB IInternetProtocolSink_ReportData_Stub(
2443 IRpcStubBuffer* This,
2444 IRpcChannelBuffer* pRpcChannelBuffer,
2445 PRPC_MESSAGE pRpcMessage,
2446 DWORD* pdwStubPhase);
2447HRESULT STDMETHODCALLTYPE IInternetProtocolSink_ReportResult_Proxy(
2448 IInternetProtocolSink* This,
2449 HRESULT hrResult,
2450 DWORD dwError,
2451 LPCWSTR szResult);
2452void __RPC_STUB IInternetProtocolSink_ReportResult_Stub(
2453 IRpcStubBuffer* This,
2454 IRpcChannelBuffer* pRpcChannelBuffer,
2455 PRPC_MESSAGE pRpcMessage,
2456 DWORD* pdwStubPhase);
2457
2458#endif /* __IInternetProtocolSink_INTERFACE_DEFINED__ */
2459
2460/*****************************************************************************
2461 * IInternetProtocol interface
2462 */
2463#ifndef __IInternetProtocol_INTERFACE_DEFINED__
2464#define __IInternetProtocol_INTERFACE_DEFINED__
2465
2466typedef IInternetProtocol *LPIINTERNETPROTOCOL;
2467DEFINE_GUID(IID_IInternetProtocol, 0x79eac9e4, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2468#if defined(__cplusplus) && !defined(CINTERFACE)
2469interface IInternetProtocol : public IInternetProtocolRoot
2470{
2471 virtual HRESULT STDMETHODCALLTYPE Read(
2472 void *pv,
2473 ULONG cb,
2474 ULONG *pcbRead) = 0;
2475
2476 virtual HRESULT STDMETHODCALLTYPE Seek(
2477 LARGE_INTEGER dlibMove,
2478 DWORD dwOrigin,
2479 ULARGE_INTEGER *plibNewPosition) = 0;
2480
2481 virtual HRESULT STDMETHODCALLTYPE LockRequest(
2482 DWORD dwOptions) = 0;
2483
2484 virtual HRESULT STDMETHODCALLTYPE UnlockRequest(
2485 ) = 0;
2486
2487};
2488#else
2489typedef struct IInternetProtocolVtbl {
2490 BEGIN_INTERFACE
2491
2492 /*** IUnknown methods ***/
2493 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2494 IInternetProtocol* This,
2495 REFIID riid,
2496 void **ppvObject);
2497
2498 ULONG (STDMETHODCALLTYPE *AddRef)(
2499 IInternetProtocol* This);
2500
2501 ULONG (STDMETHODCALLTYPE *Release)(
2502 IInternetProtocol* This);
2503
2504 /*** IInternetProtocolRoot methods ***/
2505 HRESULT (STDMETHODCALLTYPE *Start)(
2506 IInternetProtocol* This,
2507 LPCWSTR szUrl,
2508 IInternetProtocolSink *pOIProtSink,
2509 IInternetBindInfo *pOIBindInfo,
2510 DWORD grfPI,
2511 HANDLE_PTR dwReserved);
2512
2513 HRESULT (STDMETHODCALLTYPE *Continue)(
2514 IInternetProtocol* This,
2515 PROTOCOLDATA *pProtocolData);
2516
2517 HRESULT (STDMETHODCALLTYPE *Abort)(
2518 IInternetProtocol* This,
2519 HRESULT hrReason,
2520 DWORD dwOptions);
2521
2522 HRESULT (STDMETHODCALLTYPE *Terminate)(
2523 IInternetProtocol* This,
2524 DWORD dwOptions);
2525
2526 HRESULT (STDMETHODCALLTYPE *Suspend)(
2527 IInternetProtocol* This);
2528
2529 HRESULT (STDMETHODCALLTYPE *Resume)(
2530 IInternetProtocol* This);
2531
2532 /*** IInternetProtocol methods ***/
2533 HRESULT (STDMETHODCALLTYPE *Read)(
2534 IInternetProtocol* This,
2535 void *pv,
2536 ULONG cb,
2537 ULONG *pcbRead);
2538
2539 HRESULT (STDMETHODCALLTYPE *Seek)(
2540 IInternetProtocol* This,
2541 LARGE_INTEGER dlibMove,
2542 DWORD dwOrigin,
2543 ULARGE_INTEGER *plibNewPosition);
2544
2545 HRESULT (STDMETHODCALLTYPE *LockRequest)(
2546 IInternetProtocol* This,
2547 DWORD dwOptions);
2548
2549 HRESULT (STDMETHODCALLTYPE *UnlockRequest)(
2550 IInternetProtocol* This);
2551
2552 END_INTERFACE
2553} IInternetProtocolVtbl;
2554interface IInternetProtocol {
2555 CONST_VTBL IInternetProtocolVtbl* lpVtbl;
2556};
2557
2558#ifdef COBJMACROS
2559/*** IUnknown methods ***/
2560#define IInternetProtocol_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2561#define IInternetProtocol_AddRef(This) (This)->lpVtbl->AddRef(This)
2562#define IInternetProtocol_Release(This) (This)->lpVtbl->Release(This)
2563/*** IInternetProtocolRoot methods ***/
2564#define IInternetProtocol_Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved)
2565#define IInternetProtocol_Continue(This,pProtocolData) (This)->lpVtbl->Continue(This,pProtocolData)
2566#define IInternetProtocol_Abort(This,hrReason,dwOptions) (This)->lpVtbl->Abort(This,hrReason,dwOptions)
2567#define IInternetProtocol_Terminate(This,dwOptions) (This)->lpVtbl->Terminate(This,dwOptions)
2568#define IInternetProtocol_Suspend(This) (This)->lpVtbl->Suspend(This)
2569#define IInternetProtocol_Resume(This) (This)->lpVtbl->Resume(This)
2570/*** IInternetProtocol methods ***/
2571#define IInternetProtocol_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
2572#define IInternetProtocol_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
2573#define IInternetProtocol_LockRequest(This,dwOptions) (This)->lpVtbl->LockRequest(This,dwOptions)
2574#define IInternetProtocol_UnlockRequest(This) (This)->lpVtbl->UnlockRequest(This)
2575#endif
2576
2577#endif
2578
2579HRESULT STDMETHODCALLTYPE IInternetProtocol_Read_Proxy(
2580 IInternetProtocol* This,
2581 void *pv,
2582 ULONG cb,
2583 ULONG *pcbRead);
2584void __RPC_STUB IInternetProtocol_Read_Stub(
2585 IRpcStubBuffer* This,
2586 IRpcChannelBuffer* pRpcChannelBuffer,
2587 PRPC_MESSAGE pRpcMessage,
2588 DWORD* pdwStubPhase);
2589HRESULT STDMETHODCALLTYPE IInternetProtocol_Seek_Proxy(
2590 IInternetProtocol* This,
2591 LARGE_INTEGER dlibMove,
2592 DWORD dwOrigin,
2593 ULARGE_INTEGER *plibNewPosition);
2594void __RPC_STUB IInternetProtocol_Seek_Stub(
2595 IRpcStubBuffer* This,
2596 IRpcChannelBuffer* pRpcChannelBuffer,
2597 PRPC_MESSAGE pRpcMessage,
2598 DWORD* pdwStubPhase);
2599HRESULT STDMETHODCALLTYPE IInternetProtocol_LockRequest_Proxy(
2600 IInternetProtocol* This,
2601 DWORD dwOptions);
2602void __RPC_STUB IInternetProtocol_LockRequest_Stub(
2603 IRpcStubBuffer* This,
2604 IRpcChannelBuffer* pRpcChannelBuffer,
2605 PRPC_MESSAGE pRpcMessage,
2606 DWORD* pdwStubPhase);
2607HRESULT STDMETHODCALLTYPE IInternetProtocol_UnlockRequest_Proxy(
2608 IInternetProtocol* This);
2609void __RPC_STUB IInternetProtocol_UnlockRequest_Stub(
2610 IRpcStubBuffer* This,
2611 IRpcChannelBuffer* pRpcChannelBuffer,
2612 PRPC_MESSAGE pRpcMessage,
2613 DWORD* pdwStubPhase);
2614
2615#endif /* __IInternetProtocol_INTERFACE_DEFINED__ */
2616
2617/*****************************************************************************
2618 * IInternetProtocolInfo interface
2619 */
2620#ifndef __IInternetProtocolInfo_INTERFACE_DEFINED__
2621#define __IInternetProtocolInfo_INTERFACE_DEFINED__
2622
2623typedef IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;
2624typedef enum _tagPARSEACTION {
2625 PARSE_CANONICALIZE = 1,
2626 PARSE_FRIENDLY = 2,
2627 PARSE_SECURITY_URL = 3,
2628 PARSE_ROOTDOCUMENT = 4,
2629 PARSE_DOCUMENT = 5,
2630 PARSE_ANCHOR = 6,
2631 PARSE_ENCODE = 7,
2632 PARSE_DECODE = 8,
2633 PARSE_PATH_FROM_URL = 9,
2634 PARSE_URL_FROM_PATH = 10,
2635 PARSE_MIME = 11,
2636 PARSE_SERVER = 12,
2637 PARSE_SCHEMA = 13,
2638 PARSE_SITE = 14,
2639 PARSE_DOMAIN = 15,
2640 PARSE_LOCATION = 16,
2641 PARSE_SECURITY_DOMAIN = 17,
2642 PARSE_ESCAPE = 18,
2643 PARSE_UNESCAPE = 19
2644} PARSEACTION;
2645typedef enum _tagPSUACTION {
2646 PSU_DEFAULT = 1,
2647 PSU_SECURITY_URL_ONLY = 2
2648} PSUACTION;
2649typedef enum _tagQUERYOPTION {
2650 QUERY_EXPIRATION_DATE = 1,
2651 QUERY_TIME_OF_LAST_CHANGE = 2,
2652 QUERY_CONTENT_ENCODING = 3,
2653 QUERY_CONTENT_TYPE = 4,
2654 QUERY_REFRESH = 5,
2655 QUERY_RECOMBINE = 6,
2656 QUERY_CAN_NAVIGATE = 7,
2657 QUERY_USES_NETWORK = 8,
2658 QUERY_IS_CACHED = 9,
2659 QUERY_IS_INSTALLEDENTRY = 10,
2660 QUERY_IS_CACHED_OR_MAPPED = 11,
2661 QUERY_USES_CACHE = 12,
2662 QUERY_IS_SECURE = 13,
2663 QUERY_IS_SAFE = 14,
2664 QUERY_USES_HISTORYFOLDER = 15
2665} QUERYOPTION;
2666DEFINE_GUID(IID_IInternetProtocolInfo, 0x79eac9ec, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2667#if defined(__cplusplus) && !defined(CINTERFACE)
2668interface IInternetProtocolInfo : public IUnknown
2669{
2670 virtual HRESULT STDMETHODCALLTYPE ParseUrl(
2671 LPCWSTR pwzUrl,
2672 PARSEACTION ParseAction,
2673 DWORD dwParseFlags,
2674 LPWSTR pwzResult,
2675 DWORD cchResult,
2676 DWORD *pcchResult,
2677 DWORD dwReserved) = 0;
2678
2679 virtual HRESULT STDMETHODCALLTYPE CombineUrl(
2680 LPCWSTR pwzBaseUrl,
2681 LPCWSTR pwzRelativeUrl,
2682 DWORD dwCombineFlags,
2683 LPWSTR pwzResult,
2684 DWORD cchResult,
2685 DWORD *pcchResult,
2686 DWORD dwReserved) = 0;
2687
2688 virtual HRESULT STDMETHODCALLTYPE CompareUrl(
2689 LPCWSTR pwzUrl1,
2690 LPCWSTR pwzUrl2,
2691 DWORD dwCompareFlags) = 0;
2692
2693 virtual HRESULT STDMETHODCALLTYPE QueryInfo(
2694 LPCWSTR pwzUrl,
2695 QUERYOPTION OueryOption,
2696 DWORD dwQueryFlags,
2697 LPVOID pBuffer,
2698 DWORD cbBuffer,
2699 DWORD *pcbBuf,
2700 DWORD dwReserved) = 0;
2701
2702};
2703#else
2704typedef struct IInternetProtocolInfoVtbl {
2705 BEGIN_INTERFACE
2706
2707 /*** IUnknown methods ***/
2708 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2709 IInternetProtocolInfo* This,
2710 REFIID riid,
2711 void **ppvObject);
2712
2713 ULONG (STDMETHODCALLTYPE *AddRef)(
2714 IInternetProtocolInfo* This);
2715
2716 ULONG (STDMETHODCALLTYPE *Release)(
2717 IInternetProtocolInfo* This);
2718
2719 /*** IInternetProtocolInfo methods ***/
2720 HRESULT (STDMETHODCALLTYPE *ParseUrl)(
2721 IInternetProtocolInfo* This,
2722 LPCWSTR pwzUrl,
2723 PARSEACTION ParseAction,
2724 DWORD dwParseFlags,
2725 LPWSTR pwzResult,
2726 DWORD cchResult,
2727 DWORD *pcchResult,
2728 DWORD dwReserved);
2729
2730 HRESULT (STDMETHODCALLTYPE *CombineUrl)(
2731 IInternetProtocolInfo* This,
2732 LPCWSTR pwzBaseUrl,
2733 LPCWSTR pwzRelativeUrl,
2734 DWORD dwCombineFlags,
2735 LPWSTR pwzResult,
2736 DWORD cchResult,
2737 DWORD *pcchResult,
2738 DWORD dwReserved);
2739
2740 HRESULT (STDMETHODCALLTYPE *CompareUrl)(
2741 IInternetProtocolInfo* This,
2742 LPCWSTR pwzUrl1,
2743 LPCWSTR pwzUrl2,
2744 DWORD dwCompareFlags);
2745
2746 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
2747 IInternetProtocolInfo* This,
2748 LPCWSTR pwzUrl,
2749 QUERYOPTION OueryOption,
2750 DWORD dwQueryFlags,
2751 LPVOID pBuffer,
2752 DWORD cbBuffer,
2753 DWORD *pcbBuf,
2754 DWORD dwReserved);
2755
2756 END_INTERFACE
2757} IInternetProtocolInfoVtbl;
2758interface IInternetProtocolInfo {
2759 CONST_VTBL IInternetProtocolInfoVtbl* lpVtbl;
2760};
2761
2762#ifdef COBJMACROS
2763/*** IUnknown methods ***/
2764#define IInternetProtocolInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2765#define IInternetProtocolInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
2766#define IInternetProtocolInfo_Release(This) (This)->lpVtbl->Release(This)
2767/*** IInternetProtocolInfo methods ***/
2768#define IInternetProtocolInfo_ParseUrl(This,pwzUrl,ParseAction,dwParseFlags,pwzResult,cchResult,pcchResult,dwReserved) (This)->lpVtbl->ParseUrl(This,pwzUrl,ParseAction,dwParseFlags,pwzResult,cchResult,pcchResult,dwReserved)
2769#define IInternetProtocolInfo_CombineUrl(This,pwzBaseUrl,pwzRelativeUrl,dwCombineFlags,pwzResult,cchResult,pcchResult,dwReserved) (This)->lpVtbl->CombineUrl(This,pwzBaseUrl,pwzRelativeUrl,dwCombineFlags,pwzResult,cchResult,pcchResult,dwReserved)
2770#define IInternetProtocolInfo_CompareUrl(This,pwzUrl1,pwzUrl2,dwCompareFlags) (This)->lpVtbl->CompareUrl(This,pwzUrl1,pwzUrl2,dwCompareFlags)
2771#define IInternetProtocolInfo_QueryInfo(This,pwzUrl,OueryOption,dwQueryFlags,pBuffer,cbBuffer,pcbBuf,dwReserved) (This)->lpVtbl->QueryInfo(This,pwzUrl,OueryOption,dwQueryFlags,pBuffer,cbBuffer,pcbBuf,dwReserved)
2772#endif
2773
2774#endif
2775
2776HRESULT STDMETHODCALLTYPE IInternetProtocolInfo_ParseUrl_Proxy(
2777 IInternetProtocolInfo* This,
2778 LPCWSTR pwzUrl,
2779 PARSEACTION ParseAction,
2780 DWORD dwParseFlags,
2781 LPWSTR pwzResult,
2782 DWORD cchResult,
2783 DWORD *pcchResult,
2784 DWORD dwReserved);
2785void __RPC_STUB IInternetProtocolInfo_ParseUrl_Stub(
2786 IRpcStubBuffer* This,
2787 IRpcChannelBuffer* pRpcChannelBuffer,
2788 PRPC_MESSAGE pRpcMessage,
2789 DWORD* pdwStubPhase);
2790HRESULT STDMETHODCALLTYPE IInternetProtocolInfo_CombineUrl_Proxy(
2791 IInternetProtocolInfo* This,
2792 LPCWSTR pwzBaseUrl,
2793 LPCWSTR pwzRelativeUrl,
2794 DWORD dwCombineFlags,
2795 LPWSTR pwzResult,
2796 DWORD cchResult,
2797 DWORD *pcchResult,
2798 DWORD dwReserved);
2799void __RPC_STUB IInternetProtocolInfo_CombineUrl_Stub(
2800 IRpcStubBuffer* This,
2801 IRpcChannelBuffer* pRpcChannelBuffer,
2802 PRPC_MESSAGE pRpcMessage,
2803 DWORD* pdwStubPhase);
2804HRESULT STDMETHODCALLTYPE IInternetProtocolInfo_CompareUrl_Proxy(
2805 IInternetProtocolInfo* This,
2806 LPCWSTR pwzUrl1,
2807 LPCWSTR pwzUrl2,
2808 DWORD dwCompareFlags);
2809void __RPC_STUB IInternetProtocolInfo_CompareUrl_Stub(
2810 IRpcStubBuffer* This,
2811 IRpcChannelBuffer* pRpcChannelBuffer,
2812 PRPC_MESSAGE pRpcMessage,
2813 DWORD* pdwStubPhase);
2814HRESULT STDMETHODCALLTYPE IInternetProtocolInfo_QueryInfo_Proxy(
2815 IInternetProtocolInfo* This,
2816 LPCWSTR pwzUrl,
2817 QUERYOPTION OueryOption,
2818 DWORD dwQueryFlags,
2819 LPVOID pBuffer,
2820 DWORD cbBuffer,
2821 DWORD *pcbBuf,
2822 DWORD dwReserved);
2823void __RPC_STUB IInternetProtocolInfo_QueryInfo_Stub(
2824 IRpcStubBuffer* This,
2825 IRpcChannelBuffer* pRpcChannelBuffer,
2826 PRPC_MESSAGE pRpcMessage,
2827 DWORD* pdwStubPhase);
2828
2829#endif /* __IInternetProtocolInfo_INTERFACE_DEFINED__ */
2830
2831/*****************************************************************************
2832 * IInternetSession interface
2833 */
2834#ifndef __IInternetSession_INTERFACE_DEFINED__
2835#define __IInternetSession_INTERFACE_DEFINED__
2836
2837typedef IInternetSession *LPIINTERNETSESSION;
2838typedef enum _tagOIBDG_FLAGS {
2839 OIBDG_APARTMENTTHREADED = 0x100,
2840 OIBDG_DATAONLY = 0x1000
2841} OIBDG_FLAGS;
2842DEFINE_GUID(IID_IInternetSession, 0x79eac9e7, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2843#if defined(__cplusplus) && !defined(CINTERFACE)
2844interface IInternetSession : public IUnknown
2845{
2846 virtual HRESULT STDMETHODCALLTYPE RegisterNameSpace(
2847 IClassFactory *pCF,
2848 REFCLSID rclsid,
2849 LPCWSTR pwzProtocol,
2850 ULONG cPatterns,
2851 const LPCWSTR *ppwzPatterns,
2852 DWORD dwReserved) = 0;
2853
2854 virtual HRESULT STDMETHODCALLTYPE UnregisterNameSpace(
2855 IClassFactory *pCF,
2856 LPCWSTR pszProtocol) = 0;
2857
2858 virtual HRESULT STDMETHODCALLTYPE RegisterMimeFilter(
2859 IClassFactory *pCF,
2860 REFCLSID rclsid,
2861 LPCWSTR pwzType) = 0;
2862
2863 virtual HRESULT STDMETHODCALLTYPE UnregisterMimeFilter(
2864 IClassFactory *pCF,
2865 LPCWSTR pwzType) = 0;
2866
2867 virtual HRESULT STDMETHODCALLTYPE CreateBinding(
2868 LPBC pBC,
2869 LPCWSTR szUrl,
2870 IUnknown *pUnkOuter,
2871 IUnknown **ppUnk,
2872 IInternetProtocol **ppOInetProt,
2873 DWORD dwOption) = 0;
2874
2875 virtual HRESULT STDMETHODCALLTYPE SetSessionOption(
2876 DWORD dwOption,
2877 LPVOID pBuffer,
2878 DWORD dwBufferLength,
2879 DWORD dwReserved) = 0;
2880
2881};
2882#else
2883typedef struct IInternetSessionVtbl {
2884 BEGIN_INTERFACE
2885
2886 /*** IUnknown methods ***/
2887 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2888 IInternetSession* This,
2889 REFIID riid,
2890 void **ppvObject);
2891
2892 ULONG (STDMETHODCALLTYPE *AddRef)(
2893 IInternetSession* This);
2894
2895 ULONG (STDMETHODCALLTYPE *Release)(
2896 IInternetSession* This);
2897
2898 /*** IInternetSession methods ***/
2899 HRESULT (STDMETHODCALLTYPE *RegisterNameSpace)(
2900 IInternetSession* This,
2901 IClassFactory *pCF,
2902 REFCLSID rclsid,
2903 LPCWSTR pwzProtocol,
2904 ULONG cPatterns,
2905 const LPCWSTR *ppwzPatterns,
2906 DWORD dwReserved);
2907
2908 HRESULT (STDMETHODCALLTYPE *UnregisterNameSpace)(
2909 IInternetSession* This,
2910 IClassFactory *pCF,
2911 LPCWSTR pszProtocol);
2912
2913 HRESULT (STDMETHODCALLTYPE *RegisterMimeFilter)(
2914 IInternetSession* This,
2915 IClassFactory *pCF,
2916 REFCLSID rclsid,
2917 LPCWSTR pwzType);
2918
2919 HRESULT (STDMETHODCALLTYPE *UnregisterMimeFilter)(
2920 IInternetSession* This,
2921 IClassFactory *pCF,
2922 LPCWSTR pwzType);
2923
2924 HRESULT (STDMETHODCALLTYPE *CreateBinding)(
2925 IInternetSession* This,
2926 LPBC pBC,
2927 LPCWSTR szUrl,
2928 IUnknown *pUnkOuter,
2929 IUnknown **ppUnk,
2930 IInternetProtocol **ppOInetProt,
2931 DWORD dwOption);
2932
2933 HRESULT (STDMETHODCALLTYPE *SetSessionOption)(
2934 IInternetSession* This,
2935 DWORD dwOption,
2936 LPVOID pBuffer,
2937 DWORD dwBufferLength,
2938 DWORD dwReserved);
2939
2940 END_INTERFACE
2941} IInternetSessionVtbl;
2942interface IInternetSession {
2943 CONST_VTBL IInternetSessionVtbl* lpVtbl;
2944};
2945
2946#ifdef COBJMACROS
2947/*** IUnknown methods ***/
2948#define IInternetSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2949#define IInternetSession_AddRef(This) (This)->lpVtbl->AddRef(This)
2950#define IInternetSession_Release(This) (This)->lpVtbl->Release(This)
2951/*** IInternetSession methods ***/
2952#define IInternetSession_RegisterNameSpace(This,pCF,rclsid,pwzProtocol,cPatterns,ppwzPatterns,dwReserved) (This)->lpVtbl->RegisterNameSpace(This,pCF,rclsid,pwzProtocol,cPatterns,ppwzPatterns,dwReserved)
2953#define IInternetSession_UnregisterNameSpace(This,pCF,pszProtocol) (This)->lpVtbl->UnregisterNameSpace(This,pCF,pszProtocol)
2954#define IInternetSession_RegisterMimeFilter(This,pCF,rclsid,pwzType) (This)->lpVtbl->RegisterMimeFilter(This,pCF,rclsid,pwzType)
2955#define IInternetSession_UnregisterMimeFilter(This,pCF,pwzType) (This)->lpVtbl->UnregisterMimeFilter(This,pCF,pwzType)
2956#define IInternetSession_CreateBinding(This,pBC,szUrl,pUnkOuter,ppUnk,ppOInetProt,dwOption) (This)->lpVtbl->CreateBinding(This,pBC,szUrl,pUnkOuter,ppUnk,ppOInetProt,dwOption)
2957#define IInternetSession_SetSessionOption(This,dwOption,pBuffer,dwBufferLength,dwReserved) (This)->lpVtbl->SetSessionOption(This,dwOption,pBuffer,dwBufferLength,dwReserved)
2958#endif
2959
2960#endif
2961
2962HRESULT STDMETHODCALLTYPE IInternetSession_RegisterNameSpace_Proxy(
2963 IInternetSession* This,
2964 IClassFactory *pCF,
2965 REFCLSID rclsid,
2966 LPCWSTR pwzProtocol,
2967 ULONG cPatterns,
2968 const LPCWSTR *ppwzPatterns,
2969 DWORD dwReserved);
2970void __RPC_STUB IInternetSession_RegisterNameSpace_Stub(
2971 IRpcStubBuffer* This,
2972 IRpcChannelBuffer* pRpcChannelBuffer,
2973 PRPC_MESSAGE pRpcMessage,
2974 DWORD* pdwStubPhase);
2975HRESULT STDMETHODCALLTYPE IInternetSession_UnregisterNameSpace_Proxy(
2976 IInternetSession* This,
2977 IClassFactory *pCF,
2978 LPCWSTR pszProtocol);
2979void __RPC_STUB IInternetSession_UnregisterNameSpace_Stub(
2980 IRpcStubBuffer* This,
2981 IRpcChannelBuffer* pRpcChannelBuffer,
2982 PRPC_MESSAGE pRpcMessage,
2983 DWORD* pdwStubPhase);
2984HRESULT STDMETHODCALLTYPE IInternetSession_RegisterMimeFilter_Proxy(
2985 IInternetSession* This,
2986 IClassFactory *pCF,
2987 REFCLSID rclsid,
2988 LPCWSTR pwzType);
2989void __RPC_STUB IInternetSession_RegisterMimeFilter_Stub(
2990 IRpcStubBuffer* This,
2991 IRpcChannelBuffer* pRpcChannelBuffer,
2992 PRPC_MESSAGE pRpcMessage,
2993 DWORD* pdwStubPhase);
2994HRESULT STDMETHODCALLTYPE IInternetSession_UnregisterMimeFilter_Proxy(
2995 IInternetSession* This,
2996 IClassFactory *pCF,
2997 LPCWSTR pwzType);
2998void __RPC_STUB IInternetSession_UnregisterMimeFilter_Stub(
2999 IRpcStubBuffer* This,
3000 IRpcChannelBuffer* pRpcChannelBuffer,
3001 PRPC_MESSAGE pRpcMessage,
3002 DWORD* pdwStubPhase);
3003HRESULT STDMETHODCALLTYPE IInternetSession_CreateBinding_Proxy(
3004 IInternetSession* This,
3005 LPBC pBC,
3006 LPCWSTR szUrl,
3007 IUnknown *pUnkOuter,
3008 IUnknown **ppUnk,
3009 IInternetProtocol **ppOInetProt,
3010 DWORD dwOption);
3011void __RPC_STUB IInternetSession_CreateBinding_Stub(
3012 IRpcStubBuffer* This,
3013 IRpcChannelBuffer* pRpcChannelBuffer,
3014 PRPC_MESSAGE pRpcMessage,
3015 DWORD* pdwStubPhase);
3016HRESULT STDMETHODCALLTYPE IInternetSession_SetSessionOption_Proxy(
3017 IInternetSession* This,
3018 DWORD dwOption,
3019 LPVOID pBuffer,
3020 DWORD dwBufferLength,
3021 DWORD dwReserved);
3022void __RPC_STUB IInternetSession_SetSessionOption_Stub(
3023 IRpcStubBuffer* This,
3024 IRpcChannelBuffer* pRpcChannelBuffer,
3025 PRPC_MESSAGE pRpcMessage,
3026 DWORD* pdwStubPhase);
3027
3028#endif /* __IInternetSession_INTERFACE_DEFINED__ */
3029
3030/*****************************************************************************
3031 * IInternetSecurityMgrSite interface
3032 */
3033#ifndef __IInternetSecurityMgrSite_INTERFACE_DEFINED__
3034#define __IInternetSecurityMgrSite_INTERFACE_DEFINED__
3035
3036DEFINE_GUID(IID_IInternetSecurityMgrSite, 0x79eac9ed, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
3037#if defined(__cplusplus) && !defined(CINTERFACE)
3038interface IInternetSecurityMgrSite : public IUnknown
3039{
3040 virtual HRESULT STDMETHODCALLTYPE GetWindow(
3041 HWND *phwnd) = 0;
3042
3043 virtual HRESULT STDMETHODCALLTYPE EnableModeless(
3044 BOOL fEnable) = 0;
3045
3046};
3047#else
3048typedef struct IInternetSecurityMgrSiteVtbl {
3049 BEGIN_INTERFACE
3050
3051 /*** IUnknown methods ***/
3052 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3053 IInternetSecurityMgrSite* This,
3054 REFIID riid,
3055 void **ppvObject);
3056
3057 ULONG (STDMETHODCALLTYPE *AddRef)(
3058 IInternetSecurityMgrSite* This);
3059
3060 ULONG (STDMETHODCALLTYPE *Release)(
3061 IInternetSecurityMgrSite* This);
3062
3063 /*** IInternetSecurityMgrSite methods ***/
3064 HRESULT (STDMETHODCALLTYPE *GetWindow)(
3065 IInternetSecurityMgrSite* This,
3066 HWND *phwnd);
3067
3068 HRESULT (STDMETHODCALLTYPE *EnableModeless)(
3069 IInternetSecurityMgrSite* This,
3070 BOOL fEnable);
3071
3072 END_INTERFACE
3073} IInternetSecurityMgrSiteVtbl;
3074interface IInternetSecurityMgrSite {
3075 CONST_VTBL IInternetSecurityMgrSiteVtbl* lpVtbl;
3076};
3077
3078#ifdef COBJMACROS
3079/*** IUnknown methods ***/
3080#define IInternetSecurityMgrSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3081#define IInternetSecurityMgrSite_AddRef(This) (This)->lpVtbl->AddRef(This)
3082#define IInternetSecurityMgrSite_Release(This) (This)->lpVtbl->Release(This)
3083/*** IInternetSecurityMgrSite methods ***/
3084#define IInternetSecurityMgrSite_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd)
3085#define IInternetSecurityMgrSite_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable)
3086#endif
3087
3088#endif
3089
3090HRESULT STDMETHODCALLTYPE IInternetSecurityMgrSite_GetWindow_Proxy(
3091 IInternetSecurityMgrSite* This,
3092 HWND *phwnd);
3093void __RPC_STUB IInternetSecurityMgrSite_GetWindow_Stub(
3094 IRpcStubBuffer* This,
3095 IRpcChannelBuffer* pRpcChannelBuffer,
3096 PRPC_MESSAGE pRpcMessage,
3097 DWORD* pdwStubPhase);
3098HRESULT STDMETHODCALLTYPE IInternetSecurityMgrSite_EnableModeless_Proxy(
3099 IInternetSecurityMgrSite* This,
3100 BOOL fEnable);
3101void __RPC_STUB IInternetSecurityMgrSite_EnableModeless_Stub(
3102 IRpcStubBuffer* This,
3103 IRpcChannelBuffer* pRpcChannelBuffer,
3104 PRPC_MESSAGE pRpcMessage,
3105 DWORD* pdwStubPhase);
3106
3107#endif /* __IInternetSecurityMgrSite_INTERFACE_DEFINED__ */
3108
3109#define SID_SInternetSecurityManager IID_IInternetSecurityManager
3110/*****************************************************************************
3111 * IInternetSecurityManager interface
3112 */
3113#ifndef __IInternetSecurityManager_INTERFACE_DEFINED__
3114#define __IInternetSecurityManager_INTERFACE_DEFINED__
3115
3116#define MAX_SIZE_SECURITY_ID 512
3117typedef enum __WIDL_urlmon_generated_name_00000007 {
3118 PUAF_DEFAULT = 0x0,
3119 PUAF_NOUI = 0x1,
3120 PUAF_ISFILE = 0x2,
3121 PUAF_WARN_IF_DENIED = 0x4,
3122 PUAF_FORCEUI_FOREGROUND = 0x8,
3123 PUAF_CHECK_TIPS = 0x10
3124} PUAF;
3125typedef enum __WIDL_urlmon_generated_name_00000008 {
3126 SZM_CREATE = 0x0,
3127 SZM_DELETE = 0x1
3128} SZM_FLAGS;
3129DEFINE_GUID(IID_IInternetSecurityManager, 0x79eac9ee, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
3130#if defined(__cplusplus) && !defined(CINTERFACE)
3131interface IInternetSecurityManager : public IUnknown
3132{
3133 virtual HRESULT STDMETHODCALLTYPE SetSecuritySite(
3134 IInternetSecurityMgrSite *pSite) = 0;
3135
3136 virtual HRESULT STDMETHODCALLTYPE GetSecuritySite(
3137 IInternetSecurityMgrSite **ppSite) = 0;
3138
3139 virtual HRESULT STDMETHODCALLTYPE MapUrlToZone(
3140 LPCWSTR pwszUrl,
3141 DWORD *pdwZone,
3142 DWORD dwFlags) = 0;
3143
3144 virtual HRESULT STDMETHODCALLTYPE GetSecurityId(
3145 LPCWSTR pwszUrl,
3146 BYTE *pbSecurityId,
3147 DWORD *pcbSecurityId,
3148 DWORD_PTR dwReserved) = 0;
3149
3150 virtual HRESULT STDMETHODCALLTYPE ProcessUrlAction(
3151 LPCWSTR pwszUrl,
3152 DWORD dwAction,
3153 BYTE *pPolicy,
3154 DWORD cbPolicy,
3155 BYTE *pContext,
3156 DWORD cbContext,
3157 DWORD dwFlags,
3158 DWORD dwReserved) = 0;
3159
3160 virtual HRESULT STDMETHODCALLTYPE QueryCustomPolicy(
3161 LPCWSTR pwszUrl,
3162 REFGUID guidKey,
3163 BYTE **ppPolicy,
3164 DWORD *pcbPolicy,
3165 BYTE *pContext,
3166 DWORD cbContext,
3167 DWORD dwReserved) = 0;
3168
3169 virtual HRESULT STDMETHODCALLTYPE SetZoneMapping(
3170 DWORD dwZone,
3171 LPCWSTR lpszPattern,
3172 DWORD dwFlags) = 0;
3173
3174 virtual HRESULT STDMETHODCALLTYPE GetZoneMappings(
3175 DWORD dwZone,
3176 IEnumString **ppenumString,
3177 DWORD dwFlags) = 0;
3178
3179};
3180#else
3181typedef struct IInternetSecurityManagerVtbl {
3182 BEGIN_INTERFACE
3183
3184 /*** IUnknown methods ***/
3185 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3186 IInternetSecurityManager* This,
3187 REFIID riid,
3188 void **ppvObject);
3189
3190 ULONG (STDMETHODCALLTYPE *AddRef)(
3191 IInternetSecurityManager* This);
3192
3193 ULONG (STDMETHODCALLTYPE *Release)(
3194 IInternetSecurityManager* This);
3195
3196 /*** IInternetSecurityManager methods ***/
3197 HRESULT (STDMETHODCALLTYPE *SetSecuritySite)(
3198 IInternetSecurityManager* This,
3199 IInternetSecurityMgrSite *pSite);
3200
3201 HRESULT (STDMETHODCALLTYPE *GetSecuritySite)(
3202 IInternetSecurityManager* This,
3203 IInternetSecurityMgrSite **ppSite);
3204
3205 HRESULT (STDMETHODCALLTYPE *MapUrlToZone)(
3206 IInternetSecurityManager* This,
3207 LPCWSTR pwszUrl,
3208 DWORD *pdwZone,
3209 DWORD dwFlags);
3210
3211 HRESULT (STDMETHODCALLTYPE *GetSecurityId)(
3212 IInternetSecurityManager* This,
3213 LPCWSTR pwszUrl,
3214 BYTE *pbSecurityId,
3215 DWORD *pcbSecurityId,
3216 DWORD_PTR dwReserved);
3217
3218 HRESULT (STDMETHODCALLTYPE *ProcessUrlAction)(
3219 IInternetSecurityManager* This,
3220 LPCWSTR pwszUrl,
3221 DWORD dwAction,
3222 BYTE *pPolicy,
3223 DWORD cbPolicy,
3224 BYTE *pContext,
3225 DWORD cbContext,
3226 DWORD dwFlags,
3227 DWORD dwReserved);
3228
3229 HRESULT (STDMETHODCALLTYPE *QueryCustomPolicy)(
3230 IInternetSecurityManager* This,
3231 LPCWSTR pwszUrl,
3232 REFGUID guidKey,
3233 BYTE **ppPolicy,
3234 DWORD *pcbPolicy,
3235 BYTE *pContext,
3236 DWORD cbContext,
3237 DWORD dwReserved);
3238
3239 HRESULT (STDMETHODCALLTYPE *SetZoneMapping)(
3240 IInternetSecurityManager* This,
3241 DWORD dwZone,
3242 LPCWSTR lpszPattern,
3243 DWORD dwFlags);
3244
3245 HRESULT (STDMETHODCALLTYPE *GetZoneMappings)(
3246 IInternetSecurityManager* This,
3247 DWORD dwZone,
3248 IEnumString **ppenumString,
3249 DWORD dwFlags);
3250
3251 END_INTERFACE
3252} IInternetSecurityManagerVtbl;
3253interface IInternetSecurityManager {
3254 CONST_VTBL IInternetSecurityManagerVtbl* lpVtbl;
3255};
3256
3257#ifdef COBJMACROS
3258/*** IUnknown methods ***/
3259#define IInternetSecurityManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3260#define IInternetSecurityManager_AddRef(This) (This)->lpVtbl->AddRef(This)
3261#define IInternetSecurityManager_Release(This) (This)->lpVtbl->Release(This)
3262/*** IInternetSecurityManager methods ***/
3263#define IInternetSecurityManager_SetSecuritySite(This,pSite) (This)->lpVtbl->SetSecuritySite(This,pSite)
3264#define IInternetSecurityManager_GetSecuritySite(This,ppSite) (This)->lpVtbl->GetSecuritySite(This,ppSite)
3265#define IInternetSecurityManager_MapUrlToZone(This,pwszUrl,pdwZone,dwFlags) (This)->lpVtbl->MapUrlToZone(This,pwszUrl,pdwZone,dwFlags)
3266#define IInternetSecurityManager_GetSecurityId(This,pwszUrl,pbSecurityId,pcbSecurityId,dwReserved) (This)->lpVtbl->GetSecurityId(This,pwszUrl,pbSecurityId,pcbSecurityId,dwReserved)
3267#define IInternetSecurityManager_ProcessUrlAction(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved) (This)->lpVtbl->ProcessUrlAction(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved)
3268#define IInternetSecurityManager_QueryCustomPolicy(This,pwszUrl,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved) (This)->lpVtbl->QueryCustomPolicy(This,pwszUrl,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved)
3269#define IInternetSecurityManager_SetZoneMapping(This,dwZone,lpszPattern,dwFlags) (This)->lpVtbl->SetZoneMapping(This,dwZone,lpszPattern,dwFlags)
3270#define IInternetSecurityManager_GetZoneMappings(This,dwZone,ppenumString,dwFlags) (This)->lpVtbl->GetZoneMappings(This,dwZone,ppenumString,dwFlags)
3271#endif
3272
3273#endif
3274
3275HRESULT STDMETHODCALLTYPE IInternetSecurityManager_SetSecuritySite_Proxy(
3276 IInternetSecurityManager* This,
3277 IInternetSecurityMgrSite *pSite);
3278void __RPC_STUB IInternetSecurityManager_SetSecuritySite_Stub(
3279 IRpcStubBuffer* This,
3280 IRpcChannelBuffer* pRpcChannelBuffer,
3281 PRPC_MESSAGE pRpcMessage,
3282 DWORD* pdwStubPhase);
3283HRESULT STDMETHODCALLTYPE IInternetSecurityManager_GetSecuritySite_Proxy(
3284 IInternetSecurityManager* This,
3285 IInternetSecurityMgrSite **ppSite);
3286void __RPC_STUB IInternetSecurityManager_GetSecuritySite_Stub(
3287 IRpcStubBuffer* This,
3288 IRpcChannelBuffer* pRpcChannelBuffer,
3289 PRPC_MESSAGE pRpcMessage,
3290 DWORD* pdwStubPhase);
3291HRESULT STDMETHODCALLTYPE IInternetSecurityManager_MapUrlToZone_Proxy(
3292 IInternetSecurityManager* This,
3293 LPCWSTR pwszUrl,
3294 DWORD *pdwZone,
3295 DWORD dwFlags);
3296void __RPC_STUB IInternetSecurityManager_MapUrlToZone_Stub(
3297 IRpcStubBuffer* This,
3298 IRpcChannelBuffer* pRpcChannelBuffer,
3299 PRPC_MESSAGE pRpcMessage,
3300 DWORD* pdwStubPhase);
3301HRESULT STDMETHODCALLTYPE IInternetSecurityManager_GetSecurityId_Proxy(
3302 IInternetSecurityManager* This,
3303 LPCWSTR pwszUrl,
3304 BYTE *pbSecurityId,
3305 DWORD *pcbSecurityId,
3306 DWORD_PTR dwReserved);
3307void __RPC_STUB IInternetSecurityManager_GetSecurityId_Stub(
3308 IRpcStubBuffer* This,
3309 IRpcChannelBuffer* pRpcChannelBuffer,
3310 PRPC_MESSAGE pRpcMessage,
3311 DWORD* pdwStubPhase);
3312HRESULT STDMETHODCALLTYPE IInternetSecurityManager_ProcessUrlAction_Proxy(
3313 IInternetSecurityManager* This,
3314 LPCWSTR pwszUrl,
3315 DWORD dwAction,
3316 BYTE *pPolicy,
3317 DWORD cbPolicy,
3318 BYTE *pContext,
3319 DWORD cbContext,
3320 DWORD dwFlags,
3321 DWORD dwReserved);
3322void __RPC_STUB IInternetSecurityManager_ProcessUrlAction_Stub(
3323 IRpcStubBuffer* This,
3324 IRpcChannelBuffer* pRpcChannelBuffer,
3325 PRPC_MESSAGE pRpcMessage,
3326 DWORD* pdwStubPhase);
3327HRESULT STDMETHODCALLTYPE IInternetSecurityManager_QueryCustomPolicy_Proxy(
3328 IInternetSecurityManager* This,
3329 LPCWSTR pwszUrl,
3330 REFGUID guidKey,
3331 BYTE **ppPolicy,
3332 DWORD *pcbPolicy,
3333 BYTE *pContext,
3334 DWORD cbContext,
3335 DWORD dwReserved);
3336void __RPC_STUB IInternetSecurityManager_QueryCustomPolicy_Stub(
3337 IRpcStubBuffer* This,
3338 IRpcChannelBuffer* pRpcChannelBuffer,
3339 PRPC_MESSAGE pRpcMessage,
3340 DWORD* pdwStubPhase);
3341HRESULT STDMETHODCALLTYPE IInternetSecurityManager_SetZoneMapping_Proxy(
3342 IInternetSecurityManager* This,
3343 DWORD dwZone,
3344 LPCWSTR lpszPattern,
3345 DWORD dwFlags);
3346void __RPC_STUB IInternetSecurityManager_SetZoneMapping_Stub(
3347 IRpcStubBuffer* This,
3348 IRpcChannelBuffer* pRpcChannelBuffer,
3349 PRPC_MESSAGE pRpcMessage,
3350 DWORD* pdwStubPhase);
3351HRESULT STDMETHODCALLTYPE IInternetSecurityManager_GetZoneMappings_Proxy(
3352 IInternetSecurityManager* This,
3353 DWORD dwZone,
3354 IEnumString **ppenumString,
3355 DWORD dwFlags);
3356void __RPC_STUB IInternetSecurityManager_GetZoneMappings_Stub(
3357 IRpcStubBuffer* This,
3358 IRpcChannelBuffer* pRpcChannelBuffer,
3359 PRPC_MESSAGE pRpcMessage,
3360 DWORD* pdwStubPhase);
3361
3362#endif /* __IInternetSecurityManager_INTERFACE_DEFINED__ */
3363
3364#define SID_SInternetHostSecurityManager IID_IInternetHostSecurityManager
3365/*****************************************************************************
3366 * IInternetHostSecurityManager interface
3367 */
3368#ifndef __IInternetHostSecurityManager_INTERFACE_DEFINED__
3369#define __IInternetHostSecurityManager_INTERFACE_DEFINED__
3370
3371DEFINE_GUID(IID_IInternetHostSecurityManager, 0x3af280b6, 0xcb3f, 0x11d0, 0x89,0x1e, 0x00,0xc0,0x4f,0xb6,0xbf,0xc4);
3372#if defined(__cplusplus) && !defined(CINTERFACE)
3373interface IInternetHostSecurityManager : public IUnknown
3374{
3375 virtual HRESULT STDMETHODCALLTYPE GetSecurityId(
3376 BYTE *pbSecurityId,
3377 DWORD *pcbSecurityId,
3378 DWORD_PTR dwReserved) = 0;
3379
3380 virtual HRESULT STDMETHODCALLTYPE ProcessUrlAction(
3381 DWORD dwAction,
3382 BYTE *pPolicy,
3383 DWORD cbPolicy,
3384 BYTE *pContext,
3385 DWORD cbContext,
3386 DWORD dwFlags,
3387 DWORD dwReserved) = 0;
3388
3389 virtual HRESULT STDMETHODCALLTYPE QueryCustomPolicy(
3390 REFGUID guidKey,
3391 BYTE **ppPolicy,
3392 DWORD *pcbPolicy,
3393 BYTE *pContext,
3394 DWORD cbContext,
3395 DWORD dwReserved) = 0;
3396
3397};
3398#else
3399typedef struct IInternetHostSecurityManagerVtbl {
3400 BEGIN_INTERFACE
3401
3402 /*** IUnknown methods ***/
3403 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3404 IInternetHostSecurityManager* This,
3405 REFIID riid,
3406 void **ppvObject);
3407
3408 ULONG (STDMETHODCALLTYPE *AddRef)(
3409 IInternetHostSecurityManager* This);
3410
3411 ULONG (STDMETHODCALLTYPE *Release)(
3412 IInternetHostSecurityManager* This);
3413
3414 /*** IInternetHostSecurityManager methods ***/
3415 HRESULT (STDMETHODCALLTYPE *GetSecurityId)(
3416 IInternetHostSecurityManager* This,
3417 BYTE *pbSecurityId,
3418 DWORD *pcbSecurityId,
3419 DWORD_PTR dwReserved);
3420
3421 HRESULT (STDMETHODCALLTYPE *ProcessUrlAction)(
3422 IInternetHostSecurityManager* This,
3423 DWORD dwAction,
3424 BYTE *pPolicy,
3425 DWORD cbPolicy,
3426 BYTE *pContext,
3427 DWORD cbContext,
3428 DWORD dwFlags,
3429 DWORD dwReserved);
3430
3431 HRESULT (STDMETHODCALLTYPE *QueryCustomPolicy)(
3432 IInternetHostSecurityManager* This,
3433 REFGUID guidKey,
3434 BYTE **ppPolicy,
3435 DWORD *pcbPolicy,
3436 BYTE *pContext,
3437 DWORD cbContext,
3438 DWORD dwReserved);
3439
3440 END_INTERFACE
3441} IInternetHostSecurityManagerVtbl;
3442interface IInternetHostSecurityManager {
3443 CONST_VTBL IInternetHostSecurityManagerVtbl* lpVtbl;
3444};
3445
3446#ifdef COBJMACROS
3447/*** IUnknown methods ***/
3448#define IInternetHostSecurityManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3449#define IInternetHostSecurityManager_AddRef(This) (This)->lpVtbl->AddRef(This)
3450#define IInternetHostSecurityManager_Release(This) (This)->lpVtbl->Release(This)
3451/*** IInternetHostSecurityManager methods ***/
3452#define IInternetHostSecurityManager_GetSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved) (This)->lpVtbl->GetSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved)
3453#define IInternetHostSecurityManager_ProcessUrlAction(This,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved) (This)->lpVtbl->ProcessUrlAction(This,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved)
3454#define IInternetHostSecurityManager_QueryCustomPolicy(This,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved) (This)->lpVtbl->QueryCustomPolicy(This,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved)
3455#endif
3456
3457#endif
3458
3459HRESULT STDMETHODCALLTYPE IInternetHostSecurityManager_GetSecurityId_Proxy(
3460 IInternetHostSecurityManager* This,
3461 BYTE *pbSecurityId,
3462 DWORD *pcbSecurityId,
3463 DWORD_PTR dwReserved);
3464void __RPC_STUB IInternetHostSecurityManager_GetSecurityId_Stub(
3465 IRpcStubBuffer* This,
3466 IRpcChannelBuffer* pRpcChannelBuffer,
3467 PRPC_MESSAGE pRpcMessage,
3468 DWORD* pdwStubPhase);
3469HRESULT STDMETHODCALLTYPE IInternetHostSecurityManager_ProcessUrlAction_Proxy(
3470 IInternetHostSecurityManager* This,
3471 DWORD dwAction,
3472 BYTE *pPolicy,
3473 DWORD cbPolicy,
3474 BYTE *pContext,
3475 DWORD cbContext,
3476 DWORD dwFlags,
3477 DWORD dwReserved);
3478void __RPC_STUB IInternetHostSecurityManager_ProcessUrlAction_Stub(
3479 IRpcStubBuffer* This,
3480 IRpcChannelBuffer* pRpcChannelBuffer,
3481 PRPC_MESSAGE pRpcMessage,
3482 DWORD* pdwStubPhase);
3483HRESULT STDMETHODCALLTYPE IInternetHostSecurityManager_QueryCustomPolicy_Proxy(
3484 IInternetHostSecurityManager* This,
3485 REFGUID guidKey,
3486 BYTE **ppPolicy,
3487 DWORD *pcbPolicy,
3488 BYTE *pContext,
3489 DWORD cbContext,
3490 DWORD dwReserved);
3491void __RPC_STUB IInternetHostSecurityManager_QueryCustomPolicy_Stub(
3492 IRpcStubBuffer* This,
3493 IRpcChannelBuffer* pRpcChannelBuffer,
3494 PRPC_MESSAGE pRpcMessage,
3495 DWORD* pdwStubPhase);
3496
3497#endif /* __IInternetHostSecurityManager_INTERFACE_DEFINED__ */
3498
3499#define URLACTION_MIN 0x00001000
3500#define URLACTION_DOWNLOAD_MIN 0x00001000
3501#define URLACTION_DOWNLOAD_SIGNED_ACTIVEX 0x00001001
3502#define URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX 0x00001004
3503#define URLACTION_DOWNLOAD_CURR_MAX 0x00001004
3504#define URLACTION_DOWNLOAD_MAX 0x000011ff
3505#define URLACTION_ACTIVEX_MIN 0x00001200
3506#define URLACTION_ACTIVEX_RUN 0x00001200
3507#define URLPOLICY_ACTIVEX_CHECK_LIST 0x00010000
3508#define URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY 0x00001201
3509#define URLACTION_ACTIVEX_OVERRIDE_DATA_SAFETY 0x00001202
3510#define URLACTION_ACTIVEX_OVERRIDE_SCRIPT_SAFETY 0x00001203
3511#define URLACTION_SCRIPT_OVERRIDE_SAFETY 0x00001401
3512#define URLACTION_ACTIVEX_CONFIRM_NOOBJECTSAFETY 0x00001204
3513#define URLACTION_ACTIVEX_TREATASUNTRUSTED 0x00001205
3514#define URLACTION_ACTIVEX_CURR_MAX 0x00001205
3515#define URLACTION_ACTIVEX_MAX 0x000013ff
3516#define URLACTION_SCRIPT_MIN 0x00001400
3517#define URLACTION_SCRIPT_RUN 0x00001400
3518#define URLACTION_SCRIPT_JAVA_USE 0x00001402
3519#define URLACTION_SCRIPT_SAFE_ACTIVEX 0x00001405
3520#define URLACTION_CROSS_DOMAIN_DATA 0x00001406
3521#define URLACTION_SCRIPT_PASTE 0x00001407
3522#define URLACTION_SCRIPT_CURR_MAX 0x00001407
3523#define URLACTION_SCRIPT_MAX 0x000015ff
3524#define URLACTION_HTML_MIN 0x00001600
3525#define URLACTION_HTML_SUBMIT_FORMS 0x00001601
3526#define URLACTION_HTML_SUBMIT_FORMS_FROM 0x00001602
3527#define URLACTION_HTML_SUBMIT_FORMS_TO 0x00001603
3528#define URLACTION_HTML_FONT_DOWNLOAD 0x00001604
3529#define URLACTION_HTML_JAVA_RUN 0x00001605
3530#define URLACTION_HTML_USERDATA_SAVE 0x00001606
3531#define URLACTION_HTML_SUBFRAME_NAVIGATE 0x00001607
3532#define URLACTION_HTML_META_REFRESH 0x00001608
3533#define URLACTION_HTML_MIXED_CONTENT 0x00001609
3534#define URLACTION_HTML_MAX 0x000017ff
3535#define URLACTION_SHELL_MIN 0x00001800
3536#define URLACTION_SHELL_INSTALL_DTITEMS 0x00001800
3537#define URLACTION_SHELL_MOVE_OR_COPY 0x00001802
3538#define URLACTION_SHELL_FILE_DOWNLOAD 0x00001803
3539#define URLACTION_SHELL_VERB 0x00001804
3540#define URLACTION_SHELL_WEBVIEW_VERB 0x00001805
3541#define URLACTION_SHELL_CURR_MAX 0x00001805
3542#define URLACTION_SHELL_MAX 0x000019ff
3543#define URLACTION_NETWORK_MIN 0x00001a00
3544#define URLACTION_CREDENTIALS_USE 0x00001a00
3545#define URLACTION_AUTHENTICATE_CLIENT 0x00001a01
3546#define URLACTION_COOKIES 0x00001a02
3547#define URLACTION_COOKIES_SESSION 0x00001a03
3548#define URLACTION_CLIENT_CERT_PROMPT 0x00001a04
3549#define URLACTION_COOKIES_THIRD_PARTY 0x00001a05
3550#define URLACTION_COOKIES_SESSION_THIRD_PARTY 0x00001a06
3551#define URLACTION_COOKIES_ENABLED 0x00001a10
3552#define URLACTION_NETWORK_CURR_MAX 0x00001a10
3553#define URLACTION_NETWORK_MAX 0x00001bff
3554#define URLACTION_JAVA_MIN 0x00001c00
3555#define URLACTION_JAVA_PERMISSIONS 0x00001c00
3556#define URLPOLICY_JAVA_PROHIBIT 0x00000000
3557#define URLPOLICY_JAVA_HIGH 0x00010000
3558#define URLPOLICY_JAVA_MEDIUM 0x00020000
3559#define URLPOLICY_JAVA_LOW 0x00030000
3560#define URLPOLICY_JAVA_CUSTOM 0x00800000
3561#define URLACTION_JAVA_CURR_MAX 0x00001c00
3562#define URLACTION_JAVA_MAX 0x00001cff
3563#define URLACTION_INFODELIVERY_MIN 0x00001d00
3564#define URLACTION_INFODELIVERY_NO_ADDING_CHANNELS 0x00001d00
3565#define URLACTION_INFODELIVERY_NO_EDITING_CHANNELS 0x00001d01
3566#define URLACTION_INFODELIVERY_NO_REMOVING_CHANNELS 0x00001d02
3567#define URLACTION_INFODELIVERY_NO_ADDING_SUBSCRIPTIONS 0x00001d03
3568#define URLACTION_INFODELIVERY_NO_EDITING_SUBSCRIPTIONS 0x00001d04
3569#define URLACTION_INFODELIVERY_NO_REMOVING_SUBSCRIPTIONS 0x00001d05
3570#define URLACTION_INFODELIVERY_NO_CHANNEL_LOGGING 0x00001d06
3571#define URLACTION_INFODELIVERY_CURR_MAX 0x00001d06
3572#define URLACTION_INFODELIVERY_MAX 0x00001dff
3573#define URLACTION_CHANNEL_SOFTDIST_MIN 0x00001e00
3574#define URLACTION_CHANNEL_SOFTDIST_PERMISSIONS 0x00001e05
3575#define URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT 0x00010000
3576#define URLPOLICY_CHANNEL_SOFTDIST_PRECACHE 0x00020000
3577#define URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL 0x00030000
3578#define URLACTION_CHANNEL_SOFTDIST_MAX 0x00001eff
3579#define URLPOLICY_ALLOW 0x00
3580#define URLPOLICY_QUERY 0x01
3581#define URLPOLICY_DISALLOW 0x03
3582#define URLPOLICY_NOTIFY_ON_ALLOW 0x10
3583#define URLPOLICY_NOTIFY_ON_DISALLOW 0x20
3584#define URLPOLICY_LOG_ON_ALLOW 0x40
3585#define URLPOLICY_LOG_ON_DISALLOW 0x80
3586#define URLPOLICY_DONTCHECKDLGBOX 0x100
3587#define URLPOLICY_CREDENTIALS_SILENT_LOGON_OK 0x00000000
3588#define URLPOLICY_CREDENTIALS_MUST_PROMPT_USER 0x00010000
3589#define URLPOLICY_CREDENTIALS_CONDITIONAL_PROMPT 0x00020000
3590#define URLPOLICY_CREDENTIALS_ANONYMOUS_ONLY 0x00030000
3591#define URLPOLICY_AUTHENTICATE_CLEARTEXT_OK 0x00000000
3592#define URLPOLICY_AUTHENTICATE_CHALLENGE_RESPONSE 0x00010000
3593#define URLPOLICY_AUTHENTICATE_MUTUAL_ONLY 0x00030000
3594#define URLPOLICY_MASK_PERMISSIONS 0x0f
3595#define GetUrlPolicyPermissions(dw) (dw & URLPOLICY_MASK_PERMISSIONS)
3596#define SetUrlPolicyPermissions(dw,dw2) ((dw) = ((dw) & ~URLPOLICY_MASK_PERMISSIONS) | (dw2))
3597/*****************************************************************************
3598 * IInternetZoneManager interface
3599 */
3600#ifndef __IInternetZoneManager_INTERFACE_DEFINED__
3601#define __IInternetZoneManager_INTERFACE_DEFINED__
3602
3603typedef IInternetZoneManager *LPURLZONEMANAGER;
3604typedef enum tagURLZONE {
3605 URLZONE_PREDEFINED_MIN = 0,
3606 URLZONE_LOCAL_MACHINE = 0,
3607 URLZONE_INTRANET = 1,
3608 URLZONE_TRUSTED = 2,
3609 URLZONE_INTERNET = 3,
3610 URLZONE_UNTRUSTED = 4,
3611 URLZONE_PREDEFINED_MAX = 999,
3612 URLZONE_USER_MIN = 1000,
3613 URLZONE_USER_MAX = 10000
3614} URLZONE;
3615typedef enum tagURLTEMPLATE {
3616 URLTEMPLATE_CUSTOM = 0x0,
3617 URLTEMPLATE_PREDEFINED_MIN = 0x10000,
3618 URLTEMPLATE_LOW = 0x10000,
3619 URLTEMPLATE_MEDLOW = 0x10500,
3620 URLTEMPLATE_MEDIUM = 0x11000,
3621 URLTEMPLATE_MEDHIGH = 0x11500,
3622 URLTEMPLATE_HIGH = 0x12000,
3623 URLTEMPLATE_PREDEFINED_MAX = 0x20000
3624} URLTEMPLATE;
3625typedef enum __WIDL_urlmon_generated_name_00000009 {
3626 ZAFLAGS_CUSTOM_EDIT = 0x1,
3627 ZAFLAGS_ADD_SITES = 0x2,
3628 ZAFLAGS_REQUIRE_VERIFICATION = 0x4,
3629 ZAFLAGS_INCLUDE_PROXY_OVERRIDE = 0x8,
3630 ZAFLAGS_INCLUDE_INTRANET_SITES = 0x10,
3631 ZAFLAGS_NO_UI = 0x20,
3632 ZAFLAGS_SUPPORTS_VERIFICATION = 0x40,
3633 ZAFLAGS_UNC_AS_INTRANET = 0x80,
3634 ZAFLAGS_DETECT_INTRANET = 0x100,
3635 ZAFLAGS_USE_LOCKED_ZONES = 0x10000,
3636 ZAFLAGS_VERIFY_TEMPLATE_SETTINGS = 0x20000,
3637 ZAFLAGS_NO_CACHE = 0x40000
3638} ZAFLAGS;
3639enum {
3640 MAX_ZONE_PATH = 260,
3641 MAX_ZONE_DESCRIPTION = 200
3642};
3643
3644typedef struct _ZONEATTRIBUTES {
3645 ULONG cbSize;
3646 WCHAR szDisplayName[260];
3647 WCHAR szDescription[200];
3648 WCHAR szIconPath[260];
3649 DWORD dwTemplateMinLevel;
3650 DWORD dwTemplateRecommended;
3651 DWORD dwTemplateCurrentLevel;
3652 DWORD dwFlags;
3653} ZONEATTRIBUTES;
3654typedef struct _ZONEATTRIBUTES *LPZONEATTRIBUTES;
3655typedef enum _URLZONEREG {
3656 URLZONEREG_DEFAULT = 0,
3657 URLZONEREG_HKLM = 1,
3658 URLZONEREG_HKCU = 2
3659} URLZONEREG;
3660DEFINE_GUID(IID_IInternetZoneManager, 0x79eac9ef, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
3661#if defined(__cplusplus) && !defined(CINTERFACE)
3662interface IInternetZoneManager : public IUnknown
3663{
3664 virtual HRESULT STDMETHODCALLTYPE GetZoneAttributes(
3665 DWORD dwZone,
3666 ZONEATTRIBUTES *pZoneAttributes) = 0;
3667
3668 virtual HRESULT STDMETHODCALLTYPE SetZoneAttributes(
3669 DWORD dwZone,
3670 ZONEATTRIBUTES *pZoneAttributes) = 0;
3671
3672 virtual HRESULT STDMETHODCALLTYPE GetZoneCustomPolicy(
3673 DWORD dwZone,
3674 REFGUID guidKey,
3675 BYTE **ppPolicy,
3676 DWORD *pcbPolicy,
3677 URLZONEREG ulrZoneReg) = 0;
3678
3679 virtual HRESULT STDMETHODCALLTYPE SetZoneCustomPolicy(
3680 DWORD dwZone,
3681 REFGUID guidKey,
3682 BYTE *ppPolicy,
3683 DWORD pcbPolicy,
3684 URLZONEREG ulrZoneReg) = 0;
3685
3686 virtual HRESULT STDMETHODCALLTYPE GetZoneActionPolicy(
3687 DWORD dwZone,
3688 DWORD dwAction,
3689 BYTE *pPolicy,
3690 DWORD cbPolicy,
3691 URLZONEREG urlZoneReg) = 0;
3692
3693 virtual HRESULT STDMETHODCALLTYPE SetZoneActionPolicy(
3694 DWORD dwZone,
3695 DWORD dwAction,
3696 BYTE *pPolicy,
3697 DWORD cbPolicy,
3698 URLZONEREG urlZoneReg) = 0;
3699
3700 virtual HRESULT STDMETHODCALLTYPE PromptAction(
3701 DWORD dwAction,
3702 HWND hwndParent,
3703 LPCWSTR pwszUrl,
3704 LPCWSTR pwszText,
3705 DWORD dwPromptFlags) = 0;
3706
3707 virtual HRESULT STDMETHODCALLTYPE LogAction(
3708 DWORD dwAction,
3709 LPCWSTR pwszUrl,
3710 LPCWSTR pwszText,
3711 DWORD dwLogFlags) = 0;
3712
3713 virtual HRESULT STDMETHODCALLTYPE CreateZoneEnumerator(
3714 DWORD *pdwEnum,
3715 DWORD *pdwCount,
3716 DWORD dwFlags) = 0;
3717
3718 virtual HRESULT STDMETHODCALLTYPE GetZoneAt(
3719 DWORD dwEnum,
3720 DWORD dwIndex,
3721 DWORD *pdwZone) = 0;
3722
3723 virtual HRESULT STDMETHODCALLTYPE DestroyZoneEnumerator(
3724 DWORD dwEnum) = 0;
3725
3726 virtual HRESULT STDMETHODCALLTYPE CopyTemplatePoliciesToZone(
3727 DWORD dwTemplate,
3728 DWORD dwZone,
3729 DWORD dwReserved) = 0;
3730
3731};
3732#else
3733typedef struct IInternetZoneManagerVtbl {
3734 BEGIN_INTERFACE
3735
3736 /*** IUnknown methods ***/
3737 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3738 IInternetZoneManager* This,
3739 REFIID riid,
3740 void **ppvObject);
3741
3742 ULONG (STDMETHODCALLTYPE *AddRef)(
3743 IInternetZoneManager* This);
3744
3745 ULONG (STDMETHODCALLTYPE *Release)(
3746 IInternetZoneManager* This);
3747
3748 /*** IInternetZoneManager methods ***/
3749 HRESULT (STDMETHODCALLTYPE *GetZoneAttributes)(
3750 IInternetZoneManager* This,
3751 DWORD dwZone,
3752 ZONEATTRIBUTES *pZoneAttributes);
3753
3754 HRESULT (STDMETHODCALLTYPE *SetZoneAttributes)(
3755 IInternetZoneManager* This,
3756 DWORD dwZone,
3757 ZONEATTRIBUTES *pZoneAttributes);
3758
3759 HRESULT (STDMETHODCALLTYPE *GetZoneCustomPolicy)(
3760 IInternetZoneManager* This,
3761 DWORD dwZone,
3762 REFGUID guidKey,
3763 BYTE **ppPolicy,
3764 DWORD *pcbPolicy,
3765 URLZONEREG ulrZoneReg);
3766
3767 HRESULT (STDMETHODCALLTYPE *SetZoneCustomPolicy)(
3768 IInternetZoneManager* This,
3769 DWORD dwZone,
3770 REFGUID guidKey,
3771 BYTE *ppPolicy,
3772 DWORD pcbPolicy,
3773 URLZONEREG ulrZoneReg);
3774
3775 HRESULT (STDMETHODCALLTYPE *GetZoneActionPolicy)(
3776 IInternetZoneManager* This,
3777 DWORD dwZone,
3778 DWORD dwAction,
3779 BYTE *pPolicy,
3780 DWORD cbPolicy,
3781 URLZONEREG urlZoneReg);
3782
3783 HRESULT (STDMETHODCALLTYPE *SetZoneActionPolicy)(
3784 IInternetZoneManager* This,
3785 DWORD dwZone,
3786 DWORD dwAction,
3787 BYTE *pPolicy,
3788 DWORD cbPolicy,
3789 URLZONEREG urlZoneReg);
3790
3791 HRESULT (STDMETHODCALLTYPE *PromptAction)(
3792 IInternetZoneManager* This,
3793 DWORD dwAction,
3794 HWND hwndParent,
3795 LPCWSTR pwszUrl,
3796 LPCWSTR pwszText,
3797 DWORD dwPromptFlags);
3798
3799 HRESULT (STDMETHODCALLTYPE *LogAction)(
3800 IInternetZoneManager* This,
3801 DWORD dwAction,
3802 LPCWSTR pwszUrl,
3803 LPCWSTR pwszText,
3804 DWORD dwLogFlags);
3805
3806 HRESULT (STDMETHODCALLTYPE *CreateZoneEnumerator)(
3807 IInternetZoneManager* This,
3808 DWORD *pdwEnum,
3809 DWORD *pdwCount,
3810 DWORD dwFlags);
3811
3812 HRESULT (STDMETHODCALLTYPE *GetZoneAt)(
3813 IInternetZoneManager* This,
3814 DWORD dwEnum,
3815 DWORD dwIndex,
3816 DWORD *pdwZone);
3817
3818 HRESULT (STDMETHODCALLTYPE *DestroyZoneEnumerator)(
3819 IInternetZoneManager* This,
3820 DWORD dwEnum);
3821
3822 HRESULT (STDMETHODCALLTYPE *CopyTemplatePoliciesToZone)(
3823 IInternetZoneManager* This,
3824 DWORD dwTemplate,
3825 DWORD dwZone,
3826 DWORD dwReserved);
3827
3828 END_INTERFACE
3829} IInternetZoneManagerVtbl;
3830interface IInternetZoneManager {
3831 CONST_VTBL IInternetZoneManagerVtbl* lpVtbl;
3832};
3833
3834#ifdef COBJMACROS
3835/*** IUnknown methods ***/
3836#define IInternetZoneManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3837#define IInternetZoneManager_AddRef(This) (This)->lpVtbl->AddRef(This)
3838#define IInternetZoneManager_Release(This) (This)->lpVtbl->Release(This)
3839/*** IInternetZoneManager methods ***/
3840#define IInternetZoneManager_GetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->GetZoneAttributes(This,dwZone,pZoneAttributes)
3841#define IInternetZoneManager_SetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->SetZoneAttributes(This,dwZone,pZoneAttributes)
3842#define IInternetZoneManager_GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg) (This)->lpVtbl->GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg)
3843#define IInternetZoneManager_SetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg) (This)->lpVtbl->SetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg)
3844#define IInternetZoneManager_GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)
3845#define IInternetZoneManager_SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)
3846#define IInternetZoneManager_PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags) (This)->lpVtbl->PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags)
3847#define IInternetZoneManager_LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags) (This)->lpVtbl->LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags)
3848#define IInternetZoneManager_CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags) (This)->lpVtbl->CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags)
3849#define IInternetZoneManager_GetZoneAt(This,dwEnum,dwIndex,pdwZone) (This)->lpVtbl->GetZoneAt(This,dwEnum,dwIndex,pdwZone)
3850#define IInternetZoneManager_DestroyZoneEnumerator(This,dwEnum) (This)->lpVtbl->DestroyZoneEnumerator(This,dwEnum)
3851#define IInternetZoneManager_CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved) (This)->lpVtbl->CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved)
3852#endif
3853
3854#endif
3855
3856HRESULT STDMETHODCALLTYPE IInternetZoneManager_GetZoneAttributes_Proxy(
3857 IInternetZoneManager* This,
3858 DWORD dwZone,
3859 ZONEATTRIBUTES *pZoneAttributes);
3860void __RPC_STUB IInternetZoneManager_GetZoneAttributes_Stub(
3861 IRpcStubBuffer* This,
3862 IRpcChannelBuffer* pRpcChannelBuffer,
3863 PRPC_MESSAGE pRpcMessage,
3864 DWORD* pdwStubPhase);
3865HRESULT STDMETHODCALLTYPE IInternetZoneManager_SetZoneAttributes_Proxy(
3866 IInternetZoneManager* This,
3867 DWORD dwZone,
3868 ZONEATTRIBUTES *pZoneAttributes);
3869void __RPC_STUB IInternetZoneManager_SetZoneAttributes_Stub(
3870 IRpcStubBuffer* This,
3871 IRpcChannelBuffer* pRpcChannelBuffer,
3872 PRPC_MESSAGE pRpcMessage,
3873 DWORD* pdwStubPhase);
3874HRESULT STDMETHODCALLTYPE IInternetZoneManager_GetZoneCustomPolicy_Proxy(
3875 IInternetZoneManager* This,
3876 DWORD dwZone,
3877 REFGUID guidKey,
3878 BYTE **ppPolicy,
3879 DWORD *pcbPolicy,
3880 URLZONEREG ulrZoneReg);
3881void __RPC_STUB IInternetZoneManager_GetZoneCustomPolicy_Stub(
3882 IRpcStubBuffer* This,
3883 IRpcChannelBuffer* pRpcChannelBuffer,
3884 PRPC_MESSAGE pRpcMessage,
3885 DWORD* pdwStubPhase);
3886HRESULT STDMETHODCALLTYPE IInternetZoneManager_SetZoneCustomPolicy_Proxy(
3887 IInternetZoneManager* This,
3888 DWORD dwZone,
3889 REFGUID guidKey,
3890 BYTE *ppPolicy,
3891 DWORD pcbPolicy,
3892 URLZONEREG ulrZoneReg);
3893void __RPC_STUB IInternetZoneManager_SetZoneCustomPolicy_Stub(
3894 IRpcStubBuffer* This,
3895 IRpcChannelBuffer* pRpcChannelBuffer,
3896 PRPC_MESSAGE pRpcMessage,
3897 DWORD* pdwStubPhase);
3898HRESULT STDMETHODCALLTYPE IInternetZoneManager_GetZoneActionPolicy_Proxy(
3899 IInternetZoneManager* This,
3900 DWORD dwZone,
3901 DWORD dwAction,
3902 BYTE *pPolicy,
3903 DWORD cbPolicy,
3904 URLZONEREG urlZoneReg);
3905void __RPC_STUB IInternetZoneManager_GetZoneActionPolicy_Stub(
3906 IRpcStubBuffer* This,
3907 IRpcChannelBuffer* pRpcChannelBuffer,
3908 PRPC_MESSAGE pRpcMessage,
3909 DWORD* pdwStubPhase);
3910HRESULT STDMETHODCALLTYPE IInternetZoneManager_SetZoneActionPolicy_Proxy(
3911 IInternetZoneManager* This,
3912 DWORD dwZone,
3913 DWORD dwAction,
3914 BYTE *pPolicy,
3915 DWORD cbPolicy,
3916 URLZONEREG urlZoneReg);
3917void __RPC_STUB IInternetZoneManager_SetZoneActionPolicy_Stub(
3918 IRpcStubBuffer* This,
3919 IRpcChannelBuffer* pRpcChannelBuffer,
3920 PRPC_MESSAGE pRpcMessage,
3921 DWORD* pdwStubPhase);
3922HRESULT STDMETHODCALLTYPE IInternetZoneManager_PromptAction_Proxy(
3923 IInternetZoneManager* This,
3924 DWORD dwAction,
3925 HWND hwndParent,
3926 LPCWSTR pwszUrl,
3927 LPCWSTR pwszText,
3928 DWORD dwPromptFlags);
3929void __RPC_STUB IInternetZoneManager_PromptAction_Stub(
3930 IRpcStubBuffer* This,
3931 IRpcChannelBuffer* pRpcChannelBuffer,
3932 PRPC_MESSAGE pRpcMessage,
3933 DWORD* pdwStubPhase);
3934HRESULT STDMETHODCALLTYPE IInternetZoneManager_LogAction_Proxy(
3935 IInternetZoneManager* This,
3936 DWORD dwAction,
3937 LPCWSTR pwszUrl,
3938 LPCWSTR pwszText,
3939 DWORD dwLogFlags);
3940void __RPC_STUB IInternetZoneManager_LogAction_Stub(
3941 IRpcStubBuffer* This,
3942 IRpcChannelBuffer* pRpcChannelBuffer,
3943 PRPC_MESSAGE pRpcMessage,
3944 DWORD* pdwStubPhase);
3945HRESULT STDMETHODCALLTYPE IInternetZoneManager_CreateZoneEnumerator_Proxy(
3946 IInternetZoneManager* This,
3947 DWORD *pdwEnum,
3948 DWORD *pdwCount,
3949 DWORD dwFlags);
3950void __RPC_STUB IInternetZoneManager_CreateZoneEnumerator_Stub(
3951 IRpcStubBuffer* This,
3952 IRpcChannelBuffer* pRpcChannelBuffer,
3953 PRPC_MESSAGE pRpcMessage,
3954 DWORD* pdwStubPhase);
3955HRESULT STDMETHODCALLTYPE IInternetZoneManager_GetZoneAt_Proxy(
3956 IInternetZoneManager* This,
3957 DWORD dwEnum,
3958 DWORD dwIndex,
3959 DWORD *pdwZone);
3960void __RPC_STUB IInternetZoneManager_GetZoneAt_Stub(
3961 IRpcStubBuffer* This,
3962 IRpcChannelBuffer* pRpcChannelBuffer,
3963 PRPC_MESSAGE pRpcMessage,
3964 DWORD* pdwStubPhase);
3965HRESULT STDMETHODCALLTYPE IInternetZoneManager_DestroyZoneEnumerator_Proxy(
3966 IInternetZoneManager* This,
3967 DWORD dwEnum);
3968void __RPC_STUB IInternetZoneManager_DestroyZoneEnumerator_Stub(
3969 IRpcStubBuffer* This,
3970 IRpcChannelBuffer* pRpcChannelBuffer,
3971 PRPC_MESSAGE pRpcMessage,
3972 DWORD* pdwStubPhase);
3973HRESULT STDMETHODCALLTYPE IInternetZoneManager_CopyTemplatePoliciesToZone_Proxy(
3974 IInternetZoneManager* This,
3975 DWORD dwTemplate,
3976 DWORD dwZone,
3977 DWORD dwReserved);
3978void __RPC_STUB IInternetZoneManager_CopyTemplatePoliciesToZone_Stub(
3979 IRpcStubBuffer* This,
3980 IRpcChannelBuffer* pRpcChannelBuffer,
3981 PRPC_MESSAGE pRpcMessage,
3982 DWORD* pdwStubPhase);
3983
3984#endif /* __IInternetZoneManager_INTERFACE_DEFINED__ */
3985
3986/*****************************************************************************
3987 * IInternetZoneManagerEx interface
3988 */
3989#ifndef __IInternetZoneManagerEx_INTERFACE_DEFINED__
3990#define __IInternetZoneManagerEx_INTERFACE_DEFINED__
3991
3992DEFINE_GUID(IID_IInternetZoneManagerEx, 0xa4c23339, 0x8e06, 0x431e, 0x9b,0xf4, 0x7e,0x71,0x1c,0x08,0x56,0x48);
3993#if defined(__cplusplus) && !defined(CINTERFACE)
3994interface IInternetZoneManagerEx : public IInternetZoneManager
3995{
3996 virtual HRESULT STDMETHODCALLTYPE GetZoneActionPolicyEx(
3997 DWORD dwZone,
3998 DWORD dwAction,
3999 BYTE *pPolicy,
4000 DWORD cbPolicy,
4001 URLZONEREG urlZoneReg,
4002 DWORD dwFlags) = 0;
4003
4004 virtual HRESULT STDMETHODCALLTYPE SetZoneActionPolicyEx(
4005 DWORD dwZone,
4006 DWORD dwAction,
4007 BYTE *pPolicy,
4008 DWORD cbPolicy,
4009 URLZONEREG urlZoneReg,
4010 DWORD dwFlags) = 0;
4011
4012};
4013#else
4014typedef struct IInternetZoneManagerExVtbl {
4015 BEGIN_INTERFACE
4016
4017 /*** IUnknown methods ***/
4018 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4019 IInternetZoneManagerEx* This,
4020 REFIID riid,
4021 void **ppvObject);
4022
4023 ULONG (STDMETHODCALLTYPE *AddRef)(
4024 IInternetZoneManagerEx* This);
4025
4026 ULONG (STDMETHODCALLTYPE *Release)(
4027 IInternetZoneManagerEx* This);
4028
4029 /*** IInternetZoneManager methods ***/
4030 HRESULT (STDMETHODCALLTYPE *GetZoneAttributes)(
4031 IInternetZoneManagerEx* This,
4032 DWORD dwZone,
4033 ZONEATTRIBUTES *pZoneAttributes);
4034
4035 HRESULT (STDMETHODCALLTYPE *SetZoneAttributes)(
4036 IInternetZoneManagerEx* This,
4037 DWORD dwZone,
4038 ZONEATTRIBUTES *pZoneAttributes);
4039
4040 HRESULT (STDMETHODCALLTYPE *GetZoneCustomPolicy)(
4041 IInternetZoneManagerEx* This,
4042 DWORD dwZone,
4043 REFGUID guidKey,
4044 BYTE **ppPolicy,
4045 DWORD *pcbPolicy,
4046 URLZONEREG ulrZoneReg);
4047
4048 HRESULT (STDMETHODCALLTYPE *SetZoneCustomPolicy)(
4049 IInternetZoneManagerEx* This,
4050 DWORD dwZone,
4051 REFGUID guidKey,
4052 BYTE *ppPolicy,
4053 DWORD pcbPolicy,
4054 URLZONEREG ulrZoneReg);
4055
4056 HRESULT (STDMETHODCALLTYPE *GetZoneActionPolicy)(
4057 IInternetZoneManagerEx* This,
4058 DWORD dwZone,
4059 DWORD dwAction,
4060 BYTE *pPolicy,
4061 DWORD cbPolicy,
4062 URLZONEREG urlZoneReg);
4063
4064 HRESULT (STDMETHODCALLTYPE *SetZoneActionPolicy)(
4065 IInternetZoneManagerEx* This,
4066 DWORD dwZone,
4067 DWORD dwAction,
4068 BYTE *pPolicy,
4069 DWORD cbPolicy,
4070 URLZONEREG urlZoneReg);
4071
4072 HRESULT (STDMETHODCALLTYPE *PromptAction)(
4073 IInternetZoneManagerEx* This,
4074 DWORD dwAction,
4075 HWND hwndParent,
4076 LPCWSTR pwszUrl,
4077 LPCWSTR pwszText,
4078 DWORD dwPromptFlags);
4079
4080 HRESULT (STDMETHODCALLTYPE *LogAction)(
4081 IInternetZoneManagerEx* This,
4082 DWORD dwAction,
4083 LPCWSTR pwszUrl,
4084 LPCWSTR pwszText,
4085 DWORD dwLogFlags);
4086
4087 HRESULT (STDMETHODCALLTYPE *CreateZoneEnumerator)(
4088 IInternetZoneManagerEx* This,
4089 DWORD *pdwEnum,
4090 DWORD *pdwCount,
4091 DWORD dwFlags);
4092
4093 HRESULT (STDMETHODCALLTYPE *GetZoneAt)(
4094 IInternetZoneManagerEx* This,
4095 DWORD dwEnum,
4096 DWORD dwIndex,
4097 DWORD *pdwZone);
4098
4099 HRESULT (STDMETHODCALLTYPE *DestroyZoneEnumerator)(
4100 IInternetZoneManagerEx* This,
4101 DWORD dwEnum);
4102
4103 HRESULT (STDMETHODCALLTYPE *CopyTemplatePoliciesToZone)(
4104 IInternetZoneManagerEx* This,
4105 DWORD dwTemplate,
4106 DWORD dwZone,
4107 DWORD dwReserved);
4108
4109 /*** IInternetZoneManagerEx methods ***/
4110 HRESULT (STDMETHODCALLTYPE *GetZoneActionPolicyEx)(
4111 IInternetZoneManagerEx* This,
4112 DWORD dwZone,
4113 DWORD dwAction,
4114 BYTE *pPolicy,
4115 DWORD cbPolicy,
4116 URLZONEREG urlZoneReg,
4117 DWORD dwFlags);
4118
4119 HRESULT (STDMETHODCALLTYPE *SetZoneActionPolicyEx)(
4120 IInternetZoneManagerEx* This,
4121 DWORD dwZone,
4122 DWORD dwAction,
4123 BYTE *pPolicy,
4124 DWORD cbPolicy,
4125 URLZONEREG urlZoneReg,
4126 DWORD dwFlags);
4127
4128 END_INTERFACE
4129} IInternetZoneManagerExVtbl;
4130interface IInternetZoneManagerEx {
4131 CONST_VTBL IInternetZoneManagerExVtbl* lpVtbl;
4132};
4133
4134#ifdef COBJMACROS
4135/*** IUnknown methods ***/
4136#define IInternetZoneManagerEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4137#define IInternetZoneManagerEx_AddRef(This) (This)->lpVtbl->AddRef(This)
4138#define IInternetZoneManagerEx_Release(This) (This)->lpVtbl->Release(This)
4139/*** IInternetZoneManager methods ***/
4140#define IInternetZoneManagerEx_GetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->GetZoneAttributes(This,dwZone,pZoneAttributes)
4141#define IInternetZoneManagerEx_SetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->SetZoneAttributes(This,dwZone,pZoneAttributes)
4142#define IInternetZoneManagerEx_GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg) (This)->lpVtbl->GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg)
4143#define IInternetZoneManagerEx_SetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg) (This)->lpVtbl->SetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg)
4144#define IInternetZoneManagerEx_GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)
4145#define IInternetZoneManagerEx_SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)
4146#define IInternetZoneManagerEx_PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags) (This)->lpVtbl->PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags)
4147#define IInternetZoneManagerEx_LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags) (This)->lpVtbl->LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags)
4148#define IInternetZoneManagerEx_CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags) (This)->lpVtbl->CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags)
4149#define IInternetZoneManagerEx_GetZoneAt(This,dwEnum,dwIndex,pdwZone) (This)->lpVtbl->GetZoneAt(This,dwEnum,dwIndex,pdwZone)
4150#define IInternetZoneManagerEx_DestroyZoneEnumerator(This,dwEnum) (This)->lpVtbl->DestroyZoneEnumerator(This,dwEnum)
4151#define IInternetZoneManagerEx_CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved) (This)->lpVtbl->CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved)
4152/*** IInternetZoneManagerEx methods ***/
4153#define IInternetZoneManagerEx_GetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags) (This)->lpVtbl->GetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags)
4154#define IInternetZoneManagerEx_SetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags) (This)->lpVtbl->SetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags)
4155#endif
4156
4157#endif
4158
4159HRESULT STDMETHODCALLTYPE IInternetZoneManagerEx_GetZoneActionPolicyEx_Proxy(
4160 IInternetZoneManagerEx* This,
4161 DWORD dwZone,
4162 DWORD dwAction,
4163 BYTE *pPolicy,
4164 DWORD cbPolicy,
4165 URLZONEREG urlZoneReg,
4166 DWORD dwFlags);
4167void __RPC_STUB IInternetZoneManagerEx_GetZoneActionPolicyEx_Stub(
4168 IRpcStubBuffer* This,
4169 IRpcChannelBuffer* pRpcChannelBuffer,
4170 PRPC_MESSAGE pRpcMessage,
4171 DWORD* pdwStubPhase);
4172HRESULT STDMETHODCALLTYPE IInternetZoneManagerEx_SetZoneActionPolicyEx_Proxy(
4173 IInternetZoneManagerEx* This,
4174 DWORD dwZone,
4175 DWORD dwAction,
4176 BYTE *pPolicy,
4177 DWORD cbPolicy,
4178 URLZONEREG urlZoneReg,
4179 DWORD dwFlags);
4180void __RPC_STUB IInternetZoneManagerEx_SetZoneActionPolicyEx_Stub(
4181 IRpcStubBuffer* This,
4182 IRpcChannelBuffer* pRpcChannelBuffer,
4183 PRPC_MESSAGE pRpcMessage,
4184 DWORD* pdwStubPhase);
4185
4186#endif /* __IInternetZoneManagerEx_INTERFACE_DEFINED__ */
4187
4188#define SECURITY_IE_STATE_GREEN 0
4189#define SECURITY_IE_STATE_RED 1
4190/*****************************************************************************
4191 * IInternetZoneManagerEx2 interface
4192 */
4193#ifndef __IInternetZoneManagerEx2_INTERFACE_DEFINED__
4194#define __IInternetZoneManagerEx2_INTERFACE_DEFINED__
4195
4196DEFINE_GUID(IID_IInternetZoneManagerEx2, 0xedc17559, 0xdd5d, 0x4846, 0x8e,0xef, 0x8b,0xec,0xba,0x5a,0x4a,0xbf);
4197#if defined(__cplusplus) && !defined(CINTERFACE)
4198interface IInternetZoneManagerEx2 : public IInternetZoneManagerEx
4199{
4200 virtual HRESULT STDMETHODCALLTYPE GetZoneAttributesEx(
4201 DWORD dwZone,
4202 ZONEATTRIBUTES *pZoneAttributes,
4203 DWORD dwFlags) = 0;
4204
4205 virtual HRESULT STDMETHODCALLTYPE GetZoneSecurityState(
4206 DWORD dwZoneIndex,
4207 BOOL fRespectPolicy,
4208 LPDWORD pdwState,
4209 BOOL *pfPolicyEncountered) = 0;
4210
4211 virtual HRESULT STDMETHODCALLTYPE GetIESecurityState(
4212 BOOL fRespectPolicy,
4213 LPDWORD pdwState,
4214 BOOL *pfPolicyEncountered,
4215 BOOL fNoCache) = 0;
4216
4217 virtual HRESULT STDMETHODCALLTYPE FixInsecureSettings(
4218 ) = 0;
4219
4220};
4221#else
4222typedef struct IInternetZoneManagerEx2Vtbl {
4223 BEGIN_INTERFACE
4224
4225 /*** IUnknown methods ***/
4226 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4227 IInternetZoneManagerEx2* This,
4228 REFIID riid,
4229 void **ppvObject);
4230
4231 ULONG (STDMETHODCALLTYPE *AddRef)(
4232 IInternetZoneManagerEx2* This);
4233
4234 ULONG (STDMETHODCALLTYPE *Release)(
4235 IInternetZoneManagerEx2* This);
4236
4237 /*** IInternetZoneManager methods ***/
4238 HRESULT (STDMETHODCALLTYPE *GetZoneAttributes)(
4239 IInternetZoneManagerEx2* This,
4240 DWORD dwZone,
4241 ZONEATTRIBUTES *pZoneAttributes);
4242
4243 HRESULT (STDMETHODCALLTYPE *SetZoneAttributes)(
4244 IInternetZoneManagerEx2* This,
4245 DWORD dwZone,
4246 ZONEATTRIBUTES *pZoneAttributes);
4247
4248 HRESULT (STDMETHODCALLTYPE *GetZoneCustomPolicy)(
4249 IInternetZoneManagerEx2* This,
4250 DWORD dwZone,
4251 REFGUID guidKey,
4252 BYTE **ppPolicy,
4253 DWORD *pcbPolicy,
4254 URLZONEREG ulrZoneReg);
4255
4256 HRESULT (STDMETHODCALLTYPE *SetZoneCustomPolicy)(
4257 IInternetZoneManagerEx2* This,
4258 DWORD dwZone,
4259 REFGUID guidKey,
4260 BYTE *ppPolicy,
4261 DWORD pcbPolicy,
4262 URLZONEREG ulrZoneReg);
4263
4264 HRESULT (STDMETHODCALLTYPE *GetZoneActionPolicy)(
4265 IInternetZoneManagerEx2* This,
4266 DWORD dwZone,
4267 DWORD dwAction,
4268 BYTE *pPolicy,
4269 DWORD cbPolicy,
4270 URLZONEREG urlZoneReg);
4271
4272 HRESULT (STDMETHODCALLTYPE *SetZoneActionPolicy)(
4273 IInternetZoneManagerEx2* This,
4274 DWORD dwZone,
4275 DWORD dwAction,
4276 BYTE *pPolicy,
4277 DWORD cbPolicy,
4278 URLZONEREG urlZoneReg);
4279
4280 HRESULT (STDMETHODCALLTYPE *PromptAction)(
4281 IInternetZoneManagerEx2* This,
4282 DWORD dwAction,
4283 HWND hwndParent,
4284 LPCWSTR pwszUrl,
4285 LPCWSTR pwszText,
4286 DWORD dwPromptFlags);
4287
4288 HRESULT (STDMETHODCALLTYPE *LogAction)(
4289 IInternetZoneManagerEx2* This,
4290 DWORD dwAction,
4291 LPCWSTR pwszUrl,
4292 LPCWSTR pwszText,
4293 DWORD dwLogFlags);
4294
4295 HRESULT (STDMETHODCALLTYPE *CreateZoneEnumerator)(
4296 IInternetZoneManagerEx2* This,
4297 DWORD *pdwEnum,
4298 DWORD *pdwCount,
4299 DWORD dwFlags);
4300
4301 HRESULT (STDMETHODCALLTYPE *GetZoneAt)(
4302 IInternetZoneManagerEx2* This,
4303 DWORD dwEnum,
4304 DWORD dwIndex,
4305 DWORD *pdwZone);
4306
4307 HRESULT (STDMETHODCALLTYPE *DestroyZoneEnumerator)(
4308 IInternetZoneManagerEx2* This,
4309 DWORD dwEnum);
4310
4311 HRESULT (STDMETHODCALLTYPE *CopyTemplatePoliciesToZone)(
4312 IInternetZoneManagerEx2* This,
4313 DWORD dwTemplate,
4314 DWORD dwZone,
4315 DWORD dwReserved);
4316
4317 /*** IInternetZoneManagerEx methods ***/
4318 HRESULT (STDMETHODCALLTYPE *GetZoneActionPolicyEx)(
4319 IInternetZoneManagerEx2* This,
4320 DWORD dwZone,
4321 DWORD dwAction,
4322 BYTE *pPolicy,
4323 DWORD cbPolicy,
4324 URLZONEREG urlZoneReg,
4325 DWORD dwFlags);
4326
4327 HRESULT (STDMETHODCALLTYPE *SetZoneActionPolicyEx)(
4328 IInternetZoneManagerEx2* This,
4329 DWORD dwZone,
4330 DWORD dwAction,
4331 BYTE *pPolicy,
4332 DWORD cbPolicy,
4333 URLZONEREG urlZoneReg,
4334 DWORD dwFlags);
4335
4336 /*** IInternetZoneManagerEx2 methods ***/
4337 HRESULT (STDMETHODCALLTYPE *GetZoneAttributesEx)(
4338 IInternetZoneManagerEx2* This,
4339 DWORD dwZone,
4340 ZONEATTRIBUTES *pZoneAttributes,
4341 DWORD dwFlags);
4342
4343 HRESULT (STDMETHODCALLTYPE *GetZoneSecurityState)(
4344 IInternetZoneManagerEx2* This,
4345 DWORD dwZoneIndex,
4346 BOOL fRespectPolicy,
4347 LPDWORD pdwState,
4348 BOOL *pfPolicyEncountered);
4349
4350 HRESULT (STDMETHODCALLTYPE *GetIESecurityState)(
4351 IInternetZoneManagerEx2* This,
4352 BOOL fRespectPolicy,
4353 LPDWORD pdwState,
4354 BOOL *pfPolicyEncountered,
4355 BOOL fNoCache);
4356
4357 HRESULT (STDMETHODCALLTYPE *FixInsecureSettings)(
4358 IInternetZoneManagerEx2* This);
4359
4360 END_INTERFACE
4361} IInternetZoneManagerEx2Vtbl;
4362interface IInternetZoneManagerEx2 {
4363 CONST_VTBL IInternetZoneManagerEx2Vtbl* lpVtbl;
4364};
4365
4366#ifdef COBJMACROS
4367/*** IUnknown methods ***/
4368#define IInternetZoneManagerEx2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4369#define IInternetZoneManagerEx2_AddRef(This) (This)->lpVtbl->AddRef(This)
4370#define IInternetZoneManagerEx2_Release(This) (This)->lpVtbl->Release(This)
4371/*** IInternetZoneManager methods ***/
4372#define IInternetZoneManagerEx2_GetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->GetZoneAttributes(This,dwZone,pZoneAttributes)
4373#define IInternetZoneManagerEx2_SetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->SetZoneAttributes(This,dwZone,pZoneAttributes)
4374#define IInternetZoneManagerEx2_GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg) (This)->lpVtbl->GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg)
4375#define IInternetZoneManagerEx2_SetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg) (This)->lpVtbl->SetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg)
4376#define IInternetZoneManagerEx2_GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)
4377#define IInternetZoneManagerEx2_SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)
4378#define IInternetZoneManagerEx2_PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags) (This)->lpVtbl->PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags)
4379#define IInternetZoneManagerEx2_LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags) (This)->lpVtbl->LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags)
4380#define IInternetZoneManagerEx2_CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags) (This)->lpVtbl->CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags)
4381#define IInternetZoneManagerEx2_GetZoneAt(This,dwEnum,dwIndex,pdwZone) (This)->lpVtbl->GetZoneAt(This,dwEnum,dwIndex,pdwZone)
4382#define IInternetZoneManagerEx2_DestroyZoneEnumerator(This,dwEnum) (This)->lpVtbl->DestroyZoneEnumerator(This,dwEnum)
4383#define IInternetZoneManagerEx2_CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved) (This)->lpVtbl->CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved)
4384/*** IInternetZoneManagerEx methods ***/
4385#define IInternetZoneManagerEx2_GetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags) (This)->lpVtbl->GetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags)
4386#define IInternetZoneManagerEx2_SetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags) (This)->lpVtbl->SetZoneActionPolicyEx(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg,dwFlags)
4387/*** IInternetZoneManagerEx2 methods ***/
4388#define IInternetZoneManagerEx2_GetZoneAttributesEx(This,dwZone,pZoneAttributes,dwFlags) (This)->lpVtbl->GetZoneAttributesEx(This,dwZone,pZoneAttributes,dwFlags)
4389#define IInternetZoneManagerEx2_GetZoneSecurityState(This,dwZoneIndex,fRespectPolicy,pdwState,pfPolicyEncountered) (This)->lpVtbl->GetZoneSecurityState(This,dwZoneIndex,fRespectPolicy,pdwState,pfPolicyEncountered)
4390#define IInternetZoneManagerEx2_GetIESecurityState(This,fRespectPolicy,pdwState,pfPolicyEncountered,fNoCache) (This)->lpVtbl->GetIESecurityState(This,fRespectPolicy,pdwState,pfPolicyEncountered,fNoCache)
4391#define IInternetZoneManagerEx2_FixInsecureSettings(This) (This)->lpVtbl->FixInsecureSettings(This)
4392#endif
4393
4394#endif
4395
4396HRESULT STDMETHODCALLTYPE IInternetZoneManagerEx2_GetZoneAttributesEx_Proxy(
4397 IInternetZoneManagerEx2* This,
4398 DWORD dwZone,
4399 ZONEATTRIBUTES *pZoneAttributes,
4400 DWORD dwFlags);
4401void __RPC_STUB IInternetZoneManagerEx2_GetZoneAttributesEx_Stub(
4402 IRpcStubBuffer* This,
4403 IRpcChannelBuffer* pRpcChannelBuffer,
4404 PRPC_MESSAGE pRpcMessage,
4405 DWORD* pdwStubPhase);
4406HRESULT STDMETHODCALLTYPE IInternetZoneManagerEx2_GetZoneSecurityState_Proxy(
4407 IInternetZoneManagerEx2* This,
4408 DWORD dwZoneIndex,
4409 BOOL fRespectPolicy,
4410 LPDWORD pdwState,
4411 BOOL *pfPolicyEncountered);
4412void __RPC_STUB IInternetZoneManagerEx2_GetZoneSecurityState_Stub(
4413 IRpcStubBuffer* This,
4414 IRpcChannelBuffer* pRpcChannelBuffer,
4415 PRPC_MESSAGE pRpcMessage,
4416 DWORD* pdwStubPhase);
4417HRESULT STDMETHODCALLTYPE IInternetZoneManagerEx2_GetIESecurityState_Proxy(
4418 IInternetZoneManagerEx2* This,
4419 BOOL fRespectPolicy,
4420 LPDWORD pdwState,
4421 BOOL *pfPolicyEncountered,
4422 BOOL fNoCache);
4423void __RPC_STUB IInternetZoneManagerEx2_GetIESecurityState_Stub(
4424 IRpcStubBuffer* This,
4425 IRpcChannelBuffer* pRpcChannelBuffer,
4426 PRPC_MESSAGE pRpcMessage,
4427 DWORD* pdwStubPhase);
4428HRESULT STDMETHODCALLTYPE IInternetZoneManagerEx2_FixInsecureSettings_Proxy(
4429 IInternetZoneManagerEx2* This);
4430void __RPC_STUB IInternetZoneManagerEx2_FixInsecureSettings_Stub(
4431 IRpcStubBuffer* This,
4432 IRpcChannelBuffer* pRpcChannelBuffer,
4433 PRPC_MESSAGE pRpcMessage,
4434 DWORD* pdwStubPhase);
4435
4436#endif /* __IInternetZoneManagerEx2_INTERFACE_DEFINED__ */
4437
4438typedef struct _tagSOFTDISTINFO {
4439 ULONG cbSize;
4440 DWORD dwFlags;
4441 DWORD dwAdState;
4442 LPWSTR szTitle;
4443 LPWSTR szAbstract;
4444 LPWSTR szHREF;
4445 DWORD dwInstalledVersionMS;
4446 DWORD dwInstalledVersionLS;
4447 DWORD dwUpdateVersionMS;
4448 DWORD dwUpdateVersionLS;
4449 DWORD dwAdvertisedVersionMS;
4450 DWORD dwAdvertisedVersionLS;
4451 DWORD dwReserved;
4452} SOFTDISTINFO;
4453typedef struct _tagSOFTDISTINFO *LPSOFTDISTINFO;
4454typedef struct _tagCODEBASEHOLD {
4455 DWORD cbSize;
4456 LPWSTR szDistUnit;
4457 LPWSTR szCodeBase;
4458 DWORD dwVersionMS;
4459 DWORD dwVersionLS;
4460 DWORD dwStyle;
4461} CODEBASEHOLD;
4462typedef struct _tagCODEBASEHOLD *LPCODEBASEHOLD;
4463/*****************************************************************************
4464 * ISoftDistExt interface
4465 */
4466#ifndef __ISoftDistExt_INTERFACE_DEFINED__
4467#define __ISoftDistExt_INTERFACE_DEFINED__
4468
4469DEFINE_GUID(IID_ISoftDistExt, 0xb15b8dc1, 0xc7e1, 0x11d0, 0x86,0x80, 0x00,0xaa,0x00,0xbd,0xcb,0x71);
4470#if defined(__cplusplus) && !defined(CINTERFACE)
4471interface ISoftDistExt : public IUnknown
4472{
4473 virtual HRESULT STDMETHODCALLTYPE ProcessSoftDist(
4474 LPCWSTR szCDFURL,
4475 IXMLElement *pSoftDistElement,
4476 LPSOFTDISTINFO lpsdi) = 0;
4477
4478 virtual HRESULT STDMETHODCALLTYPE GetFirstCodeBase(
4479 LPWSTR *szCodeBase,
4480 LPDWORD dwMaxSize) = 0;
4481
4482 virtual HRESULT STDMETHODCALLTYPE GetNextCodeBase(
4483 LPWSTR *szCodeBase,
4484 LPDWORD dwMaxSize) = 0;
4485
4486 virtual HRESULT STDMETHODCALLTYPE AsyncInstallDistributionUnit(
4487 IBindCtx *pbc,
4488 LPVOID lpReserved,
4489 DWORD flags,
4490 LPCODEBASEHOLD lpcbh) = 0;
4491
4492};
4493#else
4494typedef struct ISoftDistExtVtbl {
4495 BEGIN_INTERFACE
4496
4497 /*** IUnknown methods ***/
4498 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4499 ISoftDistExt* This,
4500 REFIID riid,
4501 void **ppvObject);
4502
4503 ULONG (STDMETHODCALLTYPE *AddRef)(
4504 ISoftDistExt* This);
4505
4506 ULONG (STDMETHODCALLTYPE *Release)(
4507 ISoftDistExt* This);
4508
4509 /*** ISoftDistExt methods ***/
4510 HRESULT (STDMETHODCALLTYPE *ProcessSoftDist)(
4511 ISoftDistExt* This,
4512 LPCWSTR szCDFURL,
4513 IXMLElement *pSoftDistElement,
4514 LPSOFTDISTINFO lpsdi);
4515
4516 HRESULT (STDMETHODCALLTYPE *GetFirstCodeBase)(
4517 ISoftDistExt* This,
4518 LPWSTR *szCodeBase,
4519 LPDWORD dwMaxSize);
4520
4521 HRESULT (STDMETHODCALLTYPE *GetNextCodeBase)(
4522 ISoftDistExt* This,
4523 LPWSTR *szCodeBase,
4524 LPDWORD dwMaxSize);
4525
4526 HRESULT (STDMETHODCALLTYPE *AsyncInstallDistributionUnit)(
4527 ISoftDistExt* This,
4528 IBindCtx *pbc,
4529 LPVOID lpReserved,
4530 DWORD flags,
4531 LPCODEBASEHOLD lpcbh);
4532
4533 END_INTERFACE
4534} ISoftDistExtVtbl;
4535interface ISoftDistExt {
4536 CONST_VTBL ISoftDistExtVtbl* lpVtbl;
4537};
4538
4539#ifdef COBJMACROS
4540/*** IUnknown methods ***/
4541#define ISoftDistExt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4542#define ISoftDistExt_AddRef(This) (This)->lpVtbl->AddRef(This)
4543#define ISoftDistExt_Release(This) (This)->lpVtbl->Release(This)
4544/*** ISoftDistExt methods ***/
4545#define ISoftDistExt_ProcessSoftDist(This,szCDFURL,pSoftDistElement,lpsdi) (This)->lpVtbl->ProcessSoftDist(This,szCDFURL,pSoftDistElement,lpsdi)
4546#define ISoftDistExt_GetFirstCodeBase(This,szCodeBase,dwMaxSize) (This)->lpVtbl->GetFirstCodeBase(This,szCodeBase,dwMaxSize)
4547#define ISoftDistExt_GetNextCodeBase(This,szCodeBase,dwMaxSize) (This)->lpVtbl->GetNextCodeBase(This,szCodeBase,dwMaxSize)
4548#define ISoftDistExt_AsyncInstallDistributionUnit(This,pbc,lpReserved,flags,lpcbh) (This)->lpVtbl->AsyncInstallDistributionUnit(This,pbc,lpReserved,flags,lpcbh)
4549#endif
4550
4551#endif
4552
4553HRESULT STDMETHODCALLTYPE ISoftDistExt_ProcessSoftDist_Proxy(
4554 ISoftDistExt* This,
4555 LPCWSTR szCDFURL,
4556 IXMLElement *pSoftDistElement,
4557 LPSOFTDISTINFO lpsdi);
4558void __RPC_STUB ISoftDistExt_ProcessSoftDist_Stub(
4559 IRpcStubBuffer* This,
4560 IRpcChannelBuffer* pRpcChannelBuffer,
4561 PRPC_MESSAGE pRpcMessage,
4562 DWORD* pdwStubPhase);
4563HRESULT STDMETHODCALLTYPE ISoftDistExt_GetFirstCodeBase_Proxy(
4564 ISoftDistExt* This,
4565 LPWSTR *szCodeBase,
4566 LPDWORD dwMaxSize);
4567void __RPC_STUB ISoftDistExt_GetFirstCodeBase_Stub(
4568 IRpcStubBuffer* This,
4569 IRpcChannelBuffer* pRpcChannelBuffer,
4570 PRPC_MESSAGE pRpcMessage,
4571 DWORD* pdwStubPhase);
4572HRESULT STDMETHODCALLTYPE ISoftDistExt_GetNextCodeBase_Proxy(
4573 ISoftDistExt* This,
4574 LPWSTR *szCodeBase,
4575 LPDWORD dwMaxSize);
4576void __RPC_STUB ISoftDistExt_GetNextCodeBase_Stub(
4577 IRpcStubBuffer* This,
4578 IRpcChannelBuffer* pRpcChannelBuffer,
4579 PRPC_MESSAGE pRpcMessage,
4580 DWORD* pdwStubPhase);
4581HRESULT STDMETHODCALLTYPE ISoftDistExt_AsyncInstallDistributionUnit_Proxy(
4582 ISoftDistExt* This,
4583 IBindCtx *pbc,
4584 LPVOID lpReserved,
4585 DWORD flags,
4586 LPCODEBASEHOLD lpcbh);
4587void __RPC_STUB ISoftDistExt_AsyncInstallDistributionUnit_Stub(
4588 IRpcStubBuffer* This,
4589 IRpcChannelBuffer* pRpcChannelBuffer,
4590 PRPC_MESSAGE pRpcMessage,
4591 DWORD* pdwStubPhase);
4592
4593#endif /* __ISoftDistExt_INTERFACE_DEFINED__ */
4594
4595typedef enum _tagINTERNETFEATURELIST {
4596 FEATURE_OBJECT_CACHING = 0,
4597 FEATURE_ZONE_ELEVATION = 1,
4598 FEATURE_MIME_HANDLING = 2,
4599 FEATURE_MIME_SNIFFING = 3,
4600 FEATURE_WINDOW_RESTRICTIONS = 4,
4601 FEATURE_WEBOC_POPUPMANAGEMENT = 5,
4602 FEATURE_BEHAVIORS = 6,
4603 FEATURE_DISABLE_MK_PROTOCOL = 7,
4604 FEATURE_LOCALMACHINE_LOCKDOWN = 8,
4605 FEATURE_SECURITYBAND = 9,
4606 FEATURE_RESTRICT_ACTIVEXINSTALL = 10,
4607 FEATURE_VALIDATE_NAVIGATE_URL = 11,
4608 FEATURE_RESTRICT_FILEDOWNLOAD = 12,
4609 FEATURE_ADDON_MANAGEMENT = 13,
4610 FEATURE_PROTOCOL_LOCKDOWN = 14,
4611 FEATURE_HTTP_USERNAME_PASSWORD_DISABLE = 15,
4612 FEATURE_SAFE_BINDTOOBJECT = 16,
4613 FEATURE_UNC_SAVEDFILECHECK = 17,
4614 FEATURE_GET_URL_DOM_FILEPATH_UNENCODED = 18,
4615 FEATURE_TABBED_BROWSING = 19,
4616 FEATURE_SSLUX = 20,
4617 FEATURE_DISABLE_NAVIGATION_SOUNDS = 21,
4618 FEATURE_DISABLE_LEGACY_COMPRESSION = 22,
4619 FEATURE_FORCE_ADDR_AND_STATUS = 23,
4620 FEATURE_XMLHTTP = 24,
4621 FEATURE_DISABLE_TELNET_PROTOCOL = 25,
4622 FEATURE_FEEDS = 26,
4623 FEATURE_BLOCK_INPUT_PROMPTS = 27,
4624 FEATURE_DOMSTORAGE = 28,
4625 FEATURE_XDOMAINREQUEST = 29,
4626 FEATURE_DATAURI = 30,
4627 FEATURE_AJAX_CONNECTIONSERVICES = 31,
4628 FEATURE_ENTRY_COUNT = 32
4629} INTERNETFEATURELIST;
4630typedef struct _tagPROTOCOLFILTERDATA {
4631 DWORD cbSize;
4632 IInternetProtocolSink *pProtocolSink;
4633 IInternetProtocol *pProtocol;
4634 IUnknown *pUnk;
4635 DWORD dwFilterFlags;
4636} PROTOCOLFILTERDATA;
4637/*****************************************************************************
4638 * IUri interface
4639 */
4640#ifndef __IUri_INTERFACE_DEFINED__
4641#define __IUri_INTERFACE_DEFINED__
4642
4643typedef enum __WIDL_urlmon_generated_name_0000000A {
4644 Uri_PROPERTY_ABSOLUTE_URI = 0,
4645 Uri_PROPERTY_STRING_START = Uri_PROPERTY_ABSOLUTE_URI,
4646 Uri_PROPERTY_AUTHORITY = 1,
4647 Uri_PROPERTY_DISPLAY_URI = 2,
4648 Uri_PROPERTY_DOMAIN = 3,
4649 Uri_PROPERTY_EXTENSION = 4,
4650 Uri_PROPERTY_FRAGMENT = 5,
4651 Uri_PROPERTY_HOST = 6,
4652 Uri_PROPERTY_PASSWORD = 7,
4653 Uri_PROPERTY_PATH = 8,
4654 Uri_PROPERTY_PATH_AND_QUERY = 9,
4655 Uri_PROPERTY_QUERY = 10,
4656 Uri_PROPERTY_RAW_URI = 11,
4657 Uri_PROPERTY_SCHEME_NAME = 12,
4658 Uri_PROPERTY_USER_INFO = 13,
4659 Uri_PROPERTY_USER_NAME = 14,
4660 Uri_PROPERTY_STRING_LAST = Uri_PROPERTY_USER_NAME,
4661 Uri_PROPERTY_HOST_TYPE = 15,
4662 Uri_PROPERTY_DWORD_START = Uri_PROPERTY_HOST_TYPE,
4663 Uri_PROPERTY_PORT = 16,
4664 Uri_PROPERTY_SCHEME = 17,
4665 Uri_PROPERTY_ZONE = 18,
4666 Uri_PROPERTY_DWORD_LAST = Uri_PROPERTY_ZONE
4667} Uri_PROPERTY;
4668DEFINE_GUID(IID_IUri, 0xa39ee748, 0x6a27, 0x4817, 0xa6,0xf2, 0x13,0x91,0x4b,0xef,0x58,0x90);
4669#if defined(__cplusplus) && !defined(CINTERFACE)
4670interface IUri : public IUnknown
4671{
4672 virtual HRESULT STDMETHODCALLTYPE GetPropertyBSTR(
4673 Uri_PROPERTY uriProp,
4674 BSTR *pbstrProperty,
4675 DWORD dwFlags) = 0;
4676
4677 virtual HRESULT STDMETHODCALLTYPE GetPropertyLength(
4678 Uri_PROPERTY uriProp,
4679 DWORD *pcchProperty,
4680 DWORD dwFlags) = 0;
4681
4682 virtual HRESULT STDMETHODCALLTYPE GetPropertyDWORD(
4683 Uri_PROPERTY uriProp,
4684 DWORD *pdwProperty,
4685 DWORD dwFlags) = 0;
4686
4687 virtual HRESULT STDMETHODCALLTYPE HasProperty(
4688 Uri_PROPERTY uriProp,
4689 BOOL *pfHasProperty) = 0;
4690
4691 virtual HRESULT STDMETHODCALLTYPE GetAbsoluteUri(
4692 BSTR *pbstrAbsoluteUri) = 0;
4693
4694 virtual HRESULT STDMETHODCALLTYPE GetAuthority(
4695 BSTR *pbstrAuthority) = 0;
4696
4697 virtual HRESULT STDMETHODCALLTYPE GetDisplayUri(
4698 BSTR *pbstrDisplayString) = 0;
4699
4700 virtual HRESULT STDMETHODCALLTYPE GetDomain(
4701 BSTR *pbstrDomain) = 0;
4702
4703 virtual HRESULT STDMETHODCALLTYPE GetExtension(
4704 BSTR *pbstrExtension) = 0;
4705
4706 virtual HRESULT STDMETHODCALLTYPE GetFragment(
4707 BSTR *pbstrFragment) = 0;
4708
4709 virtual HRESULT STDMETHODCALLTYPE GetHost(
4710 BSTR *pbstrHost) = 0;
4711
4712 virtual HRESULT STDMETHODCALLTYPE GetPassword(
4713 BSTR *pbstrPassword) = 0;
4714
4715 virtual HRESULT STDMETHODCALLTYPE GetPath(
4716 BSTR *pbstrPath) = 0;
4717
4718 virtual HRESULT STDMETHODCALLTYPE GetPathAndQuery(
4719 BSTR *pbstrPathAndQuery) = 0;
4720
4721 virtual HRESULT STDMETHODCALLTYPE GetQuery(
4722 BSTR *pbstrQuery) = 0;
4723
4724 virtual HRESULT STDMETHODCALLTYPE GetRawUri(
4725 BSTR *pbstrRawUri) = 0;
4726
4727 virtual HRESULT STDMETHODCALLTYPE GetSchemeName(
4728 BSTR *pbstrSchemeName) = 0;
4729
4730 virtual HRESULT STDMETHODCALLTYPE GetUserInfo(
4731 BSTR *pbstrUserInfo) = 0;
4732
4733 virtual HRESULT STDMETHODCALLTYPE GetUserName(
4734 BSTR *pbstrUserName) = 0;
4735
4736 virtual HRESULT STDMETHODCALLTYPE GetHostType(
4737 DWORD *pdwHostType) = 0;
4738
4739 virtual HRESULT STDMETHODCALLTYPE GetPort(
4740 DWORD *pdwPort) = 0;
4741
4742 virtual HRESULT STDMETHODCALLTYPE GetScheme(
4743 DWORD *pdwScheme) = 0;
4744
4745 virtual HRESULT STDMETHODCALLTYPE GetZone(
4746 DWORD *pdwZone) = 0;
4747
4748 virtual HRESULT STDMETHODCALLTYPE GetProperties(
4749 LPDWORD pdwFlags) = 0;
4750
4751 virtual HRESULT STDMETHODCALLTYPE IsEqual(
4752 IUri *pUri,
4753 BOOL *pfEqual) = 0;
4754
4755};
4756#else
4757typedef struct IUriVtbl {
4758 BEGIN_INTERFACE
4759
4760 /*** IUnknown methods ***/
4761 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4762 IUri* This,
4763 REFIID riid,
4764 void **ppvObject);
4765
4766 ULONG (STDMETHODCALLTYPE *AddRef)(
4767 IUri* This);
4768
4769 ULONG (STDMETHODCALLTYPE *Release)(
4770 IUri* This);
4771
4772 /*** IUri methods ***/
4773 HRESULT (STDMETHODCALLTYPE *GetPropertyBSTR)(
4774 IUri* This,
4775 Uri_PROPERTY uriProp,
4776 BSTR *pbstrProperty,
4777 DWORD dwFlags);
4778
4779 HRESULT (STDMETHODCALLTYPE *GetPropertyLength)(
4780 IUri* This,
4781 Uri_PROPERTY uriProp,
4782 DWORD *pcchProperty,
4783 DWORD dwFlags);
4784
4785 HRESULT (STDMETHODCALLTYPE *GetPropertyDWORD)(
4786 IUri* This,
4787 Uri_PROPERTY uriProp,
4788 DWORD *pdwProperty,
4789 DWORD dwFlags);
4790
4791 HRESULT (STDMETHODCALLTYPE *HasProperty)(
4792 IUri* This,
4793 Uri_PROPERTY uriProp,
4794 BOOL *pfHasProperty);
4795
4796 HRESULT (STDMETHODCALLTYPE *GetAbsoluteUri)(
4797 IUri* This,
4798 BSTR *pbstrAbsoluteUri);
4799
4800 HRESULT (STDMETHODCALLTYPE *GetAuthority)(
4801 IUri* This,
4802 BSTR *pbstrAuthority);
4803
4804 HRESULT (STDMETHODCALLTYPE *GetDisplayUri)(
4805 IUri* This,
4806 BSTR *pbstrDisplayString);
4807
4808 HRESULT (STDMETHODCALLTYPE *GetDomain)(
4809 IUri* This,
4810 BSTR *pbstrDomain);
4811
4812 HRESULT (STDMETHODCALLTYPE *GetExtension)(
4813 IUri* This,
4814 BSTR *pbstrExtension);
4815
4816 HRESULT (STDMETHODCALLTYPE *GetFragment)(
4817 IUri* This,
4818 BSTR *pbstrFragment);
4819
4820 HRESULT (STDMETHODCALLTYPE *GetHost)(
4821 IUri* This,
4822 BSTR *pbstrHost);
4823
4824 HRESULT (STDMETHODCALLTYPE *GetPassword)(
4825 IUri* This,
4826 BSTR *pbstrPassword);
4827
4828 HRESULT (STDMETHODCALLTYPE *GetPath)(
4829 IUri* This,
4830 BSTR *pbstrPath);
4831
4832 HRESULT (STDMETHODCALLTYPE *GetPathAndQuery)(
4833 IUri* This,
4834 BSTR *pbstrPathAndQuery);
4835
4836 HRESULT (STDMETHODCALLTYPE *GetQuery)(
4837 IUri* This,
4838 BSTR *pbstrQuery);
4839
4840 HRESULT (STDMETHODCALLTYPE *GetRawUri)(
4841 IUri* This,
4842 BSTR *pbstrRawUri);
4843
4844 HRESULT (STDMETHODCALLTYPE *GetSchemeName)(
4845 IUri* This,
4846 BSTR *pbstrSchemeName);
4847
4848 HRESULT (STDMETHODCALLTYPE *GetUserInfo)(
4849 IUri* This,
4850 BSTR *pbstrUserInfo);
4851
4852 HRESULT (STDMETHODCALLTYPE *GetUserName)(
4853 IUri* This,
4854 BSTR *pbstrUserName);
4855
4856 HRESULT (STDMETHODCALLTYPE *GetHostType)(
4857 IUri* This,
4858 DWORD *pdwHostType);
4859
4860 HRESULT (STDMETHODCALLTYPE *GetPort)(
4861 IUri* This,
4862 DWORD *pdwPort);
4863
4864 HRESULT (STDMETHODCALLTYPE *GetScheme)(
4865 IUri* This,
4866 DWORD *pdwScheme);
4867
4868 HRESULT (STDMETHODCALLTYPE *GetZone)(
4869 IUri* This,
4870 DWORD *pdwZone);
4871
4872 HRESULT (STDMETHODCALLTYPE *GetProperties)(
4873 IUri* This,
4874 LPDWORD pdwFlags);
4875
4876 HRESULT (STDMETHODCALLTYPE *IsEqual)(
4877 IUri* This,
4878 IUri *pUri,
4879 BOOL *pfEqual);
4880
4881 END_INTERFACE
4882} IUriVtbl;
4883interface IUri {
4884 CONST_VTBL IUriVtbl* lpVtbl;
4885};
4886
4887#ifdef COBJMACROS
4888/*** IUnknown methods ***/
4889#define IUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4890#define IUri_AddRef(This) (This)->lpVtbl->AddRef(This)
4891#define IUri_Release(This) (This)->lpVtbl->Release(This)
4892/*** IUri methods ***/
4893#define IUri_GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags) (This)->lpVtbl->GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags)
4894#define IUri_GetPropertyLength(This,uriProp,pcchProperty,dwFlags) (This)->lpVtbl->GetPropertyLength(This,uriProp,pcchProperty,dwFlags)
4895#define IUri_GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags) (This)->lpVtbl->GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags)
4896#define IUri_HasProperty(This,uriProp,pfHasProperty) (This)->lpVtbl->HasProperty(This,uriProp,pfHasProperty)
4897#define IUri_GetAbsoluteUri(This,pbstrAbsoluteUri) (This)->lpVtbl->GetAbsoluteUri(This,pbstrAbsoluteUri)
4898#define IUri_GetAuthority(This,pbstrAuthority) (This)->lpVtbl->GetAuthority(This,pbstrAuthority)
4899#define IUri_GetDisplayUri(This,pbstrDisplayString) (This)->lpVtbl->GetDisplayUri(This,pbstrDisplayString)
4900#define IUri_GetDomain(This,pbstrDomain) (This)->lpVtbl->GetDomain(This,pbstrDomain)
4901#define IUri_GetExtension(This,pbstrExtension) (This)->lpVtbl->GetExtension(This,pbstrExtension)
4902#define IUri_GetFragment(This,pbstrFragment) (This)->lpVtbl->GetFragment(This,pbstrFragment)
4903#define IUri_GetHost(This,pbstrHost) (This)->lpVtbl->GetHost(This,pbstrHost)
4904#define IUri_GetPassword(This,pbstrPassword) (This)->lpVtbl->GetPassword(This,pbstrPassword)
4905#define IUri_GetPath(This,pbstrPath) (This)->lpVtbl->GetPath(This,pbstrPath)
4906#define IUri_GetPathAndQuery(This,pbstrPathAndQuery) (This)->lpVtbl->GetPathAndQuery(This,pbstrPathAndQuery)
4907#define IUri_GetQuery(This,pbstrQuery) (This)->lpVtbl->GetQuery(This,pbstrQuery)
4908#define IUri_GetRawUri(This,pbstrRawUri) (This)->lpVtbl->GetRawUri(This,pbstrRawUri)
4909#define IUri_GetSchemeName(This,pbstrSchemeName) (This)->lpVtbl->GetSchemeName(This,pbstrSchemeName)
4910#define IUri_GetUserInfo(This,pbstrUserInfo) (This)->lpVtbl->GetUserInfo(This,pbstrUserInfo)
4911#define IUri_GetUserName(This,pbstrUserName) (This)->lpVtbl->GetUserName(This,pbstrUserName)
4912#define IUri_GetHostType(This,pdwHostType) (This)->lpVtbl->GetHostType(This,pdwHostType)
4913#define IUri_GetPort(This,pdwPort) (This)->lpVtbl->GetPort(This,pdwPort)
4914#define IUri_GetScheme(This,pdwScheme) (This)->lpVtbl->GetScheme(This,pdwScheme)
4915#define IUri_GetZone(This,pdwZone) (This)->lpVtbl->GetZone(This,pdwZone)
4916#define IUri_GetProperties(This,pdwFlags) (This)->lpVtbl->GetProperties(This,pdwFlags)
4917#define IUri_IsEqual(This,pUri,pfEqual) (This)->lpVtbl->IsEqual(This,pUri,pfEqual)
4918#endif
4919
4920#endif
4921
4922HRESULT STDMETHODCALLTYPE IUri_GetPropertyBSTR_Proxy(
4923 IUri* This,
4924 Uri_PROPERTY uriProp,
4925 BSTR *pbstrProperty,
4926 DWORD dwFlags);
4927void __RPC_STUB IUri_GetPropertyBSTR_Stub(
4928 IRpcStubBuffer* This,
4929 IRpcChannelBuffer* pRpcChannelBuffer,
4930 PRPC_MESSAGE pRpcMessage,
4931 DWORD* pdwStubPhase);
4932HRESULT STDMETHODCALLTYPE IUri_GetPropertyLength_Proxy(
4933 IUri* This,
4934 Uri_PROPERTY uriProp,
4935 DWORD *pcchProperty,
4936 DWORD dwFlags);
4937void __RPC_STUB IUri_GetPropertyLength_Stub(
4938 IRpcStubBuffer* This,
4939 IRpcChannelBuffer* pRpcChannelBuffer,
4940 PRPC_MESSAGE pRpcMessage,
4941 DWORD* pdwStubPhase);
4942HRESULT STDMETHODCALLTYPE IUri_GetPropertyDWORD_Proxy(
4943 IUri* This,
4944 Uri_PROPERTY uriProp,
4945 DWORD *pdwProperty,
4946 DWORD dwFlags);
4947void __RPC_STUB IUri_GetPropertyDWORD_Stub(
4948 IRpcStubBuffer* This,
4949 IRpcChannelBuffer* pRpcChannelBuffer,
4950 PRPC_MESSAGE pRpcMessage,
4951 DWORD* pdwStubPhase);
4952HRESULT STDMETHODCALLTYPE IUri_HasProperty_Proxy(
4953 IUri* This,
4954 Uri_PROPERTY uriProp,
4955 BOOL *pfHasProperty);
4956void __RPC_STUB IUri_HasProperty_Stub(
4957 IRpcStubBuffer* This,
4958 IRpcChannelBuffer* pRpcChannelBuffer,
4959 PRPC_MESSAGE pRpcMessage,
4960 DWORD* pdwStubPhase);
4961HRESULT STDMETHODCALLTYPE IUri_GetAbsoluteUri_Proxy(
4962 IUri* This,
4963 BSTR *pbstrAbsoluteUri);
4964void __RPC_STUB IUri_GetAbsoluteUri_Stub(
4965 IRpcStubBuffer* This,
4966 IRpcChannelBuffer* pRpcChannelBuffer,
4967 PRPC_MESSAGE pRpcMessage,
4968 DWORD* pdwStubPhase);
4969HRESULT STDMETHODCALLTYPE IUri_GetAuthority_Proxy(
4970 IUri* This,
4971 BSTR *pbstrAuthority);
4972void __RPC_STUB IUri_GetAuthority_Stub(
4973 IRpcStubBuffer* This,
4974 IRpcChannelBuffer* pRpcChannelBuffer,
4975 PRPC_MESSAGE pRpcMessage,
4976 DWORD* pdwStubPhase);
4977HRESULT STDMETHODCALLTYPE IUri_GetDisplayUri_Proxy(
4978 IUri* This,
4979 BSTR *pbstrDisplayString);
4980void __RPC_STUB IUri_GetDisplayUri_Stub(
4981 IRpcStubBuffer* This,
4982 IRpcChannelBuffer* pRpcChannelBuffer,
4983 PRPC_MESSAGE pRpcMessage,
4984 DWORD* pdwStubPhase);
4985HRESULT STDMETHODCALLTYPE IUri_GetDomain_Proxy(
4986 IUri* This,
4987 BSTR *pbstrDomain);
4988void __RPC_STUB IUri_GetDomain_Stub(
4989 IRpcStubBuffer* This,
4990 IRpcChannelBuffer* pRpcChannelBuffer,
4991 PRPC_MESSAGE pRpcMessage,
4992 DWORD* pdwStubPhase);
4993HRESULT STDMETHODCALLTYPE IUri_GetExtension_Proxy(
4994 IUri* This,
4995 BSTR *pbstrExtension);
4996void __RPC_STUB IUri_GetExtension_Stub(
4997 IRpcStubBuffer* This,
4998 IRpcChannelBuffer* pRpcChannelBuffer,
4999 PRPC_MESSAGE pRpcMessage,
5000 DWORD* pdwStubPhase);
5001HRESULT STDMETHODCALLTYPE IUri_GetFragment_Proxy(
5002 IUri* This,
5003 BSTR *pbstrFragment);
5004void __RPC_STUB IUri_GetFragment_Stub(
5005 IRpcStubBuffer* This,
5006 IRpcChannelBuffer* pRpcChannelBuffer,
5007 PRPC_MESSAGE pRpcMessage,
5008 DWORD* pdwStubPhase);
5009HRESULT STDMETHODCALLTYPE IUri_GetHost_Proxy(
5010 IUri* This,
5011 BSTR *pbstrHost);
5012void __RPC_STUB IUri_GetHost_Stub(
5013 IRpcStubBuffer* This,
5014 IRpcChannelBuffer* pRpcChannelBuffer,
5015 PRPC_MESSAGE pRpcMessage,
5016 DWORD* pdwStubPhase);
5017HRESULT STDMETHODCALLTYPE IUri_GetPassword_Proxy(
5018 IUri* This,
5019 BSTR *pbstrPassword);
5020void __RPC_STUB IUri_GetPassword_Stub(
5021 IRpcStubBuffer* This,
5022 IRpcChannelBuffer* pRpcChannelBuffer,
5023 PRPC_MESSAGE pRpcMessage,
5024 DWORD* pdwStubPhase);
5025HRESULT STDMETHODCALLTYPE IUri_GetPath_Proxy(
5026 IUri* This,
5027 BSTR *pbstrPath);
5028void __RPC_STUB IUri_GetPath_Stub(
5029 IRpcStubBuffer* This,
5030 IRpcChannelBuffer* pRpcChannelBuffer,
5031 PRPC_MESSAGE pRpcMessage,
5032 DWORD* pdwStubPhase);
5033HRESULT STDMETHODCALLTYPE IUri_GetPathAndQuery_Proxy(
5034 IUri* This,
5035 BSTR *pbstrPathAndQuery);
5036void __RPC_STUB IUri_GetPathAndQuery_Stub(
5037 IRpcStubBuffer* This,
5038 IRpcChannelBuffer* pRpcChannelBuffer,
5039 PRPC_MESSAGE pRpcMessage,
5040 DWORD* pdwStubPhase);
5041HRESULT STDMETHODCALLTYPE IUri_GetQuery_Proxy(
5042 IUri* This,
5043 BSTR *pbstrQuery);
5044void __RPC_STUB IUri_GetQuery_Stub(
5045 IRpcStubBuffer* This,
5046 IRpcChannelBuffer* pRpcChannelBuffer,
5047 PRPC_MESSAGE pRpcMessage,
5048 DWORD* pdwStubPhase);
5049HRESULT STDMETHODCALLTYPE IUri_GetRawUri_Proxy(
5050 IUri* This,
5051 BSTR *pbstrRawUri);
5052void __RPC_STUB IUri_GetRawUri_Stub(
5053 IRpcStubBuffer* This,
5054 IRpcChannelBuffer* pRpcChannelBuffer,
5055 PRPC_MESSAGE pRpcMessage,
5056 DWORD* pdwStubPhase);
5057HRESULT STDMETHODCALLTYPE IUri_GetSchemeName_Proxy(
5058 IUri* This,
5059 BSTR *pbstrSchemeName);
5060void __RPC_STUB IUri_GetSchemeName_Stub(
5061 IRpcStubBuffer* This,
5062 IRpcChannelBuffer* pRpcChannelBuffer,
5063 PRPC_MESSAGE pRpcMessage,
5064 DWORD* pdwStubPhase);
5065HRESULT STDMETHODCALLTYPE IUri_GetUserInfo_Proxy(
5066 IUri* This,
5067 BSTR *pbstrUserInfo);
5068void __RPC_STUB IUri_GetUserInfo_Stub(
5069 IRpcStubBuffer* This,
5070 IRpcChannelBuffer* pRpcChannelBuffer,
5071 PRPC_MESSAGE pRpcMessage,
5072 DWORD* pdwStubPhase);
5073HRESULT STDMETHODCALLTYPE IUri_GetUserName_Proxy(
5074 IUri* This,
5075 BSTR *pbstrUserName);
5076void __RPC_STUB IUri_GetUserName_Stub(
5077 IRpcStubBuffer* This,
5078 IRpcChannelBuffer* pRpcChannelBuffer,
5079 PRPC_MESSAGE pRpcMessage,
5080 DWORD* pdwStubPhase);
5081HRESULT STDMETHODCALLTYPE IUri_GetHostType_Proxy(
5082 IUri* This,
5083 DWORD *pdwHostType);
5084void __RPC_STUB IUri_GetHostType_Stub(
5085 IRpcStubBuffer* This,
5086 IRpcChannelBuffer* pRpcChannelBuffer,
5087 PRPC_MESSAGE pRpcMessage,
5088 DWORD* pdwStubPhase);
5089HRESULT STDMETHODCALLTYPE IUri_GetPort_Proxy(
5090 IUri* This,
5091 DWORD *pdwPort);
5092void __RPC_STUB IUri_GetPort_Stub(
5093 IRpcStubBuffer* This,
5094 IRpcChannelBuffer* pRpcChannelBuffer,
5095 PRPC_MESSAGE pRpcMessage,
5096 DWORD* pdwStubPhase);
5097HRESULT STDMETHODCALLTYPE IUri_GetScheme_Proxy(
5098 IUri* This,
5099 DWORD *pdwScheme);
5100void __RPC_STUB IUri_GetScheme_Stub(
5101 IRpcStubBuffer* This,
5102 IRpcChannelBuffer* pRpcChannelBuffer,
5103 PRPC_MESSAGE pRpcMessage,
5104 DWORD* pdwStubPhase);
5105HRESULT STDMETHODCALLTYPE IUri_GetZone_Proxy(
5106 IUri* This,
5107 DWORD *pdwZone);
5108void __RPC_STUB IUri_GetZone_Stub(
5109 IRpcStubBuffer* This,
5110 IRpcChannelBuffer* pRpcChannelBuffer,
5111 PRPC_MESSAGE pRpcMessage,
5112 DWORD* pdwStubPhase);
5113HRESULT STDMETHODCALLTYPE IUri_GetProperties_Proxy(
5114 IUri* This,
5115 LPDWORD pdwFlags);
5116void __RPC_STUB IUri_GetProperties_Stub(
5117 IRpcStubBuffer* This,
5118 IRpcChannelBuffer* pRpcChannelBuffer,
5119 PRPC_MESSAGE pRpcMessage,
5120 DWORD* pdwStubPhase);
5121HRESULT STDMETHODCALLTYPE IUri_IsEqual_Proxy(
5122 IUri* This,
5123 IUri *pUri,
5124 BOOL *pfEqual);
5125void __RPC_STUB IUri_IsEqual_Stub(
5126 IRpcStubBuffer* This,
5127 IRpcChannelBuffer* pRpcChannelBuffer,
5128 PRPC_MESSAGE pRpcMessage,
5129 DWORD* pdwStubPhase);
5130
5131#endif /* __IUri_INTERFACE_DEFINED__ */
5132
5133HRESULT WINAPI CreateUri(LPCWSTR,DWORD,DWORD_PTR,IUri**);
5134HRESULT WINAPI CreateUriWithFragment(LPCWSTR,LPCWSTR,DWORD,DWORD_PTR,IUri**);
5135HRESULT WINAPI CreateUriFromMultiByteString(LPCSTR,DWORD,DWORD,DWORD,DWORD_PTR,IUri**);
5136#define Uri_HAS_ABSOLUTE_URI (1 << Uri_PROPERTY_ABSOLUTE_URI)
5137#define Uri_HAS_AUTHORITY (1 << Uri_PROPERTY_AUTHORITY)
5138#define Uri_HAS_DISPLAY_URI (1 << Uri_PROPERTY_DISPLAY_URI)
5139#define Uri_HAS_DOMAIN (1 << Uri_PROPERTY_DOMAIN)
5140#define Uri_HAS_EXTENSION (1 << Uri_PROPERTY_EXTENSION)
5141#define Uri_HAS_FRAGMENT (1 << Uri_PROPERTY_FRAGMENT)
5142#define Uri_HAS_HOST (1 << Uri_PROPERTY_HOST)
5143#define Uri_HAS_PASSWORD (1 << Uri_PROPERTY_PASSWORD)
5144#define Uri_HAS_PATH (1 << Uri_PROPERTY_PATH)
5145#define Uri_HAS_QUERY (1 << Uri_PROPERTY_QUERY)
5146#define Uri_HAS_RAW_URI (1 << Uri_PROPERTY_RAW_URI)
5147#define Uri_HAS_SCHEME_NAME (1 << Uri_PROPERTY_SCHEME_NAME)
5148#define Uri_HAS_USER_NAME (1 << Uri_PROPERTY_USER_NAME)
5149#define Uri_HAS_PATH_AND_QUERY (1 << Uri_PROPERTY_PATH_AND_QUERY)
5150#define Uri_HAS_USER_INFO (1 << Uri_PROPERTY_USER_INFO)
5151#define Uri_HAS_HOST_TYPE (1 << Uri_PROPERTY_HOST_TYPE)
5152#define Uri_HAS_PORT (1 << Uri_PROPERTY_PORT)
5153#define Uri_HAS_SCHEME (1 << Uri_PROPERTY_SCHEME)
5154#define Uri_HAS_ZONE (1 << Uri_PROPERTY_ZONE)
5155#define Uri_CREATE_ALLOW_RELATIVE 0x0001
5156#define Uri_CREATE_ALLOW_IMPLICIT_WILDCARD_SCHEME 0x0002
5157#define Uri_CREATE_ALLOW_IMPLICIT_FILE_SCHEME 0x0004
5158#define Uri_CREATE_NOFRAG 0x0008
5159#define Uri_CREATE_NO_CANONICALIZE 0x0010
5160#define Uri_CREATE_CANONICALIZE 0x0100
5161#define Uri_CREATE_FILE_USE_DOS_PATH 0x0020
5162#define Uri_CREATE_DECODE_EXTRA_INFO 0x0040
5163#define Uri_CREATE_NO_DECODE_EXTRA_INFO 0x0080
5164#define Uri_CREATE_CRACK_UNKNOWN_SCHEMES 0x0200
5165#define Uri_CREATE_NO_CRACK_UNKNOWN_SCHEMES 0x0400
5166#define Uri_CREATE_PRE_PROCESS_HTML_URI 0x0800
5167#define Uri_CREATE_NO_PRE_PROCESS_HTML_URI 0x1000
5168#define Uri_CREATE_IE_SETTINGS 0x2000
5169#define Uri_CREATE_NO_IE_SETTINGS 0x4000
5170#define Uri_CREATE_NO_ENCODE_FORBIDDEN_CHARACTERS 0x8000
5171#define Uri_DISPLAY_NO_FRAGMENT 0x00000001
5172#define Uri_PUNYCODE_IDN_HOST 0x00000002
5173#define Uri_DISPLAY_IDN_HOST 0x00000004
5174#define Uri_ENCODING_USER_INFO_AND_PATH_IS_PERCENT_ENCODED_UTF8 0x00000001
5175#define Uri_ENCODING_USER_INFO_AND_PATH_IS_CP 0x00000002
5176#define Uri_ENCODING_HOST_IS_IDN 0x00000004
5177#define Uri_ENCODING_HOST_IS_PERCENT_ENCODED_UTF8 0x00000008
5178#define Uri_ENCODING_HOST_IS_PERCENT_ENCODED_CP 0x00000010
5179#define Uri_ENCODING_QUERY_AND_FRAGMENT_IS_PERCENT_ENCODED_UTF8 0x00000020
5180#define Uri_ENCODING_QUERY_AND_FRAGMENT_IS_CP 0x00000040
5181#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)
5182#define UriBuilder_USE_ORIGINAL_FLAGS 0x00000001
5183/*****************************************************************************
5184 * IUriContainer interface
5185 */
5186#ifndef __IUriContainer_INTERFACE_DEFINED__
5187#define __IUriContainer_INTERFACE_DEFINED__
5188
5189DEFINE_GUID(IID_IUriContainer, 0xa158a630, 0xed6f, 0x45fb, 0xb9,0x87, 0xf6,0x86,0x76,0xf5,0x77,0x52);
5190#if defined(__cplusplus) && !defined(CINTERFACE)
5191interface IUriContainer : public IUnknown
5192{
5193 virtual HRESULT STDMETHODCALLTYPE GetIUri(
5194 IUri **ppIUri) = 0;
5195
5196};
5197#else
5198typedef struct IUriContainerVtbl {
5199 BEGIN_INTERFACE
5200
5201 /*** IUnknown methods ***/
5202 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5203 IUriContainer* This,
5204 REFIID riid,
5205 void **ppvObject);
5206
5207 ULONG (STDMETHODCALLTYPE *AddRef)(
5208 IUriContainer* This);
5209
5210 ULONG (STDMETHODCALLTYPE *Release)(
5211 IUriContainer* This);
5212
5213 /*** IUriContainer methods ***/
5214 HRESULT (STDMETHODCALLTYPE *GetIUri)(
5215 IUriContainer* This,
5216 IUri **ppIUri);
5217
5218 END_INTERFACE
5219} IUriContainerVtbl;
5220interface IUriContainer {
5221 CONST_VTBL IUriContainerVtbl* lpVtbl;
5222};
5223
5224#ifdef COBJMACROS
5225/*** IUnknown methods ***/
5226#define IUriContainer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5227#define IUriContainer_AddRef(This) (This)->lpVtbl->AddRef(This)
5228#define IUriContainer_Release(This) (This)->lpVtbl->Release(This)
5229/*** IUriContainer methods ***/
5230#define IUriContainer_GetIUri(This,ppIUri) (This)->lpVtbl->GetIUri(This,ppIUri)
5231#endif
5232
5233#endif
5234
5235HRESULT STDMETHODCALLTYPE IUriContainer_GetIUri_Proxy(
5236 IUriContainer* This,
5237 IUri **ppIUri);
5238void __RPC_STUB IUriContainer_GetIUri_Stub(
5239 IRpcStubBuffer* This,
5240 IRpcChannelBuffer* pRpcChannelBuffer,
5241 PRPC_MESSAGE pRpcMessage,
5242 DWORD* pdwStubPhase);
5243
5244#endif /* __IUriContainer_INTERFACE_DEFINED__ */
5245
5246/*****************************************************************************
5247 * IUriBuilder interface
5248 */
5249#ifndef __IUriBuilder_INTERFACE_DEFINED__
5250#define __IUriBuilder_INTERFACE_DEFINED__
5251
5252DEFINE_GUID(IID_IUriBuilder, 0x4221b2e1, 0x8955, 0x46c0, 0xbd,0x5b, 0xde,0x98,0x97,0x56,0x5d,0xe7);
5253#if defined(__cplusplus) && !defined(CINTERFACE)
5254interface IUriBuilder : public IUnknown
5255{
5256 virtual HRESULT STDMETHODCALLTYPE CreateUriSimple(
5257 DWORD dwAllowEncodingPropertyMask,
5258 DWORD_PTR dwReserved,
5259 IUri **ppIUri) = 0;
5260
5261 virtual HRESULT STDMETHODCALLTYPE CreateUri(
5262 DWORD dwCreateFlags,
5263 DWORD dwAllowEncodingPropertyMask,
5264 DWORD_PTR dwReserved,
5265 IUri **ppIUri) = 0;
5266
5267 virtual HRESULT STDMETHODCALLTYPE CreateUriWithFlags(
5268 DWORD dwCreateFlags,
5269 DWORD dwUriBuilderFlags,
5270 DWORD dwAllowEncodingPropertyMask,
5271 DWORD_PTR dwReserved,
5272 IUri **ppIUri) = 0;
5273
5274 virtual HRESULT STDMETHODCALLTYPE GetIUri(
5275 IUri **ppIUri) = 0;
5276
5277 virtual HRESULT STDMETHODCALLTYPE SetIUri(
5278 IUri *pIUri) = 0;
5279
5280 virtual HRESULT STDMETHODCALLTYPE GetFragment(
5281 DWORD *pcchFragment,
5282 LPCWSTR *ppwzFragment) = 0;
5283
5284 virtual HRESULT STDMETHODCALLTYPE GetHost(
5285 DWORD *pcchHost,
5286 LPCWSTR *ppwzHost) = 0;
5287
5288 virtual HRESULT STDMETHODCALLTYPE GetPassword(
5289 DWORD *pcchPassword,
5290 LPCWSTR *ppwzPassword) = 0;
5291
5292 virtual HRESULT STDMETHODCALLTYPE GetPath(
5293 DWORD *pcchPath,
5294 LPCWSTR *ppwzPath) = 0;
5295
5296 virtual HRESULT STDMETHODCALLTYPE GetPort(
5297 BOOL *pfHasPort,
5298 DWORD *pdwPort) = 0;
5299
5300 virtual HRESULT STDMETHODCALLTYPE GetQuery(
5301 DWORD *pcchQuery,
5302 LPCWSTR *ppwzQuery) = 0;
5303
5304 virtual HRESULT STDMETHODCALLTYPE GetSchemeName(
5305 DWORD *pcchSchemeName,
5306 LPCWSTR *ppwzSchemeName) = 0;
5307
5308 virtual HRESULT STDMETHODCALLTYPE GetUserName(
5309 DWORD *pcchUserName,
5310 LPCWSTR *ppwzUserName) = 0;
5311
5312 virtual HRESULT STDMETHODCALLTYPE SetFragment(
5313 LPCWSTR pwzNewValue) = 0;
5314
5315 virtual HRESULT STDMETHODCALLTYPE SetHost(
5316 LPCWSTR pwzNewValue) = 0;
5317
5318 virtual HRESULT STDMETHODCALLTYPE SetPassword(
5319 LPCWSTR pwzNewValue) = 0;
5320
5321 virtual HRESULT STDMETHODCALLTYPE SetPath(
5322 LPCWSTR pwzNewValue) = 0;
5323
5324 virtual HRESULT STDMETHODCALLTYPE SetPort(
5325 BOOL fHasPort,
5326 DWORD dwNewValue) = 0;
5327
5328 virtual HRESULT STDMETHODCALLTYPE SetQuery(
5329 LPCWSTR pwzNewValue) = 0;
5330
5331 virtual HRESULT STDMETHODCALLTYPE SetSchemeName(
5332 LPCWSTR pwzNewValue) = 0;
5333
5334 virtual HRESULT STDMETHODCALLTYPE SetUserName(
5335 LPCWSTR pwzNewValue) = 0;
5336
5337 virtual HRESULT STDMETHODCALLTYPE RemoveProperties(
5338 DWORD dwPropertyMask) = 0;
5339
5340 virtual HRESULT STDMETHODCALLTYPE HasBeenModified(
5341 BOOL *pfModified) = 0;
5342
5343};
5344#else
5345typedef struct IUriBuilderVtbl {
5346 BEGIN_INTERFACE
5347
5348 /*** IUnknown methods ***/
5349 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5350 IUriBuilder* This,
5351 REFIID riid,
5352 void **ppvObject);
5353
5354 ULONG (STDMETHODCALLTYPE *AddRef)(
5355 IUriBuilder* This);
5356
5357 ULONG (STDMETHODCALLTYPE *Release)(
5358 IUriBuilder* This);
5359
5360 /*** IUriBuilder methods ***/
5361 HRESULT (STDMETHODCALLTYPE *CreateUriSimple)(
5362 IUriBuilder* This,
5363 DWORD dwAllowEncodingPropertyMask,
5364 DWORD_PTR dwReserved,
5365 IUri **ppIUri);
5366
5367 HRESULT (STDMETHODCALLTYPE *CreateUri)(
5368 IUriBuilder* This,
5369 DWORD dwCreateFlags,
5370 DWORD dwAllowEncodingPropertyMask,
5371 DWORD_PTR dwReserved,
5372 IUri **ppIUri);
5373
5374 HRESULT (STDMETHODCALLTYPE *CreateUriWithFlags)(
5375 IUriBuilder* This,
5376 DWORD dwCreateFlags,
5377 DWORD dwUriBuilderFlags,
5378 DWORD dwAllowEncodingPropertyMask,
5379 DWORD_PTR dwReserved,
5380 IUri **ppIUri);
5381
5382 HRESULT (STDMETHODCALLTYPE *GetIUri)(
5383 IUriBuilder* This,
5384 IUri **ppIUri);
5385
5386 HRESULT (STDMETHODCALLTYPE *SetIUri)(
5387 IUriBuilder* This,
5388 IUri *pIUri);
5389
5390 HRESULT (STDMETHODCALLTYPE *GetFragment)(
5391 IUriBuilder* This,
5392 DWORD *pcchFragment,
5393 LPCWSTR *ppwzFragment);
5394
5395 HRESULT (STDMETHODCALLTYPE *GetHost)(
5396 IUriBuilder* This,
5397 DWORD *pcchHost,
5398 LPCWSTR *ppwzHost);
5399
5400 HRESULT (STDMETHODCALLTYPE *GetPassword)(
5401 IUriBuilder* This,
5402 DWORD *pcchPassword,
5403 LPCWSTR *ppwzPassword);
5404
5405 HRESULT (STDMETHODCALLTYPE *GetPath)(
5406 IUriBuilder* This,
5407 DWORD *pcchPath,
5408 LPCWSTR *ppwzPath);
5409
5410 HRESULT (STDMETHODCALLTYPE *GetPort)(
5411 IUriBuilder* This,
5412 BOOL *pfHasPort,
5413 DWORD *pdwPort);
5414
5415 HRESULT (STDMETHODCALLTYPE *GetQuery)(
5416 IUriBuilder* This,
5417 DWORD *pcchQuery,
5418 LPCWSTR *ppwzQuery);
5419
5420 HRESULT (STDMETHODCALLTYPE *GetSchemeName)(
5421 IUriBuilder* This,
5422 DWORD *pcchSchemeName,
5423 LPCWSTR *ppwzSchemeName);
5424
5425 HRESULT (STDMETHODCALLTYPE *GetUserName)(
5426 IUriBuilder* This,
5427 DWORD *pcchUserName,
5428 LPCWSTR *ppwzUserName);
5429
5430 HRESULT (STDMETHODCALLTYPE *SetFragment)(
5431 IUriBuilder* This,
5432 LPCWSTR pwzNewValue);
5433
5434 HRESULT (STDMETHODCALLTYPE *SetHost)(
5435 IUriBuilder* This,
5436 LPCWSTR pwzNewValue);
5437
5438 HRESULT (STDMETHODCALLTYPE *SetPassword)(
5439 IUriBuilder* This,
5440 LPCWSTR pwzNewValue);
5441
5442 HRESULT (STDMETHODCALLTYPE *SetPath)(
5443 IUriBuilder* This,
5444 LPCWSTR pwzNewValue);
5445
5446 HRESULT (STDMETHODCALLTYPE *SetPort)(
5447 IUriBuilder* This,
5448 BOOL fHasPort,
5449 DWORD dwNewValue);
5450
5451 HRESULT (STDMETHODCALLTYPE *SetQuery)(
5452 IUriBuilder* This,
5453 LPCWSTR pwzNewValue);
5454
5455 HRESULT (STDMETHODCALLTYPE *SetSchemeName)(
5456 IUriBuilder* This,
5457 LPCWSTR pwzNewValue);
5458
5459 HRESULT (STDMETHODCALLTYPE *SetUserName)(
5460 IUriBuilder* This,
5461 LPCWSTR pwzNewValue);
5462
5463 HRESULT (STDMETHODCALLTYPE *RemoveProperties)(
5464 IUriBuilder* This,
5465 DWORD dwPropertyMask);
5466
5467 HRESULT (STDMETHODCALLTYPE *HasBeenModified)(
5468 IUriBuilder* This,
5469 BOOL *pfModified);
5470
5471 END_INTERFACE
5472} IUriBuilderVtbl;
5473interface IUriBuilder {
5474 CONST_VTBL IUriBuilderVtbl* lpVtbl;
5475};
5476
5477#ifdef COBJMACROS
5478/*** IUnknown methods ***/
5479#define IUriBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5480#define IUriBuilder_AddRef(This) (This)->lpVtbl->AddRef(This)
5481#define IUriBuilder_Release(This) (This)->lpVtbl->Release(This)
5482/*** IUriBuilder methods ***/
5483#define IUriBuilder_CreateUriSimple(This,dwAllowEncodingPropertyMask,dwReserved,ppIUri) (This)->lpVtbl->CreateUriSimple(This,dwAllowEncodingPropertyMask,dwReserved,ppIUri)
5484#define IUriBuilder_CreateUri(This,dwCreateFlags,dwAllowEncodingPropertyMask,dwReserved,ppIUri) (This)->lpVtbl->CreateUri(This,dwCreateFlags,dwAllowEncodingPropertyMask,dwReserved,ppIUri)
5485#define IUriBuilder_CreateUriWithFlags(This,dwCreateFlags,dwUriBuilderFlags,dwAllowEncodingPropertyMask,dwReserved,ppIUri) (This)->lpVtbl->CreateUriWithFlags(This,dwCreateFlags,dwUriBuilderFlags,dwAllowEncodingPropertyMask,dwReserved,ppIUri)
5486#define IUriBuilder_GetIUri(This,ppIUri) (This)->lpVtbl->GetIUri(This,ppIUri)
5487#define IUriBuilder_SetIUri(This,pIUri) (This)->lpVtbl->SetIUri(This,pIUri)
5488#define IUriBuilder_GetFragment(This,pcchFragment,ppwzFragment) (This)->lpVtbl->GetFragment(This,pcchFragment,ppwzFragment)
5489#define IUriBuilder_GetHost(This,pcchHost,ppwzHost) (This)->lpVtbl->GetHost(This,pcchHost,ppwzHost)
5490#define IUriBuilder_GetPassword(This,pcchPassword,ppwzPassword) (This)->lpVtbl->GetPassword(This,pcchPassword,ppwzPassword)
5491#define IUriBuilder_GetPath(This,pcchPath,ppwzPath) (This)->lpVtbl->GetPath(This,pcchPath,ppwzPath)
5492#define IUriBuilder_GetPort(This,pfHasPort,pdwPort) (This)->lpVtbl->GetPort(This,pfHasPort,pdwPort)
5493#define IUriBuilder_GetQuery(This,pcchQuery,ppwzQuery) (This)->lpVtbl->GetQuery(This,pcchQuery,ppwzQuery)
5494#define IUriBuilder_GetSchemeName(This,pcchSchemeName,ppwzSchemeName) (This)->lpVtbl->GetSchemeName(This,pcchSchemeName,ppwzSchemeName)
5495#define IUriBuilder_GetUserName(This,pcchUserName,ppwzUserName) (This)->lpVtbl->GetUserName(This,pcchUserName,ppwzUserName)
5496#define IUriBuilder_SetFragment(This,pwzNewValue) (This)->lpVtbl->SetFragment(This,pwzNewValue)
5497#define IUriBuilder_SetHost(This,pwzNewValue) (This)->lpVtbl->SetHost(This,pwzNewValue)
5498#define IUriBuilder_SetPassword(This,pwzNewValue) (This)->lpVtbl->SetPassword(This,pwzNewValue)
5499#define IUriBuilder_SetPath(This,pwzNewValue) (This)->lpVtbl->SetPath(This,pwzNewValue)
5500#define IUriBuilder_SetPort(This,fHasPort,dwNewValue) (This)->lpVtbl->SetPort(This,fHasPort,dwNewValue)
5501#define IUriBuilder_SetQuery(This,pwzNewValue) (This)->lpVtbl->SetQuery(This,pwzNewValue)
5502#define IUriBuilder_SetSchemeName(This,pwzNewValue) (This)->lpVtbl->SetSchemeName(This,pwzNewValue)
5503#define IUriBuilder_SetUserName(This,pwzNewValue) (This)->lpVtbl->SetUserName(This,pwzNewValue)
5504#define IUriBuilder_RemoveProperties(This,dwPropertyMask) (This)->lpVtbl->RemoveProperties(This,dwPropertyMask)
5505#define IUriBuilder_HasBeenModified(This,pfModified) (This)->lpVtbl->HasBeenModified(This,pfModified)
5506#endif
5507
5508#endif
5509
5510HRESULT STDMETHODCALLTYPE IUriBuilder_CreateUriSimple_Proxy(
5511 IUriBuilder* This,
5512 DWORD dwAllowEncodingPropertyMask,
5513 DWORD_PTR dwReserved,
5514 IUri **ppIUri);
5515void __RPC_STUB IUriBuilder_CreateUriSimple_Stub(
5516 IRpcStubBuffer* This,
5517 IRpcChannelBuffer* pRpcChannelBuffer,
5518 PRPC_MESSAGE pRpcMessage,
5519 DWORD* pdwStubPhase);
5520HRESULT STDMETHODCALLTYPE IUriBuilder_CreateUri_Proxy(
5521 IUriBuilder* This,
5522 DWORD dwCreateFlags,
5523 DWORD dwAllowEncodingPropertyMask,
5524 DWORD_PTR dwReserved,
5525 IUri **ppIUri);
5526void __RPC_STUB IUriBuilder_CreateUri_Stub(
5527 IRpcStubBuffer* This,
5528 IRpcChannelBuffer* pRpcChannelBuffer,
5529 PRPC_MESSAGE pRpcMessage,
5530 DWORD* pdwStubPhase);
5531HRESULT STDMETHODCALLTYPE IUriBuilder_CreateUriWithFlags_Proxy(
5532 IUriBuilder* This,
5533 DWORD dwCreateFlags,
5534 DWORD dwUriBuilderFlags,
5535 DWORD dwAllowEncodingPropertyMask,
5536 DWORD_PTR dwReserved,
5537 IUri **ppIUri);
5538void __RPC_STUB IUriBuilder_CreateUriWithFlags_Stub(
5539 IRpcStubBuffer* This,
5540 IRpcChannelBuffer* pRpcChannelBuffer,
5541 PRPC_MESSAGE pRpcMessage,
5542 DWORD* pdwStubPhase);
5543HRESULT STDMETHODCALLTYPE IUriBuilder_GetIUri_Proxy(
5544 IUriBuilder* This,
5545 IUri **ppIUri);
5546void __RPC_STUB IUriBuilder_GetIUri_Stub(
5547 IRpcStubBuffer* This,
5548 IRpcChannelBuffer* pRpcChannelBuffer,
5549 PRPC_MESSAGE pRpcMessage,
5550 DWORD* pdwStubPhase);
5551HRESULT STDMETHODCALLTYPE IUriBuilder_SetIUri_Proxy(
5552 IUriBuilder* This,
5553 IUri *pIUri);
5554void __RPC_STUB IUriBuilder_SetIUri_Stub(
5555 IRpcStubBuffer* This,
5556 IRpcChannelBuffer* pRpcChannelBuffer,
5557 PRPC_MESSAGE pRpcMessage,
5558 DWORD* pdwStubPhase);
5559HRESULT STDMETHODCALLTYPE IUriBuilder_GetFragment_Proxy(
5560 IUriBuilder* This,
5561 DWORD *pcchFragment,
5562 LPCWSTR *ppwzFragment);
5563void __RPC_STUB IUriBuilder_GetFragment_Stub(
5564 IRpcStubBuffer* This,
5565 IRpcChannelBuffer* pRpcChannelBuffer,
5566 PRPC_MESSAGE pRpcMessage,
5567 DWORD* pdwStubPhase);
5568HRESULT STDMETHODCALLTYPE IUriBuilder_GetHost_Proxy(
5569 IUriBuilder* This,
5570 DWORD *pcchHost,
5571 LPCWSTR *ppwzHost);
5572void __RPC_STUB IUriBuilder_GetHost_Stub(
5573 IRpcStubBuffer* This,
5574 IRpcChannelBuffer* pRpcChannelBuffer,
5575 PRPC_MESSAGE pRpcMessage,
5576 DWORD* pdwStubPhase);
5577HRESULT STDMETHODCALLTYPE IUriBuilder_GetPassword_Proxy(
5578 IUriBuilder* This,
5579 DWORD *pcchPassword,
5580 LPCWSTR *ppwzPassword);
5581void __RPC_STUB IUriBuilder_GetPassword_Stub(
5582 IRpcStubBuffer* This,
5583 IRpcChannelBuffer* pRpcChannelBuffer,
5584 PRPC_MESSAGE pRpcMessage,
5585 DWORD* pdwStubPhase);
5586HRESULT STDMETHODCALLTYPE IUriBuilder_GetPath_Proxy(
5587 IUriBuilder* This,
5588 DWORD *pcchPath,
5589 LPCWSTR *ppwzPath);
5590void __RPC_STUB IUriBuilder_GetPath_Stub(
5591 IRpcStubBuffer* This,
5592 IRpcChannelBuffer* pRpcChannelBuffer,
5593 PRPC_MESSAGE pRpcMessage,
5594 DWORD* pdwStubPhase);
5595HRESULT STDMETHODCALLTYPE IUriBuilder_GetPort_Proxy(
5596 IUriBuilder* This,
5597 BOOL *pfHasPort,
5598 DWORD *pdwPort);
5599void __RPC_STUB IUriBuilder_GetPort_Stub(
5600 IRpcStubBuffer* This,
5601 IRpcChannelBuffer* pRpcChannelBuffer,
5602 PRPC_MESSAGE pRpcMessage,
5603 DWORD* pdwStubPhase);
5604HRESULT STDMETHODCALLTYPE IUriBuilder_GetQuery_Proxy(
5605 IUriBuilder* This,
5606 DWORD *pcchQuery,
5607 LPCWSTR *ppwzQuery);
5608void __RPC_STUB IUriBuilder_GetQuery_Stub(
5609 IRpcStubBuffer* This,
5610 IRpcChannelBuffer* pRpcChannelBuffer,
5611 PRPC_MESSAGE pRpcMessage,
5612 DWORD* pdwStubPhase);
5613HRESULT STDMETHODCALLTYPE IUriBuilder_GetSchemeName_Proxy(
5614 IUriBuilder* This,
5615 DWORD *pcchSchemeName,
5616 LPCWSTR *ppwzSchemeName);
5617void __RPC_STUB IUriBuilder_GetSchemeName_Stub(
5618 IRpcStubBuffer* This,
5619 IRpcChannelBuffer* pRpcChannelBuffer,
5620 PRPC_MESSAGE pRpcMessage,
5621 DWORD* pdwStubPhase);
5622HRESULT STDMETHODCALLTYPE IUriBuilder_GetUserName_Proxy(
5623 IUriBuilder* This,
5624 DWORD *pcchUserName,
5625 LPCWSTR *ppwzUserName);
5626void __RPC_STUB IUriBuilder_GetUserName_Stub(
5627 IRpcStubBuffer* This,
5628 IRpcChannelBuffer* pRpcChannelBuffer,
5629 PRPC_MESSAGE pRpcMessage,
5630 DWORD* pdwStubPhase);
5631HRESULT STDMETHODCALLTYPE IUriBuilder_SetFragment_Proxy(
5632 IUriBuilder* This,
5633 LPCWSTR pwzNewValue);
5634void __RPC_STUB IUriBuilder_SetFragment_Stub(
5635 IRpcStubBuffer* This,
5636 IRpcChannelBuffer* pRpcChannelBuffer,
5637 PRPC_MESSAGE pRpcMessage,
5638 DWORD* pdwStubPhase);
5639HRESULT STDMETHODCALLTYPE IUriBuilder_SetHost_Proxy(
5640 IUriBuilder* This,
5641 LPCWSTR pwzNewValue);
5642void __RPC_STUB IUriBuilder_SetHost_Stub(
5643 IRpcStubBuffer* This,
5644 IRpcChannelBuffer* pRpcChannelBuffer,
5645 PRPC_MESSAGE pRpcMessage,
5646 DWORD* pdwStubPhase);
5647HRESULT STDMETHODCALLTYPE IUriBuilder_SetPassword_Proxy(
5648 IUriBuilder* This,
5649 LPCWSTR pwzNewValue);
5650void __RPC_STUB IUriBuilder_SetPassword_Stub(
5651 IRpcStubBuffer* This,
5652 IRpcChannelBuffer* pRpcChannelBuffer,
5653 PRPC_MESSAGE pRpcMessage,
5654 DWORD* pdwStubPhase);
5655HRESULT STDMETHODCALLTYPE IUriBuilder_SetPath_Proxy(
5656 IUriBuilder* This,
5657 LPCWSTR pwzNewValue);
5658void __RPC_STUB IUriBuilder_SetPath_Stub(
5659 IRpcStubBuffer* This,
5660 IRpcChannelBuffer* pRpcChannelBuffer,
5661 PRPC_MESSAGE pRpcMessage,
5662 DWORD* pdwStubPhase);
5663HRESULT STDMETHODCALLTYPE IUriBuilder_SetPort_Proxy(
5664 IUriBuilder* This,
5665 BOOL fHasPort,
5666 DWORD dwNewValue);
5667void __RPC_STUB IUriBuilder_SetPort_Stub(
5668 IRpcStubBuffer* This,
5669 IRpcChannelBuffer* pRpcChannelBuffer,
5670 PRPC_MESSAGE pRpcMessage,
5671 DWORD* pdwStubPhase);
5672HRESULT STDMETHODCALLTYPE IUriBuilder_SetQuery_Proxy(
5673 IUriBuilder* This,
5674 LPCWSTR pwzNewValue);
5675void __RPC_STUB IUriBuilder_SetQuery_Stub(
5676 IRpcStubBuffer* This,
5677 IRpcChannelBuffer* pRpcChannelBuffer,
5678 PRPC_MESSAGE pRpcMessage,
5679 DWORD* pdwStubPhase);
5680HRESULT STDMETHODCALLTYPE IUriBuilder_SetSchemeName_Proxy(
5681 IUriBuilder* This,
5682 LPCWSTR pwzNewValue);
5683void __RPC_STUB IUriBuilder_SetSchemeName_Stub(
5684 IRpcStubBuffer* This,
5685 IRpcChannelBuffer* pRpcChannelBuffer,
5686 PRPC_MESSAGE pRpcMessage,
5687 DWORD* pdwStubPhase);
5688HRESULT STDMETHODCALLTYPE IUriBuilder_SetUserName_Proxy(
5689 IUriBuilder* This,
5690 LPCWSTR pwzNewValue);
5691void __RPC_STUB IUriBuilder_SetUserName_Stub(
5692 IRpcStubBuffer* This,
5693 IRpcChannelBuffer* pRpcChannelBuffer,
5694 PRPC_MESSAGE pRpcMessage,
5695 DWORD* pdwStubPhase);
5696HRESULT STDMETHODCALLTYPE IUriBuilder_RemoveProperties_Proxy(
5697 IUriBuilder* This,
5698 DWORD dwPropertyMask);
5699void __RPC_STUB IUriBuilder_RemoveProperties_Stub(
5700 IRpcStubBuffer* This,
5701 IRpcChannelBuffer* pRpcChannelBuffer,
5702 PRPC_MESSAGE pRpcMessage,
5703 DWORD* pdwStubPhase);
5704HRESULT STDMETHODCALLTYPE IUriBuilder_HasBeenModified_Proxy(
5705 IUriBuilder* This,
5706 BOOL *pfModified);
5707void __RPC_STUB IUriBuilder_HasBeenModified_Stub(
5708 IRpcStubBuffer* This,
5709 IRpcChannelBuffer* pRpcChannelBuffer,
5710 PRPC_MESSAGE pRpcMessage,
5711 DWORD* pdwStubPhase);
5712
5713#endif /* __IUriBuilder_INTERFACE_DEFINED__ */
5714
5715/*****************************************************************************
5716 * IInternetProtocolEx interface
5717 */
5718#ifndef __IInternetProtocolEx_INTERFACE_DEFINED__
5719#define __IInternetProtocolEx_INTERFACE_DEFINED__
5720
5721DEFINE_GUID(IID_IInternetProtocolEx, 0xc7a98e66, 0x1010, 0x492c, 0xa1,0xc8, 0xc8,0x09,0xe1,0xf7,0x59,0x05);
5722#if defined(__cplusplus) && !defined(CINTERFACE)
5723interface IInternetProtocolEx : public IInternetProtocol
5724{
5725 virtual HRESULT STDMETHODCALLTYPE StartEx(
5726 IUri *pUri,
5727 IInternetProtocolSink *pOIProtSink,
5728 IInternetBindInfo *pOIBindInfo,
5729 DWORD grfPI,
5730 HANDLE *dwReserved) = 0;
5731
5732};
5733#else
5734typedef struct IInternetProtocolExVtbl {
5735 BEGIN_INTERFACE
5736
5737 /*** IUnknown methods ***/
5738 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5739 IInternetProtocolEx* This,
5740 REFIID riid,
5741 void **ppvObject);
5742
5743 ULONG (STDMETHODCALLTYPE *AddRef)(
5744 IInternetProtocolEx* This);
5745
5746 ULONG (STDMETHODCALLTYPE *Release)(
5747 IInternetProtocolEx* This);
5748
5749 /*** IInternetProtocolRoot methods ***/
5750 HRESULT (STDMETHODCALLTYPE *Start)(
5751 IInternetProtocolEx* This,
5752 LPCWSTR szUrl,
5753 IInternetProtocolSink *pOIProtSink,
5754 IInternetBindInfo *pOIBindInfo,
5755 DWORD grfPI,
5756 HANDLE_PTR dwReserved);
5757
5758 HRESULT (STDMETHODCALLTYPE *Continue)(
5759 IInternetProtocolEx* This,
5760 PROTOCOLDATA *pProtocolData);
5761
5762 HRESULT (STDMETHODCALLTYPE *Abort)(
5763 IInternetProtocolEx* This,
5764 HRESULT hrReason,
5765 DWORD dwOptions);
5766
5767 HRESULT (STDMETHODCALLTYPE *Terminate)(
5768 IInternetProtocolEx* This,
5769 DWORD dwOptions);
5770
5771 HRESULT (STDMETHODCALLTYPE *Suspend)(
5772 IInternetProtocolEx* This);
5773
5774 HRESULT (STDMETHODCALLTYPE *Resume)(
5775 IInternetProtocolEx* This);
5776
5777 /*** IInternetProtocol methods ***/
5778 HRESULT (STDMETHODCALLTYPE *Read)(
5779 IInternetProtocolEx* This,
5780 void *pv,
5781 ULONG cb,
5782 ULONG *pcbRead);
5783
5784 HRESULT (STDMETHODCALLTYPE *Seek)(
5785 IInternetProtocolEx* This,
5786 LARGE_INTEGER dlibMove,
5787 DWORD dwOrigin,
5788 ULARGE_INTEGER *plibNewPosition);
5789
5790 HRESULT (STDMETHODCALLTYPE *LockRequest)(
5791 IInternetProtocolEx* This,
5792 DWORD dwOptions);
5793
5794 HRESULT (STDMETHODCALLTYPE *UnlockRequest)(
5795 IInternetProtocolEx* This);
5796
5797 /*** IInternetProtocolEx methods ***/
5798 HRESULT (STDMETHODCALLTYPE *StartEx)(
5799 IInternetProtocolEx* This,
5800 IUri *pUri,
5801 IInternetProtocolSink *pOIProtSink,
5802 IInternetBindInfo *pOIBindInfo,
5803 DWORD grfPI,
5804 HANDLE *dwReserved);
5805
5806 END_INTERFACE
5807} IInternetProtocolExVtbl;
5808interface IInternetProtocolEx {
5809 CONST_VTBL IInternetProtocolExVtbl* lpVtbl;
5810};
5811
5812#ifdef COBJMACROS
5813/*** IUnknown methods ***/
5814#define IInternetProtocolEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5815#define IInternetProtocolEx_AddRef(This) (This)->lpVtbl->AddRef(This)
5816#define IInternetProtocolEx_Release(This) (This)->lpVtbl->Release(This)
5817/*** IInternetProtocolRoot methods ***/
5818#define IInternetProtocolEx_Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved)
5819#define IInternetProtocolEx_Continue(This,pProtocolData) (This)->lpVtbl->Continue(This,pProtocolData)
5820#define IInternetProtocolEx_Abort(This,hrReason,dwOptions) (This)->lpVtbl->Abort(This,hrReason,dwOptions)
5821#define IInternetProtocolEx_Terminate(This,dwOptions) (This)->lpVtbl->Terminate(This,dwOptions)
5822#define IInternetProtocolEx_Suspend(This) (This)->lpVtbl->Suspend(This)
5823#define IInternetProtocolEx_Resume(This) (This)->lpVtbl->Resume(This)
5824/*** IInternetProtocol methods ***/
5825#define IInternetProtocolEx_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
5826#define IInternetProtocolEx_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
5827#define IInternetProtocolEx_LockRequest(This,dwOptions) (This)->lpVtbl->LockRequest(This,dwOptions)
5828#define IInternetProtocolEx_UnlockRequest(This) (This)->lpVtbl->UnlockRequest(This)
5829/*** IInternetProtocolEx methods ***/
5830#define IInternetProtocolEx_StartEx(This,pUri,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->StartEx(This,pUri,pOIProtSink,pOIBindInfo,grfPI,dwReserved)
5831#endif
5832
5833#endif
5834
5835HRESULT STDMETHODCALLTYPE IInternetProtocolEx_StartEx_Proxy(
5836 IInternetProtocolEx* This,
5837 IUri *pUri,
5838 IInternetProtocolSink *pOIProtSink,
5839 IInternetBindInfo *pOIBindInfo,
5840 DWORD grfPI,
5841 HANDLE *dwReserved);
5842void __RPC_STUB IInternetProtocolEx_StartEx_Stub(
5843 IRpcStubBuffer* This,
5844 IRpcChannelBuffer* pRpcChannelBuffer,
5845 PRPC_MESSAGE pRpcMessage,
5846 DWORD* pdwStubPhase);
5847
5848#endif /* __IInternetProtocolEx_INTERFACE_DEFINED__ */
5849
5850#define CONFIRMSAFETYACTION_LOADOBJECT 0x00000001
5851struct CONFIRMSAFETY {
5852 CLSID clsid;
5853 IUnknown *pUnk;
5854 DWORD dwFlags;
5855};
5856
5857EXTERN_C const GUID GUID_CUSTOM_CONFIRMOBJECTSAFETY;
5858DEFINE_GUID(CLSID_InternetSecurityManager, 0x7b8a2d94, 0x0ac9, 0x11d1, 0x89, 0x6c, 0x00, 0xc0, 0x4f, 0xB6, 0xbf, 0xc4);
5859DEFINE_GUID(CLSID_InternetZoneManager, 0x7B8A2D95, 0x0AC9, 0x11D1, 0x89, 0x6C, 0x00, 0xC0, 0x4F, 0xB6, 0xBF, 0xC4);
5860DEFINE_GUID(IID_IAsyncMoniker, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
5861DEFINE_GUID(IID_IAsyncBindCtx, 0x79EAC9D4, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
5862DEFINE_GUID(CLSID_StdURLMoniker, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
5863DEFINE_GUID(CLSID_DeCompMimeFilter, 0x8f6b0360, 0xb80d, 0x11d0, 0xa9,0xb3, 0x00,0x60,0x97,0x94,0x23,0x11);
5864DEFINE_GUID(CLSID_CdlProtocol, 0x3dd53d40, 0x7b8b, 0x11D0, 0xb0,0x13, 0x00,0xaa,0x00,0x59,0xce,0x02);
5865DEFINE_GUID(CLSID_FileProtocol, 0x79EAC9E7, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
5866DEFINE_GUID(CLSID_FtpProtocol, 0x79EAC9E3, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
5867DEFINE_GUID(CLSID_GopherProtocol, 0x79EAC9E4, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
5868DEFINE_GUID(CLSID_HttpProtocol, 0x79EAC9E2, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
5869DEFINE_GUID(CLSID_HttpSProtocol, 0x79EAC9E5, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
5870DEFINE_GUID(CLSID_MkProtocol, 0x79EAC9E6, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
5871#define URLMON_OPTION_USERAGENT 0x10000001
5872#define URLMON_OPTION_USERAGENT_REFRESH 0x10000002
5873#define URLMON_OPTION_URL_ENCODING 0x10000004
5874#define MK_S_ASYNCHRONOUS _HRESULT_TYPEDEF_(0x000401E8)
5875#ifndef S_ASYNCHRONOUS
5876#define S_ASYNCHRONOUS MK_S_ASYNCHRONOUS
5877#endif
5878#define INET_E_ERROR_FIRST _HRESULT_TYPEDEF_(0x800C0002)
5879#define INET_E_INVALID_URL _HRESULT_TYPEDEF_(0x800C0002)
5880#define INET_E_NO_SESSION _HRESULT_TYPEDEF_(0x800C0003)
5881#define INET_E_CANNOT_CONNECT _HRESULT_TYPEDEF_(0x800C0004)
5882#define INET_E_RESOURCE_NOT_FOUND _HRESULT_TYPEDEF_(0x800C0005)
5883#define INET_E_OBJECT_NOT_FOUND _HRESULT_TYPEDEF_(0x800C0006)
5884#define INET_E_DATA_NOT_AVAILABLE _HRESULT_TYPEDEF_(0x800C0007)
5885#define INET_E_DOWNLOAD_FAILURE _HRESULT_TYPEDEF_(0x800C0008)
5886#define INET_E_AUTHENTICATION_REQUIRED _HRESULT_TYPEDEF_(0x800C0009)
5887#define INET_E_NO_VALID_MEDIA _HRESULT_TYPEDEF_(0x800C000A)
5888#define INET_E_CONNECTION_TIMEOUT _HRESULT_TYPEDEF_(0x800C000B)
5889#define INET_E_INVALID_REQUEST _HRESULT_TYPEDEF_(0x800C000C)
5890#define INET_E_UNKNOWN_PROTOCOL _HRESULT_TYPEDEF_(0x800C000D)
5891#define INET_E_SECURITY_PROBLEM _HRESULT_TYPEDEF_(0x800C000E)
5892#define INET_E_CANNOT_LOAD_DATA _HRESULT_TYPEDEF_(0x800C000F)
5893#define INET_E_CANNOT_INSTANTIATE_OBJECT _HRESULT_TYPEDEF_(0x800C0010)
5894#define INET_E_USE_DEFAULT_PROTOCOLHANDLER _HRESULT_TYPEDEF_(0x800C0011)
5895#define INET_E_QUERYOPTION_UNKNOWN _HRESULT_TYPEDEF_(0x800C0013)
5896#define INET_E_REDIRECT_FAILED _HRESULT_TYPEDEF_(0x800C0014)
5897#define INET_E_REDIRECT_TO_DIR _HRESULT_TYPEDEF_(0x800C0015)
5898#define INET_E_CANNOT_LOCK_REQUEST _HRESULT_TYPEDEF_(0x800C0016)
5899#define INET_E_ERROR_LAST INET_E_REDIRECT_TO_DIR
5900#define INET_E_DEFAULT_ACTION INET_E_USE_DEFAULT_PROTOCOLHANDLER
5901HRESULT WINAPI CoGetClassObjectFromURL(REFCLSID, LPCWSTR, DWORD, DWORD, LPCWSTR, LPBINDCTX, DWORD, LPVOID, REFIID, LPVOID*);
5902HRESULT WINAPI CreateURLMoniker(IMoniker *pmkContext, LPCWSTR szURL, IMoniker **ppmk);
5903HRESULT WINAPI CreateURLMonikerEx(IMoniker*,LPCWSTR,IMoniker**,DWORD);
5904HRESULT WINAPI CreateURLMonikerEx2(IMoniker*,IUri*,IMoniker**,DWORD);
5905HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusCallback *pbsc, IBindStatusCallback **ppbsc, DWORD dwReserved);
5906HRESULT WINAPI CompareSecurityIds(BYTE*,DWORD,BYTE*,DWORD,DWORD);
5907HRESULT WINAPI URLDownloadToFileA(LPUNKNOWN,LPCSTR,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
5908HRESULT WINAPI URLDownloadToFileW(LPUNKNOWN,LPCWSTR,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
5909HRESULT WINAPI URLDownloadToCacheFileA(LPUNKNOWN,LPCSTR,LPSTR,DWORD,DWORD,LPBINDSTATUSCALLBACK);
5910HRESULT WINAPI URLDownloadToCacheFileW(LPUNKNOWN,LPCWSTR,LPWSTR,DWORD,DWORD,LPBINDSTATUSCALLBACK);
5911HRESULT WINAPI CoInternetGetSession(DWORD,IInternetSession**,DWORD);
5912HRESULT WINAPI MkParseDisplayNameEx(IBindCtx*,LPCWSTR,ULONG*,IMoniker**);
5913HRESULT WINAPI IsAsyncMoniker(IMoniker* pmk);
5914HRESULT WINAPI CreateAsyncBindCtx(DWORD, IBindStatusCallback*, IEnumFORMATETC*, IBindCtx**);
5915HRESULT WINAPI CreateAsyncBindCtxEx(IBindCtx*,DWORD,IBindStatusCallback*,IEnumFORMATETC*,IBindCtx**,DWORD);
5916HRESULT WINAPI CoInternetCreateSecurityManager(IServiceProvider*,IInternetSecurityManager**,DWORD);
5917HRESULT WINAPI CoInternetCombineUrl(LPCWSTR,LPCWSTR,DWORD,LPWSTR,DWORD,DWORD*,DWORD);
5918HRESULT WINAPI CoInternetCompareUrl(LPCWSTR,LPCWSTR,DWORD);
5919HRESULT WINAPI CoInternetCreateZoneManager(IServiceProvider*, IInternetZoneManager**, DWORD);
5920HRESULT WINAPI CoInternetParseUrl(LPCWSTR,PARSEACTION,DWORD,LPWSTR,DWORD,DWORD*,DWORD);
5921HRESULT WINAPI CoInternetQueryInfo(LPCWSTR,QUERYOPTION,DWORD,LPVOID,DWORD,DWORD*,DWORD);
5922HRESULT WINAPI CoInternetSetFeatureEnabled(INTERNETFEATURELIST,DWORD,BOOL);
5923HRESULT WINAPI CoInternetGetSecurityUrl(LPCWSTR,LPWSTR*,PSUACTION,DWORD);
5924HRESULT WINAPI CreateFormatEnumerator(UINT,FORMATETC*,IEnumFORMATETC**);
5925HRESULT WINAPI GetSoftwareUpdateInfo( LPCWSTR szDistUnit, LPSOFTDISTINFO psdi);
5926HRESULT WINAPI FaultInIEFeature(HWND,uCLSSPEC*,QUERYCONTEXT*,DWORD);
5927HRESULT WINAPI FindMimeFromData(LPBC,LPCWSTR,LPVOID,DWORD,LPCWSTR,DWORD,LPWSTR*,DWORD);
5928HRESULT WINAPI GetClassFileOrMime(LPBC,LPCWSTR,LPVOID,DWORD,LPCWSTR,DWORD,CLSID*);
5929HRESULT WINAPI HlinkGoBack(IUnknown*);
5930HRESULT WINAPI HlinkGoForward(IUnknown*);
5931HRESULT WINAPI HlinkNavigateMoniker(IUnknown*,IMoniker*);
5932HRESULT WINAPI HlinkNavigateString(IUnknown*,LPCWSTR);
5933HRESULT WINAPI HlinkSimpleNavigateToMoniker(IMoniker*,LPCWSTR,LPCWSTR,IUnknown*,IBindCtx*,IBindStatusCallback*,DWORD,DWORD);
5934HRESULT WINAPI HlinkSimpleNavigateToString(LPCWSTR,LPCWSTR,LPCWSTR,IUnknown*,IBindCtx*,IBindStatusCallback*,DWORD,DWORD);
5935HRESULT WINAPI IsValidURL(LPBC,LPCWSTR,DWORD);
5936HRESULT WINAPI ObtainUserAgentString(DWORD,LPSTR,DWORD*);
5937HRESULT WINAPI RegisterFormatEnumerator(LPBC,IEnumFORMATETC*,DWORD);
5938HRESULT WINAPI RevokeFormatEnumerator(LPBC,IEnumFORMATETC*);
5939HRESULT WINAPI RevokeBindStatusCallback(LPBC,IBindStatusCallback*);
5940HRESULT WINAPI CopyStgMedium(const STGMEDIUM*,STGMEDIUM*);
5941void WINAPI ReleaseBindInfo(BINDINFO*);
5942HRESULT WINAPI UrlMkGetSessionOption(DWORD,LPVOID,DWORD,DWORD*,DWORD);
5943HRESULT WINAPI UrlMkSetSessionOption(DWORD,LPVOID,DWORD,DWORD);
5944HRESULT WINAPI URLOpenStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
5945HRESULT WINAPI URLOpenStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
5946HRESULT WINAPI URLOpenPullStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
5947HRESULT WINAPI URLOpenPullStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
5948HRESULT WINAPI URLOpenBlockingStreamA(LPUNKNOWN,LPCSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);
5949HRESULT WINAPI URLOpenBlockingStreamW(LPUNKNOWN,LPCWSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);
5950#define OInetCombineUrl CoInternetCombineUrl
5951#define OInetCompareUrl CoInternetCompareUrl
5952#define OInetGetSession CoInternetGetSession
5953BOOL WINAPI IsLoggingEnabledA(LPCSTR);
5954BOOL WINAPI IsLoggingEnabledW(LPCWSTR);
5955#define IsLoggingEnabled WINELIB_NAME_AW(IsLoggingEnabled)
5956#define MKSYS_URLMONIKER 6
5957#define URL_MK_LEGACY 0
5958#define URL_MK_UNIFORM 1
5959/* Begin additional prototypes for all interfaces */
5960
5961ULONG __RPC_USER STGMEDIUM_UserSize (ULONG *, ULONG, STGMEDIUM *);
5962unsigned char * __RPC_USER STGMEDIUM_UserMarshal (ULONG *, unsigned char *, STGMEDIUM *);
5963unsigned char * __RPC_USER STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
5964void __RPC_USER STGMEDIUM_UserFree (ULONG *, STGMEDIUM *);
5965ULONG __RPC_USER CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
5966unsigned char * __RPC_USER CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
5967unsigned char * __RPC_USER CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
5968void __RPC_USER CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
5969
5970/* End additional prototypes */
5971
5972#ifdef __cplusplus
5973}
5974#endif
5975
5976#endif /* __WIDL_URLMON_H */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette