1 /*** Autogenerated by WIDL 0.1 from urlmon.idl - Do not edit ***/
5 #ifndef __WIDL_URLMON_H
6 #define __WIDL_URLMON_H
13 #ifndef __IBinding_FWD_DEFINED__
14 #define __IBinding_FWD_DEFINED__
15 typedef struct IBinding IBinding
;
18 typedef IBinding
*LPBINDING
;
20 /*****************************************************************************
23 #ifndef __IBinding_INTERFACE_DEFINED__
24 #define __IBinding_INTERFACE_DEFINED__
26 DEFINE_GUID(IID_IBinding
, 0x79eac9c0, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
27 #if defined(__cplusplus) && !defined(CINTERFACE)
28 struct IBinding
: public IUnknown
30 virtual HRESULT STDMETHODCALLTYPE
Abort(
33 virtual HRESULT STDMETHODCALLTYPE
Suspend(
36 virtual HRESULT STDMETHODCALLTYPE
Resume(
39 virtual HRESULT STDMETHODCALLTYPE
SetPriority(
42 virtual HRESULT STDMETHODCALLTYPE
GetPriority(
43 LONG
* pnPriority
) = 0;
45 virtual HRESULT STDMETHODCALLTYPE
GetBindResult(
46 CLSID
* pclsidProtocol
,
49 DWORD
* pdwReserved
) = 0;
53 typedef struct IBindingVtbl IBindingVtbl
;
55 const IBindingVtbl
* lpVtbl
;
58 ICOM_MSVTABLE_COMPAT_FIELDS
60 /*** IUnknown methods ***/
61 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
66 ULONG (STDMETHODCALLTYPE
*AddRef
)(
69 ULONG (STDMETHODCALLTYPE
*Release
)(
72 /*** IBinding methods ***/
73 HRESULT (STDMETHODCALLTYPE
*Abort
)(
76 HRESULT (STDMETHODCALLTYPE
*Suspend
)(
79 HRESULT (STDMETHODCALLTYPE
*Resume
)(
82 HRESULT (STDMETHODCALLTYPE
*SetPriority
)(
86 HRESULT (STDMETHODCALLTYPE
*GetPriority
)(
90 HRESULT (STDMETHODCALLTYPE
*GetBindResult
)(
92 CLSID
* pclsidProtocol
,
99 /*** IUnknown methods ***/
100 #define IBinding_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
101 #define IBinding_AddRef(p) (p)->lpVtbl->AddRef(p)
102 #define IBinding_Release(p) (p)->lpVtbl->Release(p)
103 /*** IBinding methods ***/
104 #define IBinding_Abort(p) (p)->lpVtbl->Abort(p)
105 #define IBinding_Suspend(p) (p)->lpVtbl->Suspend(p)
106 #define IBinding_Resume(p) (p)->lpVtbl->Resume(p)
107 #define IBinding_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a)
108 #define IBinding_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
109 #define IBinding_GetBindResult(p,a,b,c,d) (p)->lpVtbl->GetBindResult(p,a,b,c,d)
113 #define IBinding_METHODS \
114 ICOM_MSVTABLE_COMPAT_FIELDS \
115 /*** IUnknown methods ***/ \
116 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
117 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
118 STDMETHOD_(ULONG,Release)(THIS) PURE; \
119 /*** IBinding methods ***/ \
120 STDMETHOD_(HRESULT,Abort)(THIS) PURE; \
121 STDMETHOD_(HRESULT,Suspend)(THIS) PURE; \
122 STDMETHOD_(HRESULT,Resume)(THIS) PURE; \
123 STDMETHOD_(HRESULT,SetPriority)(THIS_ LONG nPriority) PURE; \
124 STDMETHOD_(HRESULT,GetPriority)(THIS_ LONG* pnPriority) PURE; \
125 STDMETHOD_(HRESULT,GetBindResult)(THIS_ CLSID* pclsidProtocol, DWORD* pdwResult, LPOLESTR* pszResult, DWORD* pdwReserved) PURE;
127 HRESULT CALLBACK
IBinding_Abort_Proxy(
129 void __RPC_STUB
IBinding_Abort_Stub(
130 struct IRpcStubBuffer
* This
,
131 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
132 PRPC_MESSAGE pRpcMessage
,
133 DWORD
* pdwStubPhase
);
134 HRESULT CALLBACK
IBinding_Suspend_Proxy(
136 void __RPC_STUB
IBinding_Suspend_Stub(
137 struct IRpcStubBuffer
* This
,
138 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
139 PRPC_MESSAGE pRpcMessage
,
140 DWORD
* pdwStubPhase
);
141 HRESULT CALLBACK
IBinding_Resume_Proxy(
143 void __RPC_STUB
IBinding_Resume_Stub(
144 struct IRpcStubBuffer
* This
,
145 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
146 PRPC_MESSAGE pRpcMessage
,
147 DWORD
* pdwStubPhase
);
148 HRESULT CALLBACK
IBinding_SetPriority_Proxy(
151 void __RPC_STUB
IBinding_SetPriority_Stub(
152 struct IRpcStubBuffer
* This
,
153 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
154 PRPC_MESSAGE pRpcMessage
,
155 DWORD
* pdwStubPhase
);
156 HRESULT CALLBACK
IBinding_GetPriority_Proxy(
159 void __RPC_STUB
IBinding_GetPriority_Stub(
160 struct IRpcStubBuffer
* This
,
161 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
162 PRPC_MESSAGE pRpcMessage
,
163 DWORD
* pdwStubPhase
);
164 HRESULT CALLBACK
IBinding_RemoteGetBindResult_Proxy(
166 CLSID
* pclsidProtocol
,
170 void __RPC_STUB
IBinding_RemoteGetBindResult_Stub(
171 struct IRpcStubBuffer
* This
,
172 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
173 PRPC_MESSAGE pRpcMessage
,
174 DWORD
* pdwStubPhase
);
175 HRESULT CALLBACK
IBinding_GetBindResult_Proxy(
177 CLSID
* pclsidProtocol
,
181 HRESULT __RPC_STUB
IBinding_GetBindResult_Stub(
183 CLSID
* pclsidProtocol
,
188 #endif /* __IBinding_INTERFACE_DEFINED__ */
190 #ifndef __IBindStatusCallback_FWD_DEFINED__
191 #define __IBindStatusCallback_FWD_DEFINED__
192 typedef struct IBindStatusCallback IBindStatusCallback
;
195 typedef IBindStatusCallback
*LPBINDSTATUSCALLBACK
;
198 BINDF_ASYNCHRONOUS
= 0x1,
199 BINDF_ASYNCSTORAGE
= 0x2,
200 BINDF_NOPROGRESSIVERENDERING
= 0x4,
201 BINDF_OFFLINEOPERATION
= 0x8,
202 BINDF_GETNEWESTVERSION
= 0x10,
203 BINDF_NOWRITECACHE
= 0x20,
204 BINDF_NEEDFILE
= 0x40,
205 BINDF_PULLDATA
= 0x80,
206 BINDF_IGNORESECURITYPROBLEM
= 0x100,
207 BINDF_RESYNCHRONIZE
= 0x200,
208 BINDF_HYPERLINK
= 0x400,
210 BINDF_SILENTOPERATION
= 0x1000,
211 BINDF_PRAGMA_NO_CACHE
= 0x2000,
212 BINDF_GETCLASSOBJECT
= 0x4000,
213 BINDF_RESERVED_1
= 0x8000,
214 BINDF_FREE_THREADED
= 0x10000,
215 BINDF_DIRECT_READ
= 0x20000,
216 BINDF_FORMS_SUBMIT
= 0x40000,
217 BINDF_GETFROMCACHE_IF_NET_FAIL
= 0x80000,
218 BINDF_FROMURLMON
= 0x100000,
219 BINDF_FWD_BACK
= 0x200000,
220 BINDF_PREFERDEFAULTHANDLER
= 0x400000,
221 BINDF_ENFORCERESTRICTED
= 0x800000
224 typedef struct _tagBINDINFO
{
227 STGMEDIUM stgmedData
;
233 DWORD dwOptionsFlags
;
235 SECURITY_ATTRIBUTES securityAttributes
;
241 typedef struct _REMSECURITY_ATTRIBUTES
{
243 DWORD lpSecurityDescriptor
;
245 } REMSECURITY_ATTRIBUTES
, *PREMSECURITY_ATTRIBUTES
, *LPREMSECURITY_ATTRIBUTES
;
247 typedef struct _tagRemBINDINFO
{
255 DWORD dwOptionsFlags
;
257 REMSECURITY_ATTRIBUTES securityAttributes
;
263 typedef struct tagRemFORMATETC
{
269 } RemFORMATETC
, *LPREMFORMATETC
;
272 BSCF_FIRSTDATANOTIFICATION
= 0x1,
273 BSCF_INTERMEDIATEDATANOTIFICATION
= 0x2,
274 BSCF_LASTDATANOTIFICATION
= 0x4,
275 BSCF_DATAFULLYAVAILABLE
= 0x8,
276 BSCF_AVAILABLEDATASIZEUNKNOWN
= 0x10
279 typedef enum BINDSTATUS
{
280 BINDSTATUS_FINDINGRESOURCE
= 1,
281 BINDSTATUS_CONNECTING
,
282 BINDSTATUS_REDIRECTING
,
283 BINDSTATUS_BEGINDOWNLOADDATA
,
284 BINDSTATUS_DOWNLOADINGDATA
,
285 BINDSTATUS_ENDDOWNLOADDATA
,
286 BINDSTATUS_BEGINDOWNLOADCOMPONENTS
,
287 BINDSTATUS_INSTALLINGCOMPONENTS
,
288 BINDSTATUS_ENDDOWNLOADCOMPONENTS
,
289 BINDSTATUS_USINGCACHEDCOPY
,
290 BINDSTATUS_SENDINGREQUEST
,
291 BINDSTATUS_CLASSIDAVAILABLE
,
292 BINDSTATUS_MIMETYPEAVAILABLE
,
293 BINDSTATUS_CACHEFILENAMEAVAILABLE
,
294 BINDSTATUS_BEGINSYNCOPERATION
,
295 BINDSTATUS_ENDSYNCOPERATION
,
296 BINDSTATUS_BEGINUPLOADDATA
,
297 BINDSTATUS_UPLOADINGDATA
,
298 BINDSTATUS_ENDUPLOADINGDATA
,
299 BINDSTATUS_PROTOCOLCLASSID
,
301 BINDSTATUS_VERFIEDMIMETYPEAVAILABLE
,
302 BINDSTATUS_CLASSINSTALLLOCATION
,
304 BINDSTATUS_LOADINGMIMEHANDLER
,
305 BINDSTATUS_CONTENTDISPOSITIONATTACH
,
306 BINDSTATUS_FILTERREPORTMIMETYPE
,
307 BINDSTATUS_CLSIDCANINSTANTIATE
,
308 BINDSTATUS_IUNKNOWNAVAILABLE
,
309 BINDSTATUS_DIRECTBIND
,
310 BINDSTATUS_RAWMIMETYPE
,
311 BINDSTATUS_PROXYDETECTING
,
312 BINDSTATUS_ACCEPTRANGES
,
313 BINDSTATUS_COOKIE_SENT
,
314 BINDSTATUS_COMPACT_POLICY_RECEIVED
,
315 BINDSTATUS_COOKIE_SUPPRESSED
,
316 BINDSTATUS_COOKIE_STATE_UNKNOWN
,
317 BINDSTATUS_COOKIE_STATE_ACCEPT
,
318 BINDSTATUS_COOKIE_STATE_REJECT
,
319 BINDSTATUS_COOKIE_STATE_PROMPT
,
320 BINDSTATUS_COOKIE_STATE_LEASH
,
321 BINDSTATUS_COOKIE_STATE_DOWNGRADE
,
322 BINDSTATUS_POLICY_HREF
,
323 BINDSTATUS_P3P_HEADER
,
324 BINDSTATUS_SESSION_COOKIE_RECEIVED
,
325 BINDSTATUS_PERSISTENT_COOKIE_RECEIVED
,
326 BINDSTATUS_SESSION_COOKIES_ALLOWED
,
327 BINDSTATUS_CACHECONTROL
330 /*****************************************************************************
331 * IBindStatusCallback interface
333 #ifndef __IBindStatusCallback_INTERFACE_DEFINED__
334 #define __IBindStatusCallback_INTERFACE_DEFINED__
336 DEFINE_GUID(IID_IBindStatusCallback
, 0x79eac9c1, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
337 #if defined(__cplusplus) && !defined(CINTERFACE)
338 struct IBindStatusCallback
: public IUnknown
340 virtual HRESULT STDMETHODCALLTYPE
OnStartBinding(
344 virtual HRESULT STDMETHODCALLTYPE
GetPriority(
345 LONG
* pnPriority
) = 0;
347 virtual HRESULT STDMETHODCALLTYPE
OnLowResource(
350 virtual HRESULT STDMETHODCALLTYPE
OnProgress(
354 LPCWSTR szStatusText
) = 0;
356 virtual HRESULT STDMETHODCALLTYPE
OnStopBinding(
358 LPCWSTR szError
) = 0;
360 virtual HRESULT STDMETHODCALLTYPE
GetBindInfo(
362 BINDINFO
* pbindinfo
) = 0;
364 virtual HRESULT STDMETHODCALLTYPE
OnDataAvailable(
367 FORMATETC
* pformatetc
,
368 STGMEDIUM
* pstgmed
) = 0;
370 virtual HRESULT STDMETHODCALLTYPE
OnObjectAvailable(
376 typedef struct IBindStatusCallbackVtbl IBindStatusCallbackVtbl
;
377 struct IBindStatusCallback
{
378 const IBindStatusCallbackVtbl
* lpVtbl
;
380 struct IBindStatusCallbackVtbl
{
381 ICOM_MSVTABLE_COMPAT_FIELDS
383 /*** IUnknown methods ***/
384 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
385 IBindStatusCallback
* This
,
389 ULONG (STDMETHODCALLTYPE
*AddRef
)(
390 IBindStatusCallback
* This
);
392 ULONG (STDMETHODCALLTYPE
*Release
)(
393 IBindStatusCallback
* This
);
395 /*** IBindStatusCallback methods ***/
396 HRESULT (STDMETHODCALLTYPE
*OnStartBinding
)(
397 IBindStatusCallback
* This
,
401 HRESULT (STDMETHODCALLTYPE
*GetPriority
)(
402 IBindStatusCallback
* This
,
405 HRESULT (STDMETHODCALLTYPE
*OnLowResource
)(
406 IBindStatusCallback
* This
,
409 HRESULT (STDMETHODCALLTYPE
*OnProgress
)(
410 IBindStatusCallback
* This
,
414 LPCWSTR szStatusText
);
416 HRESULT (STDMETHODCALLTYPE
*OnStopBinding
)(
417 IBindStatusCallback
* This
,
421 HRESULT (STDMETHODCALLTYPE
*GetBindInfo
)(
422 IBindStatusCallback
* This
,
424 BINDINFO
* pbindinfo
);
426 HRESULT (STDMETHODCALLTYPE
*OnDataAvailable
)(
427 IBindStatusCallback
* This
,
430 FORMATETC
* pformatetc
,
433 HRESULT (STDMETHODCALLTYPE
*OnObjectAvailable
)(
434 IBindStatusCallback
* This
,
440 /*** IUnknown methods ***/
441 #define IBindStatusCallback_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
442 #define IBindStatusCallback_AddRef(p) (p)->lpVtbl->AddRef(p)
443 #define IBindStatusCallback_Release(p) (p)->lpVtbl->Release(p)
444 /*** IBindStatusCallback methods ***/
445 #define IBindStatusCallback_OnStartBinding(p,a,b) (p)->lpVtbl->OnStartBinding(p,a,b)
446 #define IBindStatusCallback_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
447 #define IBindStatusCallback_OnLowResource(p,a) (p)->lpVtbl->OnLowResource(p,a)
448 #define IBindStatusCallback_OnProgress(p,a,b,c,d) (p)->lpVtbl->OnProgress(p,a,b,c,d)
449 #define IBindStatusCallback_OnStopBinding(p,a,b) (p)->lpVtbl->OnStopBinding(p,a,b)
450 #define IBindStatusCallback_GetBindInfo(p,a,b) (p)->lpVtbl->GetBindInfo(p,a,b)
451 #define IBindStatusCallback_OnDataAvailable(p,a,b,c,d) (p)->lpVtbl->OnDataAvailable(p,a,b,c,d)
452 #define IBindStatusCallback_OnObjectAvailable(p,a,b) (p)->lpVtbl->OnObjectAvailable(p,a,b)
456 #define IBindStatusCallback_METHODS \
457 ICOM_MSVTABLE_COMPAT_FIELDS \
458 /*** IUnknown methods ***/ \
459 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
460 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
461 STDMETHOD_(ULONG,Release)(THIS) PURE; \
462 /*** IBindStatusCallback methods ***/ \
463 STDMETHOD_(HRESULT,OnStartBinding)(THIS_ DWORD dwReserved, IBinding* pib) PURE; \
464 STDMETHOD_(HRESULT,GetPriority)(THIS_ LONG* pnPriority) PURE; \
465 STDMETHOD_(HRESULT,OnLowResource)(THIS_ DWORD reserved) PURE; \
466 STDMETHOD_(HRESULT,OnProgress)(THIS_ ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText) PURE; \
467 STDMETHOD_(HRESULT,OnStopBinding)(THIS_ HRESULT hresult, LPCWSTR szError) PURE; \
468 STDMETHOD_(HRESULT,GetBindInfo)(THIS_ DWORD* grfBINDF, BINDINFO* pbindinfo) PURE; \
469 STDMETHOD_(HRESULT,OnDataAvailable)(THIS_ DWORD grfBSCF, DWORD dwSize, FORMATETC* pformatetc, STGMEDIUM* pstgmed) PURE; \
470 STDMETHOD_(HRESULT,OnObjectAvailable)(THIS_ REFIID riid, IUnknown* punk) PURE;
472 HRESULT CALLBACK
IBindStatusCallback_OnStartBinding_Proxy(
473 IBindStatusCallback
* This
,
476 void __RPC_STUB
IBindStatusCallback_OnStartBinding_Stub(
477 struct IRpcStubBuffer
* This
,
478 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
479 PRPC_MESSAGE pRpcMessage
,
480 DWORD
* pdwStubPhase
);
481 HRESULT CALLBACK
IBindStatusCallback_GetPriority_Proxy(
482 IBindStatusCallback
* This
,
484 void __RPC_STUB
IBindStatusCallback_GetPriority_Stub(
485 struct IRpcStubBuffer
* This
,
486 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
487 PRPC_MESSAGE pRpcMessage
,
488 DWORD
* pdwStubPhase
);
489 HRESULT CALLBACK
IBindStatusCallback_OnLowResource_Proxy(
490 IBindStatusCallback
* This
,
492 void __RPC_STUB
IBindStatusCallback_OnLowResource_Stub(
493 struct IRpcStubBuffer
* This
,
494 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
495 PRPC_MESSAGE pRpcMessage
,
496 DWORD
* pdwStubPhase
);
497 HRESULT CALLBACK
IBindStatusCallback_OnProgress_Proxy(
498 IBindStatusCallback
* This
,
502 LPCWSTR szStatusText
);
503 void __RPC_STUB
IBindStatusCallback_OnProgress_Stub(
504 struct IRpcStubBuffer
* This
,
505 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
506 PRPC_MESSAGE pRpcMessage
,
507 DWORD
* pdwStubPhase
);
508 HRESULT CALLBACK
IBindStatusCallback_OnStopBinding_Proxy(
509 IBindStatusCallback
* This
,
512 void __RPC_STUB
IBindStatusCallback_OnStopBinding_Stub(
513 struct IRpcStubBuffer
* This
,
514 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
515 PRPC_MESSAGE pRpcMessage
,
516 DWORD
* pdwStubPhase
);
517 HRESULT CALLBACK
IBindStatusCallback_RemoteGetBindInfo_Proxy(
518 IBindStatusCallback
* This
,
520 RemBINDINFO
* pbindinfo
,
521 RemSTGMEDIUM
* pstgmed
);
522 void __RPC_STUB
IBindStatusCallback_RemoteGetBindInfo_Stub(
523 struct IRpcStubBuffer
* This
,
524 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
525 PRPC_MESSAGE pRpcMessage
,
526 DWORD
* pdwStubPhase
);
527 HRESULT CALLBACK
IBindStatusCallback_GetBindInfo_Proxy(
528 IBindStatusCallback
* This
,
530 BINDINFO
* pbindinfo
);
531 HRESULT __RPC_STUB
IBindStatusCallback_GetBindInfo_Stub(
532 IBindStatusCallback
* This
,
534 RemBINDINFO
* pbindinfo
,
535 RemSTGMEDIUM
* pstgmed
);
536 HRESULT CALLBACK
IBindStatusCallback_RemoteOnDataAvailable_Proxy(
537 IBindStatusCallback
* This
,
540 RemFORMATETC
* pformatetc
,
541 RemSTGMEDIUM
* pstgmed
);
542 void __RPC_STUB
IBindStatusCallback_RemoteOnDataAvailable_Stub(
543 struct IRpcStubBuffer
* This
,
544 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
545 PRPC_MESSAGE pRpcMessage
,
546 DWORD
* pdwStubPhase
);
547 HRESULT CALLBACK
IBindStatusCallback_OnDataAvailable_Proxy(
548 IBindStatusCallback
* This
,
551 FORMATETC
* pformatetc
,
553 HRESULT __RPC_STUB
IBindStatusCallback_OnDataAvailable_Stub(
554 IBindStatusCallback
* This
,
557 RemFORMATETC
* pformatetc
,
558 RemSTGMEDIUM
* pstgmed
);
559 HRESULT CALLBACK
IBindStatusCallback_OnObjectAvailable_Proxy(
560 IBindStatusCallback
* This
,
563 void __RPC_STUB
IBindStatusCallback_OnObjectAvailable_Stub(
564 struct IRpcStubBuffer
* This
,
565 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
566 PRPC_MESSAGE pRpcMessage
,
567 DWORD
* pdwStubPhase
);
569 #endif /* __IBindStatusCallback_INTERFACE_DEFINED__ */
571 #define SID_IBindHost IID_IBindHost
572 #define SID_SBindHost IID_IBindHost
573 #ifndef __IBindHost_FWD_DEFINED__
574 #define __IBindHost_FWD_DEFINED__
575 typedef struct IBindHost IBindHost
;
578 typedef IBindHost
*LPBINDHOST
;
580 /*****************************************************************************
581 * IBindHost interface
583 #ifndef __IBindHost_INTERFACE_DEFINED__
584 #define __IBindHost_INTERFACE_DEFINED__
586 DEFINE_GUID(IID_IBindHost
, 0xfc4801a1, 0x2ba9, 0x11cf, 0xa2,0x29, 0x00,0xaa,0x00,0x3d,0x73,0x52);
587 #if defined(__cplusplus) && !defined(CINTERFACE)
588 struct IBindHost
: public IUnknown
590 virtual HRESULT STDMETHODCALLTYPE
CreateMoniker(
594 DWORD dwReserved
) = 0;
596 virtual HRESULT STDMETHODCALLTYPE
MonikerBindToStorage(
599 IBindStatusCallback
* pBSC
,
603 virtual HRESULT STDMETHODCALLTYPE
MonikerBindToObject(
606 IBindStatusCallback
* pBSC
,
612 typedef struct IBindHostVtbl IBindHostVtbl
;
614 const IBindHostVtbl
* lpVtbl
;
616 struct IBindHostVtbl
{
617 ICOM_MSVTABLE_COMPAT_FIELDS
619 /*** IUnknown methods ***/
620 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
625 ULONG (STDMETHODCALLTYPE
*AddRef
)(
628 ULONG (STDMETHODCALLTYPE
*Release
)(
631 /*** IBindHost methods ***/
632 HRESULT (STDMETHODCALLTYPE
*CreateMoniker
)(
639 HRESULT (STDMETHODCALLTYPE
*MonikerBindToStorage
)(
643 IBindStatusCallback
* pBSC
,
647 HRESULT (STDMETHODCALLTYPE
*MonikerBindToObject
)(
651 IBindStatusCallback
* pBSC
,
657 /*** IUnknown methods ***/
658 #define IBindHost_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
659 #define IBindHost_AddRef(p) (p)->lpVtbl->AddRef(p)
660 #define IBindHost_Release(p) (p)->lpVtbl->Release(p)
661 /*** IBindHost methods ***/
662 #define IBindHost_CreateMoniker(p,a,b,c,d) (p)->lpVtbl->CreateMoniker(p,a,b,c,d)
663 #define IBindHost_MonikerBindToStorage(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToStorage(p,a,b,c,d,e)
664 #define IBindHost_MonikerBindToObject(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToObject(p,a,b,c,d,e)
668 #define IBindHost_METHODS \
669 ICOM_MSVTABLE_COMPAT_FIELDS \
670 /*** IUnknown methods ***/ \
671 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
672 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
673 STDMETHOD_(ULONG,Release)(THIS) PURE; \
674 /*** IBindHost methods ***/ \
675 STDMETHOD_(HRESULT,CreateMoniker)(THIS_ LPOLESTR szName, IBindCtx* pBC, IMoniker** ppmk, DWORD dwReserved) PURE; \
676 STDMETHOD_(HRESULT,MonikerBindToStorage)(THIS_ IMoniker* pMk, IBindCtx* pBC, IBindStatusCallback* pBSC, REFIID riid, void** ppvObj) PURE; \
677 STDMETHOD_(HRESULT,MonikerBindToObject)(THIS_ IMoniker* pMk, IBindCtx* pBC, IBindStatusCallback* pBSC, REFIID riid, void** ppvObj) PURE;
679 HRESULT CALLBACK
IBindHost_CreateMoniker_Proxy(
685 void __RPC_STUB
IBindHost_CreateMoniker_Stub(
686 struct IRpcStubBuffer
* This
,
687 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
688 PRPC_MESSAGE pRpcMessage
,
689 DWORD
* pdwStubPhase
);
690 HRESULT CALLBACK
IBindHost_RemoteMonikerBindToStorage_Proxy(
694 IBindStatusCallback
* pBSC
,
697 void __RPC_STUB
IBindHost_RemoteMonikerBindToStorage_Stub(
698 struct IRpcStubBuffer
* This
,
699 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
700 PRPC_MESSAGE pRpcMessage
,
701 DWORD
* pdwStubPhase
);
702 HRESULT CALLBACK
IBindHost_MonikerBindToStorage_Proxy(
706 IBindStatusCallback
* pBSC
,
709 HRESULT __RPC_STUB
IBindHost_MonikerBindToStorage_Stub(
713 IBindStatusCallback
* pBSC
,
716 HRESULT CALLBACK
IBindHost_RemoteMonikerBindToObject_Proxy(
720 IBindStatusCallback
* pBSC
,
723 void __RPC_STUB
IBindHost_RemoteMonikerBindToObject_Stub(
724 struct IRpcStubBuffer
* This
,
725 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
726 PRPC_MESSAGE pRpcMessage
,
727 DWORD
* pdwStubPhase
);
728 HRESULT CALLBACK
IBindHost_MonikerBindToObject_Proxy(
732 IBindStatusCallback
* pBSC
,
735 HRESULT __RPC_STUB
IBindHost_MonikerBindToObject_Stub(
739 IBindStatusCallback
* pBSC
,
743 #endif /* __IBindHost_INTERFACE_DEFINED__ */
745 #ifndef __IWinInetInfo_FWD_DEFINED__
746 #define __IWinInetInfo_FWD_DEFINED__
747 typedef struct IWinInetInfo IWinInetInfo
;
750 typedef IWinInetInfo
*LPWININETINFO
;
752 /*****************************************************************************
753 * IWinInetInfo interface
755 #ifndef __IWinInetInfo_INTERFACE_DEFINED__
756 #define __IWinInetInfo_INTERFACE_DEFINED__
758 DEFINE_GUID(IID_IWinInetInfo
, 0x79eac9d6, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
759 #if defined(__cplusplus) && !defined(CINTERFACE)
760 struct IWinInetInfo
: public IUnknown
762 virtual HRESULT STDMETHODCALLTYPE
QueryOption(
769 typedef struct IWinInetInfoVtbl IWinInetInfoVtbl
;
770 struct IWinInetInfo
{
771 const IWinInetInfoVtbl
* lpVtbl
;
773 struct IWinInetInfoVtbl
{
774 ICOM_MSVTABLE_COMPAT_FIELDS
776 /*** IUnknown methods ***/
777 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
782 ULONG (STDMETHODCALLTYPE
*AddRef
)(
785 ULONG (STDMETHODCALLTYPE
*Release
)(
788 /*** IWinInetInfo methods ***/
789 HRESULT (STDMETHODCALLTYPE
*QueryOption
)(
797 /*** IUnknown methods ***/
798 #define IWinInetInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
799 #define IWinInetInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
800 #define IWinInetInfo_Release(p) (p)->lpVtbl->Release(p)
801 /*** IWinInetInfo methods ***/
802 #define IWinInetInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
806 #define IWinInetInfo_METHODS \
807 ICOM_MSVTABLE_COMPAT_FIELDS \
808 /*** IUnknown methods ***/ \
809 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
810 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
811 STDMETHOD_(ULONG,Release)(THIS) PURE; \
812 /*** IWinInetInfo methods ***/ \
813 STDMETHOD_(HRESULT,QueryOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD* pcbBuf) PURE;
815 HRESULT CALLBACK
IWinInetInfo_RemoteQueryOption_Proxy(
820 void __RPC_STUB
IWinInetInfo_RemoteQueryOption_Stub(
821 struct IRpcStubBuffer
* This
,
822 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
823 PRPC_MESSAGE pRpcMessage
,
824 DWORD
* pdwStubPhase
);
825 HRESULT CALLBACK
IWinInetInfo_QueryOption_Proxy(
830 HRESULT __RPC_STUB
IWinInetInfo_QueryOption_Stub(
836 #endif /* __IWinInetInfo_INTERFACE_DEFINED__ */
838 #ifndef __IWinInetHttpInfo_FWD_DEFINED__
839 #define __IWinInetHttpInfo_FWD_DEFINED__
840 typedef struct IWinInetHttpInfo IWinInetHttpInfo
;
843 typedef IWinInetHttpInfo
*LPWININETHTTPINFO
;
845 /*****************************************************************************
846 * IWinInetHttpInfo interface
848 #ifndef __IWinInetHttpInfo_INTERFACE_DEFINED__
849 #define __IWinInetHttpInfo_INTERFACE_DEFINED__
851 DEFINE_GUID(IID_IWinInetHttpInfo
, 0x79eac9d8, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
852 #if defined(__cplusplus) && !defined(CINTERFACE)
853 struct IWinInetHttpInfo
: public IWinInetInfo
855 virtual HRESULT STDMETHODCALLTYPE
QueryInfo(
860 DWORD
* pdwReserved
) = 0;
864 typedef struct IWinInetHttpInfoVtbl IWinInetHttpInfoVtbl
;
865 struct IWinInetHttpInfo
{
866 const IWinInetHttpInfoVtbl
* lpVtbl
;
868 struct IWinInetHttpInfoVtbl
{
869 ICOM_MSVTABLE_COMPAT_FIELDS
871 /*** IUnknown methods ***/
872 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
873 IWinInetHttpInfo
* This
,
877 ULONG (STDMETHODCALLTYPE
*AddRef
)(
878 IWinInetHttpInfo
* This
);
880 ULONG (STDMETHODCALLTYPE
*Release
)(
881 IWinInetHttpInfo
* This
);
883 /*** IWinInetInfo methods ***/
884 HRESULT (STDMETHODCALLTYPE
*QueryOption
)(
885 IWinInetHttpInfo
* This
,
890 /*** IWinInetHttpInfo methods ***/
891 HRESULT (STDMETHODCALLTYPE
*QueryInfo
)(
892 IWinInetHttpInfo
* This
,
901 /*** IUnknown methods ***/
902 #define IWinInetHttpInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
903 #define IWinInetHttpInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
904 #define IWinInetHttpInfo_Release(p) (p)->lpVtbl->Release(p)
905 /*** IWinInetInfo methods ***/
906 #define IWinInetHttpInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
907 /*** IWinInetHttpInfo methods ***/
908 #define IWinInetHttpInfo_QueryInfo(p,a,b,c,d,e) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e)
912 #define IWinInetHttpInfo_METHODS \
913 ICOM_MSVTABLE_COMPAT_FIELDS \
914 /*** IUnknown methods ***/ \
915 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
916 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
917 STDMETHOD_(ULONG,Release)(THIS) PURE; \
918 /*** IWinInetInfo methods ***/ \
919 STDMETHOD_(HRESULT,QueryOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD* pcbBuf) PURE; \
920 /*** IWinInetHttpInfo methods ***/ \
921 STDMETHOD_(HRESULT,QueryInfo)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD* pcbBuf, DWORD* pdwFlags, DWORD* pdwReserved) PURE;
923 HRESULT CALLBACK
IWinInetHttpInfo_RemoteQueryInfo_Proxy(
924 IWinInetHttpInfo
* This
,
930 void __RPC_STUB
IWinInetHttpInfo_RemoteQueryInfo_Stub(
931 struct IRpcStubBuffer
* This
,
932 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
933 PRPC_MESSAGE pRpcMessage
,
934 DWORD
* pdwStubPhase
);
935 HRESULT CALLBACK
IWinInetHttpInfo_QueryInfo_Proxy(
936 IWinInetHttpInfo
* This
,
942 HRESULT __RPC_STUB
IWinInetHttpInfo_QueryInfo_Stub(
943 IWinInetHttpInfo
* This
,
950 #endif /* __IWinInetHttpInfo_INTERFACE_DEFINED__ */
952 #ifndef __IPersistMoniker_FWD_DEFINED__
953 #define __IPersistMoniker_FWD_DEFINED__
954 typedef struct IPersistMoniker IPersistMoniker
;
957 typedef IPersistMoniker
*LPPERSISTMONIKER
;
959 /*****************************************************************************
960 * IPersistMoniker interface
962 #ifndef __IPersistMoniker_INTERFACE_DEFINED__
963 #define __IPersistMoniker_INTERFACE_DEFINED__
965 DEFINE_GUID(IID_IPersistMoniker
, 0x79eac9c9, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
966 #if defined(__cplusplus) && !defined(CINTERFACE)
967 struct IPersistMoniker
: public IUnknown
969 virtual HRESULT STDMETHODCALLTYPE
GetClassID(
970 CLSID
* pClassID
) = 0;
972 virtual HRESULT STDMETHODCALLTYPE
IsDirty(
975 virtual HRESULT STDMETHODCALLTYPE
Load(
976 BOOL fFullyAvailable
,
981 virtual HRESULT STDMETHODCALLTYPE
Save(
986 virtual HRESULT STDMETHODCALLTYPE
SaveCompleted(
990 virtual HRESULT STDMETHODCALLTYPE
GetCurMoniker(
991 IMoniker
** ppimkName
) = 0;
995 typedef struct IPersistMonikerVtbl IPersistMonikerVtbl
;
996 struct IPersistMoniker
{
997 const IPersistMonikerVtbl
* lpVtbl
;
999 struct IPersistMonikerVtbl
{
1000 ICOM_MSVTABLE_COMPAT_FIELDS
1002 /*** IUnknown methods ***/
1003 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1004 IPersistMoniker
* This
,
1008 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1009 IPersistMoniker
* This
);
1011 ULONG (STDMETHODCALLTYPE
*Release
)(
1012 IPersistMoniker
* This
);
1014 /*** IPersistMoniker methods ***/
1015 HRESULT (STDMETHODCALLTYPE
*GetClassID
)(
1016 IPersistMoniker
* This
,
1019 HRESULT (STDMETHODCALLTYPE
*IsDirty
)(
1020 IPersistMoniker
* This
);
1022 HRESULT (STDMETHODCALLTYPE
*Load
)(
1023 IPersistMoniker
* This
,
1024 BOOL fFullyAvailable
,
1029 HRESULT (STDMETHODCALLTYPE
*Save
)(
1030 IPersistMoniker
* This
,
1035 HRESULT (STDMETHODCALLTYPE
*SaveCompleted
)(
1036 IPersistMoniker
* This
,
1040 HRESULT (STDMETHODCALLTYPE
*GetCurMoniker
)(
1041 IPersistMoniker
* This
,
1042 IMoniker
** ppimkName
);
1046 /*** IUnknown methods ***/
1047 #define IPersistMoniker_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1048 #define IPersistMoniker_AddRef(p) (p)->lpVtbl->AddRef(p)
1049 #define IPersistMoniker_Release(p) (p)->lpVtbl->Release(p)
1050 /*** IPersistMoniker methods ***/
1051 #define IPersistMoniker_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
1052 #define IPersistMoniker_IsDirty(p) (p)->lpVtbl->IsDirty(p)
1053 #define IPersistMoniker_Load(p,a,b,c,d) (p)->lpVtbl->Load(p,a,b,c,d)
1054 #define IPersistMoniker_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c)
1055 #define IPersistMoniker_SaveCompleted(p,a,b) (p)->lpVtbl->SaveCompleted(p,a,b)
1056 #define IPersistMoniker_GetCurMoniker(p,a) (p)->lpVtbl->GetCurMoniker(p,a)
1060 #define IPersistMoniker_METHODS \
1061 ICOM_MSVTABLE_COMPAT_FIELDS \
1062 /*** IUnknown methods ***/ \
1063 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1064 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1065 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1066 /*** IPersistMoniker methods ***/ \
1067 STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \
1068 STDMETHOD_(HRESULT,IsDirty)(THIS) PURE; \
1069 STDMETHOD_(HRESULT,Load)(THIS_ BOOL fFullyAvailable, IMoniker* pimkName, LPBC pibc, DWORD grfMode) PURE; \
1070 STDMETHOD_(HRESULT,Save)(THIS_ IMoniker* pimkName, LPBC pbc, BOOL fRemember) PURE; \
1071 STDMETHOD_(HRESULT,SaveCompleted)(THIS_ IMoniker* pimkName, LPBC pibc) PURE; \
1072 STDMETHOD_(HRESULT,GetCurMoniker)(THIS_ IMoniker** ppimkName) PURE;
1074 HRESULT CALLBACK
IPersistMoniker_GetClassID_Proxy(
1075 IPersistMoniker
* This
,
1077 void __RPC_STUB
IPersistMoniker_GetClassID_Stub(
1078 struct IRpcStubBuffer
* This
,
1079 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1080 PRPC_MESSAGE pRpcMessage
,
1081 DWORD
* pdwStubPhase
);
1082 HRESULT CALLBACK
IPersistMoniker_IsDirty_Proxy(
1083 IPersistMoniker
* This
);
1084 void __RPC_STUB
IPersistMoniker_IsDirty_Stub(
1085 struct IRpcStubBuffer
* This
,
1086 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1087 PRPC_MESSAGE pRpcMessage
,
1088 DWORD
* pdwStubPhase
);
1089 HRESULT CALLBACK
IPersistMoniker_Load_Proxy(
1090 IPersistMoniker
* This
,
1091 BOOL fFullyAvailable
,
1095 void __RPC_STUB
IPersistMoniker_Load_Stub(
1096 struct IRpcStubBuffer
* This
,
1097 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1098 PRPC_MESSAGE pRpcMessage
,
1099 DWORD
* pdwStubPhase
);
1100 HRESULT CALLBACK
IPersistMoniker_Save_Proxy(
1101 IPersistMoniker
* This
,
1105 void __RPC_STUB
IPersistMoniker_Save_Stub(
1106 struct IRpcStubBuffer
* This
,
1107 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1108 PRPC_MESSAGE pRpcMessage
,
1109 DWORD
* pdwStubPhase
);
1110 HRESULT CALLBACK
IPersistMoniker_SaveCompleted_Proxy(
1111 IPersistMoniker
* This
,
1114 void __RPC_STUB
IPersistMoniker_SaveCompleted_Stub(
1115 struct IRpcStubBuffer
* This
,
1116 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1117 PRPC_MESSAGE pRpcMessage
,
1118 DWORD
* pdwStubPhase
);
1119 HRESULT CALLBACK
IPersistMoniker_GetCurMoniker_Proxy(
1120 IPersistMoniker
* This
,
1121 IMoniker
** ppimkName
);
1122 void __RPC_STUB
IPersistMoniker_GetCurMoniker_Stub(
1123 struct IRpcStubBuffer
* This
,
1124 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1125 PRPC_MESSAGE pRpcMessage
,
1126 DWORD
* pdwStubPhase
);
1128 #endif /* __IPersistMoniker_INTERFACE_DEFINED__ */
1130 #ifndef __IInternetProtocolInfo_FWD_DEFINED__
1131 #define __IInternetProtocolInfo_FWD_DEFINED__
1132 typedef struct IInternetProtocolInfo IInternetProtocolInfo
;
1135 typedef IInternetProtocolInfo
*LPIINTERNETPROTOCOLINFO
;
1137 typedef enum _tagPARSEACTION
{
1138 PARSE_CANONICALIZE
= 1,
1146 PARSE_PATH_FROM_URL
,
1147 PARSE_URL_FROM_PATH
,
1154 PARSE_SECURITY_DOMAIN
,
1159 typedef enum _tagPSUACTION
{
1161 PSU_SECURITY_URL_ONLY
1164 typedef enum _tagQUERYOPTION
{
1165 QUERY_EXPIRATION_DATE
= 1,
1166 QUERY_TIME_OF_LAST_CHANGE
,
1167 QUERY_CONTENT_ENCODING
,
1174 QUERY_IS_INSTALLEDENTRY
,
1175 QUERY_IS_CACHED_OR_MAPPED
,
1181 /*****************************************************************************
1182 * IInternetProtocolInfo interface
1184 #ifndef __IInternetProtocolInfo_INTERFACE_DEFINED__
1185 #define __IInternetProtocolInfo_INTERFACE_DEFINED__
1187 DEFINE_GUID(IID_IInternetProtocolInfo
, 0x79eac9ec, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1188 #if defined(__cplusplus) && !defined(CINTERFACE)
1189 struct IInternetProtocolInfo
: public IUnknown
1191 virtual HRESULT STDMETHODCALLTYPE
ParseUrl(
1193 PARSEACTION ParseAction
,
1198 DWORD dwReserved
) = 0;
1200 virtual HRESULT STDMETHODCALLTYPE
CombineUrl(
1202 LPCWSTR pwzRelativeUrl
,
1203 DWORD dwCombineFlags
,
1207 DWORD dwReserved
) = 0;
1209 virtual HRESULT STDMETHODCALLTYPE
CompareUrl(
1212 DWORD dwCompareFlags
) = 0;
1214 virtual HRESULT STDMETHODCALLTYPE
QueryInfo(
1216 QUERYOPTION OueryOption
,
1221 DWORD dwReserved
) = 0;
1225 typedef struct IInternetProtocolInfoVtbl IInternetProtocolInfoVtbl
;
1226 struct IInternetProtocolInfo
{
1227 const IInternetProtocolInfoVtbl
* lpVtbl
;
1229 struct IInternetProtocolInfoVtbl
{
1230 ICOM_MSVTABLE_COMPAT_FIELDS
1232 /*** IUnknown methods ***/
1233 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1234 IInternetProtocolInfo
* This
,
1238 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1239 IInternetProtocolInfo
* This
);
1241 ULONG (STDMETHODCALLTYPE
*Release
)(
1242 IInternetProtocolInfo
* This
);
1244 /*** IInternetProtocolInfo methods ***/
1245 HRESULT (STDMETHODCALLTYPE
*ParseUrl
)(
1246 IInternetProtocolInfo
* This
,
1248 PARSEACTION ParseAction
,
1255 HRESULT (STDMETHODCALLTYPE
*CombineUrl
)(
1256 IInternetProtocolInfo
* This
,
1258 LPCWSTR pwzRelativeUrl
,
1259 DWORD dwCombineFlags
,
1265 HRESULT (STDMETHODCALLTYPE
*CompareUrl
)(
1266 IInternetProtocolInfo
* This
,
1269 DWORD dwCompareFlags
);
1271 HRESULT (STDMETHODCALLTYPE
*QueryInfo
)(
1272 IInternetProtocolInfo
* This
,
1274 QUERYOPTION OueryOption
,
1283 /*** IUnknown methods ***/
1284 #define IInternetProtocolInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1285 #define IInternetProtocolInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
1286 #define IInternetProtocolInfo_Release(p) (p)->lpVtbl->Release(p)
1287 /*** IInternetProtocolInfo methods ***/
1288 #define IInternetProtocolInfo_ParseUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->ParseUrl(p,a,b,c,d,e,f,g)
1289 #define IInternetProtocolInfo_CombineUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->CombineUrl(p,a,b,c,d,e,f,g)
1290 #define IInternetProtocolInfo_CompareUrl(p,a,b,c) (p)->lpVtbl->CompareUrl(p,a,b,c)
1291 #define IInternetProtocolInfo_QueryInfo(p,a,b,c,d,e,f,g) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e,f,g)
1295 #define IInternetProtocolInfo_METHODS \
1296 ICOM_MSVTABLE_COMPAT_FIELDS \
1297 /*** IUnknown methods ***/ \
1298 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1299 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1300 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1301 /*** IInternetProtocolInfo methods ***/ \
1302 STDMETHOD_(HRESULT,ParseUrl)(THIS_ LPCWSTR pwzUrl, PARSEACTION ParseAction, DWORD dwParseFlags, LPWSTR pwzResult, DWORD cchResult, DWORD* pcchResult, DWORD dwReserved) PURE; \
1303 STDMETHOD_(HRESULT,CombineUrl)(THIS_ LPCWSTR pwzBaseUrl, LPCWSTR pwzRelativeUrl, DWORD dwCombineFlags, LPWSTR pwzResult, DWORD cchResult, DWORD* pcchResult, DWORD dwReserved) PURE; \
1304 STDMETHOD_(HRESULT,CompareUrl)(THIS_ LPCWSTR pwzUrl1, LPCWSTR pwzUrl2, DWORD dwCompareFlags) PURE; \
1305 STDMETHOD_(HRESULT,QueryInfo)(THIS_ LPCWSTR pwzUrl, QUERYOPTION OueryOption, DWORD dwQueryFlags, LPVOID pBuffer, DWORD cbBuffer, DWORD* pcbBuf, DWORD dwReserved) PURE;
1307 HRESULT CALLBACK
IInternetProtocolInfo_ParseUrl_Proxy(
1308 IInternetProtocolInfo
* This
,
1310 PARSEACTION ParseAction
,
1316 void __RPC_STUB
IInternetProtocolInfo_ParseUrl_Stub(
1317 struct IRpcStubBuffer
* This
,
1318 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1319 PRPC_MESSAGE pRpcMessage
,
1320 DWORD
* pdwStubPhase
);
1321 HRESULT CALLBACK
IInternetProtocolInfo_CombineUrl_Proxy(
1322 IInternetProtocolInfo
* This
,
1324 LPCWSTR pwzRelativeUrl
,
1325 DWORD dwCombineFlags
,
1330 void __RPC_STUB
IInternetProtocolInfo_CombineUrl_Stub(
1331 struct IRpcStubBuffer
* This
,
1332 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1333 PRPC_MESSAGE pRpcMessage
,
1334 DWORD
* pdwStubPhase
);
1335 HRESULT CALLBACK
IInternetProtocolInfo_CompareUrl_Proxy(
1336 IInternetProtocolInfo
* This
,
1339 DWORD dwCompareFlags
);
1340 void __RPC_STUB
IInternetProtocolInfo_CompareUrl_Stub(
1341 struct IRpcStubBuffer
* This
,
1342 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1343 PRPC_MESSAGE pRpcMessage
,
1344 DWORD
* pdwStubPhase
);
1345 HRESULT CALLBACK
IInternetProtocolInfo_QueryInfo_Proxy(
1346 IInternetProtocolInfo
* This
,
1348 QUERYOPTION OueryOption
,
1354 void __RPC_STUB
IInternetProtocolInfo_QueryInfo_Stub(
1355 struct IRpcStubBuffer
* This
,
1356 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1357 PRPC_MESSAGE pRpcMessage
,
1358 DWORD
* pdwStubPhase
);
1360 #endif /* __IInternetProtocolInfo_INTERFACE_DEFINED__ */
1362 #ifndef __IInternetSession_FWD_DEFINED__
1363 #define __IInternetSession_FWD_DEFINED__
1364 typedef struct IInternetSession IInternetSession
;
1367 typedef IInternetSession
*LPIINTERNETSESSION
;
1369 typedef enum _tagOIBDG_FLAGS
{
1370 OIBDG_APARTMENTTHREADED
= 0x100,
1371 OIBDG_DATAONLY
= 0x1000
1374 /*****************************************************************************
1375 * IInternetSession interface
1377 #ifndef __IInternetSession_INTERFACE_DEFINED__
1378 #define __IInternetSession_INTERFACE_DEFINED__
1380 DEFINE_GUID(IID_IInternetSession
, 0x79eac9e7, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1381 #if defined(__cplusplus) && !defined(CINTERFACE)
1382 struct IInternetSession
: public IUnknown
1384 virtual HRESULT STDMETHODCALLTYPE
RegisterNameSpace(
1387 LPCWSTR pwzProtocol
,
1389 const LPCWSTR
* ppwzPatterns
,
1390 DWORD dwReserved
) = 0;
1392 virtual HRESULT STDMETHODCALLTYPE
UnregisterNameSpace(
1394 LPCWSTR pszProtocol
) = 0;
1396 virtual HRESULT STDMETHODCALLTYPE
RegisterMimeFilter(
1399 LPCWSTR pwzType
) = 0;
1401 virtual HRESULT STDMETHODCALLTYPE
UnregisterMimeFilter(
1403 LPCWSTR pwzType
) = 0;
1405 virtual HRESULT STDMETHODCALLTYPE
CreateBinding(
1408 IUnknown
* pUnkOuter
,
1411 DWORD dwOption
) = 0;
1413 virtual HRESULT STDMETHODCALLTYPE
SetSessionOption(
1416 DWORD dwBufferLength
,
1417 DWORD dwReserved
) = 0;
1421 typedef struct IInternetSessionVtbl IInternetSessionVtbl
;
1422 struct IInternetSession
{
1423 const IInternetSessionVtbl
* lpVtbl
;
1425 struct IInternetSessionVtbl
{
1426 ICOM_MSVTABLE_COMPAT_FIELDS
1428 /*** IUnknown methods ***/
1429 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1430 IInternetSession
* This
,
1434 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1435 IInternetSession
* This
);
1437 ULONG (STDMETHODCALLTYPE
*Release
)(
1438 IInternetSession
* This
);
1440 /*** IInternetSession methods ***/
1441 HRESULT (STDMETHODCALLTYPE
*RegisterNameSpace
)(
1442 IInternetSession
* This
,
1445 LPCWSTR pwzProtocol
,
1447 const LPCWSTR
* ppwzPatterns
,
1450 HRESULT (STDMETHODCALLTYPE
*UnregisterNameSpace
)(
1451 IInternetSession
* This
,
1453 LPCWSTR pszProtocol
);
1455 HRESULT (STDMETHODCALLTYPE
*RegisterMimeFilter
)(
1456 IInternetSession
* This
,
1461 HRESULT (STDMETHODCALLTYPE
*UnregisterMimeFilter
)(
1462 IInternetSession
* This
,
1466 HRESULT (STDMETHODCALLTYPE
*CreateBinding
)(
1467 IInternetSession
* This
,
1470 IUnknown
* pUnkOuter
,
1475 HRESULT (STDMETHODCALLTYPE
*SetSessionOption
)(
1476 IInternetSession
* This
,
1479 DWORD dwBufferLength
,
1484 /*** IUnknown methods ***/
1485 #define IInternetSession_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1486 #define IInternetSession_AddRef(p) (p)->lpVtbl->AddRef(p)
1487 #define IInternetSession_Release(p) (p)->lpVtbl->Release(p)
1488 /*** IInternetSession methods ***/
1489 #define IInternetSession_RegisterNameSpace(p,a,b,c,d,e,f) (p)->lpVtbl->RegisterNameSpace(p,a,b,c,d,e,f)
1490 #define IInternetSession_UnregisterNameSpace(p,a,b) (p)->lpVtbl->UnregisterNameSpace(p,a,b)
1491 #define IInternetSession_RegisterMimeFilter(p,a,b,c) (p)->lpVtbl->RegisterMimeFilter(p,a,b,c)
1492 #define IInternetSession_UnregisterMimeFilter(p,a,b) (p)->lpVtbl->UnregisterMimeFilter(p,a,b)
1493 #define IInternetSession_CreateBinding(p,a,b,c,d,e,f) (p)->lpVtbl->CreateBinding(p,a,b,c,d,e,f)
1494 #define IInternetSession_SetSessionOption(p,a,b,c,d) (p)->lpVtbl->SetSessionOption(p,a,b,c,d)
1498 #define IInternetSession_METHODS \
1499 ICOM_MSVTABLE_COMPAT_FIELDS \
1500 /*** IUnknown methods ***/ \
1501 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1502 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1503 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1504 /*** IInternetSession methods ***/ \
1505 STDMETHOD_(HRESULT,RegisterNameSpace)(THIS_ IClassFactory* pCF, REFCLSID rclsid, LPCWSTR pwzProtocol, ULONG cPatterns, const LPCWSTR* ppwzPatterns, DWORD dwReserved) PURE; \
1506 STDMETHOD_(HRESULT,UnregisterNameSpace)(THIS_ IClassFactory* pCF, LPCWSTR pszProtocol) PURE; \
1507 STDMETHOD_(HRESULT,RegisterMimeFilter)(THIS_ IClassFactory* pCF, REFCLSID rclsid, LPCWSTR pwzType) PURE; \
1508 STDMETHOD_(HRESULT,UnregisterMimeFilter)(THIS_ IClassFactory* pCF, LPCWSTR pwzType) PURE; \
1509 STDMETHOD_(HRESULT,CreateBinding)(THIS_ LPBC pBC, LPCWSTR szUrl, IUnknown* pUnkOuter, IUnknown** ppUnk, void** ppOInetProt, DWORD dwOption) PURE; \
1510 STDMETHOD_(HRESULT,SetSessionOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD dwReserved) PURE;
1512 HRESULT CALLBACK
IInternetSession_RegisterNameSpace_Proxy(
1513 IInternetSession
* This
,
1516 LPCWSTR pwzProtocol
,
1518 const LPCWSTR
* ppwzPatterns
,
1520 void __RPC_STUB
IInternetSession_RegisterNameSpace_Stub(
1521 struct IRpcStubBuffer
* This
,
1522 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1523 PRPC_MESSAGE pRpcMessage
,
1524 DWORD
* pdwStubPhase
);
1525 HRESULT CALLBACK
IInternetSession_UnregisterNameSpace_Proxy(
1526 IInternetSession
* This
,
1528 LPCWSTR pszProtocol
);
1529 void __RPC_STUB
IInternetSession_UnregisterNameSpace_Stub(
1530 struct IRpcStubBuffer
* This
,
1531 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1532 PRPC_MESSAGE pRpcMessage
,
1533 DWORD
* pdwStubPhase
);
1534 HRESULT CALLBACK
IInternetSession_RegisterMimeFilter_Proxy(
1535 IInternetSession
* This
,
1539 void __RPC_STUB
IInternetSession_RegisterMimeFilter_Stub(
1540 struct IRpcStubBuffer
* This
,
1541 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1542 PRPC_MESSAGE pRpcMessage
,
1543 DWORD
* pdwStubPhase
);
1544 HRESULT CALLBACK
IInternetSession_UnregisterMimeFilter_Proxy(
1545 IInternetSession
* This
,
1548 void __RPC_STUB
IInternetSession_UnregisterMimeFilter_Stub(
1549 struct IRpcStubBuffer
* This
,
1550 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1551 PRPC_MESSAGE pRpcMessage
,
1552 DWORD
* pdwStubPhase
);
1553 HRESULT CALLBACK
IInternetSession_CreateBinding_Proxy(
1554 IInternetSession
* This
,
1557 IUnknown
* pUnkOuter
,
1561 void __RPC_STUB
IInternetSession_CreateBinding_Stub(
1562 struct IRpcStubBuffer
* This
,
1563 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1564 PRPC_MESSAGE pRpcMessage
,
1565 DWORD
* pdwStubPhase
);
1566 HRESULT CALLBACK
IInternetSession_SetSessionOption_Proxy(
1567 IInternetSession
* This
,
1570 DWORD dwBufferLength
,
1572 void __RPC_STUB
IInternetSession_SetSessionOption_Stub(
1573 struct IRpcStubBuffer
* This
,
1574 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1575 PRPC_MESSAGE pRpcMessage
,
1576 DWORD
* pdwStubPhase
);
1578 #endif /* __IInternetSession_INTERFACE_DEFINED__ */
1580 DEFINE_GUID(IID_IAsyncMoniker
, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
1581 DEFINE_GUID(CLSID_StdURLMoniker
, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
1582 #define MK_S_ASYNCHRONOUS 0x000401E8
1583 #define S_ASYNCHRONOUS MK_S_ASYNCHRONOUS
1584 #define INET_E_ERROR_FIRST 0x800C0002L
1585 #define INET_E_INVALID_URL 0x800C0002L
1586 #define INET_E_NO_SESSION 0x800C0003L
1587 #define INET_E_CANNOT_CONNECT 0x800C0004L
1588 #define INET_E_RESOURCE_NOT_FOUND 0x800C0005L
1589 #define INET_E_OBJECT_NOT_FOUND 0x800C0006L
1590 #define INET_E_DATA_NOT_AVAILABLE 0x800C0007L
1591 #define INET_E_DOWNLOAD_FAILURE 0x800C0008L
1592 #define INET_E_AUTHENTICATION_REQUIRED 0x800C0009L
1593 #define INET_E_NO_VALID_MEDIA 0x800C000AL
1594 #define INET_E_CONNECTION_TIMEOUT 0x800C000BL
1595 #define INET_E_INVALID_REQUEST 0x800C000CL
1596 #define INET_E_UNKNOWN_PROTOCOL 0x800C000DL
1597 #define INET_E_SECURITY_PROBLEM 0x800C000EL
1598 #define INET_E_CANNOT_LOAD_DATA 0x800C000FL
1599 #define INET_E_CANNOT_INSTANTIATE_OBJECT 0x800C0010L
1600 #define INET_E_QUERYOPTION_UNKNOWN 0x800C0013L
1601 #define INET_E_REDIRECT_FAILED 0x800C0014L
1602 #define INET_E_REDIRECT_TO_DIR 0x800C0015L
1603 #define INET_E_CANNOT_LOCK_REQUEST 0x800C0016L
1604 #define INET_E_ERROR_LAST INET_E_REDIRECT_TO_DIR
1605 HRESULT WINAPI
CreateURLMoniker(IMoniker
*pmkContext
, LPCWSTR szURL
, IMoniker
**ppmk
);
1606 HRESULT WINAPI
RegisterBindStatusCallback(IBindCtx
*pbc
, IBindStatusCallback
*pbsc
, IBindStatusCallback
**ppbsc
, DWORD dwReserved
);
1607 HRESULT WINAPI
CompareSecurityIds(BYTE
*,DWORD
,BYTE
*,DWORD
,DWORD
);
1608 HRESULT WINAPI
URLDownloadToFileA(LPUNKNOWN pCaller
, LPCSTR szURL
, LPCSTR szFileName
, DWORD dwReserved
, LPBINDSTATUSCALLBACK lpfnCB
);
1609 HRESULT WINAPI
URLDownloadToFileW(LPUNKNOWN pCaller
, LPCWSTR szURL
, LPCWSTR szFileName
, DWORD dwReserved
, LPBINDSTATUSCALLBACK lpfnCB
);
1610 HRESULT WINAPI
CoInternetGetSession(DWORD
,IInternetSession
**,DWORD
);
1611 HRESULT WINAPI
MkParseDisplayNameEx(IBindCtx
*,LPCWSTR
,ULONG
*,IMoniker
**);
1612 HRESULT WINAPI
IsAsyncMoniker(IMoniker
* pmk
);
1613 HRESULT WINAPI
CreateAsyncBindCtx(DWORD
, IBindStatusCallback
*, IEnumFORMATETC
*, IBindCtx
**);
1614 HRESULT WINAPI
CoInternetCombineUrl(LPCWSTR
,LPCWSTR
,DWORD
,LPWSTR
,DWORD
,DWORD
*,DWORD
);
1615 HRESULT WINAPI
CoInternetCompareUrl(LPCWSTR
,LPCWSTR
,DWORD
);
1616 #define OInetCombineUrl CoInternetCombineUrl
1617 #define OInetCompareUrl CoInternetCompareUrl
1618 #define OInetGetSession CoInternetGetSession
1619 #define MKSYS_URLMONIKER 6
1623 #endif /* __WIDL_URLMON_H */