VirtualBox

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

Last change on this file since 20612 was 20612, checked in by vboxsync, 16 years ago

crOpenGL: update wine to 1.1.23

  • Property svn:eol-style set to native
File size: 155.3 KB
Line 
1/*** Autogenerated by WIDL 1.1.23 from ../../include/urlmon.idl - Do not edit ***/
2
3/*
4 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
5 * other than GPL or LGPL is available it will apply instead, Sun elects to use only
6 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
7 * a choice of LGPL license versions is made available with the language indicating
8 * that LGPLv2 or any later version may be used, or where a choice of which version
9 * of the LGPL is applied is otherwise unspecified.
10 */
11
12#include <rpc.h>
13#include <rpcndr.h>
14
15#ifndef __WIDL_URLMON_H
16#define __WIDL_URLMON_H
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
22/* Headers for imported files */
23
24#include <objidl.h>
25#include <oleidl.h>
26#include <servprov.h>
27#include <msxml.h>
28
29/* Forward declarations */
30
31#ifndef __IInternet_FWD_DEFINED__
32#define __IInternet_FWD_DEFINED__
33typedef interface IInternet IInternet;
34#endif
35
36#ifndef __IBinding_FWD_DEFINED__
37#define __IBinding_FWD_DEFINED__
38typedef interface IBinding IBinding;
39#endif
40
41#ifndef __IBindStatusCallback_FWD_DEFINED__
42#define __IBindStatusCallback_FWD_DEFINED__
43typedef interface IBindStatusCallback IBindStatusCallback;
44#endif
45
46#ifndef __IAuthenticate_FWD_DEFINED__
47#define __IAuthenticate_FWD_DEFINED__
48typedef interface IAuthenticate IAuthenticate;
49#endif
50
51#ifndef __IHttpNegotiate_FWD_DEFINED__
52#define __IHttpNegotiate_FWD_DEFINED__
53typedef interface IHttpNegotiate IHttpNegotiate;
54#endif
55
56#ifndef __IHttpNegotiate2_FWD_DEFINED__
57#define __IHttpNegotiate2_FWD_DEFINED__
58typedef interface IHttpNegotiate2 IHttpNegotiate2;
59#endif
60
61#ifndef __IBindHost_FWD_DEFINED__
62#define __IBindHost_FWD_DEFINED__
63typedef interface IBindHost IBindHost;
64#endif
65
66#ifndef __IWinInetInfo_FWD_DEFINED__
67#define __IWinInetInfo_FWD_DEFINED__
68typedef interface IWinInetInfo IWinInetInfo;
69#endif
70
71#ifndef __IWinInetHttpInfo_FWD_DEFINED__
72#define __IWinInetHttpInfo_FWD_DEFINED__
73typedef interface IWinInetHttpInfo IWinInetHttpInfo;
74#endif
75
76#ifndef __IWindowForBindingUI_FWD_DEFINED__
77#define __IWindowForBindingUI_FWD_DEFINED__
78typedef interface IWindowForBindingUI IWindowForBindingUI;
79#endif
80
81#ifndef __IHttpSecurity_FWD_DEFINED__
82#define __IHttpSecurity_FWD_DEFINED__
83typedef interface IHttpSecurity IHttpSecurity;
84#endif
85
86#ifndef __IPersistMoniker_FWD_DEFINED__
87#define __IPersistMoniker_FWD_DEFINED__
88typedef interface IPersistMoniker IPersistMoniker;
89#endif
90
91#ifndef __IMonikerProp_FWD_DEFINED__
92#define __IMonikerProp_FWD_DEFINED__
93typedef interface IMonikerProp IMonikerProp;
94#endif
95
96#ifndef __IBindProtocol_FWD_DEFINED__
97#define __IBindProtocol_FWD_DEFINED__
98typedef interface IBindProtocol IBindProtocol;
99#endif
100
101#ifndef __IInternetBindInfo_FWD_DEFINED__
102#define __IInternetBindInfo_FWD_DEFINED__
103typedef interface IInternetBindInfo IInternetBindInfo;
104#endif
105
106#ifndef __IInternetPriority_FWD_DEFINED__
107#define __IInternetPriority_FWD_DEFINED__
108typedef interface IInternetPriority IInternetPriority;
109#endif
110
111#ifndef __IInternetProtocolRoot_FWD_DEFINED__
112#define __IInternetProtocolRoot_FWD_DEFINED__
113typedef interface IInternetProtocolRoot IInternetProtocolRoot;
114#endif
115
116#ifndef __IInternetProtocolSink_FWD_DEFINED__
117#define __IInternetProtocolSink_FWD_DEFINED__
118typedef interface IInternetProtocolSink IInternetProtocolSink;
119#endif
120
121#ifndef __IInternetProtocol_FWD_DEFINED__
122#define __IInternetProtocol_FWD_DEFINED__
123typedef interface IInternetProtocol IInternetProtocol;
124#endif
125
126#ifndef __IInternetProtocolInfo_FWD_DEFINED__
127#define __IInternetProtocolInfo_FWD_DEFINED__
128typedef interface IInternetProtocolInfo IInternetProtocolInfo;
129#endif
130
131#ifndef __IInternetSession_FWD_DEFINED__
132#define __IInternetSession_FWD_DEFINED__
133typedef interface IInternetSession IInternetSession;
134#endif
135
136#ifndef __IInternetSecurityMgrSite_FWD_DEFINED__
137#define __IInternetSecurityMgrSite_FWD_DEFINED__
138typedef interface IInternetSecurityMgrSite IInternetSecurityMgrSite;
139#endif
140
141#ifndef __IInternetSecurityManager_FWD_DEFINED__
142#define __IInternetSecurityManager_FWD_DEFINED__
143typedef interface IInternetSecurityManager IInternetSecurityManager;
144#endif
145
146#ifndef __IInternetZoneManager_FWD_DEFINED__
147#define __IInternetZoneManager_FWD_DEFINED__
148typedef interface IInternetZoneManager IInternetZoneManager;
149#endif
150
151#ifndef __ISoftDistExt_FWD_DEFINED__
152#define __ISoftDistExt_FWD_DEFINED__
153typedef interface ISoftDistExt ISoftDistExt;
154#endif
155
156#ifndef __IUri_FWD_DEFINED__
157#define __IUri_FWD_DEFINED__
158typedef interface IUri IUri;
159#endif
160
161#ifndef __IUriContainer_FWD_DEFINED__
162#define __IUriContainer_FWD_DEFINED__
163typedef interface IUriContainer IUriContainer;
164#endif
165
166#ifndef __IInternetProtocolEx_FWD_DEFINED__
167#define __IInternetProtocolEx_FWD_DEFINED__
168typedef interface IInternetProtocolEx IInternetProtocolEx;
169#endif
170
171
172#ifdef WINE_NO_UNICODE_MACROS
173#undef GetUserName
174#endif
175#ifndef __IInternetProtocolSink_FWD_DEFINED__
176#define __IInternetProtocolSink_FWD_DEFINED__
177typedef interface IInternetProtocolSink IInternetProtocolSink;
178#endif
179
180/*****************************************************************************
181 * IInternet interface
182 */
183#ifndef __IInternet_INTERFACE_DEFINED__
184#define __IInternet_INTERFACE_DEFINED__
185
186typedef IInternet *LPIINTERNET;
187DEFINE_GUID(IID_IInternet, 0x79eac9e0, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
188#if defined(__cplusplus) && !defined(CINTERFACE)
189interface IInternet : public IUnknown
190{
191};
192#else
193typedef struct IInternetVtbl {
194 BEGIN_INTERFACE
195
196 /*** IUnknown methods ***/
197 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
198 IInternet* This,
199 REFIID riid,
200 void **ppvObject);
201
202 ULONG (STDMETHODCALLTYPE *AddRef)(
203 IInternet* This);
204
205 ULONG (STDMETHODCALLTYPE *Release)(
206 IInternet* This);
207
208 END_INTERFACE
209} IInternetVtbl;
210interface IInternet {
211 CONST_VTBL IInternetVtbl* lpVtbl;
212};
213
214#ifdef COBJMACROS
215/*** IUnknown methods ***/
216#define IInternet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
217#define IInternet_AddRef(This) (This)->lpVtbl->AddRef(This)
218#define IInternet_Release(This) (This)->lpVtbl->Release(This)
219#endif
220
221#endif
222
223
224#endif /* __IInternet_INTERFACE_DEFINED__ */
225
226/*****************************************************************************
227 * IBinding interface
228 */
229#ifndef __IBinding_INTERFACE_DEFINED__
230#define __IBinding_INTERFACE_DEFINED__
231
232typedef IBinding *LPBINDING;
233DEFINE_GUID(IID_IBinding, 0x79eac9c0, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
234#if defined(__cplusplus) && !defined(CINTERFACE)
235interface IBinding : public IUnknown
236{
237 virtual HRESULT STDMETHODCALLTYPE Abort(
238 ) = 0;
239
240 virtual HRESULT STDMETHODCALLTYPE Suspend(
241 ) = 0;
242
243 virtual HRESULT STDMETHODCALLTYPE Resume(
244 ) = 0;
245
246 virtual HRESULT STDMETHODCALLTYPE SetPriority(
247 LONG nPriority) = 0;
248
249 virtual HRESULT STDMETHODCALLTYPE GetPriority(
250 LONG *pnPriority) = 0;
251
252 virtual HRESULT STDMETHODCALLTYPE GetBindResult(
253 CLSID *pclsidProtocol,
254 DWORD *pdwResult,
255 LPOLESTR *pszResult,
256 DWORD *pdwReserved) = 0;
257
258};
259#else
260typedef struct IBindingVtbl {
261 BEGIN_INTERFACE
262
263 /*** IUnknown methods ***/
264 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
265 IBinding* This,
266 REFIID riid,
267 void **ppvObject);
268
269 ULONG (STDMETHODCALLTYPE *AddRef)(
270 IBinding* This);
271
272 ULONG (STDMETHODCALLTYPE *Release)(
273 IBinding* This);
274
275 /*** IBinding methods ***/
276 HRESULT (STDMETHODCALLTYPE *Abort)(
277 IBinding* This);
278
279 HRESULT (STDMETHODCALLTYPE *Suspend)(
280 IBinding* This);
281
282 HRESULT (STDMETHODCALLTYPE *Resume)(
283 IBinding* This);
284
285 HRESULT (STDMETHODCALLTYPE *SetPriority)(
286 IBinding* This,
287 LONG nPriority);
288
289 HRESULT (STDMETHODCALLTYPE *GetPriority)(
290 IBinding* This,
291 LONG *pnPriority);
292
293 HRESULT (STDMETHODCALLTYPE *GetBindResult)(
294 IBinding* This,
295 CLSID *pclsidProtocol,
296 DWORD *pdwResult,
297 LPOLESTR *pszResult,
298 DWORD *pdwReserved);
299
300 END_INTERFACE
301} IBindingVtbl;
302interface IBinding {
303 CONST_VTBL IBindingVtbl* lpVtbl;
304};
305
306#ifdef COBJMACROS
307/*** IUnknown methods ***/
308#define IBinding_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
309#define IBinding_AddRef(This) (This)->lpVtbl->AddRef(This)
310#define IBinding_Release(This) (This)->lpVtbl->Release(This)
311/*** IBinding methods ***/
312#define IBinding_Abort(This) (This)->lpVtbl->Abort(This)
313#define IBinding_Suspend(This) (This)->lpVtbl->Suspend(This)
314#define IBinding_Resume(This) (This)->lpVtbl->Resume(This)
315#define IBinding_SetPriority(This,nPriority) (This)->lpVtbl->SetPriority(This,nPriority)
316#define IBinding_GetPriority(This,pnPriority) (This)->lpVtbl->GetPriority(This,pnPriority)
317#define IBinding_GetBindResult(This,pclsidProtocol,pdwResult,pszResult,pdwReserved) (This)->lpVtbl->GetBindResult(This,pclsidProtocol,pdwResult,pszResult,pdwReserved)
318#endif
319
320#endif
321
322HRESULT STDMETHODCALLTYPE IBinding_Abort_Proxy(
323 IBinding* This);
324void __RPC_STUB IBinding_Abort_Stub(
325 IRpcStubBuffer* This,
326 IRpcChannelBuffer* pRpcChannelBuffer,
327 PRPC_MESSAGE pRpcMessage,
328 DWORD* pdwStubPhase);
329HRESULT STDMETHODCALLTYPE IBinding_Suspend_Proxy(
330 IBinding* This);
331void __RPC_STUB IBinding_Suspend_Stub(
332 IRpcStubBuffer* This,
333 IRpcChannelBuffer* pRpcChannelBuffer,
334 PRPC_MESSAGE pRpcMessage,
335 DWORD* pdwStubPhase);
336HRESULT STDMETHODCALLTYPE IBinding_Resume_Proxy(
337 IBinding* This);
338void __RPC_STUB IBinding_Resume_Stub(
339 IRpcStubBuffer* This,
340 IRpcChannelBuffer* pRpcChannelBuffer,
341 PRPC_MESSAGE pRpcMessage,
342 DWORD* pdwStubPhase);
343HRESULT STDMETHODCALLTYPE IBinding_SetPriority_Proxy(
344 IBinding* This,
345 LONG nPriority);
346void __RPC_STUB IBinding_SetPriority_Stub(
347 IRpcStubBuffer* This,
348 IRpcChannelBuffer* pRpcChannelBuffer,
349 PRPC_MESSAGE pRpcMessage,
350 DWORD* pdwStubPhase);
351HRESULT STDMETHODCALLTYPE IBinding_GetPriority_Proxy(
352 IBinding* This,
353 LONG *pnPriority);
354void __RPC_STUB IBinding_GetPriority_Stub(
355 IRpcStubBuffer* This,
356 IRpcChannelBuffer* pRpcChannelBuffer,
357 PRPC_MESSAGE pRpcMessage,
358 DWORD* pdwStubPhase);
359HRESULT STDMETHODCALLTYPE IBinding_RemoteGetBindResult_Proxy(
360 IBinding* This,
361 CLSID *pclsidProtocol,
362 DWORD *pdwResult,
363 LPOLESTR *pszResult,
364 DWORD dwReserved);
365void __RPC_STUB IBinding_RemoteGetBindResult_Stub(
366 IRpcStubBuffer* This,
367 IRpcChannelBuffer* pRpcChannelBuffer,
368 PRPC_MESSAGE pRpcMessage,
369 DWORD* pdwStubPhase);
370HRESULT CALLBACK IBinding_GetBindResult_Proxy(
371 IBinding* This,
372 CLSID *pclsidProtocol,
373 DWORD *pdwResult,
374 LPOLESTR *pszResult,
375 DWORD *pdwReserved);
376HRESULT __RPC_STUB IBinding_GetBindResult_Stub(
377 IBinding* This,
378 CLSID *pclsidProtocol,
379 DWORD *pdwResult,
380 LPOLESTR *pszResult,
381 DWORD dwReserved);
382
383#endif /* __IBinding_INTERFACE_DEFINED__ */
384
385/*****************************************************************************
386 * IBindStatusCallback interface
387 */
388#ifndef __IBindStatusCallback_INTERFACE_DEFINED__
389#define __IBindStatusCallback_INTERFACE_DEFINED__
390
391typedef IBindStatusCallback *LPBINDSTATUSCALLBACK;
392typedef enum __WIDL_urlmon_generated_name_00000000 {
393 BINDVERB_GET = 0x0,
394 BINDVERB_POST = 0x1,
395 BINDVERB_PUT = 0x2,
396 BINDVERB_CUSTOM = 0x3
397} BINDVERB;
398typedef enum __WIDL_urlmon_generated_name_00000001 {
399 BINDINFOF_URLENCODESTGMEDDATA = 0x1,
400 BINDINFOF_URLENCODEDEXTRAINFO = 0x2
401} BINDINFOF;
402typedef enum __WIDL_urlmon_generated_name_00000002 {
403 BINDF_ASYNCHRONOUS = 0x1,
404 BINDF_ASYNCSTORAGE = 0x2,
405 BINDF_NOPROGRESSIVERENDERING = 0x4,
406 BINDF_OFFLINEOPERATION = 0x8,
407 BINDF_GETNEWESTVERSION = 0x10,
408 BINDF_NOWRITECACHE = 0x20,
409 BINDF_NEEDFILE = 0x40,
410 BINDF_PULLDATA = 0x80,
411 BINDF_IGNORESECURITYPROBLEM = 0x100,
412 BINDF_RESYNCHRONIZE = 0x200,
413 BINDF_HYPERLINK = 0x400,
414 BINDF_NO_UI = 0x800,
415 BINDF_SILENTOPERATION = 0x1000,
416 BINDF_PRAGMA_NO_CACHE = 0x2000,
417 BINDF_GETCLASSOBJECT = 0x4000,
418 BINDF_RESERVED_1 = 0x8000,
419 BINDF_FREE_THREADED = 0x10000,
420 BINDF_DIRECT_READ = 0x20000,
421 BINDF_FORMS_SUBMIT = 0x40000,
422 BINDF_GETFROMCACHE_IF_NET_FAIL = 0x80000,
423 BINDF_FROMURLMON = 0x100000,
424 BINDF_FWD_BACK = 0x200000,
425 BINDF_PREFERDEFAULTHANDLER = 0x400000,
426 BINDF_ENFORCERESTRICTED = 0x800000
427} BINDF;
428typedef enum __WIDL_urlmon_generated_name_00000003 {
429 URL_ENCODING_NONE = 0x0,
430 URL_ENCODING_ENABLE_UTF8 = 0x10000000,
431 URL_ENCODING_DISABLE_UTF8 = 0x20000000
432} URL_ENCODING;
433typedef struct _tagBINDINFO {
434 ULONG cbSize;
435 LPWSTR szExtraInfo;
436 STGMEDIUM stgmedData;
437 DWORD grfBindInfoF;
438 DWORD dwBindVerb;
439 LPWSTR szCustomVerb;
440 DWORD cbstgmedData;
441 DWORD dwOptions;
442 DWORD dwOptionsFlags;
443 DWORD dwCodePage;
444 SECURITY_ATTRIBUTES securityAttributes;
445 IID iid;
446 IUnknown *pUnk;
447 DWORD dwReserved;
448} BINDINFO;
449typedef struct _REMSECURITY_ATTRIBUTES {
450 DWORD nLength;
451 DWORD lpSecurityDescriptor;
452 BOOL bInheritHandle;
453} REMSECURITY_ATTRIBUTES;
454typedef struct _REMSECURITY_ATTRIBUTES *PREMSECURITY_ATTRIBUTES;
455typedef struct _REMSECURITY_ATTRIBUTES *LPREMSECURITY_ATTRIBUTES;
456typedef struct _tagRemBINDINFO {
457 ULONG cbSize;
458 LPWSTR szExtraInfo;
459 DWORD grfBindInfoF;
460 DWORD dwBindVerb;
461 LPWSTR szCustomVerb;
462 DWORD cbstgmedData;
463 DWORD dwOptions;
464 DWORD dwOptionsFlags;
465 DWORD dwCodePage;
466 REMSECURITY_ATTRIBUTES securityAttributes;
467 IID iid;
468 IUnknown *pUnk;
469 DWORD dwReserved;
470} RemBINDINFO;
471typedef struct tagRemFORMATETC {
472 DWORD cfFormat;
473 DWORD ptd;
474 DWORD dwAspect;
475 LONG lindex;
476 DWORD tymed;
477} RemFORMATETC;
478typedef struct tagRemFORMATETC *LPREMFORMATETC;
479typedef enum __WIDL_urlmon_generated_name_00000004 {
480 BSCF_FIRSTDATANOTIFICATION = 0x1,
481 BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
482 BSCF_LASTDATANOTIFICATION = 0x4,
483 BSCF_DATAFULLYAVAILABLE = 0x8,
484 BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10,
485 BSCF_SKIPDRAINDATAFORFILEURLS = 0x20,
486 BSCF_64BITLENGTHDOWNLOAD = 0x40
487} BSCF;
488typedef enum BINDSTATUS {
489 BINDSTATUS_FINDINGRESOURCE = 1,
490 BINDSTATUS_CONNECTING = 2,
491 BINDSTATUS_REDIRECTING = 3,
492 BINDSTATUS_BEGINDOWNLOADDATA = 4,
493 BINDSTATUS_DOWNLOADINGDATA = 5,
494 BINDSTATUS_ENDDOWNLOADDATA = 6,
495 BINDSTATUS_BEGINDOWNLOADCOMPONENTS = 7,
496 BINDSTATUS_INSTALLINGCOMPONENTS = 8,
497 BINDSTATUS_ENDDOWNLOADCOMPONENTS = 9,
498 BINDSTATUS_USINGCACHEDCOPY = 10,
499 BINDSTATUS_SENDINGREQUEST = 11,
500 BINDSTATUS_CLASSIDAVAILABLE = 12,
501 BINDSTATUS_MIMETYPEAVAILABLE = 13,
502 BINDSTATUS_CACHEFILENAMEAVAILABLE = 14,
503 BINDSTATUS_BEGINSYNCOPERATION = 15,
504 BINDSTATUS_ENDSYNCOPERATION = 16,
505 BINDSTATUS_BEGINUPLOADDATA = 17,
506 BINDSTATUS_UPLOADINGDATA = 18,
507 BINDSTATUS_ENDUPLOADINGDATA = 19,
508 BINDSTATUS_PROTOCOLCLASSID = 20,
509 BINDSTATUS_ENCODING = 21,
510 BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE = 22,
511 BINDSTATUS_CLASSINSTALLLOCATION = 23,
512 BINDSTATUS_DECODING = 24,
513 BINDSTATUS_LOADINGMIMEHANDLER = 25,
514 BINDSTATUS_CONTENTDISPOSITIONATTACH = 26,
515 BINDSTATUS_FILTERREPORTMIMETYPE = 27,
516 BINDSTATUS_CLSIDCANINSTANTIATE = 28,
517 BINDSTATUS_IUNKNOWNAVAILABLE = 29,
518 BINDSTATUS_DIRECTBIND = 30,
519 BINDSTATUS_RAWMIMETYPE = 31,
520 BINDSTATUS_PROXYDETECTING = 32,
521 BINDSTATUS_ACCEPTRANGES = 33,
522 BINDSTATUS_COOKIE_SENT = 34,
523 BINDSTATUS_COMPACT_POLICY_RECEIVED = 35,
524 BINDSTATUS_COOKIE_SUPPRESSED = 36,
525 BINDSTATUS_COOKIE_STATE_UNKNOWN = 37,
526 BINDSTATUS_COOKIE_STATE_ACCEPT = 38,
527 BINDSTATUS_COOKIE_STATE_REJECT = 39,
528 BINDSTATUS_COOKIE_STATE_PROMPT = 40,
529 BINDSTATUS_COOKIE_STATE_LEASH = 41,
530 BINDSTATUS_COOKIE_STATE_DOWNGRADE = 42,
531 BINDSTATUS_POLICY_HREF = 43,
532 BINDSTATUS_P3P_HEADER = 44,
533 BINDSTATUS_SESSION_COOKIE_RECEIVED = 45,
534 BINDSTATUS_PERSISTENT_COOKIE_RECEIVED = 46,
535 BINDSTATUS_SESSION_COOKIES_ALLOWED = 47,
536 BINDSTATUS_CACHECONTROL = 48,
537 BINDSTATUS_CONTENTDISPOSITIONFILENAME = 49,
538 BINDSTATUS_MIMETEXTPLAINMISMATCH = 50,
539 BINDSTATUS_PUBLISHERAVAILABLE = 51,
540 BINDSTATUS_DISPLAYNAMEAVAILABLE = 52
541} BINDSTATUS;
542DEFINE_GUID(IID_IBindStatusCallback, 0x79eac9c1, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
543#if defined(__cplusplus) && !defined(CINTERFACE)
544interface IBindStatusCallback : public IUnknown
545{
546 virtual HRESULT STDMETHODCALLTYPE OnStartBinding(
547 DWORD dwReserved,
548 IBinding *pib) = 0;
549
550 virtual HRESULT STDMETHODCALLTYPE GetPriority(
551 LONG *pnPriority) = 0;
552
553 virtual HRESULT STDMETHODCALLTYPE OnLowResource(
554 DWORD reserved) = 0;
555
556 virtual HRESULT STDMETHODCALLTYPE OnProgress(
557 ULONG ulProgress,
558 ULONG ulProgressMax,
559 ULONG ulStatusCode,
560 LPCWSTR szStatusText) = 0;
561
562 virtual HRESULT STDMETHODCALLTYPE OnStopBinding(
563 HRESULT hresult,
564 LPCWSTR szError) = 0;
565
566 virtual HRESULT STDMETHODCALLTYPE GetBindInfo(
567 DWORD *grfBINDF,
568 BINDINFO *pbindinfo) = 0;
569
570 virtual HRESULT STDMETHODCALLTYPE OnDataAvailable(
571 DWORD grfBSCF,
572 DWORD dwSize,
573 FORMATETC *pformatetc,
574 STGMEDIUM *pstgmed) = 0;
575
576 virtual HRESULT STDMETHODCALLTYPE OnObjectAvailable(
577 REFIID riid,
578 IUnknown *punk) = 0;
579
580};
581#else
582typedef struct IBindStatusCallbackVtbl {
583 BEGIN_INTERFACE
584
585 /*** IUnknown methods ***/
586 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
587 IBindStatusCallback* This,
588 REFIID riid,
589 void **ppvObject);
590
591 ULONG (STDMETHODCALLTYPE *AddRef)(
592 IBindStatusCallback* This);
593
594 ULONG (STDMETHODCALLTYPE *Release)(
595 IBindStatusCallback* This);
596
597 /*** IBindStatusCallback methods ***/
598 HRESULT (STDMETHODCALLTYPE *OnStartBinding)(
599 IBindStatusCallback* This,
600 DWORD dwReserved,
601 IBinding *pib);
602
603 HRESULT (STDMETHODCALLTYPE *GetPriority)(
604 IBindStatusCallback* This,
605 LONG *pnPriority);
606
607 HRESULT (STDMETHODCALLTYPE *OnLowResource)(
608 IBindStatusCallback* This,
609 DWORD reserved);
610
611 HRESULT (STDMETHODCALLTYPE *OnProgress)(
612 IBindStatusCallback* This,
613 ULONG ulProgress,
614 ULONG ulProgressMax,
615 ULONG ulStatusCode,
616 LPCWSTR szStatusText);
617
618 HRESULT (STDMETHODCALLTYPE *OnStopBinding)(
619 IBindStatusCallback* This,
620 HRESULT hresult,
621 LPCWSTR szError);
622
623 HRESULT (STDMETHODCALLTYPE *GetBindInfo)(
624 IBindStatusCallback* This,
625 DWORD *grfBINDF,
626 BINDINFO *pbindinfo);
627
628 HRESULT (STDMETHODCALLTYPE *OnDataAvailable)(
629 IBindStatusCallback* This,
630 DWORD grfBSCF,
631 DWORD dwSize,
632 FORMATETC *pformatetc,
633 STGMEDIUM *pstgmed);
634
635 HRESULT (STDMETHODCALLTYPE *OnObjectAvailable)(
636 IBindStatusCallback* This,
637 REFIID riid,
638 IUnknown *punk);
639
640 END_INTERFACE
641} IBindStatusCallbackVtbl;
642interface IBindStatusCallback {
643 CONST_VTBL IBindStatusCallbackVtbl* lpVtbl;
644};
645
646#ifdef COBJMACROS
647/*** IUnknown methods ***/
648#define IBindStatusCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
649#define IBindStatusCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
650#define IBindStatusCallback_Release(This) (This)->lpVtbl->Release(This)
651/*** IBindStatusCallback methods ***/
652#define IBindStatusCallback_OnStartBinding(This,dwReserved,pib) (This)->lpVtbl->OnStartBinding(This,dwReserved,pib)
653#define IBindStatusCallback_GetPriority(This,pnPriority) (This)->lpVtbl->GetPriority(This,pnPriority)
654#define IBindStatusCallback_OnLowResource(This,reserved) (This)->lpVtbl->OnLowResource(This,reserved)
655#define IBindStatusCallback_OnProgress(This,ulProgress,ulProgressMax,ulStatusCode,szStatusText) (This)->lpVtbl->OnProgress(This,ulProgress,ulProgressMax,ulStatusCode,szStatusText)
656#define IBindStatusCallback_OnStopBinding(This,hresult,szError) (This)->lpVtbl->OnStopBinding(This,hresult,szError)
657#define IBindStatusCallback_GetBindInfo(This,grfBINDF,pbindinfo) (This)->lpVtbl->GetBindInfo(This,grfBINDF,pbindinfo)
658#define IBindStatusCallback_OnDataAvailable(This,grfBSCF,dwSize,pformatetc,pstgmed) (This)->lpVtbl->OnDataAvailable(This,grfBSCF,dwSize,pformatetc,pstgmed)
659#define IBindStatusCallback_OnObjectAvailable(This,riid,punk) (This)->lpVtbl->OnObjectAvailable(This,riid,punk)
660#endif
661
662#endif
663
664HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnStartBinding_Proxy(
665 IBindStatusCallback* This,
666 DWORD dwReserved,
667 IBinding *pib);
668void __RPC_STUB IBindStatusCallback_OnStartBinding_Stub(
669 IRpcStubBuffer* This,
670 IRpcChannelBuffer* pRpcChannelBuffer,
671 PRPC_MESSAGE pRpcMessage,
672 DWORD* pdwStubPhase);
673HRESULT STDMETHODCALLTYPE IBindStatusCallback_GetPriority_Proxy(
674 IBindStatusCallback* This,
675 LONG *pnPriority);
676void __RPC_STUB IBindStatusCallback_GetPriority_Stub(
677 IRpcStubBuffer* This,
678 IRpcChannelBuffer* pRpcChannelBuffer,
679 PRPC_MESSAGE pRpcMessage,
680 DWORD* pdwStubPhase);
681HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnLowResource_Proxy(
682 IBindStatusCallback* This,
683 DWORD reserved);
684void __RPC_STUB IBindStatusCallback_OnLowResource_Stub(
685 IRpcStubBuffer* This,
686 IRpcChannelBuffer* pRpcChannelBuffer,
687 PRPC_MESSAGE pRpcMessage,
688 DWORD* pdwStubPhase);
689HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnProgress_Proxy(
690 IBindStatusCallback* This,
691 ULONG ulProgress,
692 ULONG ulProgressMax,
693 ULONG ulStatusCode,
694 LPCWSTR szStatusText);
695void __RPC_STUB IBindStatusCallback_OnProgress_Stub(
696 IRpcStubBuffer* This,
697 IRpcChannelBuffer* pRpcChannelBuffer,
698 PRPC_MESSAGE pRpcMessage,
699 DWORD* pdwStubPhase);
700HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnStopBinding_Proxy(
701 IBindStatusCallback* This,
702 HRESULT hresult,
703 LPCWSTR szError);
704void __RPC_STUB IBindStatusCallback_OnStopBinding_Stub(
705 IRpcStubBuffer* This,
706 IRpcChannelBuffer* pRpcChannelBuffer,
707 PRPC_MESSAGE pRpcMessage,
708 DWORD* pdwStubPhase);
709HRESULT STDMETHODCALLTYPE IBindStatusCallback_RemoteGetBindInfo_Proxy(
710 IBindStatusCallback* This,
711 DWORD *grfBINDF,
712 RemBINDINFO *pbindinfo,
713 RemSTGMEDIUM *pstgmed);
714void __RPC_STUB IBindStatusCallback_RemoteGetBindInfo_Stub(
715 IRpcStubBuffer* This,
716 IRpcChannelBuffer* pRpcChannelBuffer,
717 PRPC_MESSAGE pRpcMessage,
718 DWORD* pdwStubPhase);
719HRESULT STDMETHODCALLTYPE IBindStatusCallback_RemoteOnDataAvailable_Proxy(
720 IBindStatusCallback* This,
721 DWORD grfBSCF,
722 DWORD dwSize,
723 RemFORMATETC *pformatetc,
724 RemSTGMEDIUM *pstgmed);
725void __RPC_STUB IBindStatusCallback_RemoteOnDataAvailable_Stub(
726 IRpcStubBuffer* This,
727 IRpcChannelBuffer* pRpcChannelBuffer,
728 PRPC_MESSAGE pRpcMessage,
729 DWORD* pdwStubPhase);
730HRESULT STDMETHODCALLTYPE IBindStatusCallback_OnObjectAvailable_Proxy(
731 IBindStatusCallback* This,
732 REFIID riid,
733 IUnknown *punk);
734void __RPC_STUB IBindStatusCallback_OnObjectAvailable_Stub(
735 IRpcStubBuffer* This,
736 IRpcChannelBuffer* pRpcChannelBuffer,
737 PRPC_MESSAGE pRpcMessage,
738 DWORD* pdwStubPhase);
739HRESULT CALLBACK IBindStatusCallback_GetBindInfo_Proxy(
740 IBindStatusCallback* This,
741 DWORD *grfBINDF,
742 BINDINFO *pbindinfo);
743HRESULT __RPC_STUB IBindStatusCallback_GetBindInfo_Stub(
744 IBindStatusCallback* This,
745 DWORD *grfBINDF,
746 RemBINDINFO *pbindinfo,
747 RemSTGMEDIUM *pstgmed);
748HRESULT CALLBACK IBindStatusCallback_OnDataAvailable_Proxy(
749 IBindStatusCallback* This,
750 DWORD grfBSCF,
751 DWORD dwSize,
752 FORMATETC *pformatetc,
753 STGMEDIUM *pstgmed);
754HRESULT __RPC_STUB IBindStatusCallback_OnDataAvailable_Stub(
755 IBindStatusCallback* This,
756 DWORD grfBSCF,
757 DWORD dwSize,
758 RemFORMATETC *pformatetc,
759 RemSTGMEDIUM *pstgmed);
760
761#endif /* __IBindStatusCallback_INTERFACE_DEFINED__ */
762
763/*****************************************************************************
764 * IAuthenticate interface
765 */
766#ifndef __IAuthenticate_INTERFACE_DEFINED__
767#define __IAuthenticate_INTERFACE_DEFINED__
768
769typedef IAuthenticate *LPAUTHENTICATION;
770DEFINE_GUID(IID_IAuthenticate, 0x79eac9d0, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
771#if defined(__cplusplus) && !defined(CINTERFACE)
772interface IAuthenticate : public IUnknown
773{
774 virtual HRESULT STDMETHODCALLTYPE Authenticate(
775 HWND *phwnd,
776 LPWSTR *pszUsername,
777 LPWSTR *pszPassword) = 0;
778
779};
780#else
781typedef struct IAuthenticateVtbl {
782 BEGIN_INTERFACE
783
784 /*** IUnknown methods ***/
785 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
786 IAuthenticate* This,
787 REFIID riid,
788 void **ppvObject);
789
790 ULONG (STDMETHODCALLTYPE *AddRef)(
791 IAuthenticate* This);
792
793 ULONG (STDMETHODCALLTYPE *Release)(
794 IAuthenticate* This);
795
796 /*** IAuthenticate methods ***/
797 HRESULT (STDMETHODCALLTYPE *Authenticate)(
798 IAuthenticate* This,
799 HWND *phwnd,
800 LPWSTR *pszUsername,
801 LPWSTR *pszPassword);
802
803 END_INTERFACE
804} IAuthenticateVtbl;
805interface IAuthenticate {
806 CONST_VTBL IAuthenticateVtbl* lpVtbl;
807};
808
809#ifdef COBJMACROS
810/*** IUnknown methods ***/
811#define IAuthenticate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
812#define IAuthenticate_AddRef(This) (This)->lpVtbl->AddRef(This)
813#define IAuthenticate_Release(This) (This)->lpVtbl->Release(This)
814/*** IAuthenticate methods ***/
815#define IAuthenticate_Authenticate(This,phwnd,pszUsername,pszPassword) (This)->lpVtbl->Authenticate(This,phwnd,pszUsername,pszPassword)
816#endif
817
818#endif
819
820HRESULT STDMETHODCALLTYPE IAuthenticate_Authenticate_Proxy(
821 IAuthenticate* This,
822 HWND *phwnd,
823 LPWSTR *pszUsername,
824 LPWSTR *pszPassword);
825void __RPC_STUB IAuthenticate_Authenticate_Stub(
826 IRpcStubBuffer* This,
827 IRpcChannelBuffer* pRpcChannelBuffer,
828 PRPC_MESSAGE pRpcMessage,
829 DWORD* pdwStubPhase);
830
831#endif /* __IAuthenticate_INTERFACE_DEFINED__ */
832
833/*****************************************************************************
834 * IHttpNegotiate interface
835 */
836#ifndef __IHttpNegotiate_INTERFACE_DEFINED__
837#define __IHttpNegotiate_INTERFACE_DEFINED__
838
839typedef IHttpNegotiate *LPHTTPNEGOTIATE;
840DEFINE_GUID(IID_IHttpNegotiate, 0x79eac9d2, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
841#if defined(__cplusplus) && !defined(CINTERFACE)
842interface IHttpNegotiate : public IUnknown
843{
844 virtual HRESULT STDMETHODCALLTYPE BeginningTransaction(
845 LPCWSTR szURL,
846 LPCWSTR szHeaders,
847 DWORD dwReserved,
848 LPWSTR *pszAdditionalHeaders) = 0;
849
850 virtual HRESULT STDMETHODCALLTYPE OnResponse(
851 DWORD dwResponseCode,
852 LPCWSTR szResponseHeaders,
853 LPCWSTR szRequestHeaders,
854 LPWSTR *pszAdditionalRequestHeaders) = 0;
855
856};
857#else
858typedef struct IHttpNegotiateVtbl {
859 BEGIN_INTERFACE
860
861 /*** IUnknown methods ***/
862 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
863 IHttpNegotiate* This,
864 REFIID riid,
865 void **ppvObject);
866
867 ULONG (STDMETHODCALLTYPE *AddRef)(
868 IHttpNegotiate* This);
869
870 ULONG (STDMETHODCALLTYPE *Release)(
871 IHttpNegotiate* This);
872
873 /*** IHttpNegotiate methods ***/
874 HRESULT (STDMETHODCALLTYPE *BeginningTransaction)(
875 IHttpNegotiate* This,
876 LPCWSTR szURL,
877 LPCWSTR szHeaders,
878 DWORD dwReserved,
879 LPWSTR *pszAdditionalHeaders);
880
881 HRESULT (STDMETHODCALLTYPE *OnResponse)(
882 IHttpNegotiate* This,
883 DWORD dwResponseCode,
884 LPCWSTR szResponseHeaders,
885 LPCWSTR szRequestHeaders,
886 LPWSTR *pszAdditionalRequestHeaders);
887
888 END_INTERFACE
889} IHttpNegotiateVtbl;
890interface IHttpNegotiate {
891 CONST_VTBL IHttpNegotiateVtbl* lpVtbl;
892};
893
894#ifdef COBJMACROS
895/*** IUnknown methods ***/
896#define IHttpNegotiate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
897#define IHttpNegotiate_AddRef(This) (This)->lpVtbl->AddRef(This)
898#define IHttpNegotiate_Release(This) (This)->lpVtbl->Release(This)
899/*** IHttpNegotiate methods ***/
900#define IHttpNegotiate_BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders) (This)->lpVtbl->BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders)
901#define IHttpNegotiate_OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders) (This)->lpVtbl->OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders)
902#endif
903
904#endif
905
906HRESULT STDMETHODCALLTYPE IHttpNegotiate_BeginningTransaction_Proxy(
907 IHttpNegotiate* This,
908 LPCWSTR szURL,
909 LPCWSTR szHeaders,
910 DWORD dwReserved,
911 LPWSTR *pszAdditionalHeaders);
912void __RPC_STUB IHttpNegotiate_BeginningTransaction_Stub(
913 IRpcStubBuffer* This,
914 IRpcChannelBuffer* pRpcChannelBuffer,
915 PRPC_MESSAGE pRpcMessage,
916 DWORD* pdwStubPhase);
917HRESULT STDMETHODCALLTYPE IHttpNegotiate_OnResponse_Proxy(
918 IHttpNegotiate* This,
919 DWORD dwResponseCode,
920 LPCWSTR szResponseHeaders,
921 LPCWSTR szRequestHeaders,
922 LPWSTR *pszAdditionalRequestHeaders);
923void __RPC_STUB IHttpNegotiate_OnResponse_Stub(
924 IRpcStubBuffer* This,
925 IRpcChannelBuffer* pRpcChannelBuffer,
926 PRPC_MESSAGE pRpcMessage,
927 DWORD* pdwStubPhase);
928
929#endif /* __IHttpNegotiate_INTERFACE_DEFINED__ */
930
931/*****************************************************************************
932 * IHttpNegotiate2 interface
933 */
934#ifndef __IHttpNegotiate2_INTERFACE_DEFINED__
935#define __IHttpNegotiate2_INTERFACE_DEFINED__
936
937typedef IHttpNegotiate2 *LPHTTPNEGOTIATE2;
938DEFINE_GUID(IID_IHttpNegotiate2, 0x4f9f9fcb, 0xe0f4, 0x48eb, 0xb7,0xab, 0xfa,0x2e,0xa9,0x36,0x5c,0xb4);
939#if defined(__cplusplus) && !defined(CINTERFACE)
940interface IHttpNegotiate2 : public IHttpNegotiate
941{
942 virtual HRESULT STDMETHODCALLTYPE GetRootSecurityId(
943 BYTE *pbSecurityId,
944 DWORD *pcbSecurityId,
945 DWORD_PTR dwReserved) = 0;
946
947};
948#else
949typedef struct IHttpNegotiate2Vtbl {
950 BEGIN_INTERFACE
951
952 /*** IUnknown methods ***/
953 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
954 IHttpNegotiate2* This,
955 REFIID riid,
956 void **ppvObject);
957
958 ULONG (STDMETHODCALLTYPE *AddRef)(
959 IHttpNegotiate2* This);
960
961 ULONG (STDMETHODCALLTYPE *Release)(
962 IHttpNegotiate2* This);
963
964 /*** IHttpNegotiate methods ***/
965 HRESULT (STDMETHODCALLTYPE *BeginningTransaction)(
966 IHttpNegotiate2* This,
967 LPCWSTR szURL,
968 LPCWSTR szHeaders,
969 DWORD dwReserved,
970 LPWSTR *pszAdditionalHeaders);
971
972 HRESULT (STDMETHODCALLTYPE *OnResponse)(
973 IHttpNegotiate2* This,
974 DWORD dwResponseCode,
975 LPCWSTR szResponseHeaders,
976 LPCWSTR szRequestHeaders,
977 LPWSTR *pszAdditionalRequestHeaders);
978
979 /*** IHttpNegotiate2 methods ***/
980 HRESULT (STDMETHODCALLTYPE *GetRootSecurityId)(
981 IHttpNegotiate2* This,
982 BYTE *pbSecurityId,
983 DWORD *pcbSecurityId,
984 DWORD_PTR dwReserved);
985
986 END_INTERFACE
987} IHttpNegotiate2Vtbl;
988interface IHttpNegotiate2 {
989 CONST_VTBL IHttpNegotiate2Vtbl* lpVtbl;
990};
991
992#ifdef COBJMACROS
993/*** IUnknown methods ***/
994#define IHttpNegotiate2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
995#define IHttpNegotiate2_AddRef(This) (This)->lpVtbl->AddRef(This)
996#define IHttpNegotiate2_Release(This) (This)->lpVtbl->Release(This)
997/*** IHttpNegotiate methods ***/
998#define IHttpNegotiate2_BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders) (This)->lpVtbl->BeginningTransaction(This,szURL,szHeaders,dwReserved,pszAdditionalHeaders)
999#define IHttpNegotiate2_OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders) (This)->lpVtbl->OnResponse(This,dwResponseCode,szResponseHeaders,szRequestHeaders,pszAdditionalRequestHeaders)
1000/*** IHttpNegotiate2 methods ***/
1001#define IHttpNegotiate2_GetRootSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved) (This)->lpVtbl->GetRootSecurityId(This,pbSecurityId,pcbSecurityId,dwReserved)
1002#endif
1003
1004#endif
1005
1006HRESULT STDMETHODCALLTYPE IHttpNegotiate2_GetRootSecurityId_Proxy(
1007 IHttpNegotiate2* This,
1008 BYTE *pbSecurityId,
1009 DWORD *pcbSecurityId,
1010 DWORD_PTR dwReserved);
1011void __RPC_STUB IHttpNegotiate2_GetRootSecurityId_Stub(
1012 IRpcStubBuffer* This,
1013 IRpcChannelBuffer* pRpcChannelBuffer,
1014 PRPC_MESSAGE pRpcMessage,
1015 DWORD* pdwStubPhase);
1016
1017#endif /* __IHttpNegotiate2_INTERFACE_DEFINED__ */
1018
1019#define SID_IBindHost IID_IBindHost
1020#define SID_SBindHost IID_IBindHost
1021/*****************************************************************************
1022 * IBindHost interface
1023 */
1024#ifndef __IBindHost_INTERFACE_DEFINED__
1025#define __IBindHost_INTERFACE_DEFINED__
1026
1027typedef IBindHost *LPBINDHOST;
1028DEFINE_GUID(IID_IBindHost, 0xfc4801a1, 0x2ba9, 0x11cf, 0xa2,0x29, 0x00,0xaa,0x00,0x3d,0x73,0x52);
1029#if defined(__cplusplus) && !defined(CINTERFACE)
1030interface IBindHost : public IUnknown
1031{
1032 virtual HRESULT STDMETHODCALLTYPE CreateMoniker(
1033 LPOLESTR szName,
1034 IBindCtx *pBC,
1035 IMoniker **ppmk,
1036 DWORD dwReserved) = 0;
1037
1038 virtual HRESULT STDMETHODCALLTYPE MonikerBindToStorage(
1039 IMoniker *pMk,
1040 IBindCtx *pBC,
1041 IBindStatusCallback *pBSC,
1042 REFIID riid,
1043 void **ppvObj) = 0;
1044
1045 virtual HRESULT STDMETHODCALLTYPE MonikerBindToObject(
1046 IMoniker *pMk,
1047 IBindCtx *pBC,
1048 IBindStatusCallback *pBSC,
1049 REFIID riid,
1050 void **ppvObj) = 0;
1051
1052};
1053#else
1054typedef struct IBindHostVtbl {
1055 BEGIN_INTERFACE
1056
1057 /*** IUnknown methods ***/
1058 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1059 IBindHost* This,
1060 REFIID riid,
1061 void **ppvObject);
1062
1063 ULONG (STDMETHODCALLTYPE *AddRef)(
1064 IBindHost* This);
1065
1066 ULONG (STDMETHODCALLTYPE *Release)(
1067 IBindHost* This);
1068
1069 /*** IBindHost methods ***/
1070 HRESULT (STDMETHODCALLTYPE *CreateMoniker)(
1071 IBindHost* This,
1072 LPOLESTR szName,
1073 IBindCtx *pBC,
1074 IMoniker **ppmk,
1075 DWORD dwReserved);
1076
1077 HRESULT (STDMETHODCALLTYPE *MonikerBindToStorage)(
1078 IBindHost* This,
1079 IMoniker *pMk,
1080 IBindCtx *pBC,
1081 IBindStatusCallback *pBSC,
1082 REFIID riid,
1083 void **ppvObj);
1084
1085 HRESULT (STDMETHODCALLTYPE *MonikerBindToObject)(
1086 IBindHost* This,
1087 IMoniker *pMk,
1088 IBindCtx *pBC,
1089 IBindStatusCallback *pBSC,
1090 REFIID riid,
1091 void **ppvObj);
1092
1093 END_INTERFACE
1094} IBindHostVtbl;
1095interface IBindHost {
1096 CONST_VTBL IBindHostVtbl* lpVtbl;
1097};
1098
1099#ifdef COBJMACROS
1100/*** IUnknown methods ***/
1101#define IBindHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1102#define IBindHost_AddRef(This) (This)->lpVtbl->AddRef(This)
1103#define IBindHost_Release(This) (This)->lpVtbl->Release(This)
1104/*** IBindHost methods ***/
1105#define IBindHost_CreateMoniker(This,szName,pBC,ppmk,dwReserved) (This)->lpVtbl->CreateMoniker(This,szName,pBC,ppmk,dwReserved)
1106#define IBindHost_MonikerBindToStorage(This,pMk,pBC,pBSC,riid,ppvObj) (This)->lpVtbl->MonikerBindToStorage(This,pMk,pBC,pBSC,riid,ppvObj)
1107#define IBindHost_MonikerBindToObject(This,pMk,pBC,pBSC,riid,ppvObj) (This)->lpVtbl->MonikerBindToObject(This,pMk,pBC,pBSC,riid,ppvObj)
1108#endif
1109
1110#endif
1111
1112HRESULT STDMETHODCALLTYPE IBindHost_CreateMoniker_Proxy(
1113 IBindHost* This,
1114 LPOLESTR szName,
1115 IBindCtx *pBC,
1116 IMoniker **ppmk,
1117 DWORD dwReserved);
1118void __RPC_STUB IBindHost_CreateMoniker_Stub(
1119 IRpcStubBuffer* This,
1120 IRpcChannelBuffer* pRpcChannelBuffer,
1121 PRPC_MESSAGE pRpcMessage,
1122 DWORD* pdwStubPhase);
1123HRESULT STDMETHODCALLTYPE IBindHost_RemoteMonikerBindToStorage_Proxy(
1124 IBindHost* This,
1125 IMoniker *pMk,
1126 IBindCtx *pBC,
1127 IBindStatusCallback *pBSC,
1128 REFIID riid,
1129 IUnknown **ppvObj);
1130void __RPC_STUB IBindHost_RemoteMonikerBindToStorage_Stub(
1131 IRpcStubBuffer* This,
1132 IRpcChannelBuffer* pRpcChannelBuffer,
1133 PRPC_MESSAGE pRpcMessage,
1134 DWORD* pdwStubPhase);
1135HRESULT STDMETHODCALLTYPE IBindHost_RemoteMonikerBindToObject_Proxy(
1136 IBindHost* This,
1137 IMoniker *pMk,
1138 IBindCtx *pBC,
1139 IBindStatusCallback *pBSC,
1140 REFIID riid,
1141 IUnknown **ppvObj);
1142void __RPC_STUB IBindHost_RemoteMonikerBindToObject_Stub(
1143 IRpcStubBuffer* This,
1144 IRpcChannelBuffer* pRpcChannelBuffer,
1145 PRPC_MESSAGE pRpcMessage,
1146 DWORD* pdwStubPhase);
1147HRESULT CALLBACK IBindHost_MonikerBindToStorage_Proxy(
1148 IBindHost* This,
1149 IMoniker *pMk,
1150 IBindCtx *pBC,
1151 IBindStatusCallback *pBSC,
1152 REFIID riid,
1153 void **ppvObj);
1154HRESULT __RPC_STUB IBindHost_MonikerBindToStorage_Stub(
1155 IBindHost* This,
1156 IMoniker *pMk,
1157 IBindCtx *pBC,
1158 IBindStatusCallback *pBSC,
1159 REFIID riid,
1160 IUnknown **ppvObj);
1161HRESULT CALLBACK IBindHost_MonikerBindToObject_Proxy(
1162 IBindHost* This,
1163 IMoniker *pMk,
1164 IBindCtx *pBC,
1165 IBindStatusCallback *pBSC,
1166 REFIID riid,
1167 void **ppvObj);
1168HRESULT __RPC_STUB IBindHost_MonikerBindToObject_Stub(
1169 IBindHost* This,
1170 IMoniker *pMk,
1171 IBindCtx *pBC,
1172 IBindStatusCallback *pBSC,
1173 REFIID riid,
1174 IUnknown **ppvObj);
1175
1176#endif /* __IBindHost_INTERFACE_DEFINED__ */
1177
1178/*****************************************************************************
1179 * IWinInetInfo interface
1180 */
1181#ifndef __IWinInetInfo_INTERFACE_DEFINED__
1182#define __IWinInetInfo_INTERFACE_DEFINED__
1183
1184typedef IWinInetInfo *LPWININETINFO;
1185DEFINE_GUID(IID_IWinInetInfo, 0x79eac9d6, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1186#if defined(__cplusplus) && !defined(CINTERFACE)
1187interface IWinInetInfo : public IUnknown
1188{
1189 virtual HRESULT STDMETHODCALLTYPE QueryOption(
1190 DWORD dwOption,
1191 LPVOID pBuffer,
1192 DWORD *pcbBuf) = 0;
1193
1194};
1195#else
1196typedef struct IWinInetInfoVtbl {
1197 BEGIN_INTERFACE
1198
1199 /*** IUnknown methods ***/
1200 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1201 IWinInetInfo* This,
1202 REFIID riid,
1203 void **ppvObject);
1204
1205 ULONG (STDMETHODCALLTYPE *AddRef)(
1206 IWinInetInfo* This);
1207
1208 ULONG (STDMETHODCALLTYPE *Release)(
1209 IWinInetInfo* This);
1210
1211 /*** IWinInetInfo methods ***/
1212 HRESULT (STDMETHODCALLTYPE *QueryOption)(
1213 IWinInetInfo* This,
1214 DWORD dwOption,
1215 LPVOID pBuffer,
1216 DWORD *pcbBuf);
1217
1218 END_INTERFACE
1219} IWinInetInfoVtbl;
1220interface IWinInetInfo {
1221 CONST_VTBL IWinInetInfoVtbl* lpVtbl;
1222};
1223
1224#ifdef COBJMACROS
1225/*** IUnknown methods ***/
1226#define IWinInetInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1227#define IWinInetInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
1228#define IWinInetInfo_Release(This) (This)->lpVtbl->Release(This)
1229/*** IWinInetInfo methods ***/
1230#define IWinInetInfo_QueryOption(This,dwOption,pBuffer,pcbBuf) (This)->lpVtbl->QueryOption(This,dwOption,pBuffer,pcbBuf)
1231#endif
1232
1233#endif
1234
1235HRESULT STDMETHODCALLTYPE IWinInetInfo_RemoteQueryOption_Proxy(
1236 IWinInetInfo* This,
1237 DWORD dwOption,
1238 BYTE *pBuffer,
1239 DWORD *pcbBuf);
1240void __RPC_STUB IWinInetInfo_RemoteQueryOption_Stub(
1241 IRpcStubBuffer* This,
1242 IRpcChannelBuffer* pRpcChannelBuffer,
1243 PRPC_MESSAGE pRpcMessage,
1244 DWORD* pdwStubPhase);
1245HRESULT CALLBACK IWinInetInfo_QueryOption_Proxy(
1246 IWinInetInfo* This,
1247 DWORD dwOption,
1248 LPVOID pBuffer,
1249 DWORD *pcbBuf);
1250HRESULT __RPC_STUB IWinInetInfo_QueryOption_Stub(
1251 IWinInetInfo* This,
1252 DWORD dwOption,
1253 BYTE *pBuffer,
1254 DWORD *pcbBuf);
1255
1256#endif /* __IWinInetInfo_INTERFACE_DEFINED__ */
1257
1258/*****************************************************************************
1259 * IWinInetHttpInfo interface
1260 */
1261#ifndef __IWinInetHttpInfo_INTERFACE_DEFINED__
1262#define __IWinInetHttpInfo_INTERFACE_DEFINED__
1263
1264typedef IWinInetHttpInfo *LPWININETHTTPINFO;
1265DEFINE_GUID(IID_IWinInetHttpInfo, 0x79eac9d8, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1266#if defined(__cplusplus) && !defined(CINTERFACE)
1267interface IWinInetHttpInfo : public IWinInetInfo
1268{
1269 virtual HRESULT STDMETHODCALLTYPE QueryInfo(
1270 DWORD dwOption,
1271 LPVOID pBuffer,
1272 DWORD *pcbBuf,
1273 DWORD *pdwFlags,
1274 DWORD *pdwReserved) = 0;
1275
1276};
1277#else
1278typedef struct IWinInetHttpInfoVtbl {
1279 BEGIN_INTERFACE
1280
1281 /*** IUnknown methods ***/
1282 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1283 IWinInetHttpInfo* This,
1284 REFIID riid,
1285 void **ppvObject);
1286
1287 ULONG (STDMETHODCALLTYPE *AddRef)(
1288 IWinInetHttpInfo* This);
1289
1290 ULONG (STDMETHODCALLTYPE *Release)(
1291 IWinInetHttpInfo* This);
1292
1293 /*** IWinInetInfo methods ***/
1294 HRESULT (STDMETHODCALLTYPE *QueryOption)(
1295 IWinInetHttpInfo* This,
1296 DWORD dwOption,
1297 LPVOID pBuffer,
1298 DWORD *pcbBuf);
1299
1300 /*** IWinInetHttpInfo methods ***/
1301 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
1302 IWinInetHttpInfo* This,
1303 DWORD dwOption,
1304 LPVOID pBuffer,
1305 DWORD *pcbBuf,
1306 DWORD *pdwFlags,
1307 DWORD *pdwReserved);
1308
1309 END_INTERFACE
1310} IWinInetHttpInfoVtbl;
1311interface IWinInetHttpInfo {
1312 CONST_VTBL IWinInetHttpInfoVtbl* lpVtbl;
1313};
1314
1315#ifdef COBJMACROS
1316/*** IUnknown methods ***/
1317#define IWinInetHttpInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1318#define IWinInetHttpInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
1319#define IWinInetHttpInfo_Release(This) (This)->lpVtbl->Release(This)
1320/*** IWinInetInfo methods ***/
1321#define IWinInetHttpInfo_QueryOption(This,dwOption,pBuffer,pcbBuf) (This)->lpVtbl->QueryOption(This,dwOption,pBuffer,pcbBuf)
1322/*** IWinInetHttpInfo methods ***/
1323#define IWinInetHttpInfo_QueryInfo(This,dwOption,pBuffer,pcbBuf,pdwFlags,pdwReserved) (This)->lpVtbl->QueryInfo(This,dwOption,pBuffer,pcbBuf,pdwFlags,pdwReserved)
1324#endif
1325
1326#endif
1327
1328HRESULT STDMETHODCALLTYPE IWinInetHttpInfo_RemoteQueryInfo_Proxy(
1329 IWinInetHttpInfo* This,
1330 DWORD dwOption,
1331 BYTE *pBuffer,
1332 DWORD *pcbBuf,
1333 DWORD *pdwFlags,
1334 DWORD *pdwReserved);
1335void __RPC_STUB IWinInetHttpInfo_RemoteQueryInfo_Stub(
1336 IRpcStubBuffer* This,
1337 IRpcChannelBuffer* pRpcChannelBuffer,
1338 PRPC_MESSAGE pRpcMessage,
1339 DWORD* pdwStubPhase);
1340HRESULT CALLBACK IWinInetHttpInfo_QueryInfo_Proxy(
1341 IWinInetHttpInfo* This,
1342 DWORD dwOption,
1343 LPVOID pBuffer,
1344 DWORD *pcbBuf,
1345 DWORD *pdwFlags,
1346 DWORD *pdwReserved);
1347HRESULT __RPC_STUB IWinInetHttpInfo_QueryInfo_Stub(
1348 IWinInetHttpInfo* This,
1349 DWORD dwOption,
1350 BYTE *pBuffer,
1351 DWORD *pcbBuf,
1352 DWORD *pdwFlags,
1353 DWORD *pdwReserved);
1354
1355#endif /* __IWinInetHttpInfo_INTERFACE_DEFINED__ */
1356
1357/*****************************************************************************
1358 * IWindowForBindingUI interface
1359 */
1360#ifndef __IWindowForBindingUI_INTERFACE_DEFINED__
1361#define __IWindowForBindingUI_INTERFACE_DEFINED__
1362
1363typedef IWindowForBindingUI *LPWINDOWFORBINDINGUI;
1364DEFINE_GUID(IID_IWindowForBindingUI, 0x79eac9d5, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1365#if defined(__cplusplus) && !defined(CINTERFACE)
1366interface IWindowForBindingUI : public IUnknown
1367{
1368 virtual HRESULT STDMETHODCALLTYPE GetWindow(
1369 REFGUID rguidReason,
1370 HWND *phwnd) = 0;
1371
1372};
1373#else
1374typedef struct IWindowForBindingUIVtbl {
1375 BEGIN_INTERFACE
1376
1377 /*** IUnknown methods ***/
1378 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1379 IWindowForBindingUI* This,
1380 REFIID riid,
1381 void **ppvObject);
1382
1383 ULONG (STDMETHODCALLTYPE *AddRef)(
1384 IWindowForBindingUI* This);
1385
1386 ULONG (STDMETHODCALLTYPE *Release)(
1387 IWindowForBindingUI* This);
1388
1389 /*** IWindowForBindingUI methods ***/
1390 HRESULT (STDMETHODCALLTYPE *GetWindow)(
1391 IWindowForBindingUI* This,
1392 REFGUID rguidReason,
1393 HWND *phwnd);
1394
1395 END_INTERFACE
1396} IWindowForBindingUIVtbl;
1397interface IWindowForBindingUI {
1398 CONST_VTBL IWindowForBindingUIVtbl* lpVtbl;
1399};
1400
1401#ifdef COBJMACROS
1402/*** IUnknown methods ***/
1403#define IWindowForBindingUI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1404#define IWindowForBindingUI_AddRef(This) (This)->lpVtbl->AddRef(This)
1405#define IWindowForBindingUI_Release(This) (This)->lpVtbl->Release(This)
1406/*** IWindowForBindingUI methods ***/
1407#define IWindowForBindingUI_GetWindow(This,rguidReason,phwnd) (This)->lpVtbl->GetWindow(This,rguidReason,phwnd)
1408#endif
1409
1410#endif
1411
1412HRESULT STDMETHODCALLTYPE IWindowForBindingUI_GetWindow_Proxy(
1413 IWindowForBindingUI* This,
1414 REFGUID rguidReason,
1415 HWND *phwnd);
1416void __RPC_STUB IWindowForBindingUI_GetWindow_Stub(
1417 IRpcStubBuffer* This,
1418 IRpcChannelBuffer* pRpcChannelBuffer,
1419 PRPC_MESSAGE pRpcMessage,
1420 DWORD* pdwStubPhase);
1421
1422#endif /* __IWindowForBindingUI_INTERFACE_DEFINED__ */
1423
1424/*****************************************************************************
1425 * IHttpSecurity interface
1426 */
1427#ifndef __IHttpSecurity_INTERFACE_DEFINED__
1428#define __IHttpSecurity_INTERFACE_DEFINED__
1429
1430typedef IHttpSecurity *LPHTTPSECURITY;
1431DEFINE_GUID(IID_IHttpSecurity, 0x79eac9d7, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1432#if defined(__cplusplus) && !defined(CINTERFACE)
1433interface IHttpSecurity : public IWindowForBindingUI
1434{
1435 virtual HRESULT STDMETHODCALLTYPE OnSecurityProblem(
1436 DWORD dwProblem) = 0;
1437
1438};
1439#else
1440typedef struct IHttpSecurityVtbl {
1441 BEGIN_INTERFACE
1442
1443 /*** IUnknown methods ***/
1444 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1445 IHttpSecurity* This,
1446 REFIID riid,
1447 void **ppvObject);
1448
1449 ULONG (STDMETHODCALLTYPE *AddRef)(
1450 IHttpSecurity* This);
1451
1452 ULONG (STDMETHODCALLTYPE *Release)(
1453 IHttpSecurity* This);
1454
1455 /*** IWindowForBindingUI methods ***/
1456 HRESULT (STDMETHODCALLTYPE *GetWindow)(
1457 IHttpSecurity* This,
1458 REFGUID rguidReason,
1459 HWND *phwnd);
1460
1461 /*** IHttpSecurity methods ***/
1462 HRESULT (STDMETHODCALLTYPE *OnSecurityProblem)(
1463 IHttpSecurity* This,
1464 DWORD dwProblem);
1465
1466 END_INTERFACE
1467} IHttpSecurityVtbl;
1468interface IHttpSecurity {
1469 CONST_VTBL IHttpSecurityVtbl* lpVtbl;
1470};
1471
1472#ifdef COBJMACROS
1473/*** IUnknown methods ***/
1474#define IHttpSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1475#define IHttpSecurity_AddRef(This) (This)->lpVtbl->AddRef(This)
1476#define IHttpSecurity_Release(This) (This)->lpVtbl->Release(This)
1477/*** IWindowForBindingUI methods ***/
1478#define IHttpSecurity_GetWindow(This,rguidReason,phwnd) (This)->lpVtbl->GetWindow(This,rguidReason,phwnd)
1479/*** IHttpSecurity methods ***/
1480#define IHttpSecurity_OnSecurityProblem(This,dwProblem) (This)->lpVtbl->OnSecurityProblem(This,dwProblem)
1481#endif
1482
1483#endif
1484
1485HRESULT STDMETHODCALLTYPE IHttpSecurity_OnSecurityProblem_Proxy(
1486 IHttpSecurity* This,
1487 DWORD dwProblem);
1488void __RPC_STUB IHttpSecurity_OnSecurityProblem_Stub(
1489 IRpcStubBuffer* This,
1490 IRpcChannelBuffer* pRpcChannelBuffer,
1491 PRPC_MESSAGE pRpcMessage,
1492 DWORD* pdwStubPhase);
1493
1494#endif /* __IHttpSecurity_INTERFACE_DEFINED__ */
1495
1496/*****************************************************************************
1497 * IPersistMoniker interface
1498 */
1499#ifndef __IPersistMoniker_INTERFACE_DEFINED__
1500#define __IPersistMoniker_INTERFACE_DEFINED__
1501
1502typedef IPersistMoniker *LPPERSISTMONIKER;
1503DEFINE_GUID(IID_IPersistMoniker, 0x79eac9c9, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1504#if defined(__cplusplus) && !defined(CINTERFACE)
1505interface IPersistMoniker : public IUnknown
1506{
1507 virtual HRESULT STDMETHODCALLTYPE GetClassID(
1508 CLSID *pClassID) = 0;
1509
1510 virtual HRESULT STDMETHODCALLTYPE IsDirty(
1511 ) = 0;
1512
1513 virtual HRESULT STDMETHODCALLTYPE Load(
1514 BOOL fFullyAvailable,
1515 IMoniker *pimkName,
1516 LPBC pibc,
1517 DWORD grfMode) = 0;
1518
1519 virtual HRESULT STDMETHODCALLTYPE Save(
1520 IMoniker *pimkName,
1521 LPBC pbc,
1522 BOOL fRemember) = 0;
1523
1524 virtual HRESULT STDMETHODCALLTYPE SaveCompleted(
1525 IMoniker *pimkName,
1526 LPBC pibc) = 0;
1527
1528 virtual HRESULT STDMETHODCALLTYPE GetCurMoniker(
1529 IMoniker **ppimkName) = 0;
1530
1531};
1532#else
1533typedef struct IPersistMonikerVtbl {
1534 BEGIN_INTERFACE
1535
1536 /*** IUnknown methods ***/
1537 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1538 IPersistMoniker* This,
1539 REFIID riid,
1540 void **ppvObject);
1541
1542 ULONG (STDMETHODCALLTYPE *AddRef)(
1543 IPersistMoniker* This);
1544
1545 ULONG (STDMETHODCALLTYPE *Release)(
1546 IPersistMoniker* This);
1547
1548 /*** IPersistMoniker methods ***/
1549 HRESULT (STDMETHODCALLTYPE *GetClassID)(
1550 IPersistMoniker* This,
1551 CLSID *pClassID);
1552
1553 HRESULT (STDMETHODCALLTYPE *IsDirty)(
1554 IPersistMoniker* This);
1555
1556 HRESULT (STDMETHODCALLTYPE *Load)(
1557 IPersistMoniker* This,
1558 BOOL fFullyAvailable,
1559 IMoniker *pimkName,
1560 LPBC pibc,
1561 DWORD grfMode);
1562
1563 HRESULT (STDMETHODCALLTYPE *Save)(
1564 IPersistMoniker* This,
1565 IMoniker *pimkName,
1566 LPBC pbc,
1567 BOOL fRemember);
1568
1569 HRESULT (STDMETHODCALLTYPE *SaveCompleted)(
1570 IPersistMoniker* This,
1571 IMoniker *pimkName,
1572 LPBC pibc);
1573
1574 HRESULT (STDMETHODCALLTYPE *GetCurMoniker)(
1575 IPersistMoniker* This,
1576 IMoniker **ppimkName);
1577
1578 END_INTERFACE
1579} IPersistMonikerVtbl;
1580interface IPersistMoniker {
1581 CONST_VTBL IPersistMonikerVtbl* lpVtbl;
1582};
1583
1584#ifdef COBJMACROS
1585/*** IUnknown methods ***/
1586#define IPersistMoniker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1587#define IPersistMoniker_AddRef(This) (This)->lpVtbl->AddRef(This)
1588#define IPersistMoniker_Release(This) (This)->lpVtbl->Release(This)
1589/*** IPersistMoniker methods ***/
1590#define IPersistMoniker_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID)
1591#define IPersistMoniker_IsDirty(This) (This)->lpVtbl->IsDirty(This)
1592#define IPersistMoniker_Load(This,fFullyAvailable,pimkName,pibc,grfMode) (This)->lpVtbl->Load(This,fFullyAvailable,pimkName,pibc,grfMode)
1593#define IPersistMoniker_Save(This,pimkName,pbc,fRemember) (This)->lpVtbl->Save(This,pimkName,pbc,fRemember)
1594#define IPersistMoniker_SaveCompleted(This,pimkName,pibc) (This)->lpVtbl->SaveCompleted(This,pimkName,pibc)
1595#define IPersistMoniker_GetCurMoniker(This,ppimkName) (This)->lpVtbl->GetCurMoniker(This,ppimkName)
1596#endif
1597
1598#endif
1599
1600HRESULT STDMETHODCALLTYPE IPersistMoniker_GetClassID_Proxy(
1601 IPersistMoniker* This,
1602 CLSID *pClassID);
1603void __RPC_STUB IPersistMoniker_GetClassID_Stub(
1604 IRpcStubBuffer* This,
1605 IRpcChannelBuffer* pRpcChannelBuffer,
1606 PRPC_MESSAGE pRpcMessage,
1607 DWORD* pdwStubPhase);
1608HRESULT STDMETHODCALLTYPE IPersistMoniker_IsDirty_Proxy(
1609 IPersistMoniker* This);
1610void __RPC_STUB IPersistMoniker_IsDirty_Stub(
1611 IRpcStubBuffer* This,
1612 IRpcChannelBuffer* pRpcChannelBuffer,
1613 PRPC_MESSAGE pRpcMessage,
1614 DWORD* pdwStubPhase);
1615HRESULT STDMETHODCALLTYPE IPersistMoniker_Load_Proxy(
1616 IPersistMoniker* This,
1617 BOOL fFullyAvailable,
1618 IMoniker *pimkName,
1619 LPBC pibc,
1620 DWORD grfMode);
1621void __RPC_STUB IPersistMoniker_Load_Stub(
1622 IRpcStubBuffer* This,
1623 IRpcChannelBuffer* pRpcChannelBuffer,
1624 PRPC_MESSAGE pRpcMessage,
1625 DWORD* pdwStubPhase);
1626HRESULT STDMETHODCALLTYPE IPersistMoniker_Save_Proxy(
1627 IPersistMoniker* This,
1628 IMoniker *pimkName,
1629 LPBC pbc,
1630 BOOL fRemember);
1631void __RPC_STUB IPersistMoniker_Save_Stub(
1632 IRpcStubBuffer* This,
1633 IRpcChannelBuffer* pRpcChannelBuffer,
1634 PRPC_MESSAGE pRpcMessage,
1635 DWORD* pdwStubPhase);
1636HRESULT STDMETHODCALLTYPE IPersistMoniker_SaveCompleted_Proxy(
1637 IPersistMoniker* This,
1638 IMoniker *pimkName,
1639 LPBC pibc);
1640void __RPC_STUB IPersistMoniker_SaveCompleted_Stub(
1641 IRpcStubBuffer* This,
1642 IRpcChannelBuffer* pRpcChannelBuffer,
1643 PRPC_MESSAGE pRpcMessage,
1644 DWORD* pdwStubPhase);
1645HRESULT STDMETHODCALLTYPE IPersistMoniker_GetCurMoniker_Proxy(
1646 IPersistMoniker* This,
1647 IMoniker **ppimkName);
1648void __RPC_STUB IPersistMoniker_GetCurMoniker_Stub(
1649 IRpcStubBuffer* This,
1650 IRpcChannelBuffer* pRpcChannelBuffer,
1651 PRPC_MESSAGE pRpcMessage,
1652 DWORD* pdwStubPhase);
1653
1654#endif /* __IPersistMoniker_INTERFACE_DEFINED__ */
1655
1656/*****************************************************************************
1657 * IMonikerProp interface
1658 */
1659#ifndef __IMonikerProp_INTERFACE_DEFINED__
1660#define __IMonikerProp_INTERFACE_DEFINED__
1661
1662typedef IMonikerProp *LPMONIKERPROP;
1663typedef enum __WIDL_urlmon_generated_name_00000005 {
1664 MIMETYPEPROP = 0,
1665 USE_SRC_URL = 1,
1666 CLASSIDPROP = 2,
1667 TRUSTEDDOWNLOADPROP = 3,
1668 POPUPLEVELPROP = 4
1669} MONIKERPROPERTY;
1670DEFINE_GUID(IID_IMonikerProp, 0xa5ca5f7f, 0x1847, 0x4d87, 0x9c,0x5b, 0x91,0x85,0x09,0xf7,0x51,0x1d);
1671#if defined(__cplusplus) && !defined(CINTERFACE)
1672interface IMonikerProp : public IUnknown
1673{
1674 virtual HRESULT STDMETHODCALLTYPE PutProperty(
1675 MONIKERPROPERTY mkp,
1676 LPCWSTR val) = 0;
1677
1678};
1679#else
1680typedef struct IMonikerPropVtbl {
1681 BEGIN_INTERFACE
1682
1683 /*** IUnknown methods ***/
1684 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1685 IMonikerProp* This,
1686 REFIID riid,
1687 void **ppvObject);
1688
1689 ULONG (STDMETHODCALLTYPE *AddRef)(
1690 IMonikerProp* This);
1691
1692 ULONG (STDMETHODCALLTYPE *Release)(
1693 IMonikerProp* This);
1694
1695 /*** IMonikerProp methods ***/
1696 HRESULT (STDMETHODCALLTYPE *PutProperty)(
1697 IMonikerProp* This,
1698 MONIKERPROPERTY mkp,
1699 LPCWSTR val);
1700
1701 END_INTERFACE
1702} IMonikerPropVtbl;
1703interface IMonikerProp {
1704 CONST_VTBL IMonikerPropVtbl* lpVtbl;
1705};
1706
1707#ifdef COBJMACROS
1708/*** IUnknown methods ***/
1709#define IMonikerProp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1710#define IMonikerProp_AddRef(This) (This)->lpVtbl->AddRef(This)
1711#define IMonikerProp_Release(This) (This)->lpVtbl->Release(This)
1712/*** IMonikerProp methods ***/
1713#define IMonikerProp_PutProperty(This,mkp,val) (This)->lpVtbl->PutProperty(This,mkp,val)
1714#endif
1715
1716#endif
1717
1718HRESULT STDMETHODCALLTYPE IMonikerProp_PutProperty_Proxy(
1719 IMonikerProp* This,
1720 MONIKERPROPERTY mkp,
1721 LPCWSTR val);
1722void __RPC_STUB IMonikerProp_PutProperty_Stub(
1723 IRpcStubBuffer* This,
1724 IRpcChannelBuffer* pRpcChannelBuffer,
1725 PRPC_MESSAGE pRpcMessage,
1726 DWORD* pdwStubPhase);
1727
1728#endif /* __IMonikerProp_INTERFACE_DEFINED__ */
1729
1730#ifndef _LPBINDPROTOCOL_DEFINED
1731#define _LPBINDPROTOCOL_DEFINED
1732/*****************************************************************************
1733 * IBindProtocol interface
1734 */
1735#ifndef __IBindProtocol_INTERFACE_DEFINED__
1736#define __IBindProtocol_INTERFACE_DEFINED__
1737
1738typedef IBindProtocol *LPBINDPROTOCOL;
1739DEFINE_GUID(IID_IBindProtocol, 0x79eac9cd, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1740#if defined(__cplusplus) && !defined(CINTERFACE)
1741interface IBindProtocol : public IUnknown
1742{
1743 virtual HRESULT STDMETHODCALLTYPE CreateBinding(
1744 LPCWSTR szUrl,
1745 IBindCtx *pbc,
1746 IBinding **ppb) = 0;
1747
1748};
1749#else
1750typedef struct IBindProtocolVtbl {
1751 BEGIN_INTERFACE
1752
1753 /*** IUnknown methods ***/
1754 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1755 IBindProtocol* This,
1756 REFIID riid,
1757 void **ppvObject);
1758
1759 ULONG (STDMETHODCALLTYPE *AddRef)(
1760 IBindProtocol* This);
1761
1762 ULONG (STDMETHODCALLTYPE *Release)(
1763 IBindProtocol* This);
1764
1765 /*** IBindProtocol methods ***/
1766 HRESULT (STDMETHODCALLTYPE *CreateBinding)(
1767 IBindProtocol* This,
1768 LPCWSTR szUrl,
1769 IBindCtx *pbc,
1770 IBinding **ppb);
1771
1772 END_INTERFACE
1773} IBindProtocolVtbl;
1774interface IBindProtocol {
1775 CONST_VTBL IBindProtocolVtbl* lpVtbl;
1776};
1777
1778#ifdef COBJMACROS
1779/*** IUnknown methods ***/
1780#define IBindProtocol_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1781#define IBindProtocol_AddRef(This) (This)->lpVtbl->AddRef(This)
1782#define IBindProtocol_Release(This) (This)->lpVtbl->Release(This)
1783/*** IBindProtocol methods ***/
1784#define IBindProtocol_CreateBinding(This,szUrl,pbc,ppb) (This)->lpVtbl->CreateBinding(This,szUrl,pbc,ppb)
1785#endif
1786
1787#endif
1788
1789HRESULT STDMETHODCALLTYPE IBindProtocol_CreateBinding_Proxy(
1790 IBindProtocol* This,
1791 LPCWSTR szUrl,
1792 IBindCtx *pbc,
1793 IBinding **ppb);
1794void __RPC_STUB IBindProtocol_CreateBinding_Stub(
1795 IRpcStubBuffer* This,
1796 IRpcChannelBuffer* pRpcChannelBuffer,
1797 PRPC_MESSAGE pRpcMessage,
1798 DWORD* pdwStubPhase);
1799
1800#endif /* __IBindProtocol_INTERFACE_DEFINED__ */
1801
1802#endif /* !defined _LPBINDPROTOCOL_DEFINED */
1803/*****************************************************************************
1804 * IInternetBindInfo interface
1805 */
1806#ifndef __IInternetBindInfo_INTERFACE_DEFINED__
1807#define __IInternetBindInfo_INTERFACE_DEFINED__
1808
1809typedef IInternetBindInfo *LPIINTERNETBINDINFO;
1810typedef enum tagBINDSTRING {
1811 BINDSTRING_HEADERS = 1,
1812 BINDSTRING_ACCEPT_MIMES = 2,
1813 BINDSTRING_EXTRA_URL = 3,
1814 BINDSTRING_LANGUAGE = 4,
1815 BINDSTRING_USERNAME = 5,
1816 BINDSTRING_PASSWORD = 6,
1817 BINDSTRING_UA_PIXELS = 7,
1818 BINDSTRING_UA_COLOR = 8,
1819 BINDSTRING_OS = 9,
1820 BINDSTRING_USER_AGENT = 10,
1821 BINDSTRING_ACCEPT_ENCODINGS = 11,
1822 BINDSTRING_POST_COOKIE = 12,
1823 BINDSTRING_POST_DATA_MIME = 13,
1824 BINDSTRING_URL = 14,
1825 BINDSTRING_IID = 15,
1826 BINDSTRING_FLAG_BIND_TO_OBJECT = 16,
1827 BINDSTRING_PTR_BIND_CONTEXT = 17
1828} BINDSTRING;
1829DEFINE_GUID(IID_IInternetBindInfo, 0x79eac9e1, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1830#if defined(__cplusplus) && !defined(CINTERFACE)
1831interface IInternetBindInfo : public IUnknown
1832{
1833 virtual HRESULT STDMETHODCALLTYPE GetBindInfo(
1834 DWORD *grfBINDF,
1835 BINDINFO *pbindinfo) = 0;
1836
1837 virtual HRESULT STDMETHODCALLTYPE GetBindString(
1838 ULONG ulStringType,
1839 LPOLESTR *ppwzStr,
1840 ULONG cEl,
1841 ULONG *pcElFetched) = 0;
1842
1843};
1844#else
1845typedef struct IInternetBindInfoVtbl {
1846 BEGIN_INTERFACE
1847
1848 /*** IUnknown methods ***/
1849 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1850 IInternetBindInfo* This,
1851 REFIID riid,
1852 void **ppvObject);
1853
1854 ULONG (STDMETHODCALLTYPE *AddRef)(
1855 IInternetBindInfo* This);
1856
1857 ULONG (STDMETHODCALLTYPE *Release)(
1858 IInternetBindInfo* This);
1859
1860 /*** IInternetBindInfo methods ***/
1861 HRESULT (STDMETHODCALLTYPE *GetBindInfo)(
1862 IInternetBindInfo* This,
1863 DWORD *grfBINDF,
1864 BINDINFO *pbindinfo);
1865
1866 HRESULT (STDMETHODCALLTYPE *GetBindString)(
1867 IInternetBindInfo* This,
1868 ULONG ulStringType,
1869 LPOLESTR *ppwzStr,
1870 ULONG cEl,
1871 ULONG *pcElFetched);
1872
1873 END_INTERFACE
1874} IInternetBindInfoVtbl;
1875interface IInternetBindInfo {
1876 CONST_VTBL IInternetBindInfoVtbl* lpVtbl;
1877};
1878
1879#ifdef COBJMACROS
1880/*** IUnknown methods ***/
1881#define IInternetBindInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1882#define IInternetBindInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
1883#define IInternetBindInfo_Release(This) (This)->lpVtbl->Release(This)
1884/*** IInternetBindInfo methods ***/
1885#define IInternetBindInfo_GetBindInfo(This,grfBINDF,pbindinfo) (This)->lpVtbl->GetBindInfo(This,grfBINDF,pbindinfo)
1886#define IInternetBindInfo_GetBindString(This,ulStringType,ppwzStr,cEl,pcElFetched) (This)->lpVtbl->GetBindString(This,ulStringType,ppwzStr,cEl,pcElFetched)
1887#endif
1888
1889#endif
1890
1891HRESULT STDMETHODCALLTYPE IInternetBindInfo_GetBindInfo_Proxy(
1892 IInternetBindInfo* This,
1893 DWORD *grfBINDF,
1894 BINDINFO *pbindinfo);
1895void __RPC_STUB IInternetBindInfo_GetBindInfo_Stub(
1896 IRpcStubBuffer* This,
1897 IRpcChannelBuffer* pRpcChannelBuffer,
1898 PRPC_MESSAGE pRpcMessage,
1899 DWORD* pdwStubPhase);
1900HRESULT STDMETHODCALLTYPE IInternetBindInfo_GetBindString_Proxy(
1901 IInternetBindInfo* This,
1902 ULONG ulStringType,
1903 LPOLESTR *ppwzStr,
1904 ULONG cEl,
1905 ULONG *pcElFetched);
1906void __RPC_STUB IInternetBindInfo_GetBindString_Stub(
1907 IRpcStubBuffer* This,
1908 IRpcChannelBuffer* pRpcChannelBuffer,
1909 PRPC_MESSAGE pRpcMessage,
1910 DWORD* pdwStubPhase);
1911
1912#endif /* __IInternetBindInfo_INTERFACE_DEFINED__ */
1913
1914/*****************************************************************************
1915 * IInternetPriority interface
1916 */
1917#ifndef __IInternetPriority_INTERFACE_DEFINED__
1918#define __IInternetPriority_INTERFACE_DEFINED__
1919
1920typedef IInternetPriority *LPIINTERNETPRIORITY;
1921DEFINE_GUID(IID_IInternetPriority, 0x79eac9eb, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1922#if defined(__cplusplus) && !defined(CINTERFACE)
1923interface IInternetPriority : public IUnknown
1924{
1925 virtual HRESULT STDMETHODCALLTYPE SetPriority(
1926 LONG nPriority) = 0;
1927
1928 virtual HRESULT STDMETHODCALLTYPE GetPriority(
1929 LONG *pnPriority) = 0;
1930
1931};
1932#else
1933typedef struct IInternetPriorityVtbl {
1934 BEGIN_INTERFACE
1935
1936 /*** IUnknown methods ***/
1937 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1938 IInternetPriority* This,
1939 REFIID riid,
1940 void **ppvObject);
1941
1942 ULONG (STDMETHODCALLTYPE *AddRef)(
1943 IInternetPriority* This);
1944
1945 ULONG (STDMETHODCALLTYPE *Release)(
1946 IInternetPriority* This);
1947
1948 /*** IInternetPriority methods ***/
1949 HRESULT (STDMETHODCALLTYPE *SetPriority)(
1950 IInternetPriority* This,
1951 LONG nPriority);
1952
1953 HRESULT (STDMETHODCALLTYPE *GetPriority)(
1954 IInternetPriority* This,
1955 LONG *pnPriority);
1956
1957 END_INTERFACE
1958} IInternetPriorityVtbl;
1959interface IInternetPriority {
1960 CONST_VTBL IInternetPriorityVtbl* lpVtbl;
1961};
1962
1963#ifdef COBJMACROS
1964/*** IUnknown methods ***/
1965#define IInternetPriority_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1966#define IInternetPriority_AddRef(This) (This)->lpVtbl->AddRef(This)
1967#define IInternetPriority_Release(This) (This)->lpVtbl->Release(This)
1968/*** IInternetPriority methods ***/
1969#define IInternetPriority_SetPriority(This,nPriority) (This)->lpVtbl->SetPriority(This,nPriority)
1970#define IInternetPriority_GetPriority(This,pnPriority) (This)->lpVtbl->GetPriority(This,pnPriority)
1971#endif
1972
1973#endif
1974
1975HRESULT STDMETHODCALLTYPE IInternetPriority_SetPriority_Proxy(
1976 IInternetPriority* This,
1977 LONG nPriority);
1978void __RPC_STUB IInternetPriority_SetPriority_Stub(
1979 IRpcStubBuffer* This,
1980 IRpcChannelBuffer* pRpcChannelBuffer,
1981 PRPC_MESSAGE pRpcMessage,
1982 DWORD* pdwStubPhase);
1983HRESULT STDMETHODCALLTYPE IInternetPriority_GetPriority_Proxy(
1984 IInternetPriority* This,
1985 LONG *pnPriority);
1986void __RPC_STUB IInternetPriority_GetPriority_Stub(
1987 IRpcStubBuffer* This,
1988 IRpcChannelBuffer* pRpcChannelBuffer,
1989 PRPC_MESSAGE pRpcMessage,
1990 DWORD* pdwStubPhase);
1991
1992#endif /* __IInternetPriority_INTERFACE_DEFINED__ */
1993
1994/*****************************************************************************
1995 * IInternetProtocolRoot interface
1996 */
1997#ifndef __IInternetProtocolRoot_INTERFACE_DEFINED__
1998#define __IInternetProtocolRoot_INTERFACE_DEFINED__
1999
2000typedef IInternetProtocolRoot *LPIINTERNETPROTOCOLROOT;
2001typedef enum _tagPI_FLAGS {
2002 PI_PARSE_URL = 0x1,
2003 PI_FILTER_MODE = 0x2,
2004 PI_FORCE_ASYNC = 0x4,
2005 PI_USE_WORKERTHREAD = 0x8,
2006 PI_MIMEVERIFICATION = 0x10,
2007 PI_CLSIDLOOKUP = 0x20,
2008 PI_DATAPROGRESS = 0x40,
2009 PI_SYNCHRONOUS = 0x80,
2010 PI_APARTMENTTHREADED = 0x100,
2011 PI_CLASSINSTALL = 0x200,
2012 PD_FORCE_SWITCH = 0x10000
2013} PI_FLAGS;
2014typedef struct _tagPROTOCOLDATA {
2015 DWORD grfFlags;
2016 DWORD dwState;
2017 LPVOID pData;
2018 ULONG cbData;
2019} PROTOCOLDATA;
2020DEFINE_GUID(IID_IInternetProtocolRoot, 0x79eac9e3, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2021#if defined(__cplusplus) && !defined(CINTERFACE)
2022interface IInternetProtocolRoot : public IUnknown
2023{
2024 virtual HRESULT STDMETHODCALLTYPE Start(
2025 LPCWSTR szUrl,
2026 IInternetProtocolSink *pOIProtSink,
2027 IInternetBindInfo *pOIBindInfo,
2028 DWORD grfPI,
2029 HANDLE_PTR dwReserved) = 0;
2030
2031 virtual HRESULT STDMETHODCALLTYPE Continue(
2032 PROTOCOLDATA *pProtocolData) = 0;
2033
2034 virtual HRESULT STDMETHODCALLTYPE Abort(
2035 HRESULT hrReason,
2036 DWORD dwOptions) = 0;
2037
2038 virtual HRESULT STDMETHODCALLTYPE Terminate(
2039 DWORD dwOptions) = 0;
2040
2041 virtual HRESULT STDMETHODCALLTYPE Suspend(
2042 ) = 0;
2043
2044 virtual HRESULT STDMETHODCALLTYPE Resume(
2045 ) = 0;
2046
2047};
2048#else
2049typedef struct IInternetProtocolRootVtbl {
2050 BEGIN_INTERFACE
2051
2052 /*** IUnknown methods ***/
2053 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2054 IInternetProtocolRoot* This,
2055 REFIID riid,
2056 void **ppvObject);
2057
2058 ULONG (STDMETHODCALLTYPE *AddRef)(
2059 IInternetProtocolRoot* This);
2060
2061 ULONG (STDMETHODCALLTYPE *Release)(
2062 IInternetProtocolRoot* This);
2063
2064 /*** IInternetProtocolRoot methods ***/
2065 HRESULT (STDMETHODCALLTYPE *Start)(
2066 IInternetProtocolRoot* This,
2067 LPCWSTR szUrl,
2068 IInternetProtocolSink *pOIProtSink,
2069 IInternetBindInfo *pOIBindInfo,
2070 DWORD grfPI,
2071 HANDLE_PTR dwReserved);
2072
2073 HRESULT (STDMETHODCALLTYPE *Continue)(
2074 IInternetProtocolRoot* This,
2075 PROTOCOLDATA *pProtocolData);
2076
2077 HRESULT (STDMETHODCALLTYPE *Abort)(
2078 IInternetProtocolRoot* This,
2079 HRESULT hrReason,
2080 DWORD dwOptions);
2081
2082 HRESULT (STDMETHODCALLTYPE *Terminate)(
2083 IInternetProtocolRoot* This,
2084 DWORD dwOptions);
2085
2086 HRESULT (STDMETHODCALLTYPE *Suspend)(
2087 IInternetProtocolRoot* This);
2088
2089 HRESULT (STDMETHODCALLTYPE *Resume)(
2090 IInternetProtocolRoot* This);
2091
2092 END_INTERFACE
2093} IInternetProtocolRootVtbl;
2094interface IInternetProtocolRoot {
2095 CONST_VTBL IInternetProtocolRootVtbl* lpVtbl;
2096};
2097
2098#ifdef COBJMACROS
2099/*** IUnknown methods ***/
2100#define IInternetProtocolRoot_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2101#define IInternetProtocolRoot_AddRef(This) (This)->lpVtbl->AddRef(This)
2102#define IInternetProtocolRoot_Release(This) (This)->lpVtbl->Release(This)
2103/*** IInternetProtocolRoot methods ***/
2104#define IInternetProtocolRoot_Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved)
2105#define IInternetProtocolRoot_Continue(This,pProtocolData) (This)->lpVtbl->Continue(This,pProtocolData)
2106#define IInternetProtocolRoot_Abort(This,hrReason,dwOptions) (This)->lpVtbl->Abort(This,hrReason,dwOptions)
2107#define IInternetProtocolRoot_Terminate(This,dwOptions) (This)->lpVtbl->Terminate(This,dwOptions)
2108#define IInternetProtocolRoot_Suspend(This) (This)->lpVtbl->Suspend(This)
2109#define IInternetProtocolRoot_Resume(This) (This)->lpVtbl->Resume(This)
2110#endif
2111
2112#endif
2113
2114HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Start_Proxy(
2115 IInternetProtocolRoot* This,
2116 LPCWSTR szUrl,
2117 IInternetProtocolSink *pOIProtSink,
2118 IInternetBindInfo *pOIBindInfo,
2119 DWORD grfPI,
2120 HANDLE_PTR dwReserved);
2121void __RPC_STUB IInternetProtocolRoot_Start_Stub(
2122 IRpcStubBuffer* This,
2123 IRpcChannelBuffer* pRpcChannelBuffer,
2124 PRPC_MESSAGE pRpcMessage,
2125 DWORD* pdwStubPhase);
2126HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Continue_Proxy(
2127 IInternetProtocolRoot* This,
2128 PROTOCOLDATA *pProtocolData);
2129void __RPC_STUB IInternetProtocolRoot_Continue_Stub(
2130 IRpcStubBuffer* This,
2131 IRpcChannelBuffer* pRpcChannelBuffer,
2132 PRPC_MESSAGE pRpcMessage,
2133 DWORD* pdwStubPhase);
2134HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Abort_Proxy(
2135 IInternetProtocolRoot* This,
2136 HRESULT hrReason,
2137 DWORD dwOptions);
2138void __RPC_STUB IInternetProtocolRoot_Abort_Stub(
2139 IRpcStubBuffer* This,
2140 IRpcChannelBuffer* pRpcChannelBuffer,
2141 PRPC_MESSAGE pRpcMessage,
2142 DWORD* pdwStubPhase);
2143HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Terminate_Proxy(
2144 IInternetProtocolRoot* This,
2145 DWORD dwOptions);
2146void __RPC_STUB IInternetProtocolRoot_Terminate_Stub(
2147 IRpcStubBuffer* This,
2148 IRpcChannelBuffer* pRpcChannelBuffer,
2149 PRPC_MESSAGE pRpcMessage,
2150 DWORD* pdwStubPhase);
2151HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Suspend_Proxy(
2152 IInternetProtocolRoot* This);
2153void __RPC_STUB IInternetProtocolRoot_Suspend_Stub(
2154 IRpcStubBuffer* This,
2155 IRpcChannelBuffer* pRpcChannelBuffer,
2156 PRPC_MESSAGE pRpcMessage,
2157 DWORD* pdwStubPhase);
2158HRESULT STDMETHODCALLTYPE IInternetProtocolRoot_Resume_Proxy(
2159 IInternetProtocolRoot* This);
2160void __RPC_STUB IInternetProtocolRoot_Resume_Stub(
2161 IRpcStubBuffer* This,
2162 IRpcChannelBuffer* pRpcChannelBuffer,
2163 PRPC_MESSAGE pRpcMessage,
2164 DWORD* pdwStubPhase);
2165
2166#endif /* __IInternetProtocolRoot_INTERFACE_DEFINED__ */
2167
2168/*****************************************************************************
2169 * IInternetProtocolSink interface
2170 */
2171#ifndef __IInternetProtocolSink_INTERFACE_DEFINED__
2172#define __IInternetProtocolSink_INTERFACE_DEFINED__
2173
2174typedef IInternetProtocolSink *LPIINTERNETPROTOCOLSINK;
2175DEFINE_GUID(IID_IInternetProtocolSink, 0x79eac9e5, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2176#if defined(__cplusplus) && !defined(CINTERFACE)
2177interface IInternetProtocolSink : public IUnknown
2178{
2179 virtual HRESULT STDMETHODCALLTYPE Switch(
2180 PROTOCOLDATA *pProtocolData) = 0;
2181
2182 virtual HRESULT STDMETHODCALLTYPE ReportProgress(
2183 ULONG ulStatusCode,
2184 LPCWSTR szStatusText) = 0;
2185
2186 virtual HRESULT STDMETHODCALLTYPE ReportData(
2187 DWORD grfBSCF,
2188 ULONG ulProgress,
2189 ULONG ulProgressMax) = 0;
2190
2191 virtual HRESULT STDMETHODCALLTYPE ReportResult(
2192 HRESULT hrResult,
2193 DWORD dwError,
2194 LPCWSTR szResult) = 0;
2195
2196};
2197#else
2198typedef struct IInternetProtocolSinkVtbl {
2199 BEGIN_INTERFACE
2200
2201 /*** IUnknown methods ***/
2202 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2203 IInternetProtocolSink* This,
2204 REFIID riid,
2205 void **ppvObject);
2206
2207 ULONG (STDMETHODCALLTYPE *AddRef)(
2208 IInternetProtocolSink* This);
2209
2210 ULONG (STDMETHODCALLTYPE *Release)(
2211 IInternetProtocolSink* This);
2212
2213 /*** IInternetProtocolSink methods ***/
2214 HRESULT (STDMETHODCALLTYPE *Switch)(
2215 IInternetProtocolSink* This,
2216 PROTOCOLDATA *pProtocolData);
2217
2218 HRESULT (STDMETHODCALLTYPE *ReportProgress)(
2219 IInternetProtocolSink* This,
2220 ULONG ulStatusCode,
2221 LPCWSTR szStatusText);
2222
2223 HRESULT (STDMETHODCALLTYPE *ReportData)(
2224 IInternetProtocolSink* This,
2225 DWORD grfBSCF,
2226 ULONG ulProgress,
2227 ULONG ulProgressMax);
2228
2229 HRESULT (STDMETHODCALLTYPE *ReportResult)(
2230 IInternetProtocolSink* This,
2231 HRESULT hrResult,
2232 DWORD dwError,
2233 LPCWSTR szResult);
2234
2235 END_INTERFACE
2236} IInternetProtocolSinkVtbl;
2237interface IInternetProtocolSink {
2238 CONST_VTBL IInternetProtocolSinkVtbl* lpVtbl;
2239};
2240
2241#ifdef COBJMACROS
2242/*** IUnknown methods ***/
2243#define IInternetProtocolSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2244#define IInternetProtocolSink_AddRef(This) (This)->lpVtbl->AddRef(This)
2245#define IInternetProtocolSink_Release(This) (This)->lpVtbl->Release(This)
2246/*** IInternetProtocolSink methods ***/
2247#define IInternetProtocolSink_Switch(This,pProtocolData) (This)->lpVtbl->Switch(This,pProtocolData)
2248#define IInternetProtocolSink_ReportProgress(This,ulStatusCode,szStatusText) (This)->lpVtbl->ReportProgress(This,ulStatusCode,szStatusText)
2249#define IInternetProtocolSink_ReportData(This,grfBSCF,ulProgress,ulProgressMax) (This)->lpVtbl->ReportData(This,grfBSCF,ulProgress,ulProgressMax)
2250#define IInternetProtocolSink_ReportResult(This,hrResult,dwError,szResult) (This)->lpVtbl->ReportResult(This,hrResult,dwError,szResult)
2251#endif
2252
2253#endif
2254
2255HRESULT STDMETHODCALLTYPE IInternetProtocolSink_Switch_Proxy(
2256 IInternetProtocolSink* This,
2257 PROTOCOLDATA *pProtocolData);
2258void __RPC_STUB IInternetProtocolSink_Switch_Stub(
2259 IRpcStubBuffer* This,
2260 IRpcChannelBuffer* pRpcChannelBuffer,
2261 PRPC_MESSAGE pRpcMessage,
2262 DWORD* pdwStubPhase);
2263HRESULT STDMETHODCALLTYPE IInternetProtocolSink_ReportProgress_Proxy(
2264 IInternetProtocolSink* This,
2265 ULONG ulStatusCode,
2266 LPCWSTR szStatusText);
2267void __RPC_STUB IInternetProtocolSink_ReportProgress_Stub(
2268 IRpcStubBuffer* This,
2269 IRpcChannelBuffer* pRpcChannelBuffer,
2270 PRPC_MESSAGE pRpcMessage,
2271 DWORD* pdwStubPhase);
2272HRESULT STDMETHODCALLTYPE IInternetProtocolSink_ReportData_Proxy(
2273 IInternetProtocolSink* This,
2274 DWORD grfBSCF,
2275 ULONG ulProgress,
2276 ULONG ulProgressMax);
2277void __RPC_STUB IInternetProtocolSink_ReportData_Stub(
2278 IRpcStubBuffer* This,
2279 IRpcChannelBuffer* pRpcChannelBuffer,
2280 PRPC_MESSAGE pRpcMessage,
2281 DWORD* pdwStubPhase);
2282HRESULT STDMETHODCALLTYPE IInternetProtocolSink_ReportResult_Proxy(
2283 IInternetProtocolSink* This,
2284 HRESULT hrResult,
2285 DWORD dwError,
2286 LPCWSTR szResult);
2287void __RPC_STUB IInternetProtocolSink_ReportResult_Stub(
2288 IRpcStubBuffer* This,
2289 IRpcChannelBuffer* pRpcChannelBuffer,
2290 PRPC_MESSAGE pRpcMessage,
2291 DWORD* pdwStubPhase);
2292
2293#endif /* __IInternetProtocolSink_INTERFACE_DEFINED__ */
2294
2295/*****************************************************************************
2296 * IInternetProtocol interface
2297 */
2298#ifndef __IInternetProtocol_INTERFACE_DEFINED__
2299#define __IInternetProtocol_INTERFACE_DEFINED__
2300
2301typedef IInternetProtocol *LPIINTERNETPROTOCOL;
2302DEFINE_GUID(IID_IInternetProtocol, 0x79eac9e4, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2303#if defined(__cplusplus) && !defined(CINTERFACE)
2304interface IInternetProtocol : public IInternetProtocolRoot
2305{
2306 virtual HRESULT STDMETHODCALLTYPE Read(
2307 void *pv,
2308 ULONG cb,
2309 ULONG *pcbRead) = 0;
2310
2311 virtual HRESULT STDMETHODCALLTYPE Seek(
2312 LARGE_INTEGER dlibMove,
2313 DWORD dwOrigin,
2314 ULARGE_INTEGER *plibNewPosition) = 0;
2315
2316 virtual HRESULT STDMETHODCALLTYPE LockRequest(
2317 DWORD dwOptions) = 0;
2318
2319 virtual HRESULT STDMETHODCALLTYPE UnlockRequest(
2320 ) = 0;
2321
2322};
2323#else
2324typedef struct IInternetProtocolVtbl {
2325 BEGIN_INTERFACE
2326
2327 /*** IUnknown methods ***/
2328 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2329 IInternetProtocol* This,
2330 REFIID riid,
2331 void **ppvObject);
2332
2333 ULONG (STDMETHODCALLTYPE *AddRef)(
2334 IInternetProtocol* This);
2335
2336 ULONG (STDMETHODCALLTYPE *Release)(
2337 IInternetProtocol* This);
2338
2339 /*** IInternetProtocolRoot methods ***/
2340 HRESULT (STDMETHODCALLTYPE *Start)(
2341 IInternetProtocol* This,
2342 LPCWSTR szUrl,
2343 IInternetProtocolSink *pOIProtSink,
2344 IInternetBindInfo *pOIBindInfo,
2345 DWORD grfPI,
2346 HANDLE_PTR dwReserved);
2347
2348 HRESULT (STDMETHODCALLTYPE *Continue)(
2349 IInternetProtocol* This,
2350 PROTOCOLDATA *pProtocolData);
2351
2352 HRESULT (STDMETHODCALLTYPE *Abort)(
2353 IInternetProtocol* This,
2354 HRESULT hrReason,
2355 DWORD dwOptions);
2356
2357 HRESULT (STDMETHODCALLTYPE *Terminate)(
2358 IInternetProtocol* This,
2359 DWORD dwOptions);
2360
2361 HRESULT (STDMETHODCALLTYPE *Suspend)(
2362 IInternetProtocol* This);
2363
2364 HRESULT (STDMETHODCALLTYPE *Resume)(
2365 IInternetProtocol* This);
2366
2367 /*** IInternetProtocol methods ***/
2368 HRESULT (STDMETHODCALLTYPE *Read)(
2369 IInternetProtocol* This,
2370 void *pv,
2371 ULONG cb,
2372 ULONG *pcbRead);
2373
2374 HRESULT (STDMETHODCALLTYPE *Seek)(
2375 IInternetProtocol* This,
2376 LARGE_INTEGER dlibMove,
2377 DWORD dwOrigin,
2378 ULARGE_INTEGER *plibNewPosition);
2379
2380 HRESULT (STDMETHODCALLTYPE *LockRequest)(
2381 IInternetProtocol* This,
2382 DWORD dwOptions);
2383
2384 HRESULT (STDMETHODCALLTYPE *UnlockRequest)(
2385 IInternetProtocol* This);
2386
2387 END_INTERFACE
2388} IInternetProtocolVtbl;
2389interface IInternetProtocol {
2390 CONST_VTBL IInternetProtocolVtbl* lpVtbl;
2391};
2392
2393#ifdef COBJMACROS
2394/*** IUnknown methods ***/
2395#define IInternetProtocol_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2396#define IInternetProtocol_AddRef(This) (This)->lpVtbl->AddRef(This)
2397#define IInternetProtocol_Release(This) (This)->lpVtbl->Release(This)
2398/*** IInternetProtocolRoot methods ***/
2399#define IInternetProtocol_Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved)
2400#define IInternetProtocol_Continue(This,pProtocolData) (This)->lpVtbl->Continue(This,pProtocolData)
2401#define IInternetProtocol_Abort(This,hrReason,dwOptions) (This)->lpVtbl->Abort(This,hrReason,dwOptions)
2402#define IInternetProtocol_Terminate(This,dwOptions) (This)->lpVtbl->Terminate(This,dwOptions)
2403#define IInternetProtocol_Suspend(This) (This)->lpVtbl->Suspend(This)
2404#define IInternetProtocol_Resume(This) (This)->lpVtbl->Resume(This)
2405/*** IInternetProtocol methods ***/
2406#define IInternetProtocol_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
2407#define IInternetProtocol_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
2408#define IInternetProtocol_LockRequest(This,dwOptions) (This)->lpVtbl->LockRequest(This,dwOptions)
2409#define IInternetProtocol_UnlockRequest(This) (This)->lpVtbl->UnlockRequest(This)
2410#endif
2411
2412#endif
2413
2414HRESULT STDMETHODCALLTYPE IInternetProtocol_Read_Proxy(
2415 IInternetProtocol* This,
2416 void *pv,
2417 ULONG cb,
2418 ULONG *pcbRead);
2419void __RPC_STUB IInternetProtocol_Read_Stub(
2420 IRpcStubBuffer* This,
2421 IRpcChannelBuffer* pRpcChannelBuffer,
2422 PRPC_MESSAGE pRpcMessage,
2423 DWORD* pdwStubPhase);
2424HRESULT STDMETHODCALLTYPE IInternetProtocol_Seek_Proxy(
2425 IInternetProtocol* This,
2426 LARGE_INTEGER dlibMove,
2427 DWORD dwOrigin,
2428 ULARGE_INTEGER *plibNewPosition);
2429void __RPC_STUB IInternetProtocol_Seek_Stub(
2430 IRpcStubBuffer* This,
2431 IRpcChannelBuffer* pRpcChannelBuffer,
2432 PRPC_MESSAGE pRpcMessage,
2433 DWORD* pdwStubPhase);
2434HRESULT STDMETHODCALLTYPE IInternetProtocol_LockRequest_Proxy(
2435 IInternetProtocol* This,
2436 DWORD dwOptions);
2437void __RPC_STUB IInternetProtocol_LockRequest_Stub(
2438 IRpcStubBuffer* This,
2439 IRpcChannelBuffer* pRpcChannelBuffer,
2440 PRPC_MESSAGE pRpcMessage,
2441 DWORD* pdwStubPhase);
2442HRESULT STDMETHODCALLTYPE IInternetProtocol_UnlockRequest_Proxy(
2443 IInternetProtocol* This);
2444void __RPC_STUB IInternetProtocol_UnlockRequest_Stub(
2445 IRpcStubBuffer* This,
2446 IRpcChannelBuffer* pRpcChannelBuffer,
2447 PRPC_MESSAGE pRpcMessage,
2448 DWORD* pdwStubPhase);
2449
2450#endif /* __IInternetProtocol_INTERFACE_DEFINED__ */
2451
2452/*****************************************************************************
2453 * IInternetProtocolInfo interface
2454 */
2455#ifndef __IInternetProtocolInfo_INTERFACE_DEFINED__
2456#define __IInternetProtocolInfo_INTERFACE_DEFINED__
2457
2458typedef IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;
2459typedef enum _tagPARSEACTION {
2460 PARSE_CANONICALIZE = 1,
2461 PARSE_FRIENDLY = 2,
2462 PARSE_SECURITY_URL = 3,
2463 PARSE_ROOTDOCUMENT = 4,
2464 PARSE_DOCUMENT = 5,
2465 PARSE_ANCHOR = 6,
2466 PARSE_ENCODE = 7,
2467 PARSE_DECODE = 8,
2468 PARSE_PATH_FROM_URL = 9,
2469 PARSE_URL_FROM_PATH = 10,
2470 PARSE_MIME = 11,
2471 PARSE_SERVER = 12,
2472 PARSE_SCHEMA = 13,
2473 PARSE_SITE = 14,
2474 PARSE_DOMAIN = 15,
2475 PARSE_LOCATION = 16,
2476 PARSE_SECURITY_DOMAIN = 17,
2477 PARSE_ESCAPE = 18,
2478 PARSE_UNESCAPE = 19
2479} PARSEACTION;
2480typedef enum _tagPSUACTION {
2481 PSU_DEFAULT = 1,
2482 PSU_SECURITY_URL_ONLY = 2
2483} PSUACTION;
2484typedef enum _tagQUERYOPTION {
2485 QUERY_EXPIRATION_DATE = 1,
2486 QUERY_TIME_OF_LAST_CHANGE = 2,
2487 QUERY_CONTENT_ENCODING = 3,
2488 QUERY_CONTENT_TYPE = 4,
2489 QUERY_REFRESH = 5,
2490 QUERY_RECOMBINE = 6,
2491 QUERY_CAN_NAVIGATE = 7,
2492 QUERY_USES_NETWORK = 8,
2493 QUERY_IS_CACHED = 9,
2494 QUERY_IS_INSTALLEDENTRY = 10,
2495 QUERY_IS_CACHED_OR_MAPPED = 11,
2496 QUERY_USES_CACHE = 12,
2497 QUERY_IS_SECURE = 13,
2498 QUERY_IS_SAFE = 14,
2499 QUERY_USES_HISTORYFOLDER = 15
2500} QUERYOPTION;
2501DEFINE_GUID(IID_IInternetProtocolInfo, 0x79eac9ec, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2502#if defined(__cplusplus) && !defined(CINTERFACE)
2503interface IInternetProtocolInfo : public IUnknown
2504{
2505 virtual HRESULT STDMETHODCALLTYPE ParseUrl(
2506 LPCWSTR pwzUrl,
2507 PARSEACTION ParseAction,
2508 DWORD dwParseFlags,
2509 LPWSTR pwzResult,
2510 DWORD cchResult,
2511 DWORD *pcchResult,
2512 DWORD dwReserved) = 0;
2513
2514 virtual HRESULT STDMETHODCALLTYPE CombineUrl(
2515 LPCWSTR pwzBaseUrl,
2516 LPCWSTR pwzRelativeUrl,
2517 DWORD dwCombineFlags,
2518 LPWSTR pwzResult,
2519 DWORD cchResult,
2520 DWORD *pcchResult,
2521 DWORD dwReserved) = 0;
2522
2523 virtual HRESULT STDMETHODCALLTYPE CompareUrl(
2524 LPCWSTR pwzUrl1,
2525 LPCWSTR pwzUrl2,
2526 DWORD dwCompareFlags) = 0;
2527
2528 virtual HRESULT STDMETHODCALLTYPE QueryInfo(
2529 LPCWSTR pwzUrl,
2530 QUERYOPTION OueryOption,
2531 DWORD dwQueryFlags,
2532 LPVOID pBuffer,
2533 DWORD cbBuffer,
2534 DWORD *pcbBuf,
2535 DWORD dwReserved) = 0;
2536
2537};
2538#else
2539typedef struct IInternetProtocolInfoVtbl {
2540 BEGIN_INTERFACE
2541
2542 /*** IUnknown methods ***/
2543 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2544 IInternetProtocolInfo* This,
2545 REFIID riid,
2546 void **ppvObject);
2547
2548 ULONG (STDMETHODCALLTYPE *AddRef)(
2549 IInternetProtocolInfo* This);
2550
2551 ULONG (STDMETHODCALLTYPE *Release)(
2552 IInternetProtocolInfo* This);
2553
2554 /*** IInternetProtocolInfo methods ***/
2555 HRESULT (STDMETHODCALLTYPE *ParseUrl)(
2556 IInternetProtocolInfo* This,
2557 LPCWSTR pwzUrl,
2558 PARSEACTION ParseAction,
2559 DWORD dwParseFlags,
2560 LPWSTR pwzResult,
2561 DWORD cchResult,
2562 DWORD *pcchResult,
2563 DWORD dwReserved);
2564
2565 HRESULT (STDMETHODCALLTYPE *CombineUrl)(
2566 IInternetProtocolInfo* This,
2567 LPCWSTR pwzBaseUrl,
2568 LPCWSTR pwzRelativeUrl,
2569 DWORD dwCombineFlags,
2570 LPWSTR pwzResult,
2571 DWORD cchResult,
2572 DWORD *pcchResult,
2573 DWORD dwReserved);
2574
2575 HRESULT (STDMETHODCALLTYPE *CompareUrl)(
2576 IInternetProtocolInfo* This,
2577 LPCWSTR pwzUrl1,
2578 LPCWSTR pwzUrl2,
2579 DWORD dwCompareFlags);
2580
2581 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
2582 IInternetProtocolInfo* This,
2583 LPCWSTR pwzUrl,
2584 QUERYOPTION OueryOption,
2585 DWORD dwQueryFlags,
2586 LPVOID pBuffer,
2587 DWORD cbBuffer,
2588 DWORD *pcbBuf,
2589 DWORD dwReserved);
2590
2591 END_INTERFACE
2592} IInternetProtocolInfoVtbl;
2593interface IInternetProtocolInfo {
2594 CONST_VTBL IInternetProtocolInfoVtbl* lpVtbl;
2595};
2596
2597#ifdef COBJMACROS
2598/*** IUnknown methods ***/
2599#define IInternetProtocolInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2600#define IInternetProtocolInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
2601#define IInternetProtocolInfo_Release(This) (This)->lpVtbl->Release(This)
2602/*** IInternetProtocolInfo methods ***/
2603#define IInternetProtocolInfo_ParseUrl(This,pwzUrl,ParseAction,dwParseFlags,pwzResult,cchResult,pcchResult,dwReserved) (This)->lpVtbl->ParseUrl(This,pwzUrl,ParseAction,dwParseFlags,pwzResult,cchResult,pcchResult,dwReserved)
2604#define IInternetProtocolInfo_CombineUrl(This,pwzBaseUrl,pwzRelativeUrl,dwCombineFlags,pwzResult,cchResult,pcchResult,dwReserved) (This)->lpVtbl->CombineUrl(This,pwzBaseUrl,pwzRelativeUrl,dwCombineFlags,pwzResult,cchResult,pcchResult,dwReserved)
2605#define IInternetProtocolInfo_CompareUrl(This,pwzUrl1,pwzUrl2,dwCompareFlags) (This)->lpVtbl->CompareUrl(This,pwzUrl1,pwzUrl2,dwCompareFlags)
2606#define IInternetProtocolInfo_QueryInfo(This,pwzUrl,OueryOption,dwQueryFlags,pBuffer,cbBuffer,pcbBuf,dwReserved) (This)->lpVtbl->QueryInfo(This,pwzUrl,OueryOption,dwQueryFlags,pBuffer,cbBuffer,pcbBuf,dwReserved)
2607#endif
2608
2609#endif
2610
2611HRESULT STDMETHODCALLTYPE IInternetProtocolInfo_ParseUrl_Proxy(
2612 IInternetProtocolInfo* This,
2613 LPCWSTR pwzUrl,
2614 PARSEACTION ParseAction,
2615 DWORD dwParseFlags,
2616 LPWSTR pwzResult,
2617 DWORD cchResult,
2618 DWORD *pcchResult,
2619 DWORD dwReserved);
2620void __RPC_STUB IInternetProtocolInfo_ParseUrl_Stub(
2621 IRpcStubBuffer* This,
2622 IRpcChannelBuffer* pRpcChannelBuffer,
2623 PRPC_MESSAGE pRpcMessage,
2624 DWORD* pdwStubPhase);
2625HRESULT STDMETHODCALLTYPE IInternetProtocolInfo_CombineUrl_Proxy(
2626 IInternetProtocolInfo* This,
2627 LPCWSTR pwzBaseUrl,
2628 LPCWSTR pwzRelativeUrl,
2629 DWORD dwCombineFlags,
2630 LPWSTR pwzResult,
2631 DWORD cchResult,
2632 DWORD *pcchResult,
2633 DWORD dwReserved);
2634void __RPC_STUB IInternetProtocolInfo_CombineUrl_Stub(
2635 IRpcStubBuffer* This,
2636 IRpcChannelBuffer* pRpcChannelBuffer,
2637 PRPC_MESSAGE pRpcMessage,
2638 DWORD* pdwStubPhase);
2639HRESULT STDMETHODCALLTYPE IInternetProtocolInfo_CompareUrl_Proxy(
2640 IInternetProtocolInfo* This,
2641 LPCWSTR pwzUrl1,
2642 LPCWSTR pwzUrl2,
2643 DWORD dwCompareFlags);
2644void __RPC_STUB IInternetProtocolInfo_CompareUrl_Stub(
2645 IRpcStubBuffer* This,
2646 IRpcChannelBuffer* pRpcChannelBuffer,
2647 PRPC_MESSAGE pRpcMessage,
2648 DWORD* pdwStubPhase);
2649HRESULT STDMETHODCALLTYPE IInternetProtocolInfo_QueryInfo_Proxy(
2650 IInternetProtocolInfo* This,
2651 LPCWSTR pwzUrl,
2652 QUERYOPTION OueryOption,
2653 DWORD dwQueryFlags,
2654 LPVOID pBuffer,
2655 DWORD cbBuffer,
2656 DWORD *pcbBuf,
2657 DWORD dwReserved);
2658void __RPC_STUB IInternetProtocolInfo_QueryInfo_Stub(
2659 IRpcStubBuffer* This,
2660 IRpcChannelBuffer* pRpcChannelBuffer,
2661 PRPC_MESSAGE pRpcMessage,
2662 DWORD* pdwStubPhase);
2663
2664#endif /* __IInternetProtocolInfo_INTERFACE_DEFINED__ */
2665
2666/*****************************************************************************
2667 * IInternetSession interface
2668 */
2669#ifndef __IInternetSession_INTERFACE_DEFINED__
2670#define __IInternetSession_INTERFACE_DEFINED__
2671
2672typedef IInternetSession *LPIINTERNETSESSION;
2673typedef enum _tagOIBDG_FLAGS {
2674 OIBDG_APARTMENTTHREADED = 0x100,
2675 OIBDG_DATAONLY = 0x1000
2676} OIBDG_FLAGS;
2677DEFINE_GUID(IID_IInternetSession, 0x79eac9e7, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2678#if defined(__cplusplus) && !defined(CINTERFACE)
2679interface IInternetSession : public IUnknown
2680{
2681 virtual HRESULT STDMETHODCALLTYPE RegisterNameSpace(
2682 IClassFactory *pCF,
2683 REFCLSID rclsid,
2684 LPCWSTR pwzProtocol,
2685 ULONG cPatterns,
2686 const LPCWSTR *ppwzPatterns,
2687 DWORD dwReserved) = 0;
2688
2689 virtual HRESULT STDMETHODCALLTYPE UnregisterNameSpace(
2690 IClassFactory *pCF,
2691 LPCWSTR pszProtocol) = 0;
2692
2693 virtual HRESULT STDMETHODCALLTYPE RegisterMimeFilter(
2694 IClassFactory *pCF,
2695 REFCLSID rclsid,
2696 LPCWSTR pwzType) = 0;
2697
2698 virtual HRESULT STDMETHODCALLTYPE UnregisterMimeFilter(
2699 IClassFactory *pCF,
2700 LPCWSTR pwzType) = 0;
2701
2702 virtual HRESULT STDMETHODCALLTYPE CreateBinding(
2703 LPBC pBC,
2704 LPCWSTR szUrl,
2705 IUnknown *pUnkOuter,
2706 IUnknown **ppUnk,
2707 IInternetProtocol **ppOInetProt,
2708 DWORD dwOption) = 0;
2709
2710 virtual HRESULT STDMETHODCALLTYPE SetSessionOption(
2711 DWORD dwOption,
2712 LPVOID pBuffer,
2713 DWORD dwBufferLength,
2714 DWORD dwReserved) = 0;
2715
2716};
2717#else
2718typedef struct IInternetSessionVtbl {
2719 BEGIN_INTERFACE
2720
2721 /*** IUnknown methods ***/
2722 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2723 IInternetSession* This,
2724 REFIID riid,
2725 void **ppvObject);
2726
2727 ULONG (STDMETHODCALLTYPE *AddRef)(
2728 IInternetSession* This);
2729
2730 ULONG (STDMETHODCALLTYPE *Release)(
2731 IInternetSession* This);
2732
2733 /*** IInternetSession methods ***/
2734 HRESULT (STDMETHODCALLTYPE *RegisterNameSpace)(
2735 IInternetSession* This,
2736 IClassFactory *pCF,
2737 REFCLSID rclsid,
2738 LPCWSTR pwzProtocol,
2739 ULONG cPatterns,
2740 const LPCWSTR *ppwzPatterns,
2741 DWORD dwReserved);
2742
2743 HRESULT (STDMETHODCALLTYPE *UnregisterNameSpace)(
2744 IInternetSession* This,
2745 IClassFactory *pCF,
2746 LPCWSTR pszProtocol);
2747
2748 HRESULT (STDMETHODCALLTYPE *RegisterMimeFilter)(
2749 IInternetSession* This,
2750 IClassFactory *pCF,
2751 REFCLSID rclsid,
2752 LPCWSTR pwzType);
2753
2754 HRESULT (STDMETHODCALLTYPE *UnregisterMimeFilter)(
2755 IInternetSession* This,
2756 IClassFactory *pCF,
2757 LPCWSTR pwzType);
2758
2759 HRESULT (STDMETHODCALLTYPE *CreateBinding)(
2760 IInternetSession* This,
2761 LPBC pBC,
2762 LPCWSTR szUrl,
2763 IUnknown *pUnkOuter,
2764 IUnknown **ppUnk,
2765 IInternetProtocol **ppOInetProt,
2766 DWORD dwOption);
2767
2768 HRESULT (STDMETHODCALLTYPE *SetSessionOption)(
2769 IInternetSession* This,
2770 DWORD dwOption,
2771 LPVOID pBuffer,
2772 DWORD dwBufferLength,
2773 DWORD dwReserved);
2774
2775 END_INTERFACE
2776} IInternetSessionVtbl;
2777interface IInternetSession {
2778 CONST_VTBL IInternetSessionVtbl* lpVtbl;
2779};
2780
2781#ifdef COBJMACROS
2782/*** IUnknown methods ***/
2783#define IInternetSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2784#define IInternetSession_AddRef(This) (This)->lpVtbl->AddRef(This)
2785#define IInternetSession_Release(This) (This)->lpVtbl->Release(This)
2786/*** IInternetSession methods ***/
2787#define IInternetSession_RegisterNameSpace(This,pCF,rclsid,pwzProtocol,cPatterns,ppwzPatterns,dwReserved) (This)->lpVtbl->RegisterNameSpace(This,pCF,rclsid,pwzProtocol,cPatterns,ppwzPatterns,dwReserved)
2788#define IInternetSession_UnregisterNameSpace(This,pCF,pszProtocol) (This)->lpVtbl->UnregisterNameSpace(This,pCF,pszProtocol)
2789#define IInternetSession_RegisterMimeFilter(This,pCF,rclsid,pwzType) (This)->lpVtbl->RegisterMimeFilter(This,pCF,rclsid,pwzType)
2790#define IInternetSession_UnregisterMimeFilter(This,pCF,pwzType) (This)->lpVtbl->UnregisterMimeFilter(This,pCF,pwzType)
2791#define IInternetSession_CreateBinding(This,pBC,szUrl,pUnkOuter,ppUnk,ppOInetProt,dwOption) (This)->lpVtbl->CreateBinding(This,pBC,szUrl,pUnkOuter,ppUnk,ppOInetProt,dwOption)
2792#define IInternetSession_SetSessionOption(This,dwOption,pBuffer,dwBufferLength,dwReserved) (This)->lpVtbl->SetSessionOption(This,dwOption,pBuffer,dwBufferLength,dwReserved)
2793#endif
2794
2795#endif
2796
2797HRESULT STDMETHODCALLTYPE IInternetSession_RegisterNameSpace_Proxy(
2798 IInternetSession* This,
2799 IClassFactory *pCF,
2800 REFCLSID rclsid,
2801 LPCWSTR pwzProtocol,
2802 ULONG cPatterns,
2803 const LPCWSTR *ppwzPatterns,
2804 DWORD dwReserved);
2805void __RPC_STUB IInternetSession_RegisterNameSpace_Stub(
2806 IRpcStubBuffer* This,
2807 IRpcChannelBuffer* pRpcChannelBuffer,
2808 PRPC_MESSAGE pRpcMessage,
2809 DWORD* pdwStubPhase);
2810HRESULT STDMETHODCALLTYPE IInternetSession_UnregisterNameSpace_Proxy(
2811 IInternetSession* This,
2812 IClassFactory *pCF,
2813 LPCWSTR pszProtocol);
2814void __RPC_STUB IInternetSession_UnregisterNameSpace_Stub(
2815 IRpcStubBuffer* This,
2816 IRpcChannelBuffer* pRpcChannelBuffer,
2817 PRPC_MESSAGE pRpcMessage,
2818 DWORD* pdwStubPhase);
2819HRESULT STDMETHODCALLTYPE IInternetSession_RegisterMimeFilter_Proxy(
2820 IInternetSession* This,
2821 IClassFactory *pCF,
2822 REFCLSID rclsid,
2823 LPCWSTR pwzType);
2824void __RPC_STUB IInternetSession_RegisterMimeFilter_Stub(
2825 IRpcStubBuffer* This,
2826 IRpcChannelBuffer* pRpcChannelBuffer,
2827 PRPC_MESSAGE pRpcMessage,
2828 DWORD* pdwStubPhase);
2829HRESULT STDMETHODCALLTYPE IInternetSession_UnregisterMimeFilter_Proxy(
2830 IInternetSession* This,
2831 IClassFactory *pCF,
2832 LPCWSTR pwzType);
2833void __RPC_STUB IInternetSession_UnregisterMimeFilter_Stub(
2834 IRpcStubBuffer* This,
2835 IRpcChannelBuffer* pRpcChannelBuffer,
2836 PRPC_MESSAGE pRpcMessage,
2837 DWORD* pdwStubPhase);
2838HRESULT STDMETHODCALLTYPE IInternetSession_CreateBinding_Proxy(
2839 IInternetSession* This,
2840 LPBC pBC,
2841 LPCWSTR szUrl,
2842 IUnknown *pUnkOuter,
2843 IUnknown **ppUnk,
2844 IInternetProtocol **ppOInetProt,
2845 DWORD dwOption);
2846void __RPC_STUB IInternetSession_CreateBinding_Stub(
2847 IRpcStubBuffer* This,
2848 IRpcChannelBuffer* pRpcChannelBuffer,
2849 PRPC_MESSAGE pRpcMessage,
2850 DWORD* pdwStubPhase);
2851HRESULT STDMETHODCALLTYPE IInternetSession_SetSessionOption_Proxy(
2852 IInternetSession* This,
2853 DWORD dwOption,
2854 LPVOID pBuffer,
2855 DWORD dwBufferLength,
2856 DWORD dwReserved);
2857void __RPC_STUB IInternetSession_SetSessionOption_Stub(
2858 IRpcStubBuffer* This,
2859 IRpcChannelBuffer* pRpcChannelBuffer,
2860 PRPC_MESSAGE pRpcMessage,
2861 DWORD* pdwStubPhase);
2862
2863#endif /* __IInternetSession_INTERFACE_DEFINED__ */
2864
2865/*****************************************************************************
2866 * IInternetSecurityMgrSite interface
2867 */
2868#ifndef __IInternetSecurityMgrSite_INTERFACE_DEFINED__
2869#define __IInternetSecurityMgrSite_INTERFACE_DEFINED__
2870
2871DEFINE_GUID(IID_IInternetSecurityMgrSite, 0x79eac9ed, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2872#if defined(__cplusplus) && !defined(CINTERFACE)
2873interface IInternetSecurityMgrSite : public IUnknown
2874{
2875 virtual HRESULT STDMETHODCALLTYPE GetWindow(
2876 HWND *phwnd) = 0;
2877
2878 virtual HRESULT STDMETHODCALLTYPE EnableModeless(
2879 BOOL fEnable) = 0;
2880
2881};
2882#else
2883typedef struct IInternetSecurityMgrSiteVtbl {
2884 BEGIN_INTERFACE
2885
2886 /*** IUnknown methods ***/
2887 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2888 IInternetSecurityMgrSite* This,
2889 REFIID riid,
2890 void **ppvObject);
2891
2892 ULONG (STDMETHODCALLTYPE *AddRef)(
2893 IInternetSecurityMgrSite* This);
2894
2895 ULONG (STDMETHODCALLTYPE *Release)(
2896 IInternetSecurityMgrSite* This);
2897
2898 /*** IInternetSecurityMgrSite methods ***/
2899 HRESULT (STDMETHODCALLTYPE *GetWindow)(
2900 IInternetSecurityMgrSite* This,
2901 HWND *phwnd);
2902
2903 HRESULT (STDMETHODCALLTYPE *EnableModeless)(
2904 IInternetSecurityMgrSite* This,
2905 BOOL fEnable);
2906
2907 END_INTERFACE
2908} IInternetSecurityMgrSiteVtbl;
2909interface IInternetSecurityMgrSite {
2910 CONST_VTBL IInternetSecurityMgrSiteVtbl* lpVtbl;
2911};
2912
2913#ifdef COBJMACROS
2914/*** IUnknown methods ***/
2915#define IInternetSecurityMgrSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2916#define IInternetSecurityMgrSite_AddRef(This) (This)->lpVtbl->AddRef(This)
2917#define IInternetSecurityMgrSite_Release(This) (This)->lpVtbl->Release(This)
2918/*** IInternetSecurityMgrSite methods ***/
2919#define IInternetSecurityMgrSite_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd)
2920#define IInternetSecurityMgrSite_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable)
2921#endif
2922
2923#endif
2924
2925HRESULT STDMETHODCALLTYPE IInternetSecurityMgrSite_GetWindow_Proxy(
2926 IInternetSecurityMgrSite* This,
2927 HWND *phwnd);
2928void __RPC_STUB IInternetSecurityMgrSite_GetWindow_Stub(
2929 IRpcStubBuffer* This,
2930 IRpcChannelBuffer* pRpcChannelBuffer,
2931 PRPC_MESSAGE pRpcMessage,
2932 DWORD* pdwStubPhase);
2933HRESULT STDMETHODCALLTYPE IInternetSecurityMgrSite_EnableModeless_Proxy(
2934 IInternetSecurityMgrSite* This,
2935 BOOL fEnable);
2936void __RPC_STUB IInternetSecurityMgrSite_EnableModeless_Stub(
2937 IRpcStubBuffer* This,
2938 IRpcChannelBuffer* pRpcChannelBuffer,
2939 PRPC_MESSAGE pRpcMessage,
2940 DWORD* pdwStubPhase);
2941
2942#endif /* __IInternetSecurityMgrSite_INTERFACE_DEFINED__ */
2943
2944#define SID_SInternetSecurityManager IID_IInternetSecurityManager
2945/*****************************************************************************
2946 * IInternetSecurityManager interface
2947 */
2948#ifndef __IInternetSecurityManager_INTERFACE_DEFINED__
2949#define __IInternetSecurityManager_INTERFACE_DEFINED__
2950
2951#define MAX_SIZE_SECURITY_ID 512
2952typedef enum __WIDL_urlmon_generated_name_00000006 {
2953 PUAF_DEFAULT = 0x0,
2954 PUAF_NOUI = 0x1,
2955 PUAF_ISFILE = 0x2,
2956 PUAF_WARN_IF_DENIED = 0x4,
2957 PUAF_FORCEUI_FOREGROUND = 0x8,
2958 PUAF_CHECK_TIPS = 0x10
2959} PUAF;
2960typedef enum __WIDL_urlmon_generated_name_00000007 {
2961 SZM_CREATE = 0x0,
2962 SZM_DELETE = 0x1
2963} SZM_FLAGS;
2964DEFINE_GUID(IID_IInternetSecurityManager, 0x79eac9ee, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2965#if defined(__cplusplus) && !defined(CINTERFACE)
2966interface IInternetSecurityManager : public IUnknown
2967{
2968 virtual HRESULT STDMETHODCALLTYPE SetSecuritySite(
2969 IInternetSecurityMgrSite *pSite) = 0;
2970
2971 virtual HRESULT STDMETHODCALLTYPE GetSecuritySite(
2972 IInternetSecurityMgrSite **ppSite) = 0;
2973
2974 virtual HRESULT STDMETHODCALLTYPE MapUrlToZone(
2975 LPCWSTR pwszUrl,
2976 DWORD *pdwZone,
2977 DWORD dwFlags) = 0;
2978
2979 virtual HRESULT STDMETHODCALLTYPE GetSecurityId(
2980 LPCWSTR pwszUrl,
2981 BYTE *pbSecurityId,
2982 DWORD *pcbSecurityId,
2983 DWORD_PTR dwReserved) = 0;
2984
2985 virtual HRESULT STDMETHODCALLTYPE ProcessUrlAction(
2986 LPCWSTR pwszUrl,
2987 DWORD dwAction,
2988 BYTE *pPolicy,
2989 DWORD cbPolicy,
2990 BYTE *pContext,
2991 DWORD cbContext,
2992 DWORD dwFlags,
2993 DWORD dwReserved) = 0;
2994
2995 virtual HRESULT STDMETHODCALLTYPE QueryCustomPolicy(
2996 LPCWSTR pwszUrl,
2997 REFGUID guidKey,
2998 BYTE **ppPolicy,
2999 DWORD *pcbPolicy,
3000 BYTE *pContext,
3001 DWORD cbContext,
3002 DWORD dwReserved) = 0;
3003
3004 virtual HRESULT STDMETHODCALLTYPE SetZoneMapping(
3005 DWORD dwZone,
3006 LPCWSTR lpszPattern,
3007 DWORD dwFlags) = 0;
3008
3009 virtual HRESULT STDMETHODCALLTYPE GetZoneMappings(
3010 DWORD dwZone,
3011 IEnumString **ppenumString,
3012 DWORD dwFlags) = 0;
3013
3014};
3015#else
3016typedef struct IInternetSecurityManagerVtbl {
3017 BEGIN_INTERFACE
3018
3019 /*** IUnknown methods ***/
3020 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3021 IInternetSecurityManager* This,
3022 REFIID riid,
3023 void **ppvObject);
3024
3025 ULONG (STDMETHODCALLTYPE *AddRef)(
3026 IInternetSecurityManager* This);
3027
3028 ULONG (STDMETHODCALLTYPE *Release)(
3029 IInternetSecurityManager* This);
3030
3031 /*** IInternetSecurityManager methods ***/
3032 HRESULT (STDMETHODCALLTYPE *SetSecuritySite)(
3033 IInternetSecurityManager* This,
3034 IInternetSecurityMgrSite *pSite);
3035
3036 HRESULT (STDMETHODCALLTYPE *GetSecuritySite)(
3037 IInternetSecurityManager* This,
3038 IInternetSecurityMgrSite **ppSite);
3039
3040 HRESULT (STDMETHODCALLTYPE *MapUrlToZone)(
3041 IInternetSecurityManager* This,
3042 LPCWSTR pwszUrl,
3043 DWORD *pdwZone,
3044 DWORD dwFlags);
3045
3046 HRESULT (STDMETHODCALLTYPE *GetSecurityId)(
3047 IInternetSecurityManager* This,
3048 LPCWSTR pwszUrl,
3049 BYTE *pbSecurityId,
3050 DWORD *pcbSecurityId,
3051 DWORD_PTR dwReserved);
3052
3053 HRESULT (STDMETHODCALLTYPE *ProcessUrlAction)(
3054 IInternetSecurityManager* This,
3055 LPCWSTR pwszUrl,
3056 DWORD dwAction,
3057 BYTE *pPolicy,
3058 DWORD cbPolicy,
3059 BYTE *pContext,
3060 DWORD cbContext,
3061 DWORD dwFlags,
3062 DWORD dwReserved);
3063
3064 HRESULT (STDMETHODCALLTYPE *QueryCustomPolicy)(
3065 IInternetSecurityManager* This,
3066 LPCWSTR pwszUrl,
3067 REFGUID guidKey,
3068 BYTE **ppPolicy,
3069 DWORD *pcbPolicy,
3070 BYTE *pContext,
3071 DWORD cbContext,
3072 DWORD dwReserved);
3073
3074 HRESULT (STDMETHODCALLTYPE *SetZoneMapping)(
3075 IInternetSecurityManager* This,
3076 DWORD dwZone,
3077 LPCWSTR lpszPattern,
3078 DWORD dwFlags);
3079
3080 HRESULT (STDMETHODCALLTYPE *GetZoneMappings)(
3081 IInternetSecurityManager* This,
3082 DWORD dwZone,
3083 IEnumString **ppenumString,
3084 DWORD dwFlags);
3085
3086 END_INTERFACE
3087} IInternetSecurityManagerVtbl;
3088interface IInternetSecurityManager {
3089 CONST_VTBL IInternetSecurityManagerVtbl* lpVtbl;
3090};
3091
3092#ifdef COBJMACROS
3093/*** IUnknown methods ***/
3094#define IInternetSecurityManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3095#define IInternetSecurityManager_AddRef(This) (This)->lpVtbl->AddRef(This)
3096#define IInternetSecurityManager_Release(This) (This)->lpVtbl->Release(This)
3097/*** IInternetSecurityManager methods ***/
3098#define IInternetSecurityManager_SetSecuritySite(This,pSite) (This)->lpVtbl->SetSecuritySite(This,pSite)
3099#define IInternetSecurityManager_GetSecuritySite(This,ppSite) (This)->lpVtbl->GetSecuritySite(This,ppSite)
3100#define IInternetSecurityManager_MapUrlToZone(This,pwszUrl,pdwZone,dwFlags) (This)->lpVtbl->MapUrlToZone(This,pwszUrl,pdwZone,dwFlags)
3101#define IInternetSecurityManager_GetSecurityId(This,pwszUrl,pbSecurityId,pcbSecurityId,dwReserved) (This)->lpVtbl->GetSecurityId(This,pwszUrl,pbSecurityId,pcbSecurityId,dwReserved)
3102#define IInternetSecurityManager_ProcessUrlAction(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved) (This)->lpVtbl->ProcessUrlAction(This,pwszUrl,dwAction,pPolicy,cbPolicy,pContext,cbContext,dwFlags,dwReserved)
3103#define IInternetSecurityManager_QueryCustomPolicy(This,pwszUrl,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved) (This)->lpVtbl->QueryCustomPolicy(This,pwszUrl,guidKey,ppPolicy,pcbPolicy,pContext,cbContext,dwReserved)
3104#define IInternetSecurityManager_SetZoneMapping(This,dwZone,lpszPattern,dwFlags) (This)->lpVtbl->SetZoneMapping(This,dwZone,lpszPattern,dwFlags)
3105#define IInternetSecurityManager_GetZoneMappings(This,dwZone,ppenumString,dwFlags) (This)->lpVtbl->GetZoneMappings(This,dwZone,ppenumString,dwFlags)
3106#endif
3107
3108#endif
3109
3110HRESULT STDMETHODCALLTYPE IInternetSecurityManager_SetSecuritySite_Proxy(
3111 IInternetSecurityManager* This,
3112 IInternetSecurityMgrSite *pSite);
3113void __RPC_STUB IInternetSecurityManager_SetSecuritySite_Stub(
3114 IRpcStubBuffer* This,
3115 IRpcChannelBuffer* pRpcChannelBuffer,
3116 PRPC_MESSAGE pRpcMessage,
3117 DWORD* pdwStubPhase);
3118HRESULT STDMETHODCALLTYPE IInternetSecurityManager_GetSecuritySite_Proxy(
3119 IInternetSecurityManager* This,
3120 IInternetSecurityMgrSite **ppSite);
3121void __RPC_STUB IInternetSecurityManager_GetSecuritySite_Stub(
3122 IRpcStubBuffer* This,
3123 IRpcChannelBuffer* pRpcChannelBuffer,
3124 PRPC_MESSAGE pRpcMessage,
3125 DWORD* pdwStubPhase);
3126HRESULT STDMETHODCALLTYPE IInternetSecurityManager_MapUrlToZone_Proxy(
3127 IInternetSecurityManager* This,
3128 LPCWSTR pwszUrl,
3129 DWORD *pdwZone,
3130 DWORD dwFlags);
3131void __RPC_STUB IInternetSecurityManager_MapUrlToZone_Stub(
3132 IRpcStubBuffer* This,
3133 IRpcChannelBuffer* pRpcChannelBuffer,
3134 PRPC_MESSAGE pRpcMessage,
3135 DWORD* pdwStubPhase);
3136HRESULT STDMETHODCALLTYPE IInternetSecurityManager_GetSecurityId_Proxy(
3137 IInternetSecurityManager* This,
3138 LPCWSTR pwszUrl,
3139 BYTE *pbSecurityId,
3140 DWORD *pcbSecurityId,
3141 DWORD_PTR dwReserved);
3142void __RPC_STUB IInternetSecurityManager_GetSecurityId_Stub(
3143 IRpcStubBuffer* This,
3144 IRpcChannelBuffer* pRpcChannelBuffer,
3145 PRPC_MESSAGE pRpcMessage,
3146 DWORD* pdwStubPhase);
3147HRESULT STDMETHODCALLTYPE IInternetSecurityManager_ProcessUrlAction_Proxy(
3148 IInternetSecurityManager* This,
3149 LPCWSTR pwszUrl,
3150 DWORD dwAction,
3151 BYTE *pPolicy,
3152 DWORD cbPolicy,
3153 BYTE *pContext,
3154 DWORD cbContext,
3155 DWORD dwFlags,
3156 DWORD dwReserved);
3157void __RPC_STUB IInternetSecurityManager_ProcessUrlAction_Stub(
3158 IRpcStubBuffer* This,
3159 IRpcChannelBuffer* pRpcChannelBuffer,
3160 PRPC_MESSAGE pRpcMessage,
3161 DWORD* pdwStubPhase);
3162HRESULT STDMETHODCALLTYPE IInternetSecurityManager_QueryCustomPolicy_Proxy(
3163 IInternetSecurityManager* This,
3164 LPCWSTR pwszUrl,
3165 REFGUID guidKey,
3166 BYTE **ppPolicy,
3167 DWORD *pcbPolicy,
3168 BYTE *pContext,
3169 DWORD cbContext,
3170 DWORD dwReserved);
3171void __RPC_STUB IInternetSecurityManager_QueryCustomPolicy_Stub(
3172 IRpcStubBuffer* This,
3173 IRpcChannelBuffer* pRpcChannelBuffer,
3174 PRPC_MESSAGE pRpcMessage,
3175 DWORD* pdwStubPhase);
3176HRESULT STDMETHODCALLTYPE IInternetSecurityManager_SetZoneMapping_Proxy(
3177 IInternetSecurityManager* This,
3178 DWORD dwZone,
3179 LPCWSTR lpszPattern,
3180 DWORD dwFlags);
3181void __RPC_STUB IInternetSecurityManager_SetZoneMapping_Stub(
3182 IRpcStubBuffer* This,
3183 IRpcChannelBuffer* pRpcChannelBuffer,
3184 PRPC_MESSAGE pRpcMessage,
3185 DWORD* pdwStubPhase);
3186HRESULT STDMETHODCALLTYPE IInternetSecurityManager_GetZoneMappings_Proxy(
3187 IInternetSecurityManager* This,
3188 DWORD dwZone,
3189 IEnumString **ppenumString,
3190 DWORD dwFlags);
3191void __RPC_STUB IInternetSecurityManager_GetZoneMappings_Stub(
3192 IRpcStubBuffer* This,
3193 IRpcChannelBuffer* pRpcChannelBuffer,
3194 PRPC_MESSAGE pRpcMessage,
3195 DWORD* pdwStubPhase);
3196
3197#endif /* __IInternetSecurityManager_INTERFACE_DEFINED__ */
3198
3199#define URLACTION_MIN 0x00001000
3200#define URLACTION_DOWNLOAD_MIN 0x00001000
3201#define URLACTION_DOWNLOAD_SIGNED_ACTIVEX 0x00001001
3202#define URLACTION_DOWNLOAD_UNSIGNED_ACTIVEX 0x00001004
3203#define URLACTION_DOWNLOAD_CURR_MAX 0x00001004
3204#define URLACTION_DOWNLOAD_MAX 0x000011ff
3205#define URLACTION_ACTIVEX_MIN 0x00001200
3206#define URLACTION_ACTIVEX_RUN 0x00001200
3207#define URLPOLICY_ACTIVEX_CHECK_LIST 0x00010000
3208#define URLACTION_ACTIVEX_OVERRIDE_OBJECT_SAFETY 0x00001201
3209#define URLACTION_ACTIVEX_OVERRIDE_DATA_SAFETY 0x00001202
3210#define URLACTION_ACTIVEX_OVERRIDE_SCRIPT_SAFETY 0x00001203
3211#define URLACTION_SCRIPT_OVERRIDE_SAFETY 0x00001401
3212#define URLACTION_ACTIVEX_CONFIRM_NOOBJECTSAFETY 0x00001204
3213#define URLACTION_ACTIVEX_TREATASUNTRUSTED 0x00001205
3214#define URLACTION_ACTIVEX_CURR_MAX 0x00001205
3215#define URLACTION_ACTIVEX_MAX 0x000013ff
3216#define URLACTION_SCRIPT_MIN 0x00001400
3217#define URLACTION_SCRIPT_RUN 0x00001400
3218#define URLACTION_SCRIPT_JAVA_USE 0x00001402
3219#define URLACTION_SCRIPT_SAFE_ACTIVEX 0x00001405
3220#define URLACTION_CROSS_DOMAIN_DATA 0x00001406
3221#define URLACTION_SCRIPT_PASTE 0x00001407
3222#define URLACTION_SCRIPT_CURR_MAX 0x00001407
3223#define URLACTION_SCRIPT_MAX 0x000015ff
3224#define URLACTION_HTML_MIN 0x00001600
3225#define URLACTION_HTML_SUBMIT_FORMS 0x00001601
3226#define URLACTION_HTML_SUBMIT_FORMS_FROM 0x00001602
3227#define URLACTION_HTML_SUBMIT_FORMS_TO 0x00001603
3228#define URLACTION_HTML_FONT_DOWNLOAD 0x00001604
3229#define URLACTION_HTML_JAVA_RUN 0x00001605
3230#define URLACTION_HTML_USERDATA_SAVE 0x00001606
3231#define URLACTION_HTML_SUBFRAME_NAVIGATE 0x00001607
3232#define URLACTION_HTML_META_REFRESH 0x00001608
3233#define URLACTION_HTML_MIXED_CONTENT 0x00001609
3234#define URLACTION_HTML_MAX 0x000017ff
3235#define URLACTION_SHELL_MIN 0x00001800
3236#define URLACTION_SHELL_INSTALL_DTITEMS 0x00001800
3237#define URLACTION_SHELL_MOVE_OR_COPY 0x00001802
3238#define URLACTION_SHELL_FILE_DOWNLOAD 0x00001803
3239#define URLACTION_SHELL_VERB 0x00001804
3240#define URLACTION_SHELL_WEBVIEW_VERB 0x00001805
3241#define URLACTION_SHELL_CURR_MAX 0x00001805
3242#define URLACTION_SHELL_MAX 0x000019ff
3243#define URLACTION_NETWORK_MIN 0x00001a00
3244#define URLACTION_CREDENTIALS_USE 0x00001a00
3245#define URLACTION_AUTHENTICATE_CLIENT 0x00001a01
3246#define URLACTION_COOKIES 0x00001a02
3247#define URLACTION_COOKIES_SESSION 0x00001a03
3248#define URLACTION_CLIENT_CERT_PROMPT 0x00001a04
3249#define URLACTION_COOKIES_THIRD_PARTY 0x00001a05
3250#define URLACTION_COOKIES_SESSION_THIRD_PARTY 0x00001a06
3251#define URLACTION_COOKIES_ENABLED 0x00001a10
3252#define URLACTION_NETWORK_CURR_MAX 0x00001a10
3253#define URLACTION_NETWORK_MAX 0x00001bff
3254#define URLACTION_JAVA_MIN 0x00001c00
3255#define URLACTION_JAVA_PERMISSIONS 0x00001c00
3256#define URLPOLICY_JAVA_PROHIBIT 0x00000000
3257#define URLPOLICY_JAVA_HIGH 0x00010000
3258#define URLPOLICY_JAVA_MEDIUM 0x00020000
3259#define URLPOLICY_JAVA_LOW 0x00030000
3260#define URLPOLICY_JAVA_CUSTOM 0x00800000
3261#define URLACTION_JAVA_CURR_MAX 0x00001c00
3262#define URLACTION_JAVA_MAX 0x00001cff
3263#define URLACTION_INFODELIVERY_MIN 0x00001d00
3264#define URLACTION_INFODELIVERY_NO_ADDING_CHANNELS 0x00001d00
3265#define URLACTION_INFODELIVERY_NO_EDITING_CHANNELS 0x00001d01
3266#define URLACTION_INFODELIVERY_NO_REMOVING_CHANNELS 0x00001d02
3267#define URLACTION_INFODELIVERY_NO_ADDING_SUBSCRIPTIONS 0x00001d03
3268#define URLACTION_INFODELIVERY_NO_EDITING_SUBSCRIPTIONS 0x00001d04
3269#define URLACTION_INFODELIVERY_NO_REMOVING_SUBSCRIPTIONS 0x00001d05
3270#define URLACTION_INFODELIVERY_NO_CHANNEL_LOGGING 0x00001d06
3271#define URLACTION_INFODELIVERY_CURR_MAX 0x00001d06
3272#define URLACTION_INFODELIVERY_MAX 0x00001dff
3273#define URLACTION_CHANNEL_SOFTDIST_MIN 0x00001e00
3274#define URLACTION_CHANNEL_SOFTDIST_PERMISSIONS 0x00001e05
3275#define URLPOLICY_CHANNEL_SOFTDIST_PROHIBIT 0x00010000
3276#define URLPOLICY_CHANNEL_SOFTDIST_PRECACHE 0x00020000
3277#define URLPOLICY_CHANNEL_SOFTDIST_AUTOINSTALL 0x00030000
3278#define URLACTION_CHANNEL_SOFTDIST_MAX 0x00001eff
3279#define URLPOLICY_ALLOW 0x00
3280#define URLPOLICY_QUERY 0x01
3281#define URLPOLICY_DISALLOW 0x03
3282#define URLPOLICY_NOTIFY_ON_ALLOW 0x10
3283#define URLPOLICY_NOTIFY_ON_DISALLOW 0x20
3284#define URLPOLICY_LOG_ON_ALLOW 0x40
3285#define URLPOLICY_LOG_ON_DISALLOW 0x80
3286#define URLPOLICY_DONTCHECKDLGBOX 0x100
3287#define URLPOLICY_CREDENTIALS_SILENT_LOGON_OK 0x00000000
3288#define URLPOLICY_CREDENTIALS_MUST_PROMPT_USER 0x00010000
3289#define URLPOLICY_CREDENTIALS_CONDITIONAL_PROMPT 0x00020000
3290#define URLPOLICY_CREDENTIALS_ANONYMOUS_ONLY 0x00030000
3291#define URLPOLICY_AUTHENTICATE_CLEARTEXT_OK 0x00000000
3292#define URLPOLICY_AUTHENTICATE_CHALLENGE_RESPONSE 0x00010000
3293#define URLPOLICY_AUTHENTICATE_MUTUAL_ONLY 0x00030000
3294#define URLPOLICY_MASK_PERMISSIONS 0x0f
3295#define GetUrlPolicyPermissions(dw) (dw & URLPOLICY_MASK_PERMISSIONS)
3296#define SetUrlPolicyPermissions(dw,dw2) ((dw) = ((dw) & ~URLPOLICY_MASK_PERMISSIONS) | (dw2))
3297/*****************************************************************************
3298 * IInternetZoneManager interface
3299 */
3300#ifndef __IInternetZoneManager_INTERFACE_DEFINED__
3301#define __IInternetZoneManager_INTERFACE_DEFINED__
3302
3303typedef IInternetZoneManager *LPURLZONEMANAGER;
3304typedef enum tagURLZONE {
3305 URLZONE_PREDEFINED_MIN = 0,
3306 URLZONE_LOCAL_MACHINE = 0,
3307 URLZONE_INTRANET = 1,
3308 URLZONE_TRUSTED = 2,
3309 URLZONE_INTERNET = 3,
3310 URLZONE_UNTRUSTED = 4,
3311 URLZONE_PREDEFINED_MAX = 999,
3312 URLZONE_USER_MIN = 1000,
3313 URLZONE_USER_MAX = 10000
3314} URLZONE;
3315typedef enum tagURLTEMPLATE {
3316 URLTEMPLATE_CUSTOM = 0x0,
3317 URLTEMPLATE_PREDEFINED_MIN = 0x10000,
3318 URLTEMPLATE_LOW = 0x10000,
3319 URLTEMPLATE_MEDIUM = 0x11000,
3320 URLTEMPLATE_HIGH = 0x12000,
3321 URLTEMPLATE_PREDEFINED_MAX = 0x20000
3322} URLTEMPLATE;
3323typedef enum __WIDL_urlmon_generated_name_00000008 {
3324 ZAFLAGS_CUSTOM_EDIT = 0x1,
3325 ZAFLAGS_ADD_SITES = 0x2,
3326 ZAFLAGS_REQUIRE_VERIFICATION = 0x4,
3327 ZAFLAGS_INCLUDE_PROXY_OVERRIDE = 0x8,
3328 ZAFLAGS_INCLUDE_INTRANET_SITES = 0x10,
3329 ZAFLAGS_NO_UI = 0x20,
3330 ZAFLAGS_SUPPORTS_VERIFICATION = 0x40,
3331 ZAFLAGS_UNC_AS_INTRANET = 0x80
3332} ZAFLAGS;
3333enum {
3334 MAX_ZONE_PATH = 260,
3335 MAX_ZONE_DESCRIPTION = 200
3336};
3337
3338typedef struct _ZONEATTRIBUTES {
3339 ULONG cbSize;
3340 WCHAR szDisplayName[260];
3341 WCHAR szDescription[200];
3342 WCHAR szIconPath[260];
3343 DWORD dwTemplateMinLevel;
3344 DWORD dwTemplateRecommended;
3345 DWORD dwTemplateCurrentLevel;
3346 DWORD dwFlags;
3347} ZONEATTRIBUTES;
3348typedef struct _ZONEATTRIBUTES *LPZONEATTRIBUTES;
3349typedef enum _URLZONEREG {
3350 URLZONEREG_DEFAULT = 0,
3351 URLZONEREG_HKLM = 1,
3352 URLZONEREG_HKCU = 2
3353} URLZONEREG;
3354DEFINE_GUID(IID_IInternetZoneManager, 0x79eac9ef, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
3355#if defined(__cplusplus) && !defined(CINTERFACE)
3356interface IInternetZoneManager : public IUnknown
3357{
3358 virtual HRESULT STDMETHODCALLTYPE GetZoneAttributes(
3359 DWORD dwZone,
3360 ZONEATTRIBUTES *pZoneAttributes) = 0;
3361
3362 virtual HRESULT STDMETHODCALLTYPE SetZoneAttributes(
3363 DWORD dwZone,
3364 ZONEATTRIBUTES *pZoneAttributes) = 0;
3365
3366 virtual HRESULT STDMETHODCALLTYPE GetZoneCustomPolicy(
3367 DWORD dwZone,
3368 REFGUID guidKey,
3369 BYTE **ppPolicy,
3370 DWORD *pcbPolicy,
3371 URLZONEREG ulrZoneReg) = 0;
3372
3373 virtual HRESULT STDMETHODCALLTYPE SetZoneCustomPolicy(
3374 DWORD dwZone,
3375 REFGUID guidKey,
3376 BYTE *ppPolicy,
3377 DWORD pcbPolicy,
3378 URLZONEREG ulrZoneReg) = 0;
3379
3380 virtual HRESULT STDMETHODCALLTYPE GetZoneActionPolicy(
3381 DWORD dwZone,
3382 DWORD dwAction,
3383 BYTE *pPolicy,
3384 DWORD cbPolicy,
3385 URLZONEREG urlZoneReg) = 0;
3386
3387 virtual HRESULT STDMETHODCALLTYPE SetZoneActionPolicy(
3388 DWORD dwZone,
3389 DWORD dwAction,
3390 BYTE *pPolicy,
3391 DWORD cbPolicy,
3392 URLZONEREG urlZoneReg) = 0;
3393
3394 virtual HRESULT STDMETHODCALLTYPE PromptAction(
3395 DWORD dwAction,
3396 HWND hwndParent,
3397 LPCWSTR pwszUrl,
3398 LPCWSTR pwszText,
3399 DWORD dwPromptFlags) = 0;
3400
3401 virtual HRESULT STDMETHODCALLTYPE LogAction(
3402 DWORD dwAction,
3403 LPCWSTR pwszUrl,
3404 LPCWSTR pwszText,
3405 DWORD dwLogFlags) = 0;
3406
3407 virtual HRESULT STDMETHODCALLTYPE CreateZoneEnumerator(
3408 DWORD *pdwEnum,
3409 DWORD *pdwCount,
3410 DWORD dwFlags) = 0;
3411
3412 virtual HRESULT STDMETHODCALLTYPE GetZoneAt(
3413 DWORD dwEnum,
3414 DWORD dwIndex,
3415 DWORD *pdwZone) = 0;
3416
3417 virtual HRESULT STDMETHODCALLTYPE DestroyZoneEnumerator(
3418 DWORD dwEnum) = 0;
3419
3420 virtual HRESULT STDMETHODCALLTYPE CopyTemplatePoliciesToZone(
3421 DWORD dwTemplate,
3422 DWORD dwZone,
3423 DWORD dwReserved) = 0;
3424
3425};
3426#else
3427typedef struct IInternetZoneManagerVtbl {
3428 BEGIN_INTERFACE
3429
3430 /*** IUnknown methods ***/
3431 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3432 IInternetZoneManager* This,
3433 REFIID riid,
3434 void **ppvObject);
3435
3436 ULONG (STDMETHODCALLTYPE *AddRef)(
3437 IInternetZoneManager* This);
3438
3439 ULONG (STDMETHODCALLTYPE *Release)(
3440 IInternetZoneManager* This);
3441
3442 /*** IInternetZoneManager methods ***/
3443 HRESULT (STDMETHODCALLTYPE *GetZoneAttributes)(
3444 IInternetZoneManager* This,
3445 DWORD dwZone,
3446 ZONEATTRIBUTES *pZoneAttributes);
3447
3448 HRESULT (STDMETHODCALLTYPE *SetZoneAttributes)(
3449 IInternetZoneManager* This,
3450 DWORD dwZone,
3451 ZONEATTRIBUTES *pZoneAttributes);
3452
3453 HRESULT (STDMETHODCALLTYPE *GetZoneCustomPolicy)(
3454 IInternetZoneManager* This,
3455 DWORD dwZone,
3456 REFGUID guidKey,
3457 BYTE **ppPolicy,
3458 DWORD *pcbPolicy,
3459 URLZONEREG ulrZoneReg);
3460
3461 HRESULT (STDMETHODCALLTYPE *SetZoneCustomPolicy)(
3462 IInternetZoneManager* This,
3463 DWORD dwZone,
3464 REFGUID guidKey,
3465 BYTE *ppPolicy,
3466 DWORD pcbPolicy,
3467 URLZONEREG ulrZoneReg);
3468
3469 HRESULT (STDMETHODCALLTYPE *GetZoneActionPolicy)(
3470 IInternetZoneManager* This,
3471 DWORD dwZone,
3472 DWORD dwAction,
3473 BYTE *pPolicy,
3474 DWORD cbPolicy,
3475 URLZONEREG urlZoneReg);
3476
3477 HRESULT (STDMETHODCALLTYPE *SetZoneActionPolicy)(
3478 IInternetZoneManager* This,
3479 DWORD dwZone,
3480 DWORD dwAction,
3481 BYTE *pPolicy,
3482 DWORD cbPolicy,
3483 URLZONEREG urlZoneReg);
3484
3485 HRESULT (STDMETHODCALLTYPE *PromptAction)(
3486 IInternetZoneManager* This,
3487 DWORD dwAction,
3488 HWND hwndParent,
3489 LPCWSTR pwszUrl,
3490 LPCWSTR pwszText,
3491 DWORD dwPromptFlags);
3492
3493 HRESULT (STDMETHODCALLTYPE *LogAction)(
3494 IInternetZoneManager* This,
3495 DWORD dwAction,
3496 LPCWSTR pwszUrl,
3497 LPCWSTR pwszText,
3498 DWORD dwLogFlags);
3499
3500 HRESULT (STDMETHODCALLTYPE *CreateZoneEnumerator)(
3501 IInternetZoneManager* This,
3502 DWORD *pdwEnum,
3503 DWORD *pdwCount,
3504 DWORD dwFlags);
3505
3506 HRESULT (STDMETHODCALLTYPE *GetZoneAt)(
3507 IInternetZoneManager* This,
3508 DWORD dwEnum,
3509 DWORD dwIndex,
3510 DWORD *pdwZone);
3511
3512 HRESULT (STDMETHODCALLTYPE *DestroyZoneEnumerator)(
3513 IInternetZoneManager* This,
3514 DWORD dwEnum);
3515
3516 HRESULT (STDMETHODCALLTYPE *CopyTemplatePoliciesToZone)(
3517 IInternetZoneManager* This,
3518 DWORD dwTemplate,
3519 DWORD dwZone,
3520 DWORD dwReserved);
3521
3522 END_INTERFACE
3523} IInternetZoneManagerVtbl;
3524interface IInternetZoneManager {
3525 CONST_VTBL IInternetZoneManagerVtbl* lpVtbl;
3526};
3527
3528#ifdef COBJMACROS
3529/*** IUnknown methods ***/
3530#define IInternetZoneManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3531#define IInternetZoneManager_AddRef(This) (This)->lpVtbl->AddRef(This)
3532#define IInternetZoneManager_Release(This) (This)->lpVtbl->Release(This)
3533/*** IInternetZoneManager methods ***/
3534#define IInternetZoneManager_GetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->GetZoneAttributes(This,dwZone,pZoneAttributes)
3535#define IInternetZoneManager_SetZoneAttributes(This,dwZone,pZoneAttributes) (This)->lpVtbl->SetZoneAttributes(This,dwZone,pZoneAttributes)
3536#define IInternetZoneManager_GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg) (This)->lpVtbl->GetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg)
3537#define IInternetZoneManager_SetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg) (This)->lpVtbl->SetZoneCustomPolicy(This,dwZone,guidKey,ppPolicy,pcbPolicy,ulrZoneReg)
3538#define IInternetZoneManager_GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->GetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)
3539#define IInternetZoneManager_SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg) (This)->lpVtbl->SetZoneActionPolicy(This,dwZone,dwAction,pPolicy,cbPolicy,urlZoneReg)
3540#define IInternetZoneManager_PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags) (This)->lpVtbl->PromptAction(This,dwAction,hwndParent,pwszUrl,pwszText,dwPromptFlags)
3541#define IInternetZoneManager_LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags) (This)->lpVtbl->LogAction(This,dwAction,pwszUrl,pwszText,dwLogFlags)
3542#define IInternetZoneManager_CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags) (This)->lpVtbl->CreateZoneEnumerator(This,pdwEnum,pdwCount,dwFlags)
3543#define IInternetZoneManager_GetZoneAt(This,dwEnum,dwIndex,pdwZone) (This)->lpVtbl->GetZoneAt(This,dwEnum,dwIndex,pdwZone)
3544#define IInternetZoneManager_DestroyZoneEnumerator(This,dwEnum) (This)->lpVtbl->DestroyZoneEnumerator(This,dwEnum)
3545#define IInternetZoneManager_CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved) (This)->lpVtbl->CopyTemplatePoliciesToZone(This,dwTemplate,dwZone,dwReserved)
3546#endif
3547
3548#endif
3549
3550HRESULT STDMETHODCALLTYPE IInternetZoneManager_GetZoneAttributes_Proxy(
3551 IInternetZoneManager* This,
3552 DWORD dwZone,
3553 ZONEATTRIBUTES *pZoneAttributes);
3554void __RPC_STUB IInternetZoneManager_GetZoneAttributes_Stub(
3555 IRpcStubBuffer* This,
3556 IRpcChannelBuffer* pRpcChannelBuffer,
3557 PRPC_MESSAGE pRpcMessage,
3558 DWORD* pdwStubPhase);
3559HRESULT STDMETHODCALLTYPE IInternetZoneManager_SetZoneAttributes_Proxy(
3560 IInternetZoneManager* This,
3561 DWORD dwZone,
3562 ZONEATTRIBUTES *pZoneAttributes);
3563void __RPC_STUB IInternetZoneManager_SetZoneAttributes_Stub(
3564 IRpcStubBuffer* This,
3565 IRpcChannelBuffer* pRpcChannelBuffer,
3566 PRPC_MESSAGE pRpcMessage,
3567 DWORD* pdwStubPhase);
3568HRESULT STDMETHODCALLTYPE IInternetZoneManager_GetZoneCustomPolicy_Proxy(
3569 IInternetZoneManager* This,
3570 DWORD dwZone,
3571 REFGUID guidKey,
3572 BYTE **ppPolicy,
3573 DWORD *pcbPolicy,
3574 URLZONEREG ulrZoneReg);
3575void __RPC_STUB IInternetZoneManager_GetZoneCustomPolicy_Stub(
3576 IRpcStubBuffer* This,
3577 IRpcChannelBuffer* pRpcChannelBuffer,
3578 PRPC_MESSAGE pRpcMessage,
3579 DWORD* pdwStubPhase);
3580HRESULT STDMETHODCALLTYPE IInternetZoneManager_SetZoneCustomPolicy_Proxy(
3581 IInternetZoneManager* This,
3582 DWORD dwZone,
3583 REFGUID guidKey,
3584 BYTE *ppPolicy,
3585 DWORD pcbPolicy,
3586 URLZONEREG ulrZoneReg);
3587void __RPC_STUB IInternetZoneManager_SetZoneCustomPolicy_Stub(
3588 IRpcStubBuffer* This,
3589 IRpcChannelBuffer* pRpcChannelBuffer,
3590 PRPC_MESSAGE pRpcMessage,
3591 DWORD* pdwStubPhase);
3592HRESULT STDMETHODCALLTYPE IInternetZoneManager_GetZoneActionPolicy_Proxy(
3593 IInternetZoneManager* This,
3594 DWORD dwZone,
3595 DWORD dwAction,
3596 BYTE *pPolicy,
3597 DWORD cbPolicy,
3598 URLZONEREG urlZoneReg);
3599void __RPC_STUB IInternetZoneManager_GetZoneActionPolicy_Stub(
3600 IRpcStubBuffer* This,
3601 IRpcChannelBuffer* pRpcChannelBuffer,
3602 PRPC_MESSAGE pRpcMessage,
3603 DWORD* pdwStubPhase);
3604HRESULT STDMETHODCALLTYPE IInternetZoneManager_SetZoneActionPolicy_Proxy(
3605 IInternetZoneManager* This,
3606 DWORD dwZone,
3607 DWORD dwAction,
3608 BYTE *pPolicy,
3609 DWORD cbPolicy,
3610 URLZONEREG urlZoneReg);
3611void __RPC_STUB IInternetZoneManager_SetZoneActionPolicy_Stub(
3612 IRpcStubBuffer* This,
3613 IRpcChannelBuffer* pRpcChannelBuffer,
3614 PRPC_MESSAGE pRpcMessage,
3615 DWORD* pdwStubPhase);
3616HRESULT STDMETHODCALLTYPE IInternetZoneManager_PromptAction_Proxy(
3617 IInternetZoneManager* This,
3618 DWORD dwAction,
3619 HWND hwndParent,
3620 LPCWSTR pwszUrl,
3621 LPCWSTR pwszText,
3622 DWORD dwPromptFlags);
3623void __RPC_STUB IInternetZoneManager_PromptAction_Stub(
3624 IRpcStubBuffer* This,
3625 IRpcChannelBuffer* pRpcChannelBuffer,
3626 PRPC_MESSAGE pRpcMessage,
3627 DWORD* pdwStubPhase);
3628HRESULT STDMETHODCALLTYPE IInternetZoneManager_LogAction_Proxy(
3629 IInternetZoneManager* This,
3630 DWORD dwAction,
3631 LPCWSTR pwszUrl,
3632 LPCWSTR pwszText,
3633 DWORD dwLogFlags);
3634void __RPC_STUB IInternetZoneManager_LogAction_Stub(
3635 IRpcStubBuffer* This,
3636 IRpcChannelBuffer* pRpcChannelBuffer,
3637 PRPC_MESSAGE pRpcMessage,
3638 DWORD* pdwStubPhase);
3639HRESULT STDMETHODCALLTYPE IInternetZoneManager_CreateZoneEnumerator_Proxy(
3640 IInternetZoneManager* This,
3641 DWORD *pdwEnum,
3642 DWORD *pdwCount,
3643 DWORD dwFlags);
3644void __RPC_STUB IInternetZoneManager_CreateZoneEnumerator_Stub(
3645 IRpcStubBuffer* This,
3646 IRpcChannelBuffer* pRpcChannelBuffer,
3647 PRPC_MESSAGE pRpcMessage,
3648 DWORD* pdwStubPhase);
3649HRESULT STDMETHODCALLTYPE IInternetZoneManager_GetZoneAt_Proxy(
3650 IInternetZoneManager* This,
3651 DWORD dwEnum,
3652 DWORD dwIndex,
3653 DWORD *pdwZone);
3654void __RPC_STUB IInternetZoneManager_GetZoneAt_Stub(
3655 IRpcStubBuffer* This,
3656 IRpcChannelBuffer* pRpcChannelBuffer,
3657 PRPC_MESSAGE pRpcMessage,
3658 DWORD* pdwStubPhase);
3659HRESULT STDMETHODCALLTYPE IInternetZoneManager_DestroyZoneEnumerator_Proxy(
3660 IInternetZoneManager* This,
3661 DWORD dwEnum);
3662void __RPC_STUB IInternetZoneManager_DestroyZoneEnumerator_Stub(
3663 IRpcStubBuffer* This,
3664 IRpcChannelBuffer* pRpcChannelBuffer,
3665 PRPC_MESSAGE pRpcMessage,
3666 DWORD* pdwStubPhase);
3667HRESULT STDMETHODCALLTYPE IInternetZoneManager_CopyTemplatePoliciesToZone_Proxy(
3668 IInternetZoneManager* This,
3669 DWORD dwTemplate,
3670 DWORD dwZone,
3671 DWORD dwReserved);
3672void __RPC_STUB IInternetZoneManager_CopyTemplatePoliciesToZone_Stub(
3673 IRpcStubBuffer* This,
3674 IRpcChannelBuffer* pRpcChannelBuffer,
3675 PRPC_MESSAGE pRpcMessage,
3676 DWORD* pdwStubPhase);
3677
3678#endif /* __IInternetZoneManager_INTERFACE_DEFINED__ */
3679
3680typedef struct _tagSOFTDISTINFO {
3681 ULONG cbSize;
3682 DWORD dwFlags;
3683 DWORD dwAdState;
3684 LPWSTR szTitle;
3685 LPWSTR szAbstract;
3686 LPWSTR szHREF;
3687 DWORD dwInstalledVersionMS;
3688 DWORD dwInstalledVersionLS;
3689 DWORD dwUpdateVersionMS;
3690 DWORD dwUpdateVersionLS;
3691 DWORD dwAdvertisedVersionMS;
3692 DWORD dwAdvertisedVersionLS;
3693 DWORD dwReserved;
3694} SOFTDISTINFO;
3695typedef struct _tagSOFTDISTINFO *LPSOFTDISTINFO;
3696typedef struct _tagCODEBASEHOLD {
3697 DWORD cbSize;
3698 LPWSTR szDistUnit;
3699 LPWSTR szCodeBase;
3700 DWORD dwVersionMS;
3701 DWORD dwVersionLS;
3702 DWORD dwStyle;
3703} CODEBASEHOLD;
3704typedef struct _tagCODEBASEHOLD *LPCODEBASEHOLD;
3705/*****************************************************************************
3706 * ISoftDistExt interface
3707 */
3708#ifndef __ISoftDistExt_INTERFACE_DEFINED__
3709#define __ISoftDistExt_INTERFACE_DEFINED__
3710
3711DEFINE_GUID(IID_ISoftDistExt, 0xb15b8dc1, 0xc7e1, 0x11d0, 0x86,0x80, 0x00,0xaa,0x00,0xbd,0xcb,0x71);
3712#if defined(__cplusplus) && !defined(CINTERFACE)
3713interface ISoftDistExt : public IUnknown
3714{
3715 virtual HRESULT STDMETHODCALLTYPE ProcessSoftDist(
3716 LPCWSTR szCDFURL,
3717 IXMLElement *pSoftDistElement,
3718 LPSOFTDISTINFO lpsdi) = 0;
3719
3720 virtual HRESULT STDMETHODCALLTYPE GetFirstCodeBase(
3721 LPWSTR *szCodeBase,
3722 LPDWORD dwMaxSize) = 0;
3723
3724 virtual HRESULT STDMETHODCALLTYPE GetNextCodeBase(
3725 LPWSTR *szCodeBase,
3726 LPDWORD dwMaxSize) = 0;
3727
3728 virtual HRESULT STDMETHODCALLTYPE AsyncInstallDistributionUnit(
3729 IBindCtx *pbc,
3730 LPVOID lpReserved,
3731 DWORD flags,
3732 LPCODEBASEHOLD lpcbh) = 0;
3733
3734};
3735#else
3736typedef struct ISoftDistExtVtbl {
3737 BEGIN_INTERFACE
3738
3739 /*** IUnknown methods ***/
3740 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3741 ISoftDistExt* This,
3742 REFIID riid,
3743 void **ppvObject);
3744
3745 ULONG (STDMETHODCALLTYPE *AddRef)(
3746 ISoftDistExt* This);
3747
3748 ULONG (STDMETHODCALLTYPE *Release)(
3749 ISoftDistExt* This);
3750
3751 /*** ISoftDistExt methods ***/
3752 HRESULT (STDMETHODCALLTYPE *ProcessSoftDist)(
3753 ISoftDistExt* This,
3754 LPCWSTR szCDFURL,
3755 IXMLElement *pSoftDistElement,
3756 LPSOFTDISTINFO lpsdi);
3757
3758 HRESULT (STDMETHODCALLTYPE *GetFirstCodeBase)(
3759 ISoftDistExt* This,
3760 LPWSTR *szCodeBase,
3761 LPDWORD dwMaxSize);
3762
3763 HRESULT (STDMETHODCALLTYPE *GetNextCodeBase)(
3764 ISoftDistExt* This,
3765 LPWSTR *szCodeBase,
3766 LPDWORD dwMaxSize);
3767
3768 HRESULT (STDMETHODCALLTYPE *AsyncInstallDistributionUnit)(
3769 ISoftDistExt* This,
3770 IBindCtx *pbc,
3771 LPVOID lpReserved,
3772 DWORD flags,
3773 LPCODEBASEHOLD lpcbh);
3774
3775 END_INTERFACE
3776} ISoftDistExtVtbl;
3777interface ISoftDistExt {
3778 CONST_VTBL ISoftDistExtVtbl* lpVtbl;
3779};
3780
3781#ifdef COBJMACROS
3782/*** IUnknown methods ***/
3783#define ISoftDistExt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3784#define ISoftDistExt_AddRef(This) (This)->lpVtbl->AddRef(This)
3785#define ISoftDistExt_Release(This) (This)->lpVtbl->Release(This)
3786/*** ISoftDistExt methods ***/
3787#define ISoftDistExt_ProcessSoftDist(This,szCDFURL,pSoftDistElement,lpsdi) (This)->lpVtbl->ProcessSoftDist(This,szCDFURL,pSoftDistElement,lpsdi)
3788#define ISoftDistExt_GetFirstCodeBase(This,szCodeBase,dwMaxSize) (This)->lpVtbl->GetFirstCodeBase(This,szCodeBase,dwMaxSize)
3789#define ISoftDistExt_GetNextCodeBase(This,szCodeBase,dwMaxSize) (This)->lpVtbl->GetNextCodeBase(This,szCodeBase,dwMaxSize)
3790#define ISoftDistExt_AsyncInstallDistributionUnit(This,pbc,lpReserved,flags,lpcbh) (This)->lpVtbl->AsyncInstallDistributionUnit(This,pbc,lpReserved,flags,lpcbh)
3791#endif
3792
3793#endif
3794
3795HRESULT STDMETHODCALLTYPE ISoftDistExt_ProcessSoftDist_Proxy(
3796 ISoftDistExt* This,
3797 LPCWSTR szCDFURL,
3798 IXMLElement *pSoftDistElement,
3799 LPSOFTDISTINFO lpsdi);
3800void __RPC_STUB ISoftDistExt_ProcessSoftDist_Stub(
3801 IRpcStubBuffer* This,
3802 IRpcChannelBuffer* pRpcChannelBuffer,
3803 PRPC_MESSAGE pRpcMessage,
3804 DWORD* pdwStubPhase);
3805HRESULT STDMETHODCALLTYPE ISoftDistExt_GetFirstCodeBase_Proxy(
3806 ISoftDistExt* This,
3807 LPWSTR *szCodeBase,
3808 LPDWORD dwMaxSize);
3809void __RPC_STUB ISoftDistExt_GetFirstCodeBase_Stub(
3810 IRpcStubBuffer* This,
3811 IRpcChannelBuffer* pRpcChannelBuffer,
3812 PRPC_MESSAGE pRpcMessage,
3813 DWORD* pdwStubPhase);
3814HRESULT STDMETHODCALLTYPE ISoftDistExt_GetNextCodeBase_Proxy(
3815 ISoftDistExt* This,
3816 LPWSTR *szCodeBase,
3817 LPDWORD dwMaxSize);
3818void __RPC_STUB ISoftDistExt_GetNextCodeBase_Stub(
3819 IRpcStubBuffer* This,
3820 IRpcChannelBuffer* pRpcChannelBuffer,
3821 PRPC_MESSAGE pRpcMessage,
3822 DWORD* pdwStubPhase);
3823HRESULT STDMETHODCALLTYPE ISoftDistExt_AsyncInstallDistributionUnit_Proxy(
3824 ISoftDistExt* This,
3825 IBindCtx *pbc,
3826 LPVOID lpReserved,
3827 DWORD flags,
3828 LPCODEBASEHOLD lpcbh);
3829void __RPC_STUB ISoftDistExt_AsyncInstallDistributionUnit_Stub(
3830 IRpcStubBuffer* This,
3831 IRpcChannelBuffer* pRpcChannelBuffer,
3832 PRPC_MESSAGE pRpcMessage,
3833 DWORD* pdwStubPhase);
3834
3835#endif /* __ISoftDistExt_INTERFACE_DEFINED__ */
3836
3837typedef enum _tagINTERNETFEATURELIST {
3838 FEATURE_OBJECT_CACHING = 0,
3839 FEATURE_ZONE_ELEVATION = 1,
3840 FEATURE_MIME_HANDLING = 2,
3841 FEATURE_MIME_SNIFFING = 3,
3842 FEATURE_WINDOW_RESTRICTIONS = 4,
3843 FEATURE_WEBOC_POPUPMANAGEMENT = 5,
3844 FEATURE_BEHAVIORS = 6,
3845 FEATURE_DISABLE_MK_PROTOCOL = 7,
3846 FEATURE_LOCALMACHINE_LOCKDOWN = 8,
3847 FEATURE_SECURITYBAND = 9,
3848 FEATURE_RESTRICT_ACTIVEXINSTALL = 10,
3849 FEATURE_VALIDATE_NAVIGATE_URL = 11,
3850 FEATURE_RESTRICT_FILEDOWNLOAD = 12,
3851 FEATURE_ADDON_MANAGEMENT = 13,
3852 FEATURE_PROTOCOL_LOCKDOWN = 14,
3853 FEATURE_HTTP_USERNAME_PASSWORD_DISABLE = 15,
3854 FEATURE_SAFE_BINDTOOBJECT = 16,
3855 FEATURE_UNC_SAVEDFILECHECK = 17,
3856 FEATURE_GET_URL_DOM_FILEPATH_UNENCODED = 18,
3857 FEATURE_TABBED_BROWSING = 19,
3858 FEATURE_SSLUX = 20,
3859 FEATURE_DISABLE_NAVIGATION_SOUNDS = 21,
3860 FEATURE_DISABLE_LEGACY_COMPRESSION = 22,
3861 FEATURE_FORCE_ADDR_AND_STATUS = 23,
3862 FEATURE_XMLHTTP = 24,
3863 FEATURE_DISABLE_TELNET_PROTOCOL = 25,
3864 FEATURE_FEEDS = 26,
3865 FEATURE_BLOCK_INPUT_PROMPTS = 27,
3866 FEATURE_DOMSTORAGE = 28,
3867 FEATURE_XDOMAINREQUEST = 29,
3868 FEATURE_DATAURI = 30,
3869 FEATURE_AJAX_CONNECTIONSERVICES = 31,
3870 FEATURE_ENTRY_COUNT = 32
3871} INTERNETFEATURELIST;
3872typedef struct _tagPROTOCOLFILTERDATA {
3873 DWORD cbSize;
3874 IInternetProtocolSink *pProtocolSink;
3875 IInternetProtocol *pProtocol;
3876 IUnknown *pUnk;
3877 DWORD dwFilterFlags;
3878} PROTOCOLFILTERDATA;
3879/*****************************************************************************
3880 * IUri interface
3881 */
3882#ifndef __IUri_INTERFACE_DEFINED__
3883#define __IUri_INTERFACE_DEFINED__
3884
3885typedef enum __WIDL_urlmon_generated_name_00000009 {
3886 Uri_PROPERTY_ABSOLUTE_URI = 0,
3887 Uri_PROPERTY_STRING_START = Uri_PROPERTY_ABSOLUTE_URI,
3888 Uri_PROPERTY_AUTHORITY = 1,
3889 Uri_PROPERTY_DISPLAY_URI = 2,
3890 Uri_PROPERTY_DOMAIN = 3,
3891 Uri_PROPERTY_EXTENSION = 4,
3892 Uri_PROPERTY_FRAGMENT = 5,
3893 Uri_PROPERTY_HOST = 6,
3894 Uri_PROPERTY_PASSWORD = 7,
3895 Uri_PROPERTY_PATH = 8,
3896 Uri_PROPERTY_PATH_AND_QUERY = 9,
3897 Uri_PROPERTY_QUERY = 10,
3898 Uri_PROPERTY_RAW_URI = 11,
3899 Uri_PROPERTY_SCHEME_NAME = 12,
3900 Uri_PROPERTY_USER_INFO = 13,
3901 Uri_PROPERTY_USER_NAME = 14,
3902 Uri_PROPERTY_STRING_LAST = Uri_PROPERTY_USER_NAME,
3903 Uri_PROPERTY_HOST_TYPE = 15,
3904 Uri_PROPERTY_DWORD_START = Uri_PROPERTY_HOST_TYPE,
3905 Uri_PROPERTY_PORT = 16,
3906 Uri_PROPERTY_SCHEME = 17,
3907 Uri_PROPERTY_ZONE = 18,
3908 Uri_PROPERTY_DWORD_LAST = Uri_PROPERTY_ZONE
3909} Uri_PROPERTY;
3910DEFINE_GUID(IID_IUri, 0xa39ee748, 0x6a27, 0x4817, 0xa6,0xf2, 0x13,0x91,0x4b,0xef,0x58,0x90);
3911#if defined(__cplusplus) && !defined(CINTERFACE)
3912interface IUri : public IUnknown
3913{
3914 virtual HRESULT STDMETHODCALLTYPE GetPropertyBSTR(
3915 Uri_PROPERTY uriProp,
3916 BSTR *pbstrProperty,
3917 DWORD dwFlags) = 0;
3918
3919 virtual HRESULT STDMETHODCALLTYPE GetPropertyLength(
3920 Uri_PROPERTY uriProp,
3921 DWORD *pcchProperty,
3922 DWORD dwFlags) = 0;
3923
3924 virtual HRESULT STDMETHODCALLTYPE GetPropertyDWORD(
3925 Uri_PROPERTY uriProp,
3926 DWORD *pdwProperty,
3927 DWORD dwFlags) = 0;
3928
3929 virtual HRESULT STDMETHODCALLTYPE HasProperty(
3930 Uri_PROPERTY uriProp,
3931 BOOL *pfHasProperty) = 0;
3932
3933 virtual HRESULT STDMETHODCALLTYPE GetAbsoluteUri(
3934 BSTR *pbstrAbsoluteUri) = 0;
3935
3936 virtual HRESULT STDMETHODCALLTYPE GetAuthority(
3937 BSTR *pbstrAuthority) = 0;
3938
3939 virtual HRESULT STDMETHODCALLTYPE GetDisplayUri(
3940 BSTR *pbstrDisplayString) = 0;
3941
3942 virtual HRESULT STDMETHODCALLTYPE GetDomain(
3943 BSTR *pbstrDomain) = 0;
3944
3945 virtual HRESULT STDMETHODCALLTYPE GetExtension(
3946 BSTR *pbstrExtension) = 0;
3947
3948 virtual HRESULT STDMETHODCALLTYPE GetFragment(
3949 BSTR *pbstrFragment) = 0;
3950
3951 virtual HRESULT STDMETHODCALLTYPE GetHost(
3952 BSTR *pbstrHost) = 0;
3953
3954 virtual HRESULT STDMETHODCALLTYPE GetPassword(
3955 BSTR *pbstrPassword) = 0;
3956
3957 virtual HRESULT STDMETHODCALLTYPE GetPath(
3958 BSTR *pbstrPath) = 0;
3959
3960 virtual HRESULT STDMETHODCALLTYPE GetPathAndQuery(
3961 BSTR *pbstrPathAndQuery) = 0;
3962
3963 virtual HRESULT STDMETHODCALLTYPE GetQuery(
3964 BSTR *pbstrQuery) = 0;
3965
3966 virtual HRESULT STDMETHODCALLTYPE GetRawUri(
3967 BSTR *pbstrRawUri) = 0;
3968
3969 virtual HRESULT STDMETHODCALLTYPE GetSchemeName(
3970 BSTR *pbstrSchemeName) = 0;
3971
3972 virtual HRESULT STDMETHODCALLTYPE GetUserInfo(
3973 BSTR *pbstrUserInfo) = 0;
3974
3975 virtual HRESULT STDMETHODCALLTYPE GetUserName(
3976 BSTR *pbstrUserName) = 0;
3977
3978 virtual HRESULT STDMETHODCALLTYPE GetHostType(
3979 DWORD *pdwHostType) = 0;
3980
3981 virtual HRESULT STDMETHODCALLTYPE GetPort(
3982 DWORD *pdwPort) = 0;
3983
3984 virtual HRESULT STDMETHODCALLTYPE GetScheme(
3985 DWORD *pdwScheme) = 0;
3986
3987 virtual HRESULT STDMETHODCALLTYPE GetZone(
3988 DWORD *pdwZone) = 0;
3989
3990 virtual HRESULT STDMETHODCALLTYPE GetProperties(
3991 LPDWORD pdwFlags) = 0;
3992
3993 virtual HRESULT STDMETHODCALLTYPE IsEqual(
3994 IUri *pUri,
3995 BOOL *pfEqual) = 0;
3996
3997};
3998#else
3999typedef struct IUriVtbl {
4000 BEGIN_INTERFACE
4001
4002 /*** IUnknown methods ***/
4003 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4004 IUri* This,
4005 REFIID riid,
4006 void **ppvObject);
4007
4008 ULONG (STDMETHODCALLTYPE *AddRef)(
4009 IUri* This);
4010
4011 ULONG (STDMETHODCALLTYPE *Release)(
4012 IUri* This);
4013
4014 /*** IUri methods ***/
4015 HRESULT (STDMETHODCALLTYPE *GetPropertyBSTR)(
4016 IUri* This,
4017 Uri_PROPERTY uriProp,
4018 BSTR *pbstrProperty,
4019 DWORD dwFlags);
4020
4021 HRESULT (STDMETHODCALLTYPE *GetPropertyLength)(
4022 IUri* This,
4023 Uri_PROPERTY uriProp,
4024 DWORD *pcchProperty,
4025 DWORD dwFlags);
4026
4027 HRESULT (STDMETHODCALLTYPE *GetPropertyDWORD)(
4028 IUri* This,
4029 Uri_PROPERTY uriProp,
4030 DWORD *pdwProperty,
4031 DWORD dwFlags);
4032
4033 HRESULT (STDMETHODCALLTYPE *HasProperty)(
4034 IUri* This,
4035 Uri_PROPERTY uriProp,
4036 BOOL *pfHasProperty);
4037
4038 HRESULT (STDMETHODCALLTYPE *GetAbsoluteUri)(
4039 IUri* This,
4040 BSTR *pbstrAbsoluteUri);
4041
4042 HRESULT (STDMETHODCALLTYPE *GetAuthority)(
4043 IUri* This,
4044 BSTR *pbstrAuthority);
4045
4046 HRESULT (STDMETHODCALLTYPE *GetDisplayUri)(
4047 IUri* This,
4048 BSTR *pbstrDisplayString);
4049
4050 HRESULT (STDMETHODCALLTYPE *GetDomain)(
4051 IUri* This,
4052 BSTR *pbstrDomain);
4053
4054 HRESULT (STDMETHODCALLTYPE *GetExtension)(
4055 IUri* This,
4056 BSTR *pbstrExtension);
4057
4058 HRESULT (STDMETHODCALLTYPE *GetFragment)(
4059 IUri* This,
4060 BSTR *pbstrFragment);
4061
4062 HRESULT (STDMETHODCALLTYPE *GetHost)(
4063 IUri* This,
4064 BSTR *pbstrHost);
4065
4066 HRESULT (STDMETHODCALLTYPE *GetPassword)(
4067 IUri* This,
4068 BSTR *pbstrPassword);
4069
4070 HRESULT (STDMETHODCALLTYPE *GetPath)(
4071 IUri* This,
4072 BSTR *pbstrPath);
4073
4074 HRESULT (STDMETHODCALLTYPE *GetPathAndQuery)(
4075 IUri* This,
4076 BSTR *pbstrPathAndQuery);
4077
4078 HRESULT (STDMETHODCALLTYPE *GetQuery)(
4079 IUri* This,
4080 BSTR *pbstrQuery);
4081
4082 HRESULT (STDMETHODCALLTYPE *GetRawUri)(
4083 IUri* This,
4084 BSTR *pbstrRawUri);
4085
4086 HRESULT (STDMETHODCALLTYPE *GetSchemeName)(
4087 IUri* This,
4088 BSTR *pbstrSchemeName);
4089
4090 HRESULT (STDMETHODCALLTYPE *GetUserInfo)(
4091 IUri* This,
4092 BSTR *pbstrUserInfo);
4093
4094 HRESULT (STDMETHODCALLTYPE *GetUserName)(
4095 IUri* This,
4096 BSTR *pbstrUserName);
4097
4098 HRESULT (STDMETHODCALLTYPE *GetHostType)(
4099 IUri* This,
4100 DWORD *pdwHostType);
4101
4102 HRESULT (STDMETHODCALLTYPE *GetPort)(
4103 IUri* This,
4104 DWORD *pdwPort);
4105
4106 HRESULT (STDMETHODCALLTYPE *GetScheme)(
4107 IUri* This,
4108 DWORD *pdwScheme);
4109
4110 HRESULT (STDMETHODCALLTYPE *GetZone)(
4111 IUri* This,
4112 DWORD *pdwZone);
4113
4114 HRESULT (STDMETHODCALLTYPE *GetProperties)(
4115 IUri* This,
4116 LPDWORD pdwFlags);
4117
4118 HRESULT (STDMETHODCALLTYPE *IsEqual)(
4119 IUri* This,
4120 IUri *pUri,
4121 BOOL *pfEqual);
4122
4123 END_INTERFACE
4124} IUriVtbl;
4125interface IUri {
4126 CONST_VTBL IUriVtbl* lpVtbl;
4127};
4128
4129#ifdef COBJMACROS
4130/*** IUnknown methods ***/
4131#define IUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4132#define IUri_AddRef(This) (This)->lpVtbl->AddRef(This)
4133#define IUri_Release(This) (This)->lpVtbl->Release(This)
4134/*** IUri methods ***/
4135#define IUri_GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags) (This)->lpVtbl->GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags)
4136#define IUri_GetPropertyLength(This,uriProp,pcchProperty,dwFlags) (This)->lpVtbl->GetPropertyLength(This,uriProp,pcchProperty,dwFlags)
4137#define IUri_GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags) (This)->lpVtbl->GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags)
4138#define IUri_HasProperty(This,uriProp,pfHasProperty) (This)->lpVtbl->HasProperty(This,uriProp,pfHasProperty)
4139#define IUri_GetAbsoluteUri(This,pbstrAbsoluteUri) (This)->lpVtbl->GetAbsoluteUri(This,pbstrAbsoluteUri)
4140#define IUri_GetAuthority(This,pbstrAuthority) (This)->lpVtbl->GetAuthority(This,pbstrAuthority)
4141#define IUri_GetDisplayUri(This,pbstrDisplayString) (This)->lpVtbl->GetDisplayUri(This,pbstrDisplayString)
4142#define IUri_GetDomain(This,pbstrDomain) (This)->lpVtbl->GetDomain(This,pbstrDomain)
4143#define IUri_GetExtension(This,pbstrExtension) (This)->lpVtbl->GetExtension(This,pbstrExtension)
4144#define IUri_GetFragment(This,pbstrFragment) (This)->lpVtbl->GetFragment(This,pbstrFragment)
4145#define IUri_GetHost(This,pbstrHost) (This)->lpVtbl->GetHost(This,pbstrHost)
4146#define IUri_GetPassword(This,pbstrPassword) (This)->lpVtbl->GetPassword(This,pbstrPassword)
4147#define IUri_GetPath(This,pbstrPath) (This)->lpVtbl->GetPath(This,pbstrPath)
4148#define IUri_GetPathAndQuery(This,pbstrPathAndQuery) (This)->lpVtbl->GetPathAndQuery(This,pbstrPathAndQuery)
4149#define IUri_GetQuery(This,pbstrQuery) (This)->lpVtbl->GetQuery(This,pbstrQuery)
4150#define IUri_GetRawUri(This,pbstrRawUri) (This)->lpVtbl->GetRawUri(This,pbstrRawUri)
4151#define IUri_GetSchemeName(This,pbstrSchemeName) (This)->lpVtbl->GetSchemeName(This,pbstrSchemeName)
4152#define IUri_GetUserInfo(This,pbstrUserInfo) (This)->lpVtbl->GetUserInfo(This,pbstrUserInfo)
4153#define IUri_GetUserName(This,pbstrUserName) (This)->lpVtbl->GetUserName(This,pbstrUserName)
4154#define IUri_GetHostType(This,pdwHostType) (This)->lpVtbl->GetHostType(This,pdwHostType)
4155#define IUri_GetPort(This,pdwPort) (This)->lpVtbl->GetPort(This,pdwPort)
4156#define IUri_GetScheme(This,pdwScheme) (This)->lpVtbl->GetScheme(This,pdwScheme)
4157#define IUri_GetZone(This,pdwZone) (This)->lpVtbl->GetZone(This,pdwZone)
4158#define IUri_GetProperties(This,pdwFlags) (This)->lpVtbl->GetProperties(This,pdwFlags)
4159#define IUri_IsEqual(This,pUri,pfEqual) (This)->lpVtbl->IsEqual(This,pUri,pfEqual)
4160#endif
4161
4162#endif
4163
4164HRESULT STDMETHODCALLTYPE IUri_GetPropertyBSTR_Proxy(
4165 IUri* This,
4166 Uri_PROPERTY uriProp,
4167 BSTR *pbstrProperty,
4168 DWORD dwFlags);
4169void __RPC_STUB IUri_GetPropertyBSTR_Stub(
4170 IRpcStubBuffer* This,
4171 IRpcChannelBuffer* pRpcChannelBuffer,
4172 PRPC_MESSAGE pRpcMessage,
4173 DWORD* pdwStubPhase);
4174HRESULT STDMETHODCALLTYPE IUri_GetPropertyLength_Proxy(
4175 IUri* This,
4176 Uri_PROPERTY uriProp,
4177 DWORD *pcchProperty,
4178 DWORD dwFlags);
4179void __RPC_STUB IUri_GetPropertyLength_Stub(
4180 IRpcStubBuffer* This,
4181 IRpcChannelBuffer* pRpcChannelBuffer,
4182 PRPC_MESSAGE pRpcMessage,
4183 DWORD* pdwStubPhase);
4184HRESULT STDMETHODCALLTYPE IUri_GetPropertyDWORD_Proxy(
4185 IUri* This,
4186 Uri_PROPERTY uriProp,
4187 DWORD *pdwProperty,
4188 DWORD dwFlags);
4189void __RPC_STUB IUri_GetPropertyDWORD_Stub(
4190 IRpcStubBuffer* This,
4191 IRpcChannelBuffer* pRpcChannelBuffer,
4192 PRPC_MESSAGE pRpcMessage,
4193 DWORD* pdwStubPhase);
4194HRESULT STDMETHODCALLTYPE IUri_HasProperty_Proxy(
4195 IUri* This,
4196 Uri_PROPERTY uriProp,
4197 BOOL *pfHasProperty);
4198void __RPC_STUB IUri_HasProperty_Stub(
4199 IRpcStubBuffer* This,
4200 IRpcChannelBuffer* pRpcChannelBuffer,
4201 PRPC_MESSAGE pRpcMessage,
4202 DWORD* pdwStubPhase);
4203HRESULT STDMETHODCALLTYPE IUri_GetAbsoluteUri_Proxy(
4204 IUri* This,
4205 BSTR *pbstrAbsoluteUri);
4206void __RPC_STUB IUri_GetAbsoluteUri_Stub(
4207 IRpcStubBuffer* This,
4208 IRpcChannelBuffer* pRpcChannelBuffer,
4209 PRPC_MESSAGE pRpcMessage,
4210 DWORD* pdwStubPhase);
4211HRESULT STDMETHODCALLTYPE IUri_GetAuthority_Proxy(
4212 IUri* This,
4213 BSTR *pbstrAuthority);
4214void __RPC_STUB IUri_GetAuthority_Stub(
4215 IRpcStubBuffer* This,
4216 IRpcChannelBuffer* pRpcChannelBuffer,
4217 PRPC_MESSAGE pRpcMessage,
4218 DWORD* pdwStubPhase);
4219HRESULT STDMETHODCALLTYPE IUri_GetDisplayUri_Proxy(
4220 IUri* This,
4221 BSTR *pbstrDisplayString);
4222void __RPC_STUB IUri_GetDisplayUri_Stub(
4223 IRpcStubBuffer* This,
4224 IRpcChannelBuffer* pRpcChannelBuffer,
4225 PRPC_MESSAGE pRpcMessage,
4226 DWORD* pdwStubPhase);
4227HRESULT STDMETHODCALLTYPE IUri_GetDomain_Proxy(
4228 IUri* This,
4229 BSTR *pbstrDomain);
4230void __RPC_STUB IUri_GetDomain_Stub(
4231 IRpcStubBuffer* This,
4232 IRpcChannelBuffer* pRpcChannelBuffer,
4233 PRPC_MESSAGE pRpcMessage,
4234 DWORD* pdwStubPhase);
4235HRESULT STDMETHODCALLTYPE IUri_GetExtension_Proxy(
4236 IUri* This,
4237 BSTR *pbstrExtension);
4238void __RPC_STUB IUri_GetExtension_Stub(
4239 IRpcStubBuffer* This,
4240 IRpcChannelBuffer* pRpcChannelBuffer,
4241 PRPC_MESSAGE pRpcMessage,
4242 DWORD* pdwStubPhase);
4243HRESULT STDMETHODCALLTYPE IUri_GetFragment_Proxy(
4244 IUri* This,
4245 BSTR *pbstrFragment);
4246void __RPC_STUB IUri_GetFragment_Stub(
4247 IRpcStubBuffer* This,
4248 IRpcChannelBuffer* pRpcChannelBuffer,
4249 PRPC_MESSAGE pRpcMessage,
4250 DWORD* pdwStubPhase);
4251HRESULT STDMETHODCALLTYPE IUri_GetHost_Proxy(
4252 IUri* This,
4253 BSTR *pbstrHost);
4254void __RPC_STUB IUri_GetHost_Stub(
4255 IRpcStubBuffer* This,
4256 IRpcChannelBuffer* pRpcChannelBuffer,
4257 PRPC_MESSAGE pRpcMessage,
4258 DWORD* pdwStubPhase);
4259HRESULT STDMETHODCALLTYPE IUri_GetPassword_Proxy(
4260 IUri* This,
4261 BSTR *pbstrPassword);
4262void __RPC_STUB IUri_GetPassword_Stub(
4263 IRpcStubBuffer* This,
4264 IRpcChannelBuffer* pRpcChannelBuffer,
4265 PRPC_MESSAGE pRpcMessage,
4266 DWORD* pdwStubPhase);
4267HRESULT STDMETHODCALLTYPE IUri_GetPath_Proxy(
4268 IUri* This,
4269 BSTR *pbstrPath);
4270void __RPC_STUB IUri_GetPath_Stub(
4271 IRpcStubBuffer* This,
4272 IRpcChannelBuffer* pRpcChannelBuffer,
4273 PRPC_MESSAGE pRpcMessage,
4274 DWORD* pdwStubPhase);
4275HRESULT STDMETHODCALLTYPE IUri_GetPathAndQuery_Proxy(
4276 IUri* This,
4277 BSTR *pbstrPathAndQuery);
4278void __RPC_STUB IUri_GetPathAndQuery_Stub(
4279 IRpcStubBuffer* This,
4280 IRpcChannelBuffer* pRpcChannelBuffer,
4281 PRPC_MESSAGE pRpcMessage,
4282 DWORD* pdwStubPhase);
4283HRESULT STDMETHODCALLTYPE IUri_GetQuery_Proxy(
4284 IUri* This,
4285 BSTR *pbstrQuery);
4286void __RPC_STUB IUri_GetQuery_Stub(
4287 IRpcStubBuffer* This,
4288 IRpcChannelBuffer* pRpcChannelBuffer,
4289 PRPC_MESSAGE pRpcMessage,
4290 DWORD* pdwStubPhase);
4291HRESULT STDMETHODCALLTYPE IUri_GetRawUri_Proxy(
4292 IUri* This,
4293 BSTR *pbstrRawUri);
4294void __RPC_STUB IUri_GetRawUri_Stub(
4295 IRpcStubBuffer* This,
4296 IRpcChannelBuffer* pRpcChannelBuffer,
4297 PRPC_MESSAGE pRpcMessage,
4298 DWORD* pdwStubPhase);
4299HRESULT STDMETHODCALLTYPE IUri_GetSchemeName_Proxy(
4300 IUri* This,
4301 BSTR *pbstrSchemeName);
4302void __RPC_STUB IUri_GetSchemeName_Stub(
4303 IRpcStubBuffer* This,
4304 IRpcChannelBuffer* pRpcChannelBuffer,
4305 PRPC_MESSAGE pRpcMessage,
4306 DWORD* pdwStubPhase);
4307HRESULT STDMETHODCALLTYPE IUri_GetUserInfo_Proxy(
4308 IUri* This,
4309 BSTR *pbstrUserInfo);
4310void __RPC_STUB IUri_GetUserInfo_Stub(
4311 IRpcStubBuffer* This,
4312 IRpcChannelBuffer* pRpcChannelBuffer,
4313 PRPC_MESSAGE pRpcMessage,
4314 DWORD* pdwStubPhase);
4315HRESULT STDMETHODCALLTYPE IUri_GetUserName_Proxy(
4316 IUri* This,
4317 BSTR *pbstrUserName);
4318void __RPC_STUB IUri_GetUserName_Stub(
4319 IRpcStubBuffer* This,
4320 IRpcChannelBuffer* pRpcChannelBuffer,
4321 PRPC_MESSAGE pRpcMessage,
4322 DWORD* pdwStubPhase);
4323HRESULT STDMETHODCALLTYPE IUri_GetHostType_Proxy(
4324 IUri* This,
4325 DWORD *pdwHostType);
4326void __RPC_STUB IUri_GetHostType_Stub(
4327 IRpcStubBuffer* This,
4328 IRpcChannelBuffer* pRpcChannelBuffer,
4329 PRPC_MESSAGE pRpcMessage,
4330 DWORD* pdwStubPhase);
4331HRESULT STDMETHODCALLTYPE IUri_GetPort_Proxy(
4332 IUri* This,
4333 DWORD *pdwPort);
4334void __RPC_STUB IUri_GetPort_Stub(
4335 IRpcStubBuffer* This,
4336 IRpcChannelBuffer* pRpcChannelBuffer,
4337 PRPC_MESSAGE pRpcMessage,
4338 DWORD* pdwStubPhase);
4339HRESULT STDMETHODCALLTYPE IUri_GetScheme_Proxy(
4340 IUri* This,
4341 DWORD *pdwScheme);
4342void __RPC_STUB IUri_GetScheme_Stub(
4343 IRpcStubBuffer* This,
4344 IRpcChannelBuffer* pRpcChannelBuffer,
4345 PRPC_MESSAGE pRpcMessage,
4346 DWORD* pdwStubPhase);
4347HRESULT STDMETHODCALLTYPE IUri_GetZone_Proxy(
4348 IUri* This,
4349 DWORD *pdwZone);
4350void __RPC_STUB IUri_GetZone_Stub(
4351 IRpcStubBuffer* This,
4352 IRpcChannelBuffer* pRpcChannelBuffer,
4353 PRPC_MESSAGE pRpcMessage,
4354 DWORD* pdwStubPhase);
4355HRESULT STDMETHODCALLTYPE IUri_GetProperties_Proxy(
4356 IUri* This,
4357 LPDWORD pdwFlags);
4358void __RPC_STUB IUri_GetProperties_Stub(
4359 IRpcStubBuffer* This,
4360 IRpcChannelBuffer* pRpcChannelBuffer,
4361 PRPC_MESSAGE pRpcMessage,
4362 DWORD* pdwStubPhase);
4363HRESULT STDMETHODCALLTYPE IUri_IsEqual_Proxy(
4364 IUri* This,
4365 IUri *pUri,
4366 BOOL *pfEqual);
4367void __RPC_STUB IUri_IsEqual_Stub(
4368 IRpcStubBuffer* This,
4369 IRpcChannelBuffer* pRpcChannelBuffer,
4370 PRPC_MESSAGE pRpcMessage,
4371 DWORD* pdwStubPhase);
4372
4373#endif /* __IUri_INTERFACE_DEFINED__ */
4374
4375/*****************************************************************************
4376 * IUriContainer interface
4377 */
4378#ifndef __IUriContainer_INTERFACE_DEFINED__
4379#define __IUriContainer_INTERFACE_DEFINED__
4380
4381DEFINE_GUID(IID_IUriContainer, 0xa158a630, 0xed6f, 0x45fb, 0xb9,0x87, 0xf6,0x86,0x76,0xf5,0x77,0x52);
4382#if defined(__cplusplus) && !defined(CINTERFACE)
4383interface IUriContainer : public IUnknown
4384{
4385 virtual HRESULT STDMETHODCALLTYPE GetIUri(
4386 IUri **ppIUri) = 0;
4387
4388};
4389#else
4390typedef struct IUriContainerVtbl {
4391 BEGIN_INTERFACE
4392
4393 /*** IUnknown methods ***/
4394 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4395 IUriContainer* This,
4396 REFIID riid,
4397 void **ppvObject);
4398
4399 ULONG (STDMETHODCALLTYPE *AddRef)(
4400 IUriContainer* This);
4401
4402 ULONG (STDMETHODCALLTYPE *Release)(
4403 IUriContainer* This);
4404
4405 /*** IUriContainer methods ***/
4406 HRESULT (STDMETHODCALLTYPE *GetIUri)(
4407 IUriContainer* This,
4408 IUri **ppIUri);
4409
4410 END_INTERFACE
4411} IUriContainerVtbl;
4412interface IUriContainer {
4413 CONST_VTBL IUriContainerVtbl* lpVtbl;
4414};
4415
4416#ifdef COBJMACROS
4417/*** IUnknown methods ***/
4418#define IUriContainer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4419#define IUriContainer_AddRef(This) (This)->lpVtbl->AddRef(This)
4420#define IUriContainer_Release(This) (This)->lpVtbl->Release(This)
4421/*** IUriContainer methods ***/
4422#define IUriContainer_GetIUri(This,ppIUri) (This)->lpVtbl->GetIUri(This,ppIUri)
4423#endif
4424
4425#endif
4426
4427HRESULT STDMETHODCALLTYPE IUriContainer_GetIUri_Proxy(
4428 IUriContainer* This,
4429 IUri **ppIUri);
4430void __RPC_STUB IUriContainer_GetIUri_Stub(
4431 IRpcStubBuffer* This,
4432 IRpcChannelBuffer* pRpcChannelBuffer,
4433 PRPC_MESSAGE pRpcMessage,
4434 DWORD* pdwStubPhase);
4435
4436#endif /* __IUriContainer_INTERFACE_DEFINED__ */
4437
4438/*****************************************************************************
4439 * IInternetProtocolEx interface
4440 */
4441#ifndef __IInternetProtocolEx_INTERFACE_DEFINED__
4442#define __IInternetProtocolEx_INTERFACE_DEFINED__
4443
4444DEFINE_GUID(IID_IInternetProtocolEx, 0xc7a98e66, 0x1010, 0x492c, 0xa1,0xc8, 0xc8,0x09,0xe1,0xf7,0x59,0x05);
4445#if defined(__cplusplus) && !defined(CINTERFACE)
4446interface IInternetProtocolEx : public IInternetProtocol
4447{
4448 virtual HRESULT STDMETHODCALLTYPE StartEx(
4449 IUri *pUri,
4450 IInternetProtocolSink *pOIProtSink,
4451 IInternetBindInfo *pOIBindInfo,
4452 DWORD grfPI,
4453 HANDLE *dwReserved) = 0;
4454
4455};
4456#else
4457typedef struct IInternetProtocolExVtbl {
4458 BEGIN_INTERFACE
4459
4460 /*** IUnknown methods ***/
4461 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4462 IInternetProtocolEx* This,
4463 REFIID riid,
4464 void **ppvObject);
4465
4466 ULONG (STDMETHODCALLTYPE *AddRef)(
4467 IInternetProtocolEx* This);
4468
4469 ULONG (STDMETHODCALLTYPE *Release)(
4470 IInternetProtocolEx* This);
4471
4472 /*** IInternetProtocolRoot methods ***/
4473 HRESULT (STDMETHODCALLTYPE *Start)(
4474 IInternetProtocolEx* This,
4475 LPCWSTR szUrl,
4476 IInternetProtocolSink *pOIProtSink,
4477 IInternetBindInfo *pOIBindInfo,
4478 DWORD grfPI,
4479 HANDLE_PTR dwReserved);
4480
4481 HRESULT (STDMETHODCALLTYPE *Continue)(
4482 IInternetProtocolEx* This,
4483 PROTOCOLDATA *pProtocolData);
4484
4485 HRESULT (STDMETHODCALLTYPE *Abort)(
4486 IInternetProtocolEx* This,
4487 HRESULT hrReason,
4488 DWORD dwOptions);
4489
4490 HRESULT (STDMETHODCALLTYPE *Terminate)(
4491 IInternetProtocolEx* This,
4492 DWORD dwOptions);
4493
4494 HRESULT (STDMETHODCALLTYPE *Suspend)(
4495 IInternetProtocolEx* This);
4496
4497 HRESULT (STDMETHODCALLTYPE *Resume)(
4498 IInternetProtocolEx* This);
4499
4500 /*** IInternetProtocol methods ***/
4501 HRESULT (STDMETHODCALLTYPE *Read)(
4502 IInternetProtocolEx* This,
4503 void *pv,
4504 ULONG cb,
4505 ULONG *pcbRead);
4506
4507 HRESULT (STDMETHODCALLTYPE *Seek)(
4508 IInternetProtocolEx* This,
4509 LARGE_INTEGER dlibMove,
4510 DWORD dwOrigin,
4511 ULARGE_INTEGER *plibNewPosition);
4512
4513 HRESULT (STDMETHODCALLTYPE *LockRequest)(
4514 IInternetProtocolEx* This,
4515 DWORD dwOptions);
4516
4517 HRESULT (STDMETHODCALLTYPE *UnlockRequest)(
4518 IInternetProtocolEx* This);
4519
4520 /*** IInternetProtocolEx methods ***/
4521 HRESULT (STDMETHODCALLTYPE *StartEx)(
4522 IInternetProtocolEx* This,
4523 IUri *pUri,
4524 IInternetProtocolSink *pOIProtSink,
4525 IInternetBindInfo *pOIBindInfo,
4526 DWORD grfPI,
4527 HANDLE *dwReserved);
4528
4529 END_INTERFACE
4530} IInternetProtocolExVtbl;
4531interface IInternetProtocolEx {
4532 CONST_VTBL IInternetProtocolExVtbl* lpVtbl;
4533};
4534
4535#ifdef COBJMACROS
4536/*** IUnknown methods ***/
4537#define IInternetProtocolEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4538#define IInternetProtocolEx_AddRef(This) (This)->lpVtbl->AddRef(This)
4539#define IInternetProtocolEx_Release(This) (This)->lpVtbl->Release(This)
4540/*** IInternetProtocolRoot methods ***/
4541#define IInternetProtocolEx_Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->Start(This,szUrl,pOIProtSink,pOIBindInfo,grfPI,dwReserved)
4542#define IInternetProtocolEx_Continue(This,pProtocolData) (This)->lpVtbl->Continue(This,pProtocolData)
4543#define IInternetProtocolEx_Abort(This,hrReason,dwOptions) (This)->lpVtbl->Abort(This,hrReason,dwOptions)
4544#define IInternetProtocolEx_Terminate(This,dwOptions) (This)->lpVtbl->Terminate(This,dwOptions)
4545#define IInternetProtocolEx_Suspend(This) (This)->lpVtbl->Suspend(This)
4546#define IInternetProtocolEx_Resume(This) (This)->lpVtbl->Resume(This)
4547/*** IInternetProtocol methods ***/
4548#define IInternetProtocolEx_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4549#define IInternetProtocolEx_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4550#define IInternetProtocolEx_LockRequest(This,dwOptions) (This)->lpVtbl->LockRequest(This,dwOptions)
4551#define IInternetProtocolEx_UnlockRequest(This) (This)->lpVtbl->UnlockRequest(This)
4552/*** IInternetProtocolEx methods ***/
4553#define IInternetProtocolEx_StartEx(This,pUri,pOIProtSink,pOIBindInfo,grfPI,dwReserved) (This)->lpVtbl->StartEx(This,pUri,pOIProtSink,pOIBindInfo,grfPI,dwReserved)
4554#endif
4555
4556#endif
4557
4558HRESULT STDMETHODCALLTYPE IInternetProtocolEx_StartEx_Proxy(
4559 IInternetProtocolEx* This,
4560 IUri *pUri,
4561 IInternetProtocolSink *pOIProtSink,
4562 IInternetBindInfo *pOIBindInfo,
4563 DWORD grfPI,
4564 HANDLE *dwReserved);
4565void __RPC_STUB IInternetProtocolEx_StartEx_Stub(
4566 IRpcStubBuffer* This,
4567 IRpcChannelBuffer* pRpcChannelBuffer,
4568 PRPC_MESSAGE pRpcMessage,
4569 DWORD* pdwStubPhase);
4570
4571#endif /* __IInternetProtocolEx_INTERFACE_DEFINED__ */
4572
4573DEFINE_GUID(CLSID_InternetSecurityManager, 0x7b8a2d94, 0x0ac9, 0x11d1, 0x89, 0x6c, 0x00, 0xc0, 0x4f, 0xB6, 0xbf, 0xc4);
4574DEFINE_GUID(CLSID_InternetZoneManager, 0x7B8A2D95, 0x0AC9, 0x11D1, 0x89, 0x6C, 0x00, 0xC0, 0x4F, 0xB6, 0xBF, 0xC4);
4575DEFINE_GUID(IID_IAsyncMoniker, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
4576DEFINE_GUID(IID_IAsyncBindCtx, 0x79EAC9D4, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
4577DEFINE_GUID(CLSID_StdURLMoniker, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
4578DEFINE_GUID(CLSID_DeCompMimeFilter, 0x8f6b0360, 0xb80d, 0x11d0, 0xa9,0xb3, 0x00,0x60,0x97,0x94,0x23,0x11);
4579DEFINE_GUID(CLSID_CdlProtocol, 0x3dd53d40, 0x7b8b, 0x11D0, 0xb0,0x13, 0x00,0xaa,0x00,0x59,0xce,0x02);
4580DEFINE_GUID(CLSID_FileProtocol, 0x79EAC9E7, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
4581DEFINE_GUID(CLSID_FtpProtocol, 0x79EAC9E3, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
4582DEFINE_GUID(CLSID_GopherProtocol, 0x79EAC9E4, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
4583DEFINE_GUID(CLSID_HttpProtocol, 0x79EAC9E2, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
4584DEFINE_GUID(CLSID_HttpSProtocol, 0x79EAC9E5, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
4585DEFINE_GUID(CLSID_MkProtocol, 0x79EAC9E6, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
4586#define URLMON_OPTION_USERAGENT 0x10000001
4587#define URLMON_OPTION_USERAGENT_REFRESH 0x10000002
4588#define URLMON_OPTION_URL_ENCODING 0x10000004
4589#define MK_S_ASYNCHRONOUS _HRESULT_TYPEDEF_(0x000401E8)
4590#ifndef S_ASYNCHRONOUS
4591#define S_ASYNCHRONOUS MK_S_ASYNCHRONOUS
4592#endif
4593#define INET_E_ERROR_FIRST _HRESULT_TYPEDEF_(0x800C0002)
4594#define INET_E_INVALID_URL _HRESULT_TYPEDEF_(0x800C0002)
4595#define INET_E_NO_SESSION _HRESULT_TYPEDEF_(0x800C0003)
4596#define INET_E_CANNOT_CONNECT _HRESULT_TYPEDEF_(0x800C0004)
4597#define INET_E_RESOURCE_NOT_FOUND _HRESULT_TYPEDEF_(0x800C0005)
4598#define INET_E_OBJECT_NOT_FOUND _HRESULT_TYPEDEF_(0x800C0006)
4599#define INET_E_DATA_NOT_AVAILABLE _HRESULT_TYPEDEF_(0x800C0007)
4600#define INET_E_DOWNLOAD_FAILURE _HRESULT_TYPEDEF_(0x800C0008)
4601#define INET_E_AUTHENTICATION_REQUIRED _HRESULT_TYPEDEF_(0x800C0009)
4602#define INET_E_NO_VALID_MEDIA _HRESULT_TYPEDEF_(0x800C000A)
4603#define INET_E_CONNECTION_TIMEOUT _HRESULT_TYPEDEF_(0x800C000B)
4604#define INET_E_INVALID_REQUEST _HRESULT_TYPEDEF_(0x800C000C)
4605#define INET_E_UNKNOWN_PROTOCOL _HRESULT_TYPEDEF_(0x800C000D)
4606#define INET_E_SECURITY_PROBLEM _HRESULT_TYPEDEF_(0x800C000E)
4607#define INET_E_CANNOT_LOAD_DATA _HRESULT_TYPEDEF_(0x800C000F)
4608#define INET_E_CANNOT_INSTANTIATE_OBJECT _HRESULT_TYPEDEF_(0x800C0010)
4609#define INET_E_USE_DEFAULT_PROTOCOLHANDLER _HRESULT_TYPEDEF_(0x800C0011)
4610#define INET_E_QUERYOPTION_UNKNOWN _HRESULT_TYPEDEF_(0x800C0013)
4611#define INET_E_REDIRECT_FAILED _HRESULT_TYPEDEF_(0x800C0014)
4612#define INET_E_REDIRECT_TO_DIR _HRESULT_TYPEDEF_(0x800C0015)
4613#define INET_E_CANNOT_LOCK_REQUEST _HRESULT_TYPEDEF_(0x800C0016)
4614#define INET_E_ERROR_LAST INET_E_REDIRECT_TO_DIR
4615#define INET_E_DEFAULT_ACTION INET_E_USE_DEFAULT_PROTOCOLHANDLER
4616HRESULT WINAPI CoGetClassObjectFromURL(REFCLSID, LPCWSTR, DWORD, DWORD, LPCWSTR, LPBINDCTX, DWORD, LPVOID, REFIID, LPVOID*);
4617HRESULT WINAPI CreateURLMoniker(IMoniker *pmkContext, LPCWSTR szURL, IMoniker **ppmk);
4618HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusCallback *pbsc, IBindStatusCallback **ppbsc, DWORD dwReserved);
4619HRESULT WINAPI CompareSecurityIds(BYTE*,DWORD,BYTE*,DWORD,DWORD);
4620HRESULT WINAPI URLDownloadToFileA(LPUNKNOWN,LPCSTR,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
4621HRESULT WINAPI URLDownloadToFileW(LPUNKNOWN,LPCWSTR,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
4622HRESULT WINAPI URLDownloadToCacheFileA(LPUNKNOWN,LPCSTR,LPSTR,DWORD,DWORD,LPBINDSTATUSCALLBACK);
4623HRESULT WINAPI URLDownloadToCacheFileW(LPUNKNOWN,LPCWSTR,LPWSTR,DWORD,DWORD,LPBINDSTATUSCALLBACK);
4624HRESULT WINAPI CoInternetGetSession(DWORD,IInternetSession**,DWORD);
4625HRESULT WINAPI MkParseDisplayNameEx(IBindCtx*,LPCWSTR,ULONG*,IMoniker**);
4626HRESULT WINAPI IsAsyncMoniker(IMoniker* pmk);
4627HRESULT WINAPI CreateAsyncBindCtx(DWORD, IBindStatusCallback*, IEnumFORMATETC*, IBindCtx**);
4628HRESULT WINAPI CreateAsyncBindCtxEx(IBindCtx*,DWORD,IBindStatusCallback*,IEnumFORMATETC*,IBindCtx**,DWORD);
4629HRESULT WINAPI CoInternetCreateSecurityManager(IServiceProvider*,IInternetSecurityManager**,DWORD);
4630HRESULT WINAPI CoInternetCombineUrl(LPCWSTR,LPCWSTR,DWORD,LPWSTR,DWORD,DWORD*,DWORD);
4631HRESULT WINAPI CoInternetCompareUrl(LPCWSTR,LPCWSTR,DWORD);
4632HRESULT WINAPI CoInternetCreateZoneManager(IServiceProvider*, IInternetZoneManager**, DWORD);
4633HRESULT WINAPI CoInternetParseUrl(LPCWSTR,PARSEACTION,DWORD,LPWSTR,DWORD,DWORD*,DWORD);
4634HRESULT WINAPI CoInternetQueryInfo(LPCWSTR,QUERYOPTION,DWORD,LPVOID,DWORD,DWORD*,DWORD);
4635HRESULT WINAPI CoInternetSetFeatureEnabled(INTERNETFEATURELIST,DWORD,BOOL);
4636HRESULT WINAPI CreateFormatEnumerator(UINT,FORMATETC*,IEnumFORMATETC**);
4637HRESULT WINAPI GetSoftwareUpdateInfo( LPCWSTR szDistUnit, LPSOFTDISTINFO psdi);
4638HRESULT WINAPI FaultInIEFeature(HWND,uCLSSPEC*,QUERYCONTEXT*,DWORD);
4639HRESULT WINAPI FindMimeFromData(LPBC,LPCWSTR,LPVOID,DWORD,LPCWSTR,DWORD,LPWSTR*,DWORD);
4640HRESULT WINAPI GetClassFileOrMime(LPBC,LPCWSTR,LPVOID,DWORD,LPCWSTR,DWORD,CLSID*);
4641HRESULT WINAPI HlinkGoBack(IUnknown*);
4642HRESULT WINAPI HlinkGoForward(IUnknown*);
4643HRESULT WINAPI HlinkNavigateMoniker(IUnknown*,IMoniker*);
4644HRESULT WINAPI HlinkNavigateString(IUnknown*,LPCWSTR);
4645HRESULT WINAPI HlinkSimpleNavigateToMoniker(IMoniker*,LPCWSTR,LPCWSTR,IUnknown*,IBindCtx*,IBindStatusCallback*,DWORD,DWORD);
4646HRESULT WINAPI HlinkSimpleNavigateToString(LPCWSTR,LPCWSTR,LPCWSTR,IUnknown*,IBindCtx*,IBindStatusCallback*,DWORD,DWORD);
4647HRESULT WINAPI IsValidURL(LPBC,LPCWSTR,DWORD);
4648HRESULT WINAPI ObtainUserAgentString(DWORD,LPSTR,DWORD*);
4649HRESULT WINAPI RegisterFormatEnumerator(LPBC,IEnumFORMATETC*,DWORD);
4650HRESULT WINAPI RevokeFormatEnumerator(LPBC,IEnumFORMATETC*);
4651HRESULT WINAPI RevokeBindStatusCallback(LPBC,IBindStatusCallback*);
4652HRESULT WINAPI CopyStgMedium(const STGMEDIUM*,STGMEDIUM*);
4653void WINAPI ReleaseBindInfo(BINDINFO*);
4654HRESULT WINAPI UrlMkGetSessionOption(DWORD,LPVOID,DWORD,DWORD*,DWORD);
4655HRESULT WINAPI UrlMkSetSessionOption(DWORD,LPVOID,DWORD,DWORD);
4656HRESULT WINAPI URLOpenStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
4657HRESULT WINAPI URLOpenStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
4658HRESULT WINAPI URLOpenPullStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
4659HRESULT WINAPI URLOpenPullStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
4660HRESULT WINAPI URLOpenBlockingStreamA(LPUNKNOWN,LPCSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);
4661HRESULT WINAPI URLOpenBlockingStreamW(LPUNKNOWN,LPCWSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);
4662#define OInetCombineUrl CoInternetCombineUrl
4663#define OInetCompareUrl CoInternetCompareUrl
4664#define OInetGetSession CoInternetGetSession
4665BOOL WINAPI IsLoggingEnabledA(LPCSTR);
4666BOOL WINAPI IsLoggingEnabledW(LPCWSTR);
4667#define IsLoggingEnabled WINELIB_NAME_AW(IsLoggingEnabled)
4668#define MKSYS_URLMONIKER 6
4669#define URL_MK_LEGACY 0
4670#define URL_MK_UNIFORM 1
4671/* Begin additional prototypes for all interfaces */
4672
4673ULONG __RPC_USER STGMEDIUM_UserSize (ULONG *, ULONG, STGMEDIUM *);
4674unsigned char * __RPC_USER STGMEDIUM_UserMarshal (ULONG *, unsigned char *, STGMEDIUM *);
4675unsigned char * __RPC_USER STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
4676void __RPC_USER STGMEDIUM_UserFree (ULONG *, STGMEDIUM *);
4677ULONG __RPC_USER CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
4678unsigned char * __RPC_USER CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
4679unsigned char * __RPC_USER CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
4680void __RPC_USER CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
4681
4682/* End additional prototypes */
4683
4684#ifdef __cplusplus
4685}
4686#endif
4687
4688#endif /* __WIDL_URLMON_H */
Note: See TracBrowser for help on using the repository browser.

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