Return error from low level driver when necessary.
[wine.git] / include / urlmon.h
blob4b1c681e91ca31fc330e8e3201b69a497626a19b
1 /*** Autogenerated by WIDL 0.1 from urlmon.idl - Do not edit ***/
2 #include <rpc.h>
3 #include <rpcndr.h>
5 #ifndef __WIDL_URLMON_H
6 #define __WIDL_URLMON_H
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 #include <objidl.h>
11 #include <oleidl.h>
12 #include <servprov.h>
13 #ifndef __IBinding_FWD_DEFINED__
14 #define __IBinding_FWD_DEFINED__
15 typedef struct IBinding IBinding;
16 #endif
18 typedef IBinding *LPBINDING;
20 /*****************************************************************************
21 * IBinding interface
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(
31 ) = 0;
33 virtual HRESULT STDMETHODCALLTYPE Suspend(
34 ) = 0;
36 virtual HRESULT STDMETHODCALLTYPE Resume(
37 ) = 0;
39 virtual HRESULT STDMETHODCALLTYPE SetPriority(
40 LONG nPriority) = 0;
42 virtual HRESULT STDMETHODCALLTYPE GetPriority(
43 LONG* pnPriority) = 0;
45 virtual HRESULT STDMETHODCALLTYPE GetBindResult(
46 CLSID* pclsidProtocol,
47 DWORD* pdwResult,
48 LPOLESTR* pszResult,
49 DWORD* pdwReserved) = 0;
52 #else
53 typedef struct IBindingVtbl IBindingVtbl;
54 struct IBinding {
55 const IBindingVtbl* lpVtbl;
57 struct IBindingVtbl {
58 BEGIN_INTERFACE
60 /*** IUnknown methods ***/
61 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
62 IBinding* This,
63 REFIID riid,
64 void** ppvObject);
66 ULONG (STDMETHODCALLTYPE *AddRef)(
67 IBinding* This);
69 ULONG (STDMETHODCALLTYPE *Release)(
70 IBinding* This);
72 /*** IBinding methods ***/
73 HRESULT (STDMETHODCALLTYPE *Abort)(
74 IBinding* This);
76 HRESULT (STDMETHODCALLTYPE *Suspend)(
77 IBinding* This);
79 HRESULT (STDMETHODCALLTYPE *Resume)(
80 IBinding* This);
82 HRESULT (STDMETHODCALLTYPE *SetPriority)(
83 IBinding* This,
84 LONG nPriority);
86 HRESULT (STDMETHODCALLTYPE *GetPriority)(
87 IBinding* This,
88 LONG* pnPriority);
90 HRESULT (STDMETHODCALLTYPE *GetBindResult)(
91 IBinding* This,
92 CLSID* pclsidProtocol,
93 DWORD* pdwResult,
94 LPOLESTR* pszResult,
95 DWORD* pdwReserved);
97 END_INTERFACE
100 #ifdef COBJMACROS
101 /*** IUnknown methods ***/
102 #define IBinding_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
103 #define IBinding_AddRef(p) (p)->lpVtbl->AddRef(p)
104 #define IBinding_Release(p) (p)->lpVtbl->Release(p)
105 /*** IBinding methods ***/
106 #define IBinding_Abort(p) (p)->lpVtbl->Abort(p)
107 #define IBinding_Suspend(p) (p)->lpVtbl->Suspend(p)
108 #define IBinding_Resume(p) (p)->lpVtbl->Resume(p)
109 #define IBinding_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a)
110 #define IBinding_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
111 #define IBinding_GetBindResult(p,a,b,c,d) (p)->lpVtbl->GetBindResult(p,a,b,c,d)
112 #endif
114 #endif
116 #define IBinding_METHODS \
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(
130 IBinding* This);
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(
137 IBinding* This);
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(
144 IBinding* This);
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(
151 IBinding* This,
152 LONG nPriority);
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(
159 IBinding* This,
160 LONG* pnPriority);
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(
167 IBinding* This,
168 CLSID* pclsidProtocol,
169 DWORD* pdwResult,
170 LPOLESTR* pszResult,
171 DWORD dwReserved);
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(
178 IBinding* This,
179 CLSID* pclsidProtocol,
180 DWORD* pdwResult,
181 LPOLESTR* pszResult,
182 DWORD* pdwReserved);
183 HRESULT __RPC_STUB IBinding_GetBindResult_Stub(
184 IBinding* This,
185 CLSID* pclsidProtocol,
186 DWORD* pdwResult,
187 LPOLESTR* pszResult,
188 DWORD dwReserved);
190 #endif /* __IBinding_INTERFACE_DEFINED__ */
192 #ifndef __IBindStatusCallback_FWD_DEFINED__
193 #define __IBindStatusCallback_FWD_DEFINED__
194 typedef struct IBindStatusCallback IBindStatusCallback;
195 #endif
197 typedef IBindStatusCallback *LPBINDSTATUSCALLBACK;
199 typedef enum {
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,
211 BINDF_NO_UI = 0x800,
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
224 } BINDF;
226 typedef struct _tagBINDINFO {
227 ULONG cbSize;
228 LPWSTR szExtraInfo;
229 STGMEDIUM stgmedData;
230 DWORD grfBindInfoF;
231 DWORD dwBindVerb;
232 LPWSTR szCustomVerb;
233 DWORD cbStgmedData;
234 DWORD dwOptions;
235 DWORD dwOptionsFlags;
236 DWORD dwCodePage;
237 SECURITY_ATTRIBUTES securityAttributes;
238 IID iid;
239 IUnknown *pUnk;
240 DWORD dwReserved;
241 } BINDINFO;
243 typedef struct _REMSECURITY_ATTRIBUTES {
244 DWORD nLength;
245 DWORD lpSecurityDescriptor;
246 BOOL bInheritHandle;
247 } REMSECURITY_ATTRIBUTES, *PREMSECURITY_ATTRIBUTES, *LPREMSECURITY_ATTRIBUTES;
249 typedef struct _tagRemBINDINFO {
250 ULONG cbSize;
251 LPWSTR szExtraInfo;
252 DWORD grfBindInfoF;
253 DWORD dwBindVerb;
254 LPWSTR szCustomVerb;
255 DWORD cbstgmedData;
256 DWORD dwOptions;
257 DWORD dwOptionsFlags;
258 DWORD dwCodePage;
259 REMSECURITY_ATTRIBUTES securityAttributes;
260 IID iid;
261 IUnknown *pUnk;
262 DWORD dwReserved;
263 } RemBINDINFO;
265 typedef struct tagRemFORMATETC {
266 DWORD cfFormat;
267 DWORD ptd;
268 DWORD dwAspect;
269 LONG lindex;
270 DWORD tymed;
271 } RemFORMATETC, *LPREMFORMATETC;
273 typedef enum {
274 BSCF_FIRSTDATANOTIFICATION = 0x1,
275 BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
276 BSCF_LASTDATANOTIFICATION = 0x4,
277 BSCF_DATAFULLYAVAILABLE = 0x8,
278 BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10
279 } BSCF;
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,
302 BINDSTATUS_ENCODING,
303 BINDSTATUS_VERFIEDMIMETYPEAVAILABLE,
304 BINDSTATUS_CLASSINSTALLLOCATION,
305 BINDSTATUS_DECODING,
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
330 } BINDSTATUS;
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(
343 DWORD dwReserved,
344 IBinding* pib) = 0;
346 virtual HRESULT STDMETHODCALLTYPE GetPriority(
347 LONG* pnPriority) = 0;
349 virtual HRESULT STDMETHODCALLTYPE OnLowResource(
350 DWORD reserved) = 0;
352 virtual HRESULT STDMETHODCALLTYPE OnProgress(
353 ULONG ulProgress,
354 ULONG ulProgressMax,
355 ULONG ulStatusCode,
356 LPCWSTR szStatusText) = 0;
358 virtual HRESULT STDMETHODCALLTYPE OnStopBinding(
359 HRESULT hresult,
360 LPCWSTR szError) = 0;
362 virtual HRESULT STDMETHODCALLTYPE GetBindInfo(
363 DWORD* grfBINDF,
364 BINDINFO* pbindinfo) = 0;
366 virtual HRESULT STDMETHODCALLTYPE OnDataAvailable(
367 DWORD grfBSCF,
368 DWORD dwSize,
369 FORMATETC* pformatetc,
370 STGMEDIUM* pstgmed) = 0;
372 virtual HRESULT STDMETHODCALLTYPE OnObjectAvailable(
373 REFIID riid,
374 IUnknown* punk) = 0;
377 #else
378 typedef struct IBindStatusCallbackVtbl IBindStatusCallbackVtbl;
379 struct IBindStatusCallback {
380 const IBindStatusCallbackVtbl* lpVtbl;
382 struct IBindStatusCallbackVtbl {
383 BEGIN_INTERFACE
385 /*** IUnknown methods ***/
386 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
387 IBindStatusCallback* This,
388 REFIID riid,
389 void** ppvObject);
391 ULONG (STDMETHODCALLTYPE *AddRef)(
392 IBindStatusCallback* This);
394 ULONG (STDMETHODCALLTYPE *Release)(
395 IBindStatusCallback* This);
397 /*** IBindStatusCallback methods ***/
398 HRESULT (STDMETHODCALLTYPE *OnStartBinding)(
399 IBindStatusCallback* This,
400 DWORD dwReserved,
401 IBinding* pib);
403 HRESULT (STDMETHODCALLTYPE *GetPriority)(
404 IBindStatusCallback* This,
405 LONG* pnPriority);
407 HRESULT (STDMETHODCALLTYPE *OnLowResource)(
408 IBindStatusCallback* This,
409 DWORD reserved);
411 HRESULT (STDMETHODCALLTYPE *OnProgress)(
412 IBindStatusCallback* This,
413 ULONG ulProgress,
414 ULONG ulProgressMax,
415 ULONG ulStatusCode,
416 LPCWSTR szStatusText);
418 HRESULT (STDMETHODCALLTYPE *OnStopBinding)(
419 IBindStatusCallback* This,
420 HRESULT hresult,
421 LPCWSTR szError);
423 HRESULT (STDMETHODCALLTYPE *GetBindInfo)(
424 IBindStatusCallback* This,
425 DWORD* grfBINDF,
426 BINDINFO* pbindinfo);
428 HRESULT (STDMETHODCALLTYPE *OnDataAvailable)(
429 IBindStatusCallback* This,
430 DWORD grfBSCF,
431 DWORD dwSize,
432 FORMATETC* pformatetc,
433 STGMEDIUM* pstgmed);
435 HRESULT (STDMETHODCALLTYPE *OnObjectAvailable)(
436 IBindStatusCallback* This,
437 REFIID riid,
438 IUnknown* punk);
440 END_INTERFACE
443 #ifdef COBJMACROS
444 /*** IUnknown methods ***/
445 #define IBindStatusCallback_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
446 #define IBindStatusCallback_AddRef(p) (p)->lpVtbl->AddRef(p)
447 #define IBindStatusCallback_Release(p) (p)->lpVtbl->Release(p)
448 /*** IBindStatusCallback methods ***/
449 #define IBindStatusCallback_OnStartBinding(p,a,b) (p)->lpVtbl->OnStartBinding(p,a,b)
450 #define IBindStatusCallback_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
451 #define IBindStatusCallback_OnLowResource(p,a) (p)->lpVtbl->OnLowResource(p,a)
452 #define IBindStatusCallback_OnProgress(p,a,b,c,d) (p)->lpVtbl->OnProgress(p,a,b,c,d)
453 #define IBindStatusCallback_OnStopBinding(p,a,b) (p)->lpVtbl->OnStopBinding(p,a,b)
454 #define IBindStatusCallback_GetBindInfo(p,a,b) (p)->lpVtbl->GetBindInfo(p,a,b)
455 #define IBindStatusCallback_OnDataAvailable(p,a,b,c,d) (p)->lpVtbl->OnDataAvailable(p,a,b,c,d)
456 #define IBindStatusCallback_OnObjectAvailable(p,a,b) (p)->lpVtbl->OnObjectAvailable(p,a,b)
457 #endif
459 #endif
461 #define IBindStatusCallback_METHODS \
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,
478 DWORD dwReserved,
479 IBinding* pib);
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,
487 LONG* pnPriority);
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,
495 DWORD reserved);
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,
503 ULONG ulProgress,
504 ULONG ulProgressMax,
505 ULONG ulStatusCode,
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,
514 HRESULT hresult,
515 LPCWSTR szError);
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,
523 DWORD* grfBINDF,
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,
533 DWORD* grfBINDF,
534 BINDINFO* pbindinfo);
535 HRESULT __RPC_STUB IBindStatusCallback_GetBindInfo_Stub(
536 IBindStatusCallback* This,
537 DWORD* grfBINDF,
538 RemBINDINFO* pbindinfo,
539 RemSTGMEDIUM* pstgmed);
540 HRESULT CALLBACK IBindStatusCallback_RemoteOnDataAvailable_Proxy(
541 IBindStatusCallback* This,
542 DWORD grfBSCF,
543 DWORD dwSize,
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,
553 DWORD grfBSCF,
554 DWORD dwSize,
555 FORMATETC* pformatetc,
556 STGMEDIUM* pstgmed);
557 HRESULT __RPC_STUB IBindStatusCallback_OnDataAvailable_Stub(
558 IBindStatusCallback* This,
559 DWORD grfBSCF,
560 DWORD dwSize,
561 RemFORMATETC* pformatetc,
562 RemSTGMEDIUM* pstgmed);
563 HRESULT CALLBACK IBindStatusCallback_OnObjectAvailable_Proxy(
564 IBindStatusCallback* This,
565 REFIID riid,
566 IUnknown* punk);
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;
580 #endif
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(
595 LPOLESTR szName,
596 IBindCtx* pBC,
597 IMoniker** ppmk,
598 DWORD dwReserved) = 0;
600 virtual HRESULT STDMETHODCALLTYPE MonikerBindToStorage(
601 IMoniker* pMk,
602 IBindCtx* pBC,
603 IBindStatusCallback* pBSC,
604 REFIID riid,
605 void** ppvObj) = 0;
607 virtual HRESULT STDMETHODCALLTYPE MonikerBindToObject(
608 IMoniker* pMk,
609 IBindCtx* pBC,
610 IBindStatusCallback* pBSC,
611 REFIID riid,
612 void** ppvObj) = 0;
615 #else
616 typedef struct IBindHostVtbl IBindHostVtbl;
617 struct IBindHost {
618 const IBindHostVtbl* lpVtbl;
620 struct IBindHostVtbl {
621 BEGIN_INTERFACE
623 /*** IUnknown methods ***/
624 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
625 IBindHost* This,
626 REFIID riid,
627 void** ppvObject);
629 ULONG (STDMETHODCALLTYPE *AddRef)(
630 IBindHost* This);
632 ULONG (STDMETHODCALLTYPE *Release)(
633 IBindHost* This);
635 /*** IBindHost methods ***/
636 HRESULT (STDMETHODCALLTYPE *CreateMoniker)(
637 IBindHost* This,
638 LPOLESTR szName,
639 IBindCtx* pBC,
640 IMoniker** ppmk,
641 DWORD dwReserved);
643 HRESULT (STDMETHODCALLTYPE *MonikerBindToStorage)(
644 IBindHost* This,
645 IMoniker* pMk,
646 IBindCtx* pBC,
647 IBindStatusCallback* pBSC,
648 REFIID riid,
649 void** ppvObj);
651 HRESULT (STDMETHODCALLTYPE *MonikerBindToObject)(
652 IBindHost* This,
653 IMoniker* pMk,
654 IBindCtx* pBC,
655 IBindStatusCallback* pBSC,
656 REFIID riid,
657 void** ppvObj);
659 END_INTERFACE
662 #ifdef COBJMACROS
663 /*** IUnknown methods ***/
664 #define IBindHost_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
665 #define IBindHost_AddRef(p) (p)->lpVtbl->AddRef(p)
666 #define IBindHost_Release(p) (p)->lpVtbl->Release(p)
667 /*** IBindHost methods ***/
668 #define IBindHost_CreateMoniker(p,a,b,c,d) (p)->lpVtbl->CreateMoniker(p,a,b,c,d)
669 #define IBindHost_MonikerBindToStorage(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToStorage(p,a,b,c,d,e)
670 #define IBindHost_MonikerBindToObject(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToObject(p,a,b,c,d,e)
671 #endif
673 #endif
675 #define IBindHost_METHODS \
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(
686 IBindHost* This,
687 LPOLESTR szName,
688 IBindCtx* pBC,
689 IMoniker** ppmk,
690 DWORD dwReserved);
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(
697 IBindHost* This,
698 IMoniker* pMk,
699 IBindCtx* pBC,
700 IBindStatusCallback* pBSC,
701 REFIID riid,
702 IUnknown** ppvObj);
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(
709 IBindHost* This,
710 IMoniker* pMk,
711 IBindCtx* pBC,
712 IBindStatusCallback* pBSC,
713 REFIID riid,
714 void** ppvObj);
715 HRESULT __RPC_STUB IBindHost_MonikerBindToStorage_Stub(
716 IBindHost* This,
717 IMoniker* pMk,
718 IBindCtx* pBC,
719 IBindStatusCallback* pBSC,
720 REFIID riid,
721 IUnknown** ppvObj);
722 HRESULT CALLBACK IBindHost_RemoteMonikerBindToObject_Proxy(
723 IBindHost* This,
724 IMoniker* pMk,
725 IBindCtx* pBC,
726 IBindStatusCallback* pBSC,
727 REFIID riid,
728 IUnknown** ppvObj);
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(
735 IBindHost* This,
736 IMoniker* pMk,
737 IBindCtx* pBC,
738 IBindStatusCallback* pBSC,
739 REFIID riid,
740 void** ppvObj);
741 HRESULT __RPC_STUB IBindHost_MonikerBindToObject_Stub(
742 IBindHost* This,
743 IMoniker* pMk,
744 IBindCtx* pBC,
745 IBindStatusCallback* pBSC,
746 REFIID riid,
747 IUnknown** ppvObj);
749 #endif /* __IBindHost_INTERFACE_DEFINED__ */
751 #ifndef __IWinInetInfo_FWD_DEFINED__
752 #define __IWinInetInfo_FWD_DEFINED__
753 typedef struct IWinInetInfo IWinInetInfo;
754 #endif
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(
769 DWORD dwOption,
770 LPVOID pBuffer,
771 DWORD* pcbBuf) = 0;
774 #else
775 typedef struct IWinInetInfoVtbl IWinInetInfoVtbl;
776 struct IWinInetInfo {
777 const IWinInetInfoVtbl* lpVtbl;
779 struct IWinInetInfoVtbl {
780 BEGIN_INTERFACE
782 /*** IUnknown methods ***/
783 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
784 IWinInetInfo* This,
785 REFIID riid,
786 void** ppvObject);
788 ULONG (STDMETHODCALLTYPE *AddRef)(
789 IWinInetInfo* This);
791 ULONG (STDMETHODCALLTYPE *Release)(
792 IWinInetInfo* This);
794 /*** IWinInetInfo methods ***/
795 HRESULT (STDMETHODCALLTYPE *QueryOption)(
796 IWinInetInfo* This,
797 DWORD dwOption,
798 LPVOID pBuffer,
799 DWORD* pcbBuf);
801 END_INTERFACE
804 #ifdef COBJMACROS
805 /*** IUnknown methods ***/
806 #define IWinInetInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
807 #define IWinInetInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
808 #define IWinInetInfo_Release(p) (p)->lpVtbl->Release(p)
809 /*** IWinInetInfo methods ***/
810 #define IWinInetInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
811 #endif
813 #endif
815 #define IWinInetInfo_METHODS \
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(
824 IWinInetInfo* This,
825 DWORD dwOption,
826 BYTE* pBuffer,
827 DWORD* pcbBuf);
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(
834 IWinInetInfo* This,
835 DWORD dwOption,
836 LPVOID pBuffer,
837 DWORD* pcbBuf);
838 HRESULT __RPC_STUB IWinInetInfo_QueryOption_Stub(
839 IWinInetInfo* This,
840 DWORD dwOption,
841 BYTE* pBuffer,
842 DWORD* pcbBuf);
844 #endif /* __IWinInetInfo_INTERFACE_DEFINED__ */
846 #ifndef __IWinInetHttpInfo_FWD_DEFINED__
847 #define __IWinInetHttpInfo_FWD_DEFINED__
848 typedef struct IWinInetHttpInfo IWinInetHttpInfo;
849 #endif
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(
864 DWORD dwOption,
865 LPVOID pBuffer,
866 DWORD* pcbBuf,
867 DWORD* pdwFlags,
868 DWORD* pdwReserved) = 0;
871 #else
872 typedef struct IWinInetHttpInfoVtbl IWinInetHttpInfoVtbl;
873 struct IWinInetHttpInfo {
874 const IWinInetHttpInfoVtbl* lpVtbl;
876 struct IWinInetHttpInfoVtbl {
877 BEGIN_INTERFACE
879 /*** IUnknown methods ***/
880 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
881 IWinInetHttpInfo* This,
882 REFIID riid,
883 void** ppvObject);
885 ULONG (STDMETHODCALLTYPE *AddRef)(
886 IWinInetHttpInfo* This);
888 ULONG (STDMETHODCALLTYPE *Release)(
889 IWinInetHttpInfo* This);
891 /*** IWinInetInfo methods ***/
892 HRESULT (STDMETHODCALLTYPE *QueryOption)(
893 IWinInetHttpInfo* This,
894 DWORD dwOption,
895 LPVOID pBuffer,
896 DWORD* pcbBuf);
898 /*** IWinInetHttpInfo methods ***/
899 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
900 IWinInetHttpInfo* This,
901 DWORD dwOption,
902 LPVOID pBuffer,
903 DWORD* pcbBuf,
904 DWORD* pdwFlags,
905 DWORD* pdwReserved);
907 END_INTERFACE
910 #ifdef COBJMACROS
911 /*** IUnknown methods ***/
912 #define IWinInetHttpInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
913 #define IWinInetHttpInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
914 #define IWinInetHttpInfo_Release(p) (p)->lpVtbl->Release(p)
915 /*** IWinInetInfo methods ***/
916 #define IWinInetHttpInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
917 /*** IWinInetHttpInfo methods ***/
918 #define IWinInetHttpInfo_QueryInfo(p,a,b,c,d,e) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e)
919 #endif
921 #endif
923 #define IWinInetHttpInfo_METHODS \
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,
935 DWORD dwOption,
936 BYTE* pBuffer,
937 DWORD* pcbBuf,
938 DWORD* pdwFlags,
939 DWORD* pdwReserved);
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,
947 DWORD dwOption,
948 LPVOID pBuffer,
949 DWORD* pcbBuf,
950 DWORD* pdwFlags,
951 DWORD* pdwReserved);
952 HRESULT __RPC_STUB IWinInetHttpInfo_QueryInfo_Stub(
953 IWinInetHttpInfo* This,
954 DWORD dwOption,
955 BYTE* pBuffer,
956 DWORD* pcbBuf,
957 DWORD* pdwFlags,
958 DWORD* pdwReserved);
960 #endif /* __IWinInetHttpInfo_INTERFACE_DEFINED__ */
962 #ifndef __IPersistMoniker_FWD_DEFINED__
963 #define __IPersistMoniker_FWD_DEFINED__
964 typedef struct IPersistMoniker IPersistMoniker;
965 #endif
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(
983 ) = 0;
985 virtual HRESULT STDMETHODCALLTYPE Load(
986 BOOL fFullyAvailable,
987 IMoniker* pimkName,
988 LPBC pibc,
989 DWORD grfMode) = 0;
991 virtual HRESULT STDMETHODCALLTYPE Save(
992 IMoniker* pimkName,
993 LPBC pbc,
994 BOOL fRemember) = 0;
996 virtual HRESULT STDMETHODCALLTYPE SaveCompleted(
997 IMoniker* pimkName,
998 LPBC pibc) = 0;
1000 virtual HRESULT STDMETHODCALLTYPE GetCurMoniker(
1001 IMoniker** ppimkName) = 0;
1004 #else
1005 typedef struct IPersistMonikerVtbl IPersistMonikerVtbl;
1006 struct IPersistMoniker {
1007 const IPersistMonikerVtbl* lpVtbl;
1009 struct IPersistMonikerVtbl {
1010 BEGIN_INTERFACE
1012 /*** IUnknown methods ***/
1013 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1014 IPersistMoniker* This,
1015 REFIID riid,
1016 void** ppvObject);
1018 ULONG (STDMETHODCALLTYPE *AddRef)(
1019 IPersistMoniker* This);
1021 ULONG (STDMETHODCALLTYPE *Release)(
1022 IPersistMoniker* This);
1024 /*** IPersistMoniker methods ***/
1025 HRESULT (STDMETHODCALLTYPE *GetClassID)(
1026 IPersistMoniker* This,
1027 CLSID* pClassID);
1029 HRESULT (STDMETHODCALLTYPE *IsDirty)(
1030 IPersistMoniker* This);
1032 HRESULT (STDMETHODCALLTYPE *Load)(
1033 IPersistMoniker* This,
1034 BOOL fFullyAvailable,
1035 IMoniker* pimkName,
1036 LPBC pibc,
1037 DWORD grfMode);
1039 HRESULT (STDMETHODCALLTYPE *Save)(
1040 IPersistMoniker* This,
1041 IMoniker* pimkName,
1042 LPBC pbc,
1043 BOOL fRemember);
1045 HRESULT (STDMETHODCALLTYPE *SaveCompleted)(
1046 IPersistMoniker* This,
1047 IMoniker* pimkName,
1048 LPBC pibc);
1050 HRESULT (STDMETHODCALLTYPE *GetCurMoniker)(
1051 IPersistMoniker* This,
1052 IMoniker** ppimkName);
1054 END_INTERFACE
1057 #ifdef COBJMACROS
1058 /*** IUnknown methods ***/
1059 #define IPersistMoniker_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1060 #define IPersistMoniker_AddRef(p) (p)->lpVtbl->AddRef(p)
1061 #define IPersistMoniker_Release(p) (p)->lpVtbl->Release(p)
1062 /*** IPersistMoniker methods ***/
1063 #define IPersistMoniker_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
1064 #define IPersistMoniker_IsDirty(p) (p)->lpVtbl->IsDirty(p)
1065 #define IPersistMoniker_Load(p,a,b,c,d) (p)->lpVtbl->Load(p,a,b,c,d)
1066 #define IPersistMoniker_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c)
1067 #define IPersistMoniker_SaveCompleted(p,a,b) (p)->lpVtbl->SaveCompleted(p,a,b)
1068 #define IPersistMoniker_GetCurMoniker(p,a) (p)->lpVtbl->GetCurMoniker(p,a)
1069 #endif
1071 #endif
1073 #define IPersistMoniker_METHODS \
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,
1088 CLSID* pClassID);
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,
1104 IMoniker* pimkName,
1105 LPBC pibc,
1106 DWORD grfMode);
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,
1114 IMoniker* pimkName,
1115 LPBC pbc,
1116 BOOL fRemember);
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,
1124 IMoniker* pimkName,
1125 LPBC pibc);
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;
1145 #endif
1147 typedef IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;
1149 typedef enum _tagPARSEACTION {
1150 PARSE_CANONICALIZE = 1,
1151 PARSE_FRIENDLY,
1152 PARSE_SECURITY_URL,
1153 PARSE_ROOTDOCUMENT,
1154 PARSE_DOCUMENT,
1155 PARSE_ANCHOR,
1156 PARSE_ENCODE,
1157 PARSE_DECODE,
1158 PARSE_PATH_FROM_URL,
1159 PARSE_URL_FROM_PATH,
1160 PARSE_MIME,
1161 PARSE_SERVER,
1162 PARSE_SCHEMA,
1163 PARSE_SITE,
1164 PARSE_DOMAIN,
1165 PARSE_LOCATION,
1166 PARSE_SECURITY_DOMAIN,
1167 PARSE_ESCAPE,
1168 PARSE_UNESCAPE
1169 } PARSEACTION;
1171 typedef enum _tagPSUACTION {
1172 PSU_DEFAULT = 1,
1173 PSU_SECURITY_URL_ONLY
1174 } PSUACTION;
1176 typedef enum _tagQUERYOPTION {
1177 QUERY_EXPIRATION_DATE = 1,
1178 QUERY_TIME_OF_LAST_CHANGE,
1179 QUERY_CONTENT_ENCODING,
1180 QUERY_CONTENT_TYPE,
1181 QUERY_REFRESH,
1182 QUERY_RECOMBINE,
1183 QUERY_CAN_NAVIGATE,
1184 QUERY_USES_NETWORK,
1185 QUERY_IS_CACHED,
1186 QUERY_IS_INSTALLEDENTRY,
1187 QUERY_IS_CACHED_OR_MAPPED,
1188 QUERY_USES_CACHE,
1189 QUERY_IS_SECURE,
1190 QUERY_IS_SAFE
1191 } QUERYOPTION;
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(
1204 LPCWSTR pwzUrl,
1205 PARSEACTION ParseAction,
1206 DWORD dwParseFlags,
1207 LPWSTR pwzResult,
1208 DWORD cchResult,
1209 DWORD* pcchResult,
1210 DWORD dwReserved) = 0;
1212 virtual HRESULT STDMETHODCALLTYPE CombineUrl(
1213 LPCWSTR pwzBaseUrl,
1214 LPCWSTR pwzRelativeUrl,
1215 DWORD dwCombineFlags,
1216 LPWSTR pwzResult,
1217 DWORD cchResult,
1218 DWORD* pcchResult,
1219 DWORD dwReserved) = 0;
1221 virtual HRESULT STDMETHODCALLTYPE CompareUrl(
1222 LPCWSTR pwzUrl1,
1223 LPCWSTR pwzUrl2,
1224 DWORD dwCompareFlags) = 0;
1226 virtual HRESULT STDMETHODCALLTYPE QueryInfo(
1227 LPCWSTR pwzUrl,
1228 QUERYOPTION OueryOption,
1229 DWORD dwQueryFlags,
1230 LPVOID pBuffer,
1231 DWORD cbBuffer,
1232 DWORD* pcbBuf,
1233 DWORD dwReserved) = 0;
1236 #else
1237 typedef struct IInternetProtocolInfoVtbl IInternetProtocolInfoVtbl;
1238 struct IInternetProtocolInfo {
1239 const IInternetProtocolInfoVtbl* lpVtbl;
1241 struct IInternetProtocolInfoVtbl {
1242 BEGIN_INTERFACE
1244 /*** IUnknown methods ***/
1245 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1246 IInternetProtocolInfo* This,
1247 REFIID riid,
1248 void** ppvObject);
1250 ULONG (STDMETHODCALLTYPE *AddRef)(
1251 IInternetProtocolInfo* This);
1253 ULONG (STDMETHODCALLTYPE *Release)(
1254 IInternetProtocolInfo* This);
1256 /*** IInternetProtocolInfo methods ***/
1257 HRESULT (STDMETHODCALLTYPE *ParseUrl)(
1258 IInternetProtocolInfo* This,
1259 LPCWSTR pwzUrl,
1260 PARSEACTION ParseAction,
1261 DWORD dwParseFlags,
1262 LPWSTR pwzResult,
1263 DWORD cchResult,
1264 DWORD* pcchResult,
1265 DWORD dwReserved);
1267 HRESULT (STDMETHODCALLTYPE *CombineUrl)(
1268 IInternetProtocolInfo* This,
1269 LPCWSTR pwzBaseUrl,
1270 LPCWSTR pwzRelativeUrl,
1271 DWORD dwCombineFlags,
1272 LPWSTR pwzResult,
1273 DWORD cchResult,
1274 DWORD* pcchResult,
1275 DWORD dwReserved);
1277 HRESULT (STDMETHODCALLTYPE *CompareUrl)(
1278 IInternetProtocolInfo* This,
1279 LPCWSTR pwzUrl1,
1280 LPCWSTR pwzUrl2,
1281 DWORD dwCompareFlags);
1283 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
1284 IInternetProtocolInfo* This,
1285 LPCWSTR pwzUrl,
1286 QUERYOPTION OueryOption,
1287 DWORD dwQueryFlags,
1288 LPVOID pBuffer,
1289 DWORD cbBuffer,
1290 DWORD* pcbBuf,
1291 DWORD dwReserved);
1293 END_INTERFACE
1296 #ifdef COBJMACROS
1297 /*** IUnknown methods ***/
1298 #define IInternetProtocolInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1299 #define IInternetProtocolInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
1300 #define IInternetProtocolInfo_Release(p) (p)->lpVtbl->Release(p)
1301 /*** IInternetProtocolInfo methods ***/
1302 #define IInternetProtocolInfo_ParseUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->ParseUrl(p,a,b,c,d,e,f,g)
1303 #define IInternetProtocolInfo_CombineUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->CombineUrl(p,a,b,c,d,e,f,g)
1304 #define IInternetProtocolInfo_CompareUrl(p,a,b,c) (p)->lpVtbl->CompareUrl(p,a,b,c)
1305 #define IInternetProtocolInfo_QueryInfo(p,a,b,c,d,e,f,g) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e,f,g)
1306 #endif
1308 #endif
1310 #define IInternetProtocolInfo_METHODS \
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,
1323 LPCWSTR pwzUrl,
1324 PARSEACTION ParseAction,
1325 DWORD dwParseFlags,
1326 LPWSTR pwzResult,
1327 DWORD cchResult,
1328 DWORD* pcchResult,
1329 DWORD dwReserved);
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,
1337 LPCWSTR pwzBaseUrl,
1338 LPCWSTR pwzRelativeUrl,
1339 DWORD dwCombineFlags,
1340 LPWSTR pwzResult,
1341 DWORD cchResult,
1342 DWORD* pcchResult,
1343 DWORD dwReserved);
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,
1351 LPCWSTR pwzUrl1,
1352 LPCWSTR pwzUrl2,
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,
1361 LPCWSTR pwzUrl,
1362 QUERYOPTION OueryOption,
1363 DWORD dwQueryFlags,
1364 LPVOID pBuffer,
1365 DWORD cbBuffer,
1366 DWORD* pcbBuf,
1367 DWORD dwReserved);
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;
1379 #endif
1381 typedef IInternetSession *LPIINTERNETSESSION;
1383 typedef enum _tagOIBDG_FLAGS {
1384 OIBDG_APARTMENTTHREADED = 0x100,
1385 OIBDG_DATAONLY = 0x1000
1386 } OIBDG_FLAGS;
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(
1399 IClassFactory* pCF,
1400 REFCLSID rclsid,
1401 LPCWSTR pwzProtocol,
1402 ULONG cPatterns,
1403 const LPCWSTR* ppwzPatterns,
1404 DWORD dwReserved) = 0;
1406 virtual HRESULT STDMETHODCALLTYPE UnregisterNameSpace(
1407 IClassFactory* pCF,
1408 LPCWSTR pszProtocol) = 0;
1410 virtual HRESULT STDMETHODCALLTYPE RegisterMimeFilter(
1411 IClassFactory* pCF,
1412 REFCLSID rclsid,
1413 LPCWSTR pwzType) = 0;
1415 virtual HRESULT STDMETHODCALLTYPE UnregisterMimeFilter(
1416 IClassFactory* pCF,
1417 LPCWSTR pwzType) = 0;
1419 virtual HRESULT STDMETHODCALLTYPE CreateBinding(
1420 LPBC pBC,
1421 LPCWSTR szUrl,
1422 IUnknown* pUnkOuter,
1423 IUnknown** ppUnk,
1424 void** ppOInetProt,
1425 DWORD dwOption) = 0;
1427 virtual HRESULT STDMETHODCALLTYPE SetSessionOption(
1428 DWORD dwOption,
1429 LPVOID pBuffer,
1430 DWORD dwBufferLength,
1431 DWORD dwReserved) = 0;
1434 #else
1435 typedef struct IInternetSessionVtbl IInternetSessionVtbl;
1436 struct IInternetSession {
1437 const IInternetSessionVtbl* lpVtbl;
1439 struct IInternetSessionVtbl {
1440 BEGIN_INTERFACE
1442 /*** IUnknown methods ***/
1443 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1444 IInternetSession* This,
1445 REFIID riid,
1446 void** ppvObject);
1448 ULONG (STDMETHODCALLTYPE *AddRef)(
1449 IInternetSession* This);
1451 ULONG (STDMETHODCALLTYPE *Release)(
1452 IInternetSession* This);
1454 /*** IInternetSession methods ***/
1455 HRESULT (STDMETHODCALLTYPE *RegisterNameSpace)(
1456 IInternetSession* This,
1457 IClassFactory* pCF,
1458 REFCLSID rclsid,
1459 LPCWSTR pwzProtocol,
1460 ULONG cPatterns,
1461 const LPCWSTR* ppwzPatterns,
1462 DWORD dwReserved);
1464 HRESULT (STDMETHODCALLTYPE *UnregisterNameSpace)(
1465 IInternetSession* This,
1466 IClassFactory* pCF,
1467 LPCWSTR pszProtocol);
1469 HRESULT (STDMETHODCALLTYPE *RegisterMimeFilter)(
1470 IInternetSession* This,
1471 IClassFactory* pCF,
1472 REFCLSID rclsid,
1473 LPCWSTR pwzType);
1475 HRESULT (STDMETHODCALLTYPE *UnregisterMimeFilter)(
1476 IInternetSession* This,
1477 IClassFactory* pCF,
1478 LPCWSTR pwzType);
1480 HRESULT (STDMETHODCALLTYPE *CreateBinding)(
1481 IInternetSession* This,
1482 LPBC pBC,
1483 LPCWSTR szUrl,
1484 IUnknown* pUnkOuter,
1485 IUnknown** ppUnk,
1486 void** ppOInetProt,
1487 DWORD dwOption);
1489 HRESULT (STDMETHODCALLTYPE *SetSessionOption)(
1490 IInternetSession* This,
1491 DWORD dwOption,
1492 LPVOID pBuffer,
1493 DWORD dwBufferLength,
1494 DWORD dwReserved);
1496 END_INTERFACE
1499 #ifdef COBJMACROS
1500 /*** IUnknown methods ***/
1501 #define IInternetSession_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1502 #define IInternetSession_AddRef(p) (p)->lpVtbl->AddRef(p)
1503 #define IInternetSession_Release(p) (p)->lpVtbl->Release(p)
1504 /*** IInternetSession methods ***/
1505 #define IInternetSession_RegisterNameSpace(p,a,b,c,d,e,f) (p)->lpVtbl->RegisterNameSpace(p,a,b,c,d,e,f)
1506 #define IInternetSession_UnregisterNameSpace(p,a,b) (p)->lpVtbl->UnregisterNameSpace(p,a,b)
1507 #define IInternetSession_RegisterMimeFilter(p,a,b,c) (p)->lpVtbl->RegisterMimeFilter(p,a,b,c)
1508 #define IInternetSession_UnregisterMimeFilter(p,a,b) (p)->lpVtbl->UnregisterMimeFilter(p,a,b)
1509 #define IInternetSession_CreateBinding(p,a,b,c,d,e,f) (p)->lpVtbl->CreateBinding(p,a,b,c,d,e,f)
1510 #define IInternetSession_SetSessionOption(p,a,b,c,d) (p)->lpVtbl->SetSessionOption(p,a,b,c,d)
1511 #endif
1513 #endif
1515 #define IInternetSession_METHODS \
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,
1530 IClassFactory* pCF,
1531 REFCLSID rclsid,
1532 LPCWSTR pwzProtocol,
1533 ULONG cPatterns,
1534 const LPCWSTR* ppwzPatterns,
1535 DWORD dwReserved);
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,
1543 IClassFactory* pCF,
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,
1552 IClassFactory* pCF,
1553 REFCLSID rclsid,
1554 LPCWSTR pwzType);
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,
1562 IClassFactory* pCF,
1563 LPCWSTR pwzType);
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,
1571 LPBC pBC,
1572 LPCWSTR szUrl,
1573 IUnknown* pUnkOuter,
1574 IUnknown** ppUnk,
1575 void** ppOInetProt,
1576 DWORD dwOption);
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,
1584 DWORD dwOption,
1585 LPVOID pBuffer,
1586 DWORD dwBufferLength,
1587 DWORD dwReserved);
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
1636 #ifdef __cplusplus
1638 #endif
1639 #endif /* __WIDL_URLMON_H */