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
,
100 /*** IUnknown methods ***/
101 #define IBinding_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
102 #define IBinding_AddRef(p) (p)->lpVtbl->AddRef(p)
103 #define IBinding_Release(p) (p)->lpVtbl->Release(p)
104 /*** IBinding methods ***/
105 #define IBinding_Abort(p) (p)->lpVtbl->Abort(p)
106 #define IBinding_Suspend(p) (p)->lpVtbl->Suspend(p)
107 #define IBinding_Resume(p) (p)->lpVtbl->Resume(p)
108 #define IBinding_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a)
109 #define IBinding_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
110 #define IBinding_GetBindResult(p,a,b,c,d) (p)->lpVtbl->GetBindResult(p,a,b,c,d)
115 #define IBinding_METHODS \
116 ICOM_MSVTABLE_COMPAT_FIELDS \
117 /*** IUnknown methods ***/ \
118 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
119 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
120 STDMETHOD_(ULONG,Release)(THIS) PURE; \
121 /*** IBinding methods ***/ \
122 STDMETHOD_(HRESULT,Abort)(THIS) PURE; \
123 STDMETHOD_(HRESULT,Suspend)(THIS) PURE; \
124 STDMETHOD_(HRESULT,Resume)(THIS) PURE; \
125 STDMETHOD_(HRESULT,SetPriority)(THIS_ LONG nPriority) PURE; \
126 STDMETHOD_(HRESULT,GetPriority)(THIS_ LONG* pnPriority) PURE; \
127 STDMETHOD_(HRESULT,GetBindResult)(THIS_ CLSID* pclsidProtocol, DWORD* pdwResult, LPOLESTR* pszResult, DWORD* pdwReserved) PURE;
129 HRESULT CALLBACK
IBinding_Abort_Proxy(
131 void __RPC_STUB
IBinding_Abort_Stub(
132 struct IRpcStubBuffer
* This
,
133 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
134 PRPC_MESSAGE pRpcMessage
,
135 DWORD
* pdwStubPhase
);
136 HRESULT CALLBACK
IBinding_Suspend_Proxy(
138 void __RPC_STUB
IBinding_Suspend_Stub(
139 struct IRpcStubBuffer
* This
,
140 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
141 PRPC_MESSAGE pRpcMessage
,
142 DWORD
* pdwStubPhase
);
143 HRESULT CALLBACK
IBinding_Resume_Proxy(
145 void __RPC_STUB
IBinding_Resume_Stub(
146 struct IRpcStubBuffer
* This
,
147 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
148 PRPC_MESSAGE pRpcMessage
,
149 DWORD
* pdwStubPhase
);
150 HRESULT CALLBACK
IBinding_SetPriority_Proxy(
153 void __RPC_STUB
IBinding_SetPriority_Stub(
154 struct IRpcStubBuffer
* This
,
155 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
156 PRPC_MESSAGE pRpcMessage
,
157 DWORD
* pdwStubPhase
);
158 HRESULT CALLBACK
IBinding_GetPriority_Proxy(
161 void __RPC_STUB
IBinding_GetPriority_Stub(
162 struct IRpcStubBuffer
* This
,
163 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
164 PRPC_MESSAGE pRpcMessage
,
165 DWORD
* pdwStubPhase
);
166 HRESULT CALLBACK
IBinding_RemoteGetBindResult_Proxy(
168 CLSID
* pclsidProtocol
,
172 void __RPC_STUB
IBinding_RemoteGetBindResult_Stub(
173 struct IRpcStubBuffer
* This
,
174 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
175 PRPC_MESSAGE pRpcMessage
,
176 DWORD
* pdwStubPhase
);
177 HRESULT CALLBACK
IBinding_GetBindResult_Proxy(
179 CLSID
* pclsidProtocol
,
183 HRESULT __RPC_STUB
IBinding_GetBindResult_Stub(
185 CLSID
* pclsidProtocol
,
190 #endif /* __IBinding_INTERFACE_DEFINED__ */
192 #ifndef __IBindStatusCallback_FWD_DEFINED__
193 #define __IBindStatusCallback_FWD_DEFINED__
194 typedef struct IBindStatusCallback IBindStatusCallback
;
197 typedef IBindStatusCallback
*LPBINDSTATUSCALLBACK
;
200 BINDF_ASYNCHRONOUS
= 0x1,
201 BINDF_ASYNCSTORAGE
= 0x2,
202 BINDF_NOPROGRESSIVERENDERING
= 0x4,
203 BINDF_OFFLINEOPERATION
= 0x8,
204 BINDF_GETNEWESTVERSION
= 0x10,
205 BINDF_NOWRITECACHE
= 0x20,
206 BINDF_NEEDFILE
= 0x40,
207 BINDF_PULLDATA
= 0x80,
208 BINDF_IGNORESECURITYPROBLEM
= 0x100,
209 BINDF_RESYNCHRONIZE
= 0x200,
210 BINDF_HYPERLINK
= 0x400,
212 BINDF_SILENTOPERATION
= 0x1000,
213 BINDF_PRAGMA_NO_CACHE
= 0x2000,
214 BINDF_GETCLASSOBJECT
= 0x4000,
215 BINDF_RESERVED_1
= 0x8000,
216 BINDF_FREE_THREADED
= 0x10000,
217 BINDF_DIRECT_READ
= 0x20000,
218 BINDF_FORMS_SUBMIT
= 0x40000,
219 BINDF_GETFROMCACHE_IF_NET_FAIL
= 0x80000,
220 BINDF_FROMURLMON
= 0x100000,
221 BINDF_FWD_BACK
= 0x200000,
222 BINDF_PREFERDEFAULTHANDLER
= 0x400000,
223 BINDF_ENFORCERESTRICTED
= 0x800000
226 typedef struct _tagBINDINFO
{
229 STGMEDIUM stgmedData
;
235 DWORD dwOptionsFlags
;
237 SECURITY_ATTRIBUTES securityAttributes
;
243 typedef struct _REMSECURITY_ATTRIBUTES
{
245 DWORD lpSecurityDescriptor
;
247 } REMSECURITY_ATTRIBUTES
, *PREMSECURITY_ATTRIBUTES
, *LPREMSECURITY_ATTRIBUTES
;
249 typedef struct _tagRemBINDINFO
{
257 DWORD dwOptionsFlags
;
259 REMSECURITY_ATTRIBUTES securityAttributes
;
265 typedef struct tagRemFORMATETC
{
271 } RemFORMATETC
, *LPREMFORMATETC
;
274 BSCF_FIRSTDATANOTIFICATION
= 0x1,
275 BSCF_INTERMEDIATEDATANOTIFICATION
= 0x2,
276 BSCF_LASTDATANOTIFICATION
= 0x4,
277 BSCF_DATAFULLYAVAILABLE
= 0x8,
278 BSCF_AVAILABLEDATASIZEUNKNOWN
= 0x10
281 typedef enum BINDSTATUS
{
282 BINDSTATUS_FINDINGRESOURCE
= 1,
283 BINDSTATUS_CONNECTING
,
284 BINDSTATUS_REDIRECTING
,
285 BINDSTATUS_BEGINDOWNLOADDATA
,
286 BINDSTATUS_DOWNLOADINGDATA
,
287 BINDSTATUS_ENDDOWNLOADDATA
,
288 BINDSTATUS_BEGINDOWNLOADCOMPONENTS
,
289 BINDSTATUS_INSTALLINGCOMPONENTS
,
290 BINDSTATUS_ENDDOWNLOADCOMPONENTS
,
291 BINDSTATUS_USINGCACHEDCOPY
,
292 BINDSTATUS_SENDINGREQUEST
,
293 BINDSTATUS_CLASSIDAVAILABLE
,
294 BINDSTATUS_MIMETYPEAVAILABLE
,
295 BINDSTATUS_CACHEFILENAMEAVAILABLE
,
296 BINDSTATUS_BEGINSYNCOPERATION
,
297 BINDSTATUS_ENDSYNCOPERATION
,
298 BINDSTATUS_BEGINUPLOADDATA
,
299 BINDSTATUS_UPLOADINGDATA
,
300 BINDSTATUS_ENDUPLOADINGDATA
,
301 BINDSTATUS_PROTOCOLCLASSID
,
303 BINDSTATUS_VERFIEDMIMETYPEAVAILABLE
,
304 BINDSTATUS_CLASSINSTALLLOCATION
,
306 BINDSTATUS_LOADINGMIMEHANDLER
,
307 BINDSTATUS_CONTENTDISPOSITIONATTACH
,
308 BINDSTATUS_FILTERREPORTMIMETYPE
,
309 BINDSTATUS_CLSIDCANINSTANTIATE
,
310 BINDSTATUS_IUNKNOWNAVAILABLE
,
311 BINDSTATUS_DIRECTBIND
,
312 BINDSTATUS_RAWMIMETYPE
,
313 BINDSTATUS_PROXYDETECTING
,
314 BINDSTATUS_ACCEPTRANGES
,
315 BINDSTATUS_COOKIE_SENT
,
316 BINDSTATUS_COMPACT_POLICY_RECEIVED
,
317 BINDSTATUS_COOKIE_SUPPRESSED
,
318 BINDSTATUS_COOKIE_STATE_UNKNOWN
,
319 BINDSTATUS_COOKIE_STATE_ACCEPT
,
320 BINDSTATUS_COOKIE_STATE_REJECT
,
321 BINDSTATUS_COOKIE_STATE_PROMPT
,
322 BINDSTATUS_COOKIE_STATE_LEASH
,
323 BINDSTATUS_COOKIE_STATE_DOWNGRADE
,
324 BINDSTATUS_POLICY_HREF
,
325 BINDSTATUS_P3P_HEADER
,
326 BINDSTATUS_SESSION_COOKIE_RECEIVED
,
327 BINDSTATUS_PERSISTENT_COOKIE_RECEIVED
,
328 BINDSTATUS_SESSION_COOKIES_ALLOWED
,
329 BINDSTATUS_CACHECONTROL
332 /*****************************************************************************
333 * IBindStatusCallback interface
335 #ifndef __IBindStatusCallback_INTERFACE_DEFINED__
336 #define __IBindStatusCallback_INTERFACE_DEFINED__
338 DEFINE_GUID(IID_IBindStatusCallback
, 0x79eac9c1, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
339 #if defined(__cplusplus) && !defined(CINTERFACE)
340 struct IBindStatusCallback
: public IUnknown
342 virtual HRESULT STDMETHODCALLTYPE
OnStartBinding(
346 virtual HRESULT STDMETHODCALLTYPE
GetPriority(
347 LONG
* pnPriority
) = 0;
349 virtual HRESULT STDMETHODCALLTYPE
OnLowResource(
352 virtual HRESULT STDMETHODCALLTYPE
OnProgress(
356 LPCWSTR szStatusText
) = 0;
358 virtual HRESULT STDMETHODCALLTYPE
OnStopBinding(
360 LPCWSTR szError
) = 0;
362 virtual HRESULT STDMETHODCALLTYPE
GetBindInfo(
364 BINDINFO
* pbindinfo
) = 0;
366 virtual HRESULT STDMETHODCALLTYPE
OnDataAvailable(
369 FORMATETC
* pformatetc
,
370 STGMEDIUM
* pstgmed
) = 0;
372 virtual HRESULT STDMETHODCALLTYPE
OnObjectAvailable(
378 typedef struct IBindStatusCallbackVtbl IBindStatusCallbackVtbl
;
379 struct IBindStatusCallback
{
380 const IBindStatusCallbackVtbl
* lpVtbl
;
382 struct IBindStatusCallbackVtbl
{
383 ICOM_MSVTABLE_COMPAT_FIELDS
385 /*** IUnknown methods ***/
386 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
387 IBindStatusCallback
* This
,
391 ULONG (STDMETHODCALLTYPE
*AddRef
)(
392 IBindStatusCallback
* This
);
394 ULONG (STDMETHODCALLTYPE
*Release
)(
395 IBindStatusCallback
* This
);
397 /*** IBindStatusCallback methods ***/
398 HRESULT (STDMETHODCALLTYPE
*OnStartBinding
)(
399 IBindStatusCallback
* This
,
403 HRESULT (STDMETHODCALLTYPE
*GetPriority
)(
404 IBindStatusCallback
* This
,
407 HRESULT (STDMETHODCALLTYPE
*OnLowResource
)(
408 IBindStatusCallback
* This
,
411 HRESULT (STDMETHODCALLTYPE
*OnProgress
)(
412 IBindStatusCallback
* This
,
416 LPCWSTR szStatusText
);
418 HRESULT (STDMETHODCALLTYPE
*OnStopBinding
)(
419 IBindStatusCallback
* This
,
423 HRESULT (STDMETHODCALLTYPE
*GetBindInfo
)(
424 IBindStatusCallback
* This
,
426 BINDINFO
* pbindinfo
);
428 HRESULT (STDMETHODCALLTYPE
*OnDataAvailable
)(
429 IBindStatusCallback
* This
,
432 FORMATETC
* pformatetc
,
435 HRESULT (STDMETHODCALLTYPE
*OnObjectAvailable
)(
436 IBindStatusCallback
* This
,
443 /*** IUnknown methods ***/
444 #define IBindStatusCallback_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
445 #define IBindStatusCallback_AddRef(p) (p)->lpVtbl->AddRef(p)
446 #define IBindStatusCallback_Release(p) (p)->lpVtbl->Release(p)
447 /*** IBindStatusCallback methods ***/
448 #define IBindStatusCallback_OnStartBinding(p,a,b) (p)->lpVtbl->OnStartBinding(p,a,b)
449 #define IBindStatusCallback_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
450 #define IBindStatusCallback_OnLowResource(p,a) (p)->lpVtbl->OnLowResource(p,a)
451 #define IBindStatusCallback_OnProgress(p,a,b,c,d) (p)->lpVtbl->OnProgress(p,a,b,c,d)
452 #define IBindStatusCallback_OnStopBinding(p,a,b) (p)->lpVtbl->OnStopBinding(p,a,b)
453 #define IBindStatusCallback_GetBindInfo(p,a,b) (p)->lpVtbl->GetBindInfo(p,a,b)
454 #define IBindStatusCallback_OnDataAvailable(p,a,b,c,d) (p)->lpVtbl->OnDataAvailable(p,a,b,c,d)
455 #define IBindStatusCallback_OnObjectAvailable(p,a,b) (p)->lpVtbl->OnObjectAvailable(p,a,b)
460 #define IBindStatusCallback_METHODS \
461 ICOM_MSVTABLE_COMPAT_FIELDS \
462 /*** IUnknown methods ***/ \
463 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
464 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
465 STDMETHOD_(ULONG,Release)(THIS) PURE; \
466 /*** IBindStatusCallback methods ***/ \
467 STDMETHOD_(HRESULT,OnStartBinding)(THIS_ DWORD dwReserved, IBinding* pib) PURE; \
468 STDMETHOD_(HRESULT,GetPriority)(THIS_ LONG* pnPriority) PURE; \
469 STDMETHOD_(HRESULT,OnLowResource)(THIS_ DWORD reserved) PURE; \
470 STDMETHOD_(HRESULT,OnProgress)(THIS_ ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText) PURE; \
471 STDMETHOD_(HRESULT,OnStopBinding)(THIS_ HRESULT hresult, LPCWSTR szError) PURE; \
472 STDMETHOD_(HRESULT,GetBindInfo)(THIS_ DWORD* grfBINDF, BINDINFO* pbindinfo) PURE; \
473 STDMETHOD_(HRESULT,OnDataAvailable)(THIS_ DWORD grfBSCF, DWORD dwSize, FORMATETC* pformatetc, STGMEDIUM* pstgmed) PURE; \
474 STDMETHOD_(HRESULT,OnObjectAvailable)(THIS_ REFIID riid, IUnknown* punk) PURE;
476 HRESULT CALLBACK
IBindStatusCallback_OnStartBinding_Proxy(
477 IBindStatusCallback
* This
,
480 void __RPC_STUB
IBindStatusCallback_OnStartBinding_Stub(
481 struct IRpcStubBuffer
* This
,
482 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
483 PRPC_MESSAGE pRpcMessage
,
484 DWORD
* pdwStubPhase
);
485 HRESULT CALLBACK
IBindStatusCallback_GetPriority_Proxy(
486 IBindStatusCallback
* This
,
488 void __RPC_STUB
IBindStatusCallback_GetPriority_Stub(
489 struct IRpcStubBuffer
* This
,
490 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
491 PRPC_MESSAGE pRpcMessage
,
492 DWORD
* pdwStubPhase
);
493 HRESULT CALLBACK
IBindStatusCallback_OnLowResource_Proxy(
494 IBindStatusCallback
* This
,
496 void __RPC_STUB
IBindStatusCallback_OnLowResource_Stub(
497 struct IRpcStubBuffer
* This
,
498 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
499 PRPC_MESSAGE pRpcMessage
,
500 DWORD
* pdwStubPhase
);
501 HRESULT CALLBACK
IBindStatusCallback_OnProgress_Proxy(
502 IBindStatusCallback
* This
,
506 LPCWSTR szStatusText
);
507 void __RPC_STUB
IBindStatusCallback_OnProgress_Stub(
508 struct IRpcStubBuffer
* This
,
509 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
510 PRPC_MESSAGE pRpcMessage
,
511 DWORD
* pdwStubPhase
);
512 HRESULT CALLBACK
IBindStatusCallback_OnStopBinding_Proxy(
513 IBindStatusCallback
* This
,
516 void __RPC_STUB
IBindStatusCallback_OnStopBinding_Stub(
517 struct IRpcStubBuffer
* This
,
518 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
519 PRPC_MESSAGE pRpcMessage
,
520 DWORD
* pdwStubPhase
);
521 HRESULT CALLBACK
IBindStatusCallback_RemoteGetBindInfo_Proxy(
522 IBindStatusCallback
* This
,
524 RemBINDINFO
* pbindinfo
,
525 RemSTGMEDIUM
* pstgmed
);
526 void __RPC_STUB
IBindStatusCallback_RemoteGetBindInfo_Stub(
527 struct IRpcStubBuffer
* This
,
528 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
529 PRPC_MESSAGE pRpcMessage
,
530 DWORD
* pdwStubPhase
);
531 HRESULT CALLBACK
IBindStatusCallback_GetBindInfo_Proxy(
532 IBindStatusCallback
* This
,
534 BINDINFO
* pbindinfo
);
535 HRESULT __RPC_STUB
IBindStatusCallback_GetBindInfo_Stub(
536 IBindStatusCallback
* This
,
538 RemBINDINFO
* pbindinfo
,
539 RemSTGMEDIUM
* pstgmed
);
540 HRESULT CALLBACK
IBindStatusCallback_RemoteOnDataAvailable_Proxy(
541 IBindStatusCallback
* This
,
544 RemFORMATETC
* pformatetc
,
545 RemSTGMEDIUM
* pstgmed
);
546 void __RPC_STUB
IBindStatusCallback_RemoteOnDataAvailable_Stub(
547 struct IRpcStubBuffer
* This
,
548 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
549 PRPC_MESSAGE pRpcMessage
,
550 DWORD
* pdwStubPhase
);
551 HRESULT CALLBACK
IBindStatusCallback_OnDataAvailable_Proxy(
552 IBindStatusCallback
* This
,
555 FORMATETC
* pformatetc
,
557 HRESULT __RPC_STUB
IBindStatusCallback_OnDataAvailable_Stub(
558 IBindStatusCallback
* This
,
561 RemFORMATETC
* pformatetc
,
562 RemSTGMEDIUM
* pstgmed
);
563 HRESULT CALLBACK
IBindStatusCallback_OnObjectAvailable_Proxy(
564 IBindStatusCallback
* This
,
567 void __RPC_STUB
IBindStatusCallback_OnObjectAvailable_Stub(
568 struct IRpcStubBuffer
* This
,
569 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
570 PRPC_MESSAGE pRpcMessage
,
571 DWORD
* pdwStubPhase
);
573 #endif /* __IBindStatusCallback_INTERFACE_DEFINED__ */
575 #define SID_IBindHost IID_IBindHost
576 #define SID_SBindHost IID_IBindHost
577 #ifndef __IBindHost_FWD_DEFINED__
578 #define __IBindHost_FWD_DEFINED__
579 typedef struct IBindHost IBindHost
;
582 typedef IBindHost
*LPBINDHOST
;
584 /*****************************************************************************
585 * IBindHost interface
587 #ifndef __IBindHost_INTERFACE_DEFINED__
588 #define __IBindHost_INTERFACE_DEFINED__
590 DEFINE_GUID(IID_IBindHost
, 0xfc4801a1, 0x2ba9, 0x11cf, 0xa2,0x29, 0x00,0xaa,0x00,0x3d,0x73,0x52);
591 #if defined(__cplusplus) && !defined(CINTERFACE)
592 struct IBindHost
: public IUnknown
594 virtual HRESULT STDMETHODCALLTYPE
CreateMoniker(
598 DWORD dwReserved
) = 0;
600 virtual HRESULT STDMETHODCALLTYPE
MonikerBindToStorage(
603 IBindStatusCallback
* pBSC
,
607 virtual HRESULT STDMETHODCALLTYPE
MonikerBindToObject(
610 IBindStatusCallback
* pBSC
,
616 typedef struct IBindHostVtbl IBindHostVtbl
;
618 const IBindHostVtbl
* lpVtbl
;
620 struct IBindHostVtbl
{
621 ICOM_MSVTABLE_COMPAT_FIELDS
623 /*** IUnknown methods ***/
624 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
629 ULONG (STDMETHODCALLTYPE
*AddRef
)(
632 ULONG (STDMETHODCALLTYPE
*Release
)(
635 /*** IBindHost methods ***/
636 HRESULT (STDMETHODCALLTYPE
*CreateMoniker
)(
643 HRESULT (STDMETHODCALLTYPE
*MonikerBindToStorage
)(
647 IBindStatusCallback
* pBSC
,
651 HRESULT (STDMETHODCALLTYPE
*MonikerBindToObject
)(
655 IBindStatusCallback
* pBSC
,
662 /*** IUnknown methods ***/
663 #define IBindHost_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
664 #define IBindHost_AddRef(p) (p)->lpVtbl->AddRef(p)
665 #define IBindHost_Release(p) (p)->lpVtbl->Release(p)
666 /*** IBindHost methods ***/
667 #define IBindHost_CreateMoniker(p,a,b,c,d) (p)->lpVtbl->CreateMoniker(p,a,b,c,d)
668 #define IBindHost_MonikerBindToStorage(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToStorage(p,a,b,c,d,e)
669 #define IBindHost_MonikerBindToObject(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToObject(p,a,b,c,d,e)
674 #define IBindHost_METHODS \
675 ICOM_MSVTABLE_COMPAT_FIELDS \
676 /*** IUnknown methods ***/ \
677 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
678 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
679 STDMETHOD_(ULONG,Release)(THIS) PURE; \
680 /*** IBindHost methods ***/ \
681 STDMETHOD_(HRESULT,CreateMoniker)(THIS_ LPOLESTR szName, IBindCtx* pBC, IMoniker** ppmk, DWORD dwReserved) PURE; \
682 STDMETHOD_(HRESULT,MonikerBindToStorage)(THIS_ IMoniker* pMk, IBindCtx* pBC, IBindStatusCallback* pBSC, REFIID riid, void** ppvObj) PURE; \
683 STDMETHOD_(HRESULT,MonikerBindToObject)(THIS_ IMoniker* pMk, IBindCtx* pBC, IBindStatusCallback* pBSC, REFIID riid, void** ppvObj) PURE;
685 HRESULT CALLBACK
IBindHost_CreateMoniker_Proxy(
691 void __RPC_STUB
IBindHost_CreateMoniker_Stub(
692 struct IRpcStubBuffer
* This
,
693 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
694 PRPC_MESSAGE pRpcMessage
,
695 DWORD
* pdwStubPhase
);
696 HRESULT CALLBACK
IBindHost_RemoteMonikerBindToStorage_Proxy(
700 IBindStatusCallback
* pBSC
,
703 void __RPC_STUB
IBindHost_RemoteMonikerBindToStorage_Stub(
704 struct IRpcStubBuffer
* This
,
705 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
706 PRPC_MESSAGE pRpcMessage
,
707 DWORD
* pdwStubPhase
);
708 HRESULT CALLBACK
IBindHost_MonikerBindToStorage_Proxy(
712 IBindStatusCallback
* pBSC
,
715 HRESULT __RPC_STUB
IBindHost_MonikerBindToStorage_Stub(
719 IBindStatusCallback
* pBSC
,
722 HRESULT CALLBACK
IBindHost_RemoteMonikerBindToObject_Proxy(
726 IBindStatusCallback
* pBSC
,
729 void __RPC_STUB
IBindHost_RemoteMonikerBindToObject_Stub(
730 struct IRpcStubBuffer
* This
,
731 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
732 PRPC_MESSAGE pRpcMessage
,
733 DWORD
* pdwStubPhase
);
734 HRESULT CALLBACK
IBindHost_MonikerBindToObject_Proxy(
738 IBindStatusCallback
* pBSC
,
741 HRESULT __RPC_STUB
IBindHost_MonikerBindToObject_Stub(
745 IBindStatusCallback
* pBSC
,
749 #endif /* __IBindHost_INTERFACE_DEFINED__ */
751 #ifndef __IWinInetInfo_FWD_DEFINED__
752 #define __IWinInetInfo_FWD_DEFINED__
753 typedef struct IWinInetInfo IWinInetInfo
;
756 typedef IWinInetInfo
*LPWININETINFO
;
758 /*****************************************************************************
759 * IWinInetInfo interface
761 #ifndef __IWinInetInfo_INTERFACE_DEFINED__
762 #define __IWinInetInfo_INTERFACE_DEFINED__
764 DEFINE_GUID(IID_IWinInetInfo
, 0x79eac9d6, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
765 #if defined(__cplusplus) && !defined(CINTERFACE)
766 struct IWinInetInfo
: public IUnknown
768 virtual HRESULT STDMETHODCALLTYPE
QueryOption(
775 typedef struct IWinInetInfoVtbl IWinInetInfoVtbl
;
776 struct IWinInetInfo
{
777 const IWinInetInfoVtbl
* lpVtbl
;
779 struct IWinInetInfoVtbl
{
780 ICOM_MSVTABLE_COMPAT_FIELDS
782 /*** IUnknown methods ***/
783 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
788 ULONG (STDMETHODCALLTYPE
*AddRef
)(
791 ULONG (STDMETHODCALLTYPE
*Release
)(
794 /*** IWinInetInfo methods ***/
795 HRESULT (STDMETHODCALLTYPE
*QueryOption
)(
804 /*** IUnknown methods ***/
805 #define IWinInetInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
806 #define IWinInetInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
807 #define IWinInetInfo_Release(p) (p)->lpVtbl->Release(p)
808 /*** IWinInetInfo methods ***/
809 #define IWinInetInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
814 #define IWinInetInfo_METHODS \
815 ICOM_MSVTABLE_COMPAT_FIELDS \
816 /*** IUnknown methods ***/ \
817 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
818 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
819 STDMETHOD_(ULONG,Release)(THIS) PURE; \
820 /*** IWinInetInfo methods ***/ \
821 STDMETHOD_(HRESULT,QueryOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD* pcbBuf) PURE;
823 HRESULT CALLBACK
IWinInetInfo_RemoteQueryOption_Proxy(
828 void __RPC_STUB
IWinInetInfo_RemoteQueryOption_Stub(
829 struct IRpcStubBuffer
* This
,
830 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
831 PRPC_MESSAGE pRpcMessage
,
832 DWORD
* pdwStubPhase
);
833 HRESULT CALLBACK
IWinInetInfo_QueryOption_Proxy(
838 HRESULT __RPC_STUB
IWinInetInfo_QueryOption_Stub(
844 #endif /* __IWinInetInfo_INTERFACE_DEFINED__ */
846 #ifndef __IWinInetHttpInfo_FWD_DEFINED__
847 #define __IWinInetHttpInfo_FWD_DEFINED__
848 typedef struct IWinInetHttpInfo IWinInetHttpInfo
;
851 typedef IWinInetHttpInfo
*LPWININETHTTPINFO
;
853 /*****************************************************************************
854 * IWinInetHttpInfo interface
856 #ifndef __IWinInetHttpInfo_INTERFACE_DEFINED__
857 #define __IWinInetHttpInfo_INTERFACE_DEFINED__
859 DEFINE_GUID(IID_IWinInetHttpInfo
, 0x79eac9d8, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
860 #if defined(__cplusplus) && !defined(CINTERFACE)
861 struct IWinInetHttpInfo
: public IWinInetInfo
863 virtual HRESULT STDMETHODCALLTYPE
QueryInfo(
868 DWORD
* pdwReserved
) = 0;
872 typedef struct IWinInetHttpInfoVtbl IWinInetHttpInfoVtbl
;
873 struct IWinInetHttpInfo
{
874 const IWinInetHttpInfoVtbl
* lpVtbl
;
876 struct IWinInetHttpInfoVtbl
{
877 ICOM_MSVTABLE_COMPAT_FIELDS
879 /*** IUnknown methods ***/
880 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
881 IWinInetHttpInfo
* This
,
885 ULONG (STDMETHODCALLTYPE
*AddRef
)(
886 IWinInetHttpInfo
* This
);
888 ULONG (STDMETHODCALLTYPE
*Release
)(
889 IWinInetHttpInfo
* This
);
891 /*** IWinInetInfo methods ***/
892 HRESULT (STDMETHODCALLTYPE
*QueryOption
)(
893 IWinInetHttpInfo
* This
,
898 /*** IWinInetHttpInfo methods ***/
899 HRESULT (STDMETHODCALLTYPE
*QueryInfo
)(
900 IWinInetHttpInfo
* This
,
910 /*** IUnknown methods ***/
911 #define IWinInetHttpInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
912 #define IWinInetHttpInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
913 #define IWinInetHttpInfo_Release(p) (p)->lpVtbl->Release(p)
914 /*** IWinInetInfo methods ***/
915 #define IWinInetHttpInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
916 /*** IWinInetHttpInfo methods ***/
917 #define IWinInetHttpInfo_QueryInfo(p,a,b,c,d,e) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e)
922 #define IWinInetHttpInfo_METHODS \
923 ICOM_MSVTABLE_COMPAT_FIELDS \
924 /*** IUnknown methods ***/ \
925 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
926 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
927 STDMETHOD_(ULONG,Release)(THIS) PURE; \
928 /*** IWinInetInfo methods ***/ \
929 STDMETHOD_(HRESULT,QueryOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD* pcbBuf) PURE; \
930 /*** IWinInetHttpInfo methods ***/ \
931 STDMETHOD_(HRESULT,QueryInfo)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD* pcbBuf, DWORD* pdwFlags, DWORD* pdwReserved) PURE;
933 HRESULT CALLBACK
IWinInetHttpInfo_RemoteQueryInfo_Proxy(
934 IWinInetHttpInfo
* This
,
940 void __RPC_STUB
IWinInetHttpInfo_RemoteQueryInfo_Stub(
941 struct IRpcStubBuffer
* This
,
942 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
943 PRPC_MESSAGE pRpcMessage
,
944 DWORD
* pdwStubPhase
);
945 HRESULT CALLBACK
IWinInetHttpInfo_QueryInfo_Proxy(
946 IWinInetHttpInfo
* This
,
952 HRESULT __RPC_STUB
IWinInetHttpInfo_QueryInfo_Stub(
953 IWinInetHttpInfo
* This
,
960 #endif /* __IWinInetHttpInfo_INTERFACE_DEFINED__ */
962 #ifndef __IPersistMoniker_FWD_DEFINED__
963 #define __IPersistMoniker_FWD_DEFINED__
964 typedef struct IPersistMoniker IPersistMoniker
;
967 typedef IPersistMoniker
*LPPERSISTMONIKER
;
969 /*****************************************************************************
970 * IPersistMoniker interface
972 #ifndef __IPersistMoniker_INTERFACE_DEFINED__
973 #define __IPersistMoniker_INTERFACE_DEFINED__
975 DEFINE_GUID(IID_IPersistMoniker
, 0x79eac9c9, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
976 #if defined(__cplusplus) && !defined(CINTERFACE)
977 struct IPersistMoniker
: public IUnknown
979 virtual HRESULT STDMETHODCALLTYPE
GetClassID(
980 CLSID
* pClassID
) = 0;
982 virtual HRESULT STDMETHODCALLTYPE
IsDirty(
985 virtual HRESULT STDMETHODCALLTYPE
Load(
986 BOOL fFullyAvailable
,
991 virtual HRESULT STDMETHODCALLTYPE
Save(
996 virtual HRESULT STDMETHODCALLTYPE
SaveCompleted(
1000 virtual HRESULT STDMETHODCALLTYPE
GetCurMoniker(
1001 IMoniker
** ppimkName
) = 0;
1005 typedef struct IPersistMonikerVtbl IPersistMonikerVtbl
;
1006 struct IPersistMoniker
{
1007 const IPersistMonikerVtbl
* lpVtbl
;
1009 struct IPersistMonikerVtbl
{
1010 ICOM_MSVTABLE_COMPAT_FIELDS
1012 /*** IUnknown methods ***/
1013 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1014 IPersistMoniker
* This
,
1018 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1019 IPersistMoniker
* This
);
1021 ULONG (STDMETHODCALLTYPE
*Release
)(
1022 IPersistMoniker
* This
);
1024 /*** IPersistMoniker methods ***/
1025 HRESULT (STDMETHODCALLTYPE
*GetClassID
)(
1026 IPersistMoniker
* This
,
1029 HRESULT (STDMETHODCALLTYPE
*IsDirty
)(
1030 IPersistMoniker
* This
);
1032 HRESULT (STDMETHODCALLTYPE
*Load
)(
1033 IPersistMoniker
* This
,
1034 BOOL fFullyAvailable
,
1039 HRESULT (STDMETHODCALLTYPE
*Save
)(
1040 IPersistMoniker
* This
,
1045 HRESULT (STDMETHODCALLTYPE
*SaveCompleted
)(
1046 IPersistMoniker
* This
,
1050 HRESULT (STDMETHODCALLTYPE
*GetCurMoniker
)(
1051 IPersistMoniker
* This
,
1052 IMoniker
** ppimkName
);
1057 /*** IUnknown methods ***/
1058 #define IPersistMoniker_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1059 #define IPersistMoniker_AddRef(p) (p)->lpVtbl->AddRef(p)
1060 #define IPersistMoniker_Release(p) (p)->lpVtbl->Release(p)
1061 /*** IPersistMoniker methods ***/
1062 #define IPersistMoniker_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
1063 #define IPersistMoniker_IsDirty(p) (p)->lpVtbl->IsDirty(p)
1064 #define IPersistMoniker_Load(p,a,b,c,d) (p)->lpVtbl->Load(p,a,b,c,d)
1065 #define IPersistMoniker_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c)
1066 #define IPersistMoniker_SaveCompleted(p,a,b) (p)->lpVtbl->SaveCompleted(p,a,b)
1067 #define IPersistMoniker_GetCurMoniker(p,a) (p)->lpVtbl->GetCurMoniker(p,a)
1072 #define IPersistMoniker_METHODS \
1073 ICOM_MSVTABLE_COMPAT_FIELDS \
1074 /*** IUnknown methods ***/ \
1075 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1076 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1077 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1078 /*** IPersistMoniker methods ***/ \
1079 STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \
1080 STDMETHOD_(HRESULT,IsDirty)(THIS) PURE; \
1081 STDMETHOD_(HRESULT,Load)(THIS_ BOOL fFullyAvailable, IMoniker* pimkName, LPBC pibc, DWORD grfMode) PURE; \
1082 STDMETHOD_(HRESULT,Save)(THIS_ IMoniker* pimkName, LPBC pbc, BOOL fRemember) PURE; \
1083 STDMETHOD_(HRESULT,SaveCompleted)(THIS_ IMoniker* pimkName, LPBC pibc) PURE; \
1084 STDMETHOD_(HRESULT,GetCurMoniker)(THIS_ IMoniker** ppimkName) PURE;
1086 HRESULT CALLBACK
IPersistMoniker_GetClassID_Proxy(
1087 IPersistMoniker
* This
,
1089 void __RPC_STUB
IPersistMoniker_GetClassID_Stub(
1090 struct IRpcStubBuffer
* This
,
1091 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1092 PRPC_MESSAGE pRpcMessage
,
1093 DWORD
* pdwStubPhase
);
1094 HRESULT CALLBACK
IPersistMoniker_IsDirty_Proxy(
1095 IPersistMoniker
* This
);
1096 void __RPC_STUB
IPersistMoniker_IsDirty_Stub(
1097 struct IRpcStubBuffer
* This
,
1098 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1099 PRPC_MESSAGE pRpcMessage
,
1100 DWORD
* pdwStubPhase
);
1101 HRESULT CALLBACK
IPersistMoniker_Load_Proxy(
1102 IPersistMoniker
* This
,
1103 BOOL fFullyAvailable
,
1107 void __RPC_STUB
IPersistMoniker_Load_Stub(
1108 struct IRpcStubBuffer
* This
,
1109 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1110 PRPC_MESSAGE pRpcMessage
,
1111 DWORD
* pdwStubPhase
);
1112 HRESULT CALLBACK
IPersistMoniker_Save_Proxy(
1113 IPersistMoniker
* This
,
1117 void __RPC_STUB
IPersistMoniker_Save_Stub(
1118 struct IRpcStubBuffer
* This
,
1119 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1120 PRPC_MESSAGE pRpcMessage
,
1121 DWORD
* pdwStubPhase
);
1122 HRESULT CALLBACK
IPersistMoniker_SaveCompleted_Proxy(
1123 IPersistMoniker
* This
,
1126 void __RPC_STUB
IPersistMoniker_SaveCompleted_Stub(
1127 struct IRpcStubBuffer
* This
,
1128 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1129 PRPC_MESSAGE pRpcMessage
,
1130 DWORD
* pdwStubPhase
);
1131 HRESULT CALLBACK
IPersistMoniker_GetCurMoniker_Proxy(
1132 IPersistMoniker
* This
,
1133 IMoniker
** ppimkName
);
1134 void __RPC_STUB
IPersistMoniker_GetCurMoniker_Stub(
1135 struct IRpcStubBuffer
* This
,
1136 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1137 PRPC_MESSAGE pRpcMessage
,
1138 DWORD
* pdwStubPhase
);
1140 #endif /* __IPersistMoniker_INTERFACE_DEFINED__ */
1142 #ifndef __IInternetProtocolInfo_FWD_DEFINED__
1143 #define __IInternetProtocolInfo_FWD_DEFINED__
1144 typedef struct IInternetProtocolInfo IInternetProtocolInfo
;
1147 typedef IInternetProtocolInfo
*LPIINTERNETPROTOCOLINFO
;
1149 typedef enum _tagPARSEACTION
{
1150 PARSE_CANONICALIZE
= 1,
1158 PARSE_PATH_FROM_URL
,
1159 PARSE_URL_FROM_PATH
,
1166 PARSE_SECURITY_DOMAIN
,
1171 typedef enum _tagPSUACTION
{
1173 PSU_SECURITY_URL_ONLY
1176 typedef enum _tagQUERYOPTION
{
1177 QUERY_EXPIRATION_DATE
= 1,
1178 QUERY_TIME_OF_LAST_CHANGE
,
1179 QUERY_CONTENT_ENCODING
,
1186 QUERY_IS_INSTALLEDENTRY
,
1187 QUERY_IS_CACHED_OR_MAPPED
,
1193 /*****************************************************************************
1194 * IInternetProtocolInfo interface
1196 #ifndef __IInternetProtocolInfo_INTERFACE_DEFINED__
1197 #define __IInternetProtocolInfo_INTERFACE_DEFINED__
1199 DEFINE_GUID(IID_IInternetProtocolInfo
, 0x79eac9ec, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1200 #if defined(__cplusplus) && !defined(CINTERFACE)
1201 struct IInternetProtocolInfo
: public IUnknown
1203 virtual HRESULT STDMETHODCALLTYPE
ParseUrl(
1205 PARSEACTION ParseAction
,
1210 DWORD dwReserved
) = 0;
1212 virtual HRESULT STDMETHODCALLTYPE
CombineUrl(
1214 LPCWSTR pwzRelativeUrl
,
1215 DWORD dwCombineFlags
,
1219 DWORD dwReserved
) = 0;
1221 virtual HRESULT STDMETHODCALLTYPE
CompareUrl(
1224 DWORD dwCompareFlags
) = 0;
1226 virtual HRESULT STDMETHODCALLTYPE
QueryInfo(
1228 QUERYOPTION OueryOption
,
1233 DWORD dwReserved
) = 0;
1237 typedef struct IInternetProtocolInfoVtbl IInternetProtocolInfoVtbl
;
1238 struct IInternetProtocolInfo
{
1239 const IInternetProtocolInfoVtbl
* lpVtbl
;
1241 struct IInternetProtocolInfoVtbl
{
1242 ICOM_MSVTABLE_COMPAT_FIELDS
1244 /*** IUnknown methods ***/
1245 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1246 IInternetProtocolInfo
* This
,
1250 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1251 IInternetProtocolInfo
* This
);
1253 ULONG (STDMETHODCALLTYPE
*Release
)(
1254 IInternetProtocolInfo
* This
);
1256 /*** IInternetProtocolInfo methods ***/
1257 HRESULT (STDMETHODCALLTYPE
*ParseUrl
)(
1258 IInternetProtocolInfo
* This
,
1260 PARSEACTION ParseAction
,
1267 HRESULT (STDMETHODCALLTYPE
*CombineUrl
)(
1268 IInternetProtocolInfo
* This
,
1270 LPCWSTR pwzRelativeUrl
,
1271 DWORD dwCombineFlags
,
1277 HRESULT (STDMETHODCALLTYPE
*CompareUrl
)(
1278 IInternetProtocolInfo
* This
,
1281 DWORD dwCompareFlags
);
1283 HRESULT (STDMETHODCALLTYPE
*QueryInfo
)(
1284 IInternetProtocolInfo
* This
,
1286 QUERYOPTION OueryOption
,
1296 /*** IUnknown methods ***/
1297 #define IInternetProtocolInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1298 #define IInternetProtocolInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
1299 #define IInternetProtocolInfo_Release(p) (p)->lpVtbl->Release(p)
1300 /*** IInternetProtocolInfo methods ***/
1301 #define IInternetProtocolInfo_ParseUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->ParseUrl(p,a,b,c,d,e,f,g)
1302 #define IInternetProtocolInfo_CombineUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->CombineUrl(p,a,b,c,d,e,f,g)
1303 #define IInternetProtocolInfo_CompareUrl(p,a,b,c) (p)->lpVtbl->CompareUrl(p,a,b,c)
1304 #define IInternetProtocolInfo_QueryInfo(p,a,b,c,d,e,f,g) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e,f,g)
1309 #define IInternetProtocolInfo_METHODS \
1310 ICOM_MSVTABLE_COMPAT_FIELDS \
1311 /*** IUnknown methods ***/ \
1312 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1313 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1314 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1315 /*** IInternetProtocolInfo methods ***/ \
1316 STDMETHOD_(HRESULT,ParseUrl)(THIS_ LPCWSTR pwzUrl, PARSEACTION ParseAction, DWORD dwParseFlags, LPWSTR pwzResult, DWORD cchResult, DWORD* pcchResult, DWORD dwReserved) PURE; \
1317 STDMETHOD_(HRESULT,CombineUrl)(THIS_ LPCWSTR pwzBaseUrl, LPCWSTR pwzRelativeUrl, DWORD dwCombineFlags, LPWSTR pwzResult, DWORD cchResult, DWORD* pcchResult, DWORD dwReserved) PURE; \
1318 STDMETHOD_(HRESULT,CompareUrl)(THIS_ LPCWSTR pwzUrl1, LPCWSTR pwzUrl2, DWORD dwCompareFlags) PURE; \
1319 STDMETHOD_(HRESULT,QueryInfo)(THIS_ LPCWSTR pwzUrl, QUERYOPTION OueryOption, DWORD dwQueryFlags, LPVOID pBuffer, DWORD cbBuffer, DWORD* pcbBuf, DWORD dwReserved) PURE;
1321 HRESULT CALLBACK
IInternetProtocolInfo_ParseUrl_Proxy(
1322 IInternetProtocolInfo
* This
,
1324 PARSEACTION ParseAction
,
1330 void __RPC_STUB
IInternetProtocolInfo_ParseUrl_Stub(
1331 struct IRpcStubBuffer
* This
,
1332 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1333 PRPC_MESSAGE pRpcMessage
,
1334 DWORD
* pdwStubPhase
);
1335 HRESULT CALLBACK
IInternetProtocolInfo_CombineUrl_Proxy(
1336 IInternetProtocolInfo
* This
,
1338 LPCWSTR pwzRelativeUrl
,
1339 DWORD dwCombineFlags
,
1344 void __RPC_STUB
IInternetProtocolInfo_CombineUrl_Stub(
1345 struct IRpcStubBuffer
* This
,
1346 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1347 PRPC_MESSAGE pRpcMessage
,
1348 DWORD
* pdwStubPhase
);
1349 HRESULT CALLBACK
IInternetProtocolInfo_CompareUrl_Proxy(
1350 IInternetProtocolInfo
* This
,
1353 DWORD dwCompareFlags
);
1354 void __RPC_STUB
IInternetProtocolInfo_CompareUrl_Stub(
1355 struct IRpcStubBuffer
* This
,
1356 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1357 PRPC_MESSAGE pRpcMessage
,
1358 DWORD
* pdwStubPhase
);
1359 HRESULT CALLBACK
IInternetProtocolInfo_QueryInfo_Proxy(
1360 IInternetProtocolInfo
* This
,
1362 QUERYOPTION OueryOption
,
1368 void __RPC_STUB
IInternetProtocolInfo_QueryInfo_Stub(
1369 struct IRpcStubBuffer
* This
,
1370 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1371 PRPC_MESSAGE pRpcMessage
,
1372 DWORD
* pdwStubPhase
);
1374 #endif /* __IInternetProtocolInfo_INTERFACE_DEFINED__ */
1376 #ifndef __IInternetSession_FWD_DEFINED__
1377 #define __IInternetSession_FWD_DEFINED__
1378 typedef struct IInternetSession IInternetSession
;
1381 typedef IInternetSession
*LPIINTERNETSESSION
;
1383 typedef enum _tagOIBDG_FLAGS
{
1384 OIBDG_APARTMENTTHREADED
= 0x100,
1385 OIBDG_DATAONLY
= 0x1000
1388 /*****************************************************************************
1389 * IInternetSession interface
1391 #ifndef __IInternetSession_INTERFACE_DEFINED__
1392 #define __IInternetSession_INTERFACE_DEFINED__
1394 DEFINE_GUID(IID_IInternetSession
, 0x79eac9e7, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1395 #if defined(__cplusplus) && !defined(CINTERFACE)
1396 struct IInternetSession
: public IUnknown
1398 virtual HRESULT STDMETHODCALLTYPE
RegisterNameSpace(
1401 LPCWSTR pwzProtocol
,
1403 const LPCWSTR
* ppwzPatterns
,
1404 DWORD dwReserved
) = 0;
1406 virtual HRESULT STDMETHODCALLTYPE
UnregisterNameSpace(
1408 LPCWSTR pszProtocol
) = 0;
1410 virtual HRESULT STDMETHODCALLTYPE
RegisterMimeFilter(
1413 LPCWSTR pwzType
) = 0;
1415 virtual HRESULT STDMETHODCALLTYPE
UnregisterMimeFilter(
1417 LPCWSTR pwzType
) = 0;
1419 virtual HRESULT STDMETHODCALLTYPE
CreateBinding(
1422 IUnknown
* pUnkOuter
,
1425 DWORD dwOption
) = 0;
1427 virtual HRESULT STDMETHODCALLTYPE
SetSessionOption(
1430 DWORD dwBufferLength
,
1431 DWORD dwReserved
) = 0;
1435 typedef struct IInternetSessionVtbl IInternetSessionVtbl
;
1436 struct IInternetSession
{
1437 const IInternetSessionVtbl
* lpVtbl
;
1439 struct IInternetSessionVtbl
{
1440 ICOM_MSVTABLE_COMPAT_FIELDS
1442 /*** IUnknown methods ***/
1443 HRESULT (STDMETHODCALLTYPE
*QueryInterface
)(
1444 IInternetSession
* This
,
1448 ULONG (STDMETHODCALLTYPE
*AddRef
)(
1449 IInternetSession
* This
);
1451 ULONG (STDMETHODCALLTYPE
*Release
)(
1452 IInternetSession
* This
);
1454 /*** IInternetSession methods ***/
1455 HRESULT (STDMETHODCALLTYPE
*RegisterNameSpace
)(
1456 IInternetSession
* This
,
1459 LPCWSTR pwzProtocol
,
1461 const LPCWSTR
* ppwzPatterns
,
1464 HRESULT (STDMETHODCALLTYPE
*UnregisterNameSpace
)(
1465 IInternetSession
* This
,
1467 LPCWSTR pszProtocol
);
1469 HRESULT (STDMETHODCALLTYPE
*RegisterMimeFilter
)(
1470 IInternetSession
* This
,
1475 HRESULT (STDMETHODCALLTYPE
*UnregisterMimeFilter
)(
1476 IInternetSession
* This
,
1480 HRESULT (STDMETHODCALLTYPE
*CreateBinding
)(
1481 IInternetSession
* This
,
1484 IUnknown
* pUnkOuter
,
1489 HRESULT (STDMETHODCALLTYPE
*SetSessionOption
)(
1490 IInternetSession
* This
,
1493 DWORD dwBufferLength
,
1499 /*** IUnknown methods ***/
1500 #define IInternetSession_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1501 #define IInternetSession_AddRef(p) (p)->lpVtbl->AddRef(p)
1502 #define IInternetSession_Release(p) (p)->lpVtbl->Release(p)
1503 /*** IInternetSession methods ***/
1504 #define IInternetSession_RegisterNameSpace(p,a,b,c,d,e,f) (p)->lpVtbl->RegisterNameSpace(p,a,b,c,d,e,f)
1505 #define IInternetSession_UnregisterNameSpace(p,a,b) (p)->lpVtbl->UnregisterNameSpace(p,a,b)
1506 #define IInternetSession_RegisterMimeFilter(p,a,b,c) (p)->lpVtbl->RegisterMimeFilter(p,a,b,c)
1507 #define IInternetSession_UnregisterMimeFilter(p,a,b) (p)->lpVtbl->UnregisterMimeFilter(p,a,b)
1508 #define IInternetSession_CreateBinding(p,a,b,c,d,e,f) (p)->lpVtbl->CreateBinding(p,a,b,c,d,e,f)
1509 #define IInternetSession_SetSessionOption(p,a,b,c,d) (p)->lpVtbl->SetSessionOption(p,a,b,c,d)
1514 #define IInternetSession_METHODS \
1515 ICOM_MSVTABLE_COMPAT_FIELDS \
1516 /*** IUnknown methods ***/ \
1517 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1518 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1519 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1520 /*** IInternetSession methods ***/ \
1521 STDMETHOD_(HRESULT,RegisterNameSpace)(THIS_ IClassFactory* pCF, REFCLSID rclsid, LPCWSTR pwzProtocol, ULONG cPatterns, const LPCWSTR* ppwzPatterns, DWORD dwReserved) PURE; \
1522 STDMETHOD_(HRESULT,UnregisterNameSpace)(THIS_ IClassFactory* pCF, LPCWSTR pszProtocol) PURE; \
1523 STDMETHOD_(HRESULT,RegisterMimeFilter)(THIS_ IClassFactory* pCF, REFCLSID rclsid, LPCWSTR pwzType) PURE; \
1524 STDMETHOD_(HRESULT,UnregisterMimeFilter)(THIS_ IClassFactory* pCF, LPCWSTR pwzType) PURE; \
1525 STDMETHOD_(HRESULT,CreateBinding)(THIS_ LPBC pBC, LPCWSTR szUrl, IUnknown* pUnkOuter, IUnknown** ppUnk, void** ppOInetProt, DWORD dwOption) PURE; \
1526 STDMETHOD_(HRESULT,SetSessionOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD dwReserved) PURE;
1528 HRESULT CALLBACK
IInternetSession_RegisterNameSpace_Proxy(
1529 IInternetSession
* This
,
1532 LPCWSTR pwzProtocol
,
1534 const LPCWSTR
* ppwzPatterns
,
1536 void __RPC_STUB
IInternetSession_RegisterNameSpace_Stub(
1537 struct IRpcStubBuffer
* This
,
1538 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1539 PRPC_MESSAGE pRpcMessage
,
1540 DWORD
* pdwStubPhase
);
1541 HRESULT CALLBACK
IInternetSession_UnregisterNameSpace_Proxy(
1542 IInternetSession
* This
,
1544 LPCWSTR pszProtocol
);
1545 void __RPC_STUB
IInternetSession_UnregisterNameSpace_Stub(
1546 struct IRpcStubBuffer
* This
,
1547 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1548 PRPC_MESSAGE pRpcMessage
,
1549 DWORD
* pdwStubPhase
);
1550 HRESULT CALLBACK
IInternetSession_RegisterMimeFilter_Proxy(
1551 IInternetSession
* This
,
1555 void __RPC_STUB
IInternetSession_RegisterMimeFilter_Stub(
1556 struct IRpcStubBuffer
* This
,
1557 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1558 PRPC_MESSAGE pRpcMessage
,
1559 DWORD
* pdwStubPhase
);
1560 HRESULT CALLBACK
IInternetSession_UnregisterMimeFilter_Proxy(
1561 IInternetSession
* This
,
1564 void __RPC_STUB
IInternetSession_UnregisterMimeFilter_Stub(
1565 struct IRpcStubBuffer
* This
,
1566 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1567 PRPC_MESSAGE pRpcMessage
,
1568 DWORD
* pdwStubPhase
);
1569 HRESULT CALLBACK
IInternetSession_CreateBinding_Proxy(
1570 IInternetSession
* This
,
1573 IUnknown
* pUnkOuter
,
1577 void __RPC_STUB
IInternetSession_CreateBinding_Stub(
1578 struct IRpcStubBuffer
* This
,
1579 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1580 PRPC_MESSAGE pRpcMessage
,
1581 DWORD
* pdwStubPhase
);
1582 HRESULT CALLBACK
IInternetSession_SetSessionOption_Proxy(
1583 IInternetSession
* This
,
1586 DWORD dwBufferLength
,
1588 void __RPC_STUB
IInternetSession_SetSessionOption_Stub(
1589 struct IRpcStubBuffer
* This
,
1590 struct IRpcChannelBuffer
* pRpcChannelBuffer
,
1591 PRPC_MESSAGE pRpcMessage
,
1592 DWORD
* pdwStubPhase
);
1594 #endif /* __IInternetSession_INTERFACE_DEFINED__ */
1596 DEFINE_GUID(IID_IAsyncMoniker
, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
1597 DEFINE_GUID(CLSID_StdURLMoniker
, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
1598 #define MK_S_ASYNCHRONOUS 0x000401E8
1599 #define S_ASYNCHRONOUS MK_S_ASYNCHRONOUS
1600 #define INET_E_ERROR_FIRST 0x800C0002L
1601 #define INET_E_INVALID_URL 0x800C0002L
1602 #define INET_E_NO_SESSION 0x800C0003L
1603 #define INET_E_CANNOT_CONNECT 0x800C0004L
1604 #define INET_E_RESOURCE_NOT_FOUND 0x800C0005L
1605 #define INET_E_OBJECT_NOT_FOUND 0x800C0006L
1606 #define INET_E_DATA_NOT_AVAILABLE 0x800C0007L
1607 #define INET_E_DOWNLOAD_FAILURE 0x800C0008L
1608 #define INET_E_AUTHENTICATION_REQUIRED 0x800C0009L
1609 #define INET_E_NO_VALID_MEDIA 0x800C000AL
1610 #define INET_E_CONNECTION_TIMEOUT 0x800C000BL
1611 #define INET_E_INVALID_REQUEST 0x800C000CL
1612 #define INET_E_UNKNOWN_PROTOCOL 0x800C000DL
1613 #define INET_E_SECURITY_PROBLEM 0x800C000EL
1614 #define INET_E_CANNOT_LOAD_DATA 0x800C000FL
1615 #define INET_E_CANNOT_INSTANTIATE_OBJECT 0x800C0010L
1616 #define INET_E_QUERYOPTION_UNKNOWN 0x800C0013L
1617 #define INET_E_REDIRECT_FAILED 0x800C0014L
1618 #define INET_E_REDIRECT_TO_DIR 0x800C0015L
1619 #define INET_E_CANNOT_LOCK_REQUEST 0x800C0016L
1620 #define INET_E_ERROR_LAST INET_E_REDIRECT_TO_DIR
1621 HRESULT WINAPI
CreateURLMoniker(IMoniker
*pmkContext
, LPCWSTR szURL
, IMoniker
**ppmk
);
1622 HRESULT WINAPI
RegisterBindStatusCallback(IBindCtx
*pbc
, IBindStatusCallback
*pbsc
, IBindStatusCallback
**ppbsc
, DWORD dwReserved
);
1623 HRESULT WINAPI
CompareSecurityIds(BYTE
*,DWORD
,BYTE
*,DWORD
,DWORD
);
1624 HRESULT WINAPI
URLDownloadToFileA(LPUNKNOWN pCaller
, LPCSTR szURL
, LPCSTR szFileName
, DWORD dwReserved
, LPBINDSTATUSCALLBACK lpfnCB
);
1625 HRESULT WINAPI
URLDownloadToFileW(LPUNKNOWN pCaller
, LPCWSTR szURL
, LPCWSTR szFileName
, DWORD dwReserved
, LPBINDSTATUSCALLBACK lpfnCB
);
1626 HRESULT WINAPI
CoInternetGetSession(DWORD
,IInternetSession
**,DWORD
);
1627 HRESULT WINAPI
MkParseDisplayNameEx(IBindCtx
*,LPCWSTR
,ULONG
*,IMoniker
**);
1628 HRESULT WINAPI
IsAsyncMoniker(IMoniker
* pmk
);
1629 HRESULT WINAPI
CreateAsyncBindCtx(DWORD
, IBindStatusCallback
*, IEnumFORMATETC
*, IBindCtx
**);
1630 HRESULT WINAPI
CoInternetCombineUrl(LPCWSTR
,LPCWSTR
,DWORD
,LPWSTR
,DWORD
,DWORD
*,DWORD
);
1631 HRESULT WINAPI
CoInternetCompareUrl(LPCWSTR
,LPCWSTR
,DWORD
);
1632 #define OInetCombineUrl CoInternetCombineUrl
1633 #define OInetCompareUrl CoInternetCompareUrl
1634 #define OInetGetSession CoInternetGetSession
1635 #define MKSYS_URLMONIKER 6
1639 #endif /* __WIDL_URLMON_H */