The clipboard owner can be set by the thread that has the clipboard
[wine/multimedia.git] / include / urlmon.h
blob7f5add03e6d8541af3017be432e0100ab729c99c
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 ICOM_MSVTABLE_COMPAT_FIELDS \
118 /*** IUnknown methods ***/ \
119 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
120 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
121 STDMETHOD_(ULONG,Release)(THIS) PURE; \
122 /*** IBinding methods ***/ \
123 STDMETHOD_(HRESULT,Abort)(THIS) PURE; \
124 STDMETHOD_(HRESULT,Suspend)(THIS) PURE; \
125 STDMETHOD_(HRESULT,Resume)(THIS) PURE; \
126 STDMETHOD_(HRESULT,SetPriority)(THIS_ LONG nPriority) PURE; \
127 STDMETHOD_(HRESULT,GetPriority)(THIS_ LONG* pnPriority) PURE; \
128 STDMETHOD_(HRESULT,GetBindResult)(THIS_ CLSID* pclsidProtocol, DWORD* pdwResult, LPOLESTR* pszResult, DWORD* pdwReserved) PURE;
130 HRESULT CALLBACK IBinding_Abort_Proxy(
131 IBinding* This);
132 void __RPC_STUB IBinding_Abort_Stub(
133 struct IRpcStubBuffer* This,
134 struct IRpcChannelBuffer* pRpcChannelBuffer,
135 PRPC_MESSAGE pRpcMessage,
136 DWORD* pdwStubPhase);
137 HRESULT CALLBACK IBinding_Suspend_Proxy(
138 IBinding* This);
139 void __RPC_STUB IBinding_Suspend_Stub(
140 struct IRpcStubBuffer* This,
141 struct IRpcChannelBuffer* pRpcChannelBuffer,
142 PRPC_MESSAGE pRpcMessage,
143 DWORD* pdwStubPhase);
144 HRESULT CALLBACK IBinding_Resume_Proxy(
145 IBinding* This);
146 void __RPC_STUB IBinding_Resume_Stub(
147 struct IRpcStubBuffer* This,
148 struct IRpcChannelBuffer* pRpcChannelBuffer,
149 PRPC_MESSAGE pRpcMessage,
150 DWORD* pdwStubPhase);
151 HRESULT CALLBACK IBinding_SetPriority_Proxy(
152 IBinding* This,
153 LONG nPriority);
154 void __RPC_STUB IBinding_SetPriority_Stub(
155 struct IRpcStubBuffer* This,
156 struct IRpcChannelBuffer* pRpcChannelBuffer,
157 PRPC_MESSAGE pRpcMessage,
158 DWORD* pdwStubPhase);
159 HRESULT CALLBACK IBinding_GetPriority_Proxy(
160 IBinding* This,
161 LONG* pnPriority);
162 void __RPC_STUB IBinding_GetPriority_Stub(
163 struct IRpcStubBuffer* This,
164 struct IRpcChannelBuffer* pRpcChannelBuffer,
165 PRPC_MESSAGE pRpcMessage,
166 DWORD* pdwStubPhase);
167 HRESULT CALLBACK IBinding_RemoteGetBindResult_Proxy(
168 IBinding* This,
169 CLSID* pclsidProtocol,
170 DWORD* pdwResult,
171 LPOLESTR* pszResult,
172 DWORD dwReserved);
173 void __RPC_STUB IBinding_RemoteGetBindResult_Stub(
174 struct IRpcStubBuffer* This,
175 struct IRpcChannelBuffer* pRpcChannelBuffer,
176 PRPC_MESSAGE pRpcMessage,
177 DWORD* pdwStubPhase);
178 HRESULT CALLBACK IBinding_GetBindResult_Proxy(
179 IBinding* This,
180 CLSID* pclsidProtocol,
181 DWORD* pdwResult,
182 LPOLESTR* pszResult,
183 DWORD* pdwReserved);
184 HRESULT __RPC_STUB IBinding_GetBindResult_Stub(
185 IBinding* This,
186 CLSID* pclsidProtocol,
187 DWORD* pdwResult,
188 LPOLESTR* pszResult,
189 DWORD dwReserved);
191 #endif /* __IBinding_INTERFACE_DEFINED__ */
193 #ifndef __IBindStatusCallback_FWD_DEFINED__
194 #define __IBindStatusCallback_FWD_DEFINED__
195 typedef struct IBindStatusCallback IBindStatusCallback;
196 #endif
198 typedef IBindStatusCallback *LPBINDSTATUSCALLBACK;
200 typedef enum {
201 BINDF_ASYNCHRONOUS = 0x1,
202 BINDF_ASYNCSTORAGE = 0x2,
203 BINDF_NOPROGRESSIVERENDERING = 0x4,
204 BINDF_OFFLINEOPERATION = 0x8,
205 BINDF_GETNEWESTVERSION = 0x10,
206 BINDF_NOWRITECACHE = 0x20,
207 BINDF_NEEDFILE = 0x40,
208 BINDF_PULLDATA = 0x80,
209 BINDF_IGNORESECURITYPROBLEM = 0x100,
210 BINDF_RESYNCHRONIZE = 0x200,
211 BINDF_HYPERLINK = 0x400,
212 BINDF_NO_UI = 0x800,
213 BINDF_SILENTOPERATION = 0x1000,
214 BINDF_PRAGMA_NO_CACHE = 0x2000,
215 BINDF_GETCLASSOBJECT = 0x4000,
216 BINDF_RESERVED_1 = 0x8000,
217 BINDF_FREE_THREADED = 0x10000,
218 BINDF_DIRECT_READ = 0x20000,
219 BINDF_FORMS_SUBMIT = 0x40000,
220 BINDF_GETFROMCACHE_IF_NET_FAIL = 0x80000,
221 BINDF_FROMURLMON = 0x100000,
222 BINDF_FWD_BACK = 0x200000,
223 BINDF_PREFERDEFAULTHANDLER = 0x400000,
224 BINDF_ENFORCERESTRICTED = 0x800000
225 } BINDF;
227 typedef struct _tagBINDINFO {
228 ULONG cbSize;
229 LPWSTR szExtraInfo;
230 STGMEDIUM stgmedData;
231 DWORD grfBindInfoF;
232 DWORD dwBindVerb;
233 LPWSTR szCustomVerb;
234 DWORD cbStgmedData;
235 DWORD dwOptions;
236 DWORD dwOptionsFlags;
237 DWORD dwCodePage;
238 SECURITY_ATTRIBUTES securityAttributes;
239 IID iid;
240 IUnknown *pUnk;
241 DWORD dwReserved;
242 } BINDINFO;
244 typedef struct _REMSECURITY_ATTRIBUTES {
245 DWORD nLength;
246 DWORD lpSecurityDescriptor;
247 BOOL bInheritHandle;
248 } REMSECURITY_ATTRIBUTES, *PREMSECURITY_ATTRIBUTES, *LPREMSECURITY_ATTRIBUTES;
250 typedef struct _tagRemBINDINFO {
251 ULONG cbSize;
252 LPWSTR szExtraInfo;
253 DWORD grfBindInfoF;
254 DWORD dwBindVerb;
255 LPWSTR szCustomVerb;
256 DWORD cbstgmedData;
257 DWORD dwOptions;
258 DWORD dwOptionsFlags;
259 DWORD dwCodePage;
260 REMSECURITY_ATTRIBUTES securityAttributes;
261 IID iid;
262 IUnknown *pUnk;
263 DWORD dwReserved;
264 } RemBINDINFO;
266 typedef struct tagRemFORMATETC {
267 DWORD cfFormat;
268 DWORD ptd;
269 DWORD dwAspect;
270 LONG lindex;
271 DWORD tymed;
272 } RemFORMATETC, *LPREMFORMATETC;
274 typedef enum {
275 BSCF_FIRSTDATANOTIFICATION = 0x1,
276 BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
277 BSCF_LASTDATANOTIFICATION = 0x4,
278 BSCF_DATAFULLYAVAILABLE = 0x8,
279 BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10
280 } BSCF;
282 typedef enum BINDSTATUS {
283 BINDSTATUS_FINDINGRESOURCE = 1,
284 BINDSTATUS_CONNECTING,
285 BINDSTATUS_REDIRECTING,
286 BINDSTATUS_BEGINDOWNLOADDATA,
287 BINDSTATUS_DOWNLOADINGDATA,
288 BINDSTATUS_ENDDOWNLOADDATA,
289 BINDSTATUS_BEGINDOWNLOADCOMPONENTS,
290 BINDSTATUS_INSTALLINGCOMPONENTS,
291 BINDSTATUS_ENDDOWNLOADCOMPONENTS,
292 BINDSTATUS_USINGCACHEDCOPY,
293 BINDSTATUS_SENDINGREQUEST,
294 BINDSTATUS_CLASSIDAVAILABLE,
295 BINDSTATUS_MIMETYPEAVAILABLE,
296 BINDSTATUS_CACHEFILENAMEAVAILABLE,
297 BINDSTATUS_BEGINSYNCOPERATION,
298 BINDSTATUS_ENDSYNCOPERATION,
299 BINDSTATUS_BEGINUPLOADDATA,
300 BINDSTATUS_UPLOADINGDATA,
301 BINDSTATUS_ENDUPLOADINGDATA,
302 BINDSTATUS_PROTOCOLCLASSID,
303 BINDSTATUS_ENCODING,
304 BINDSTATUS_VERFIEDMIMETYPEAVAILABLE,
305 BINDSTATUS_CLASSINSTALLLOCATION,
306 BINDSTATUS_DECODING,
307 BINDSTATUS_LOADINGMIMEHANDLER,
308 BINDSTATUS_CONTENTDISPOSITIONATTACH,
309 BINDSTATUS_FILTERREPORTMIMETYPE,
310 BINDSTATUS_CLSIDCANINSTANTIATE,
311 BINDSTATUS_IUNKNOWNAVAILABLE,
312 BINDSTATUS_DIRECTBIND,
313 BINDSTATUS_RAWMIMETYPE,
314 BINDSTATUS_PROXYDETECTING,
315 BINDSTATUS_ACCEPTRANGES,
316 BINDSTATUS_COOKIE_SENT,
317 BINDSTATUS_COMPACT_POLICY_RECEIVED,
318 BINDSTATUS_COOKIE_SUPPRESSED,
319 BINDSTATUS_COOKIE_STATE_UNKNOWN,
320 BINDSTATUS_COOKIE_STATE_ACCEPT,
321 BINDSTATUS_COOKIE_STATE_REJECT,
322 BINDSTATUS_COOKIE_STATE_PROMPT,
323 BINDSTATUS_COOKIE_STATE_LEASH,
324 BINDSTATUS_COOKIE_STATE_DOWNGRADE,
325 BINDSTATUS_POLICY_HREF,
326 BINDSTATUS_P3P_HEADER,
327 BINDSTATUS_SESSION_COOKIE_RECEIVED,
328 BINDSTATUS_PERSISTENT_COOKIE_RECEIVED,
329 BINDSTATUS_SESSION_COOKIES_ALLOWED,
330 BINDSTATUS_CACHECONTROL
331 } BINDSTATUS;
333 /*****************************************************************************
334 * IBindStatusCallback interface
336 #ifndef __IBindStatusCallback_INTERFACE_DEFINED__
337 #define __IBindStatusCallback_INTERFACE_DEFINED__
339 DEFINE_GUID(IID_IBindStatusCallback, 0x79eac9c1, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
340 #if defined(__cplusplus) && !defined(CINTERFACE)
341 struct IBindStatusCallback : public IUnknown
343 virtual HRESULT STDMETHODCALLTYPE OnStartBinding(
344 DWORD dwReserved,
345 IBinding* pib) = 0;
347 virtual HRESULT STDMETHODCALLTYPE GetPriority(
348 LONG* pnPriority) = 0;
350 virtual HRESULT STDMETHODCALLTYPE OnLowResource(
351 DWORD reserved) = 0;
353 virtual HRESULT STDMETHODCALLTYPE OnProgress(
354 ULONG ulProgress,
355 ULONG ulProgressMax,
356 ULONG ulStatusCode,
357 LPCWSTR szStatusText) = 0;
359 virtual HRESULT STDMETHODCALLTYPE OnStopBinding(
360 HRESULT hresult,
361 LPCWSTR szError) = 0;
363 virtual HRESULT STDMETHODCALLTYPE GetBindInfo(
364 DWORD* grfBINDF,
365 BINDINFO* pbindinfo) = 0;
367 virtual HRESULT STDMETHODCALLTYPE OnDataAvailable(
368 DWORD grfBSCF,
369 DWORD dwSize,
370 FORMATETC* pformatetc,
371 STGMEDIUM* pstgmed) = 0;
373 virtual HRESULT STDMETHODCALLTYPE OnObjectAvailable(
374 REFIID riid,
375 IUnknown* punk) = 0;
378 #else
379 typedef struct IBindStatusCallbackVtbl IBindStatusCallbackVtbl;
380 struct IBindStatusCallback {
381 const IBindStatusCallbackVtbl* lpVtbl;
383 struct IBindStatusCallbackVtbl {
384 BEGIN_INTERFACE
386 /*** IUnknown methods ***/
387 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
388 IBindStatusCallback* This,
389 REFIID riid,
390 void** ppvObject);
392 ULONG (STDMETHODCALLTYPE *AddRef)(
393 IBindStatusCallback* This);
395 ULONG (STDMETHODCALLTYPE *Release)(
396 IBindStatusCallback* This);
398 /*** IBindStatusCallback methods ***/
399 HRESULT (STDMETHODCALLTYPE *OnStartBinding)(
400 IBindStatusCallback* This,
401 DWORD dwReserved,
402 IBinding* pib);
404 HRESULT (STDMETHODCALLTYPE *GetPriority)(
405 IBindStatusCallback* This,
406 LONG* pnPriority);
408 HRESULT (STDMETHODCALLTYPE *OnLowResource)(
409 IBindStatusCallback* This,
410 DWORD reserved);
412 HRESULT (STDMETHODCALLTYPE *OnProgress)(
413 IBindStatusCallback* This,
414 ULONG ulProgress,
415 ULONG ulProgressMax,
416 ULONG ulStatusCode,
417 LPCWSTR szStatusText);
419 HRESULT (STDMETHODCALLTYPE *OnStopBinding)(
420 IBindStatusCallback* This,
421 HRESULT hresult,
422 LPCWSTR szError);
424 HRESULT (STDMETHODCALLTYPE *GetBindInfo)(
425 IBindStatusCallback* This,
426 DWORD* grfBINDF,
427 BINDINFO* pbindinfo);
429 HRESULT (STDMETHODCALLTYPE *OnDataAvailable)(
430 IBindStatusCallback* This,
431 DWORD grfBSCF,
432 DWORD dwSize,
433 FORMATETC* pformatetc,
434 STGMEDIUM* pstgmed);
436 HRESULT (STDMETHODCALLTYPE *OnObjectAvailable)(
437 IBindStatusCallback* This,
438 REFIID riid,
439 IUnknown* punk);
441 END_INTERFACE
444 #ifdef COBJMACROS
445 /*** IUnknown methods ***/
446 #define IBindStatusCallback_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
447 #define IBindStatusCallback_AddRef(p) (p)->lpVtbl->AddRef(p)
448 #define IBindStatusCallback_Release(p) (p)->lpVtbl->Release(p)
449 /*** IBindStatusCallback methods ***/
450 #define IBindStatusCallback_OnStartBinding(p,a,b) (p)->lpVtbl->OnStartBinding(p,a,b)
451 #define IBindStatusCallback_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
452 #define IBindStatusCallback_OnLowResource(p,a) (p)->lpVtbl->OnLowResource(p,a)
453 #define IBindStatusCallback_OnProgress(p,a,b,c,d) (p)->lpVtbl->OnProgress(p,a,b,c,d)
454 #define IBindStatusCallback_OnStopBinding(p,a,b) (p)->lpVtbl->OnStopBinding(p,a,b)
455 #define IBindStatusCallback_GetBindInfo(p,a,b) (p)->lpVtbl->GetBindInfo(p,a,b)
456 #define IBindStatusCallback_OnDataAvailable(p,a,b,c,d) (p)->lpVtbl->OnDataAvailable(p,a,b,c,d)
457 #define IBindStatusCallback_OnObjectAvailable(p,a,b) (p)->lpVtbl->OnObjectAvailable(p,a,b)
458 #endif
460 #endif
462 #define IBindStatusCallback_METHODS \
463 ICOM_MSVTABLE_COMPAT_FIELDS \
464 /*** IUnknown methods ***/ \
465 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
466 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
467 STDMETHOD_(ULONG,Release)(THIS) PURE; \
468 /*** IBindStatusCallback methods ***/ \
469 STDMETHOD_(HRESULT,OnStartBinding)(THIS_ DWORD dwReserved, IBinding* pib) PURE; \
470 STDMETHOD_(HRESULT,GetPriority)(THIS_ LONG* pnPriority) PURE; \
471 STDMETHOD_(HRESULT,OnLowResource)(THIS_ DWORD reserved) PURE; \
472 STDMETHOD_(HRESULT,OnProgress)(THIS_ ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText) PURE; \
473 STDMETHOD_(HRESULT,OnStopBinding)(THIS_ HRESULT hresult, LPCWSTR szError) PURE; \
474 STDMETHOD_(HRESULT,GetBindInfo)(THIS_ DWORD* grfBINDF, BINDINFO* pbindinfo) PURE; \
475 STDMETHOD_(HRESULT,OnDataAvailable)(THIS_ DWORD grfBSCF, DWORD dwSize, FORMATETC* pformatetc, STGMEDIUM* pstgmed) PURE; \
476 STDMETHOD_(HRESULT,OnObjectAvailable)(THIS_ REFIID riid, IUnknown* punk) PURE;
478 HRESULT CALLBACK IBindStatusCallback_OnStartBinding_Proxy(
479 IBindStatusCallback* This,
480 DWORD dwReserved,
481 IBinding* pib);
482 void __RPC_STUB IBindStatusCallback_OnStartBinding_Stub(
483 struct IRpcStubBuffer* This,
484 struct IRpcChannelBuffer* pRpcChannelBuffer,
485 PRPC_MESSAGE pRpcMessage,
486 DWORD* pdwStubPhase);
487 HRESULT CALLBACK IBindStatusCallback_GetPriority_Proxy(
488 IBindStatusCallback* This,
489 LONG* pnPriority);
490 void __RPC_STUB IBindStatusCallback_GetPriority_Stub(
491 struct IRpcStubBuffer* This,
492 struct IRpcChannelBuffer* pRpcChannelBuffer,
493 PRPC_MESSAGE pRpcMessage,
494 DWORD* pdwStubPhase);
495 HRESULT CALLBACK IBindStatusCallback_OnLowResource_Proxy(
496 IBindStatusCallback* This,
497 DWORD reserved);
498 void __RPC_STUB IBindStatusCallback_OnLowResource_Stub(
499 struct IRpcStubBuffer* This,
500 struct IRpcChannelBuffer* pRpcChannelBuffer,
501 PRPC_MESSAGE pRpcMessage,
502 DWORD* pdwStubPhase);
503 HRESULT CALLBACK IBindStatusCallback_OnProgress_Proxy(
504 IBindStatusCallback* This,
505 ULONG ulProgress,
506 ULONG ulProgressMax,
507 ULONG ulStatusCode,
508 LPCWSTR szStatusText);
509 void __RPC_STUB IBindStatusCallback_OnProgress_Stub(
510 struct IRpcStubBuffer* This,
511 struct IRpcChannelBuffer* pRpcChannelBuffer,
512 PRPC_MESSAGE pRpcMessage,
513 DWORD* pdwStubPhase);
514 HRESULT CALLBACK IBindStatusCallback_OnStopBinding_Proxy(
515 IBindStatusCallback* This,
516 HRESULT hresult,
517 LPCWSTR szError);
518 void __RPC_STUB IBindStatusCallback_OnStopBinding_Stub(
519 struct IRpcStubBuffer* This,
520 struct IRpcChannelBuffer* pRpcChannelBuffer,
521 PRPC_MESSAGE pRpcMessage,
522 DWORD* pdwStubPhase);
523 HRESULT CALLBACK IBindStatusCallback_RemoteGetBindInfo_Proxy(
524 IBindStatusCallback* This,
525 DWORD* grfBINDF,
526 RemBINDINFO* pbindinfo,
527 RemSTGMEDIUM* pstgmed);
528 void __RPC_STUB IBindStatusCallback_RemoteGetBindInfo_Stub(
529 struct IRpcStubBuffer* This,
530 struct IRpcChannelBuffer* pRpcChannelBuffer,
531 PRPC_MESSAGE pRpcMessage,
532 DWORD* pdwStubPhase);
533 HRESULT CALLBACK IBindStatusCallback_GetBindInfo_Proxy(
534 IBindStatusCallback* This,
535 DWORD* grfBINDF,
536 BINDINFO* pbindinfo);
537 HRESULT __RPC_STUB IBindStatusCallback_GetBindInfo_Stub(
538 IBindStatusCallback* This,
539 DWORD* grfBINDF,
540 RemBINDINFO* pbindinfo,
541 RemSTGMEDIUM* pstgmed);
542 HRESULT CALLBACK IBindStatusCallback_RemoteOnDataAvailable_Proxy(
543 IBindStatusCallback* This,
544 DWORD grfBSCF,
545 DWORD dwSize,
546 RemFORMATETC* pformatetc,
547 RemSTGMEDIUM* pstgmed);
548 void __RPC_STUB IBindStatusCallback_RemoteOnDataAvailable_Stub(
549 struct IRpcStubBuffer* This,
550 struct IRpcChannelBuffer* pRpcChannelBuffer,
551 PRPC_MESSAGE pRpcMessage,
552 DWORD* pdwStubPhase);
553 HRESULT CALLBACK IBindStatusCallback_OnDataAvailable_Proxy(
554 IBindStatusCallback* This,
555 DWORD grfBSCF,
556 DWORD dwSize,
557 FORMATETC* pformatetc,
558 STGMEDIUM* pstgmed);
559 HRESULT __RPC_STUB IBindStatusCallback_OnDataAvailable_Stub(
560 IBindStatusCallback* This,
561 DWORD grfBSCF,
562 DWORD dwSize,
563 RemFORMATETC* pformatetc,
564 RemSTGMEDIUM* pstgmed);
565 HRESULT CALLBACK IBindStatusCallback_OnObjectAvailable_Proxy(
566 IBindStatusCallback* This,
567 REFIID riid,
568 IUnknown* punk);
569 void __RPC_STUB IBindStatusCallback_OnObjectAvailable_Stub(
570 struct IRpcStubBuffer* This,
571 struct IRpcChannelBuffer* pRpcChannelBuffer,
572 PRPC_MESSAGE pRpcMessage,
573 DWORD* pdwStubPhase);
575 #endif /* __IBindStatusCallback_INTERFACE_DEFINED__ */
577 #define SID_IBindHost IID_IBindHost
578 #define SID_SBindHost IID_IBindHost
579 #ifndef __IBindHost_FWD_DEFINED__
580 #define __IBindHost_FWD_DEFINED__
581 typedef struct IBindHost IBindHost;
582 #endif
584 typedef IBindHost *LPBINDHOST;
586 /*****************************************************************************
587 * IBindHost interface
589 #ifndef __IBindHost_INTERFACE_DEFINED__
590 #define __IBindHost_INTERFACE_DEFINED__
592 DEFINE_GUID(IID_IBindHost, 0xfc4801a1, 0x2ba9, 0x11cf, 0xa2,0x29, 0x00,0xaa,0x00,0x3d,0x73,0x52);
593 #if defined(__cplusplus) && !defined(CINTERFACE)
594 struct IBindHost : public IUnknown
596 virtual HRESULT STDMETHODCALLTYPE CreateMoniker(
597 LPOLESTR szName,
598 IBindCtx* pBC,
599 IMoniker** ppmk,
600 DWORD dwReserved) = 0;
602 virtual HRESULT STDMETHODCALLTYPE MonikerBindToStorage(
603 IMoniker* pMk,
604 IBindCtx* pBC,
605 IBindStatusCallback* pBSC,
606 REFIID riid,
607 void** ppvObj) = 0;
609 virtual HRESULT STDMETHODCALLTYPE MonikerBindToObject(
610 IMoniker* pMk,
611 IBindCtx* pBC,
612 IBindStatusCallback* pBSC,
613 REFIID riid,
614 void** ppvObj) = 0;
617 #else
618 typedef struct IBindHostVtbl IBindHostVtbl;
619 struct IBindHost {
620 const IBindHostVtbl* lpVtbl;
622 struct IBindHostVtbl {
623 BEGIN_INTERFACE
625 /*** IUnknown methods ***/
626 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
627 IBindHost* This,
628 REFIID riid,
629 void** ppvObject);
631 ULONG (STDMETHODCALLTYPE *AddRef)(
632 IBindHost* This);
634 ULONG (STDMETHODCALLTYPE *Release)(
635 IBindHost* This);
637 /*** IBindHost methods ***/
638 HRESULT (STDMETHODCALLTYPE *CreateMoniker)(
639 IBindHost* This,
640 LPOLESTR szName,
641 IBindCtx* pBC,
642 IMoniker** ppmk,
643 DWORD dwReserved);
645 HRESULT (STDMETHODCALLTYPE *MonikerBindToStorage)(
646 IBindHost* This,
647 IMoniker* pMk,
648 IBindCtx* pBC,
649 IBindStatusCallback* pBSC,
650 REFIID riid,
651 void** ppvObj);
653 HRESULT (STDMETHODCALLTYPE *MonikerBindToObject)(
654 IBindHost* This,
655 IMoniker* pMk,
656 IBindCtx* pBC,
657 IBindStatusCallback* pBSC,
658 REFIID riid,
659 void** ppvObj);
661 END_INTERFACE
664 #ifdef COBJMACROS
665 /*** IUnknown methods ***/
666 #define IBindHost_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
667 #define IBindHost_AddRef(p) (p)->lpVtbl->AddRef(p)
668 #define IBindHost_Release(p) (p)->lpVtbl->Release(p)
669 /*** IBindHost methods ***/
670 #define IBindHost_CreateMoniker(p,a,b,c,d) (p)->lpVtbl->CreateMoniker(p,a,b,c,d)
671 #define IBindHost_MonikerBindToStorage(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToStorage(p,a,b,c,d,e)
672 #define IBindHost_MonikerBindToObject(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToObject(p,a,b,c,d,e)
673 #endif
675 #endif
677 #define IBindHost_METHODS \
678 ICOM_MSVTABLE_COMPAT_FIELDS \
679 /*** IUnknown methods ***/ \
680 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
681 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
682 STDMETHOD_(ULONG,Release)(THIS) PURE; \
683 /*** IBindHost methods ***/ \
684 STDMETHOD_(HRESULT,CreateMoniker)(THIS_ LPOLESTR szName, IBindCtx* pBC, IMoniker** ppmk, DWORD dwReserved) PURE; \
685 STDMETHOD_(HRESULT,MonikerBindToStorage)(THIS_ IMoniker* pMk, IBindCtx* pBC, IBindStatusCallback* pBSC, REFIID riid, void** ppvObj) PURE; \
686 STDMETHOD_(HRESULT,MonikerBindToObject)(THIS_ IMoniker* pMk, IBindCtx* pBC, IBindStatusCallback* pBSC, REFIID riid, void** ppvObj) PURE;
688 HRESULT CALLBACK IBindHost_CreateMoniker_Proxy(
689 IBindHost* This,
690 LPOLESTR szName,
691 IBindCtx* pBC,
692 IMoniker** ppmk,
693 DWORD dwReserved);
694 void __RPC_STUB IBindHost_CreateMoniker_Stub(
695 struct IRpcStubBuffer* This,
696 struct IRpcChannelBuffer* pRpcChannelBuffer,
697 PRPC_MESSAGE pRpcMessage,
698 DWORD* pdwStubPhase);
699 HRESULT CALLBACK IBindHost_RemoteMonikerBindToStorage_Proxy(
700 IBindHost* This,
701 IMoniker* pMk,
702 IBindCtx* pBC,
703 IBindStatusCallback* pBSC,
704 REFIID riid,
705 IUnknown** ppvObj);
706 void __RPC_STUB IBindHost_RemoteMonikerBindToStorage_Stub(
707 struct IRpcStubBuffer* This,
708 struct IRpcChannelBuffer* pRpcChannelBuffer,
709 PRPC_MESSAGE pRpcMessage,
710 DWORD* pdwStubPhase);
711 HRESULT CALLBACK IBindHost_MonikerBindToStorage_Proxy(
712 IBindHost* This,
713 IMoniker* pMk,
714 IBindCtx* pBC,
715 IBindStatusCallback* pBSC,
716 REFIID riid,
717 void** ppvObj);
718 HRESULT __RPC_STUB IBindHost_MonikerBindToStorage_Stub(
719 IBindHost* This,
720 IMoniker* pMk,
721 IBindCtx* pBC,
722 IBindStatusCallback* pBSC,
723 REFIID riid,
724 IUnknown** ppvObj);
725 HRESULT CALLBACK IBindHost_RemoteMonikerBindToObject_Proxy(
726 IBindHost* This,
727 IMoniker* pMk,
728 IBindCtx* pBC,
729 IBindStatusCallback* pBSC,
730 REFIID riid,
731 IUnknown** ppvObj);
732 void __RPC_STUB IBindHost_RemoteMonikerBindToObject_Stub(
733 struct IRpcStubBuffer* This,
734 struct IRpcChannelBuffer* pRpcChannelBuffer,
735 PRPC_MESSAGE pRpcMessage,
736 DWORD* pdwStubPhase);
737 HRESULT CALLBACK IBindHost_MonikerBindToObject_Proxy(
738 IBindHost* This,
739 IMoniker* pMk,
740 IBindCtx* pBC,
741 IBindStatusCallback* pBSC,
742 REFIID riid,
743 void** ppvObj);
744 HRESULT __RPC_STUB IBindHost_MonikerBindToObject_Stub(
745 IBindHost* This,
746 IMoniker* pMk,
747 IBindCtx* pBC,
748 IBindStatusCallback* pBSC,
749 REFIID riid,
750 IUnknown** ppvObj);
752 #endif /* __IBindHost_INTERFACE_DEFINED__ */
754 #ifndef __IWinInetInfo_FWD_DEFINED__
755 #define __IWinInetInfo_FWD_DEFINED__
756 typedef struct IWinInetInfo IWinInetInfo;
757 #endif
759 typedef IWinInetInfo *LPWININETINFO;
761 /*****************************************************************************
762 * IWinInetInfo interface
764 #ifndef __IWinInetInfo_INTERFACE_DEFINED__
765 #define __IWinInetInfo_INTERFACE_DEFINED__
767 DEFINE_GUID(IID_IWinInetInfo, 0x79eac9d6, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
768 #if defined(__cplusplus) && !defined(CINTERFACE)
769 struct IWinInetInfo : public IUnknown
771 virtual HRESULT STDMETHODCALLTYPE QueryOption(
772 DWORD dwOption,
773 LPVOID pBuffer,
774 DWORD* pcbBuf) = 0;
777 #else
778 typedef struct IWinInetInfoVtbl IWinInetInfoVtbl;
779 struct IWinInetInfo {
780 const IWinInetInfoVtbl* lpVtbl;
782 struct IWinInetInfoVtbl {
783 BEGIN_INTERFACE
785 /*** IUnknown methods ***/
786 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
787 IWinInetInfo* This,
788 REFIID riid,
789 void** ppvObject);
791 ULONG (STDMETHODCALLTYPE *AddRef)(
792 IWinInetInfo* This);
794 ULONG (STDMETHODCALLTYPE *Release)(
795 IWinInetInfo* This);
797 /*** IWinInetInfo methods ***/
798 HRESULT (STDMETHODCALLTYPE *QueryOption)(
799 IWinInetInfo* This,
800 DWORD dwOption,
801 LPVOID pBuffer,
802 DWORD* pcbBuf);
804 END_INTERFACE
807 #ifdef COBJMACROS
808 /*** IUnknown methods ***/
809 #define IWinInetInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
810 #define IWinInetInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
811 #define IWinInetInfo_Release(p) (p)->lpVtbl->Release(p)
812 /*** IWinInetInfo methods ***/
813 #define IWinInetInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
814 #endif
816 #endif
818 #define IWinInetInfo_METHODS \
819 ICOM_MSVTABLE_COMPAT_FIELDS \
820 /*** IUnknown methods ***/ \
821 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
822 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
823 STDMETHOD_(ULONG,Release)(THIS) PURE; \
824 /*** IWinInetInfo methods ***/ \
825 STDMETHOD_(HRESULT,QueryOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD* pcbBuf) PURE;
827 HRESULT CALLBACK IWinInetInfo_RemoteQueryOption_Proxy(
828 IWinInetInfo* This,
829 DWORD dwOption,
830 BYTE* pBuffer,
831 DWORD* pcbBuf);
832 void __RPC_STUB IWinInetInfo_RemoteQueryOption_Stub(
833 struct IRpcStubBuffer* This,
834 struct IRpcChannelBuffer* pRpcChannelBuffer,
835 PRPC_MESSAGE pRpcMessage,
836 DWORD* pdwStubPhase);
837 HRESULT CALLBACK IWinInetInfo_QueryOption_Proxy(
838 IWinInetInfo* This,
839 DWORD dwOption,
840 LPVOID pBuffer,
841 DWORD* pcbBuf);
842 HRESULT __RPC_STUB IWinInetInfo_QueryOption_Stub(
843 IWinInetInfo* This,
844 DWORD dwOption,
845 BYTE* pBuffer,
846 DWORD* pcbBuf);
848 #endif /* __IWinInetInfo_INTERFACE_DEFINED__ */
850 #ifndef __IWinInetHttpInfo_FWD_DEFINED__
851 #define __IWinInetHttpInfo_FWD_DEFINED__
852 typedef struct IWinInetHttpInfo IWinInetHttpInfo;
853 #endif
855 typedef IWinInetHttpInfo *LPWININETHTTPINFO;
857 /*****************************************************************************
858 * IWinInetHttpInfo interface
860 #ifndef __IWinInetHttpInfo_INTERFACE_DEFINED__
861 #define __IWinInetHttpInfo_INTERFACE_DEFINED__
863 DEFINE_GUID(IID_IWinInetHttpInfo, 0x79eac9d8, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
864 #if defined(__cplusplus) && !defined(CINTERFACE)
865 struct IWinInetHttpInfo : public IWinInetInfo
867 virtual HRESULT STDMETHODCALLTYPE QueryInfo(
868 DWORD dwOption,
869 LPVOID pBuffer,
870 DWORD* pcbBuf,
871 DWORD* pdwFlags,
872 DWORD* pdwReserved) = 0;
875 #else
876 typedef struct IWinInetHttpInfoVtbl IWinInetHttpInfoVtbl;
877 struct IWinInetHttpInfo {
878 const IWinInetHttpInfoVtbl* lpVtbl;
880 struct IWinInetHttpInfoVtbl {
881 BEGIN_INTERFACE
883 /*** IUnknown methods ***/
884 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
885 IWinInetHttpInfo* This,
886 REFIID riid,
887 void** ppvObject);
889 ULONG (STDMETHODCALLTYPE *AddRef)(
890 IWinInetHttpInfo* This);
892 ULONG (STDMETHODCALLTYPE *Release)(
893 IWinInetHttpInfo* This);
895 /*** IWinInetInfo methods ***/
896 HRESULT (STDMETHODCALLTYPE *QueryOption)(
897 IWinInetHttpInfo* This,
898 DWORD dwOption,
899 LPVOID pBuffer,
900 DWORD* pcbBuf);
902 /*** IWinInetHttpInfo methods ***/
903 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
904 IWinInetHttpInfo* This,
905 DWORD dwOption,
906 LPVOID pBuffer,
907 DWORD* pcbBuf,
908 DWORD* pdwFlags,
909 DWORD* pdwReserved);
911 END_INTERFACE
914 #ifdef COBJMACROS
915 /*** IUnknown methods ***/
916 #define IWinInetHttpInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
917 #define IWinInetHttpInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
918 #define IWinInetHttpInfo_Release(p) (p)->lpVtbl->Release(p)
919 /*** IWinInetInfo methods ***/
920 #define IWinInetHttpInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
921 /*** IWinInetHttpInfo methods ***/
922 #define IWinInetHttpInfo_QueryInfo(p,a,b,c,d,e) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e)
923 #endif
925 #endif
927 #define IWinInetHttpInfo_METHODS \
928 ICOM_MSVTABLE_COMPAT_FIELDS \
929 /*** IUnknown methods ***/ \
930 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
931 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
932 STDMETHOD_(ULONG,Release)(THIS) PURE; \
933 /*** IWinInetInfo methods ***/ \
934 STDMETHOD_(HRESULT,QueryOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD* pcbBuf) PURE; \
935 /*** IWinInetHttpInfo methods ***/ \
936 STDMETHOD_(HRESULT,QueryInfo)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD* pcbBuf, DWORD* pdwFlags, DWORD* pdwReserved) PURE;
938 HRESULT CALLBACK IWinInetHttpInfo_RemoteQueryInfo_Proxy(
939 IWinInetHttpInfo* This,
940 DWORD dwOption,
941 BYTE* pBuffer,
942 DWORD* pcbBuf,
943 DWORD* pdwFlags,
944 DWORD* pdwReserved);
945 void __RPC_STUB IWinInetHttpInfo_RemoteQueryInfo_Stub(
946 struct IRpcStubBuffer* This,
947 struct IRpcChannelBuffer* pRpcChannelBuffer,
948 PRPC_MESSAGE pRpcMessage,
949 DWORD* pdwStubPhase);
950 HRESULT CALLBACK IWinInetHttpInfo_QueryInfo_Proxy(
951 IWinInetHttpInfo* This,
952 DWORD dwOption,
953 LPVOID pBuffer,
954 DWORD* pcbBuf,
955 DWORD* pdwFlags,
956 DWORD* pdwReserved);
957 HRESULT __RPC_STUB IWinInetHttpInfo_QueryInfo_Stub(
958 IWinInetHttpInfo* This,
959 DWORD dwOption,
960 BYTE* pBuffer,
961 DWORD* pcbBuf,
962 DWORD* pdwFlags,
963 DWORD* pdwReserved);
965 #endif /* __IWinInetHttpInfo_INTERFACE_DEFINED__ */
967 #ifndef __IPersistMoniker_FWD_DEFINED__
968 #define __IPersistMoniker_FWD_DEFINED__
969 typedef struct IPersistMoniker IPersistMoniker;
970 #endif
972 typedef IPersistMoniker *LPPERSISTMONIKER;
974 /*****************************************************************************
975 * IPersistMoniker interface
977 #ifndef __IPersistMoniker_INTERFACE_DEFINED__
978 #define __IPersistMoniker_INTERFACE_DEFINED__
980 DEFINE_GUID(IID_IPersistMoniker, 0x79eac9c9, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
981 #if defined(__cplusplus) && !defined(CINTERFACE)
982 struct IPersistMoniker : public IUnknown
984 virtual HRESULT STDMETHODCALLTYPE GetClassID(
985 CLSID* pClassID) = 0;
987 virtual HRESULT STDMETHODCALLTYPE IsDirty(
988 ) = 0;
990 virtual HRESULT STDMETHODCALLTYPE Load(
991 BOOL fFullyAvailable,
992 IMoniker* pimkName,
993 LPBC pibc,
994 DWORD grfMode) = 0;
996 virtual HRESULT STDMETHODCALLTYPE Save(
997 IMoniker* pimkName,
998 LPBC pbc,
999 BOOL fRemember) = 0;
1001 virtual HRESULT STDMETHODCALLTYPE SaveCompleted(
1002 IMoniker* pimkName,
1003 LPBC pibc) = 0;
1005 virtual HRESULT STDMETHODCALLTYPE GetCurMoniker(
1006 IMoniker** ppimkName) = 0;
1009 #else
1010 typedef struct IPersistMonikerVtbl IPersistMonikerVtbl;
1011 struct IPersistMoniker {
1012 const IPersistMonikerVtbl* lpVtbl;
1014 struct IPersistMonikerVtbl {
1015 BEGIN_INTERFACE
1017 /*** IUnknown methods ***/
1018 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1019 IPersistMoniker* This,
1020 REFIID riid,
1021 void** ppvObject);
1023 ULONG (STDMETHODCALLTYPE *AddRef)(
1024 IPersistMoniker* This);
1026 ULONG (STDMETHODCALLTYPE *Release)(
1027 IPersistMoniker* This);
1029 /*** IPersistMoniker methods ***/
1030 HRESULT (STDMETHODCALLTYPE *GetClassID)(
1031 IPersistMoniker* This,
1032 CLSID* pClassID);
1034 HRESULT (STDMETHODCALLTYPE *IsDirty)(
1035 IPersistMoniker* This);
1037 HRESULT (STDMETHODCALLTYPE *Load)(
1038 IPersistMoniker* This,
1039 BOOL fFullyAvailable,
1040 IMoniker* pimkName,
1041 LPBC pibc,
1042 DWORD grfMode);
1044 HRESULT (STDMETHODCALLTYPE *Save)(
1045 IPersistMoniker* This,
1046 IMoniker* pimkName,
1047 LPBC pbc,
1048 BOOL fRemember);
1050 HRESULT (STDMETHODCALLTYPE *SaveCompleted)(
1051 IPersistMoniker* This,
1052 IMoniker* pimkName,
1053 LPBC pibc);
1055 HRESULT (STDMETHODCALLTYPE *GetCurMoniker)(
1056 IPersistMoniker* This,
1057 IMoniker** ppimkName);
1059 END_INTERFACE
1062 #ifdef COBJMACROS
1063 /*** IUnknown methods ***/
1064 #define IPersistMoniker_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1065 #define IPersistMoniker_AddRef(p) (p)->lpVtbl->AddRef(p)
1066 #define IPersistMoniker_Release(p) (p)->lpVtbl->Release(p)
1067 /*** IPersistMoniker methods ***/
1068 #define IPersistMoniker_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
1069 #define IPersistMoniker_IsDirty(p) (p)->lpVtbl->IsDirty(p)
1070 #define IPersistMoniker_Load(p,a,b,c,d) (p)->lpVtbl->Load(p,a,b,c,d)
1071 #define IPersistMoniker_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c)
1072 #define IPersistMoniker_SaveCompleted(p,a,b) (p)->lpVtbl->SaveCompleted(p,a,b)
1073 #define IPersistMoniker_GetCurMoniker(p,a) (p)->lpVtbl->GetCurMoniker(p,a)
1074 #endif
1076 #endif
1078 #define IPersistMoniker_METHODS \
1079 ICOM_MSVTABLE_COMPAT_FIELDS \
1080 /*** IUnknown methods ***/ \
1081 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1082 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1083 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1084 /*** IPersistMoniker methods ***/ \
1085 STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \
1086 STDMETHOD_(HRESULT,IsDirty)(THIS) PURE; \
1087 STDMETHOD_(HRESULT,Load)(THIS_ BOOL fFullyAvailable, IMoniker* pimkName, LPBC pibc, DWORD grfMode) PURE; \
1088 STDMETHOD_(HRESULT,Save)(THIS_ IMoniker* pimkName, LPBC pbc, BOOL fRemember) PURE; \
1089 STDMETHOD_(HRESULT,SaveCompleted)(THIS_ IMoniker* pimkName, LPBC pibc) PURE; \
1090 STDMETHOD_(HRESULT,GetCurMoniker)(THIS_ IMoniker** ppimkName) PURE;
1092 HRESULT CALLBACK IPersistMoniker_GetClassID_Proxy(
1093 IPersistMoniker* This,
1094 CLSID* pClassID);
1095 void __RPC_STUB IPersistMoniker_GetClassID_Stub(
1096 struct IRpcStubBuffer* This,
1097 struct IRpcChannelBuffer* pRpcChannelBuffer,
1098 PRPC_MESSAGE pRpcMessage,
1099 DWORD* pdwStubPhase);
1100 HRESULT CALLBACK IPersistMoniker_IsDirty_Proxy(
1101 IPersistMoniker* This);
1102 void __RPC_STUB IPersistMoniker_IsDirty_Stub(
1103 struct IRpcStubBuffer* This,
1104 struct IRpcChannelBuffer* pRpcChannelBuffer,
1105 PRPC_MESSAGE pRpcMessage,
1106 DWORD* pdwStubPhase);
1107 HRESULT CALLBACK IPersistMoniker_Load_Proxy(
1108 IPersistMoniker* This,
1109 BOOL fFullyAvailable,
1110 IMoniker* pimkName,
1111 LPBC pibc,
1112 DWORD grfMode);
1113 void __RPC_STUB IPersistMoniker_Load_Stub(
1114 struct IRpcStubBuffer* This,
1115 struct IRpcChannelBuffer* pRpcChannelBuffer,
1116 PRPC_MESSAGE pRpcMessage,
1117 DWORD* pdwStubPhase);
1118 HRESULT CALLBACK IPersistMoniker_Save_Proxy(
1119 IPersistMoniker* This,
1120 IMoniker* pimkName,
1121 LPBC pbc,
1122 BOOL fRemember);
1123 void __RPC_STUB IPersistMoniker_Save_Stub(
1124 struct IRpcStubBuffer* This,
1125 struct IRpcChannelBuffer* pRpcChannelBuffer,
1126 PRPC_MESSAGE pRpcMessage,
1127 DWORD* pdwStubPhase);
1128 HRESULT CALLBACK IPersistMoniker_SaveCompleted_Proxy(
1129 IPersistMoniker* This,
1130 IMoniker* pimkName,
1131 LPBC pibc);
1132 void __RPC_STUB IPersistMoniker_SaveCompleted_Stub(
1133 struct IRpcStubBuffer* This,
1134 struct IRpcChannelBuffer* pRpcChannelBuffer,
1135 PRPC_MESSAGE pRpcMessage,
1136 DWORD* pdwStubPhase);
1137 HRESULT CALLBACK IPersistMoniker_GetCurMoniker_Proxy(
1138 IPersistMoniker* This,
1139 IMoniker** ppimkName);
1140 void __RPC_STUB IPersistMoniker_GetCurMoniker_Stub(
1141 struct IRpcStubBuffer* This,
1142 struct IRpcChannelBuffer* pRpcChannelBuffer,
1143 PRPC_MESSAGE pRpcMessage,
1144 DWORD* pdwStubPhase);
1146 #endif /* __IPersistMoniker_INTERFACE_DEFINED__ */
1148 #ifndef __IInternetProtocolInfo_FWD_DEFINED__
1149 #define __IInternetProtocolInfo_FWD_DEFINED__
1150 typedef struct IInternetProtocolInfo IInternetProtocolInfo;
1151 #endif
1153 typedef IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;
1155 typedef enum _tagPARSEACTION {
1156 PARSE_CANONICALIZE = 1,
1157 PARSE_FRIENDLY,
1158 PARSE_SECURITY_URL,
1159 PARSE_ROOTDOCUMENT,
1160 PARSE_DOCUMENT,
1161 PARSE_ANCHOR,
1162 PARSE_ENCODE,
1163 PARSE_DECODE,
1164 PARSE_PATH_FROM_URL,
1165 PARSE_URL_FROM_PATH,
1166 PARSE_MIME,
1167 PARSE_SERVER,
1168 PARSE_SCHEMA,
1169 PARSE_SITE,
1170 PARSE_DOMAIN,
1171 PARSE_LOCATION,
1172 PARSE_SECURITY_DOMAIN,
1173 PARSE_ESCAPE,
1174 PARSE_UNESCAPE
1175 } PARSEACTION;
1177 typedef enum _tagPSUACTION {
1178 PSU_DEFAULT = 1,
1179 PSU_SECURITY_URL_ONLY
1180 } PSUACTION;
1182 typedef enum _tagQUERYOPTION {
1183 QUERY_EXPIRATION_DATE = 1,
1184 QUERY_TIME_OF_LAST_CHANGE,
1185 QUERY_CONTENT_ENCODING,
1186 QUERY_CONTENT_TYPE,
1187 QUERY_REFRESH,
1188 QUERY_RECOMBINE,
1189 QUERY_CAN_NAVIGATE,
1190 QUERY_USES_NETWORK,
1191 QUERY_IS_CACHED,
1192 QUERY_IS_INSTALLEDENTRY,
1193 QUERY_IS_CACHED_OR_MAPPED,
1194 QUERY_USES_CACHE,
1195 QUERY_IS_SECURE,
1196 QUERY_IS_SAFE
1197 } QUERYOPTION;
1199 /*****************************************************************************
1200 * IInternetProtocolInfo interface
1202 #ifndef __IInternetProtocolInfo_INTERFACE_DEFINED__
1203 #define __IInternetProtocolInfo_INTERFACE_DEFINED__
1205 DEFINE_GUID(IID_IInternetProtocolInfo, 0x79eac9ec, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1206 #if defined(__cplusplus) && !defined(CINTERFACE)
1207 struct IInternetProtocolInfo : public IUnknown
1209 virtual HRESULT STDMETHODCALLTYPE ParseUrl(
1210 LPCWSTR pwzUrl,
1211 PARSEACTION ParseAction,
1212 DWORD dwParseFlags,
1213 LPWSTR pwzResult,
1214 DWORD cchResult,
1215 DWORD* pcchResult,
1216 DWORD dwReserved) = 0;
1218 virtual HRESULT STDMETHODCALLTYPE CombineUrl(
1219 LPCWSTR pwzBaseUrl,
1220 LPCWSTR pwzRelativeUrl,
1221 DWORD dwCombineFlags,
1222 LPWSTR pwzResult,
1223 DWORD cchResult,
1224 DWORD* pcchResult,
1225 DWORD dwReserved) = 0;
1227 virtual HRESULT STDMETHODCALLTYPE CompareUrl(
1228 LPCWSTR pwzUrl1,
1229 LPCWSTR pwzUrl2,
1230 DWORD dwCompareFlags) = 0;
1232 virtual HRESULT STDMETHODCALLTYPE QueryInfo(
1233 LPCWSTR pwzUrl,
1234 QUERYOPTION OueryOption,
1235 DWORD dwQueryFlags,
1236 LPVOID pBuffer,
1237 DWORD cbBuffer,
1238 DWORD* pcbBuf,
1239 DWORD dwReserved) = 0;
1242 #else
1243 typedef struct IInternetProtocolInfoVtbl IInternetProtocolInfoVtbl;
1244 struct IInternetProtocolInfo {
1245 const IInternetProtocolInfoVtbl* lpVtbl;
1247 struct IInternetProtocolInfoVtbl {
1248 BEGIN_INTERFACE
1250 /*** IUnknown methods ***/
1251 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1252 IInternetProtocolInfo* This,
1253 REFIID riid,
1254 void** ppvObject);
1256 ULONG (STDMETHODCALLTYPE *AddRef)(
1257 IInternetProtocolInfo* This);
1259 ULONG (STDMETHODCALLTYPE *Release)(
1260 IInternetProtocolInfo* This);
1262 /*** IInternetProtocolInfo methods ***/
1263 HRESULT (STDMETHODCALLTYPE *ParseUrl)(
1264 IInternetProtocolInfo* This,
1265 LPCWSTR pwzUrl,
1266 PARSEACTION ParseAction,
1267 DWORD dwParseFlags,
1268 LPWSTR pwzResult,
1269 DWORD cchResult,
1270 DWORD* pcchResult,
1271 DWORD dwReserved);
1273 HRESULT (STDMETHODCALLTYPE *CombineUrl)(
1274 IInternetProtocolInfo* This,
1275 LPCWSTR pwzBaseUrl,
1276 LPCWSTR pwzRelativeUrl,
1277 DWORD dwCombineFlags,
1278 LPWSTR pwzResult,
1279 DWORD cchResult,
1280 DWORD* pcchResult,
1281 DWORD dwReserved);
1283 HRESULT (STDMETHODCALLTYPE *CompareUrl)(
1284 IInternetProtocolInfo* This,
1285 LPCWSTR pwzUrl1,
1286 LPCWSTR pwzUrl2,
1287 DWORD dwCompareFlags);
1289 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
1290 IInternetProtocolInfo* This,
1291 LPCWSTR pwzUrl,
1292 QUERYOPTION OueryOption,
1293 DWORD dwQueryFlags,
1294 LPVOID pBuffer,
1295 DWORD cbBuffer,
1296 DWORD* pcbBuf,
1297 DWORD dwReserved);
1299 END_INTERFACE
1302 #ifdef COBJMACROS
1303 /*** IUnknown methods ***/
1304 #define IInternetProtocolInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1305 #define IInternetProtocolInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
1306 #define IInternetProtocolInfo_Release(p) (p)->lpVtbl->Release(p)
1307 /*** IInternetProtocolInfo methods ***/
1308 #define IInternetProtocolInfo_ParseUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->ParseUrl(p,a,b,c,d,e,f,g)
1309 #define IInternetProtocolInfo_CombineUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->CombineUrl(p,a,b,c,d,e,f,g)
1310 #define IInternetProtocolInfo_CompareUrl(p,a,b,c) (p)->lpVtbl->CompareUrl(p,a,b,c)
1311 #define IInternetProtocolInfo_QueryInfo(p,a,b,c,d,e,f,g) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e,f,g)
1312 #endif
1314 #endif
1316 #define IInternetProtocolInfo_METHODS \
1317 ICOM_MSVTABLE_COMPAT_FIELDS \
1318 /*** IUnknown methods ***/ \
1319 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1320 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1321 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1322 /*** IInternetProtocolInfo methods ***/ \
1323 STDMETHOD_(HRESULT,ParseUrl)(THIS_ LPCWSTR pwzUrl, PARSEACTION ParseAction, DWORD dwParseFlags, LPWSTR pwzResult, DWORD cchResult, DWORD* pcchResult, DWORD dwReserved) PURE; \
1324 STDMETHOD_(HRESULT,CombineUrl)(THIS_ LPCWSTR pwzBaseUrl, LPCWSTR pwzRelativeUrl, DWORD dwCombineFlags, LPWSTR pwzResult, DWORD cchResult, DWORD* pcchResult, DWORD dwReserved) PURE; \
1325 STDMETHOD_(HRESULT,CompareUrl)(THIS_ LPCWSTR pwzUrl1, LPCWSTR pwzUrl2, DWORD dwCompareFlags) PURE; \
1326 STDMETHOD_(HRESULT,QueryInfo)(THIS_ LPCWSTR pwzUrl, QUERYOPTION OueryOption, DWORD dwQueryFlags, LPVOID pBuffer, DWORD cbBuffer, DWORD* pcbBuf, DWORD dwReserved) PURE;
1328 HRESULT CALLBACK IInternetProtocolInfo_ParseUrl_Proxy(
1329 IInternetProtocolInfo* This,
1330 LPCWSTR pwzUrl,
1331 PARSEACTION ParseAction,
1332 DWORD dwParseFlags,
1333 LPWSTR pwzResult,
1334 DWORD cchResult,
1335 DWORD* pcchResult,
1336 DWORD dwReserved);
1337 void __RPC_STUB IInternetProtocolInfo_ParseUrl_Stub(
1338 struct IRpcStubBuffer* This,
1339 struct IRpcChannelBuffer* pRpcChannelBuffer,
1340 PRPC_MESSAGE pRpcMessage,
1341 DWORD* pdwStubPhase);
1342 HRESULT CALLBACK IInternetProtocolInfo_CombineUrl_Proxy(
1343 IInternetProtocolInfo* This,
1344 LPCWSTR pwzBaseUrl,
1345 LPCWSTR pwzRelativeUrl,
1346 DWORD dwCombineFlags,
1347 LPWSTR pwzResult,
1348 DWORD cchResult,
1349 DWORD* pcchResult,
1350 DWORD dwReserved);
1351 void __RPC_STUB IInternetProtocolInfo_CombineUrl_Stub(
1352 struct IRpcStubBuffer* This,
1353 struct IRpcChannelBuffer* pRpcChannelBuffer,
1354 PRPC_MESSAGE pRpcMessage,
1355 DWORD* pdwStubPhase);
1356 HRESULT CALLBACK IInternetProtocolInfo_CompareUrl_Proxy(
1357 IInternetProtocolInfo* This,
1358 LPCWSTR pwzUrl1,
1359 LPCWSTR pwzUrl2,
1360 DWORD dwCompareFlags);
1361 void __RPC_STUB IInternetProtocolInfo_CompareUrl_Stub(
1362 struct IRpcStubBuffer* This,
1363 struct IRpcChannelBuffer* pRpcChannelBuffer,
1364 PRPC_MESSAGE pRpcMessage,
1365 DWORD* pdwStubPhase);
1366 HRESULT CALLBACK IInternetProtocolInfo_QueryInfo_Proxy(
1367 IInternetProtocolInfo* This,
1368 LPCWSTR pwzUrl,
1369 QUERYOPTION OueryOption,
1370 DWORD dwQueryFlags,
1371 LPVOID pBuffer,
1372 DWORD cbBuffer,
1373 DWORD* pcbBuf,
1374 DWORD dwReserved);
1375 void __RPC_STUB IInternetProtocolInfo_QueryInfo_Stub(
1376 struct IRpcStubBuffer* This,
1377 struct IRpcChannelBuffer* pRpcChannelBuffer,
1378 PRPC_MESSAGE pRpcMessage,
1379 DWORD* pdwStubPhase);
1381 #endif /* __IInternetProtocolInfo_INTERFACE_DEFINED__ */
1383 #ifndef __IInternetSession_FWD_DEFINED__
1384 #define __IInternetSession_FWD_DEFINED__
1385 typedef struct IInternetSession IInternetSession;
1386 #endif
1388 typedef IInternetSession *LPIINTERNETSESSION;
1390 typedef enum _tagOIBDG_FLAGS {
1391 OIBDG_APARTMENTTHREADED = 0x100,
1392 OIBDG_DATAONLY = 0x1000
1393 } OIBDG_FLAGS;
1395 /*****************************************************************************
1396 * IInternetSession interface
1398 #ifndef __IInternetSession_INTERFACE_DEFINED__
1399 #define __IInternetSession_INTERFACE_DEFINED__
1401 DEFINE_GUID(IID_IInternetSession, 0x79eac9e7, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1402 #if defined(__cplusplus) && !defined(CINTERFACE)
1403 struct IInternetSession : public IUnknown
1405 virtual HRESULT STDMETHODCALLTYPE RegisterNameSpace(
1406 IClassFactory* pCF,
1407 REFCLSID rclsid,
1408 LPCWSTR pwzProtocol,
1409 ULONG cPatterns,
1410 const LPCWSTR* ppwzPatterns,
1411 DWORD dwReserved) = 0;
1413 virtual HRESULT STDMETHODCALLTYPE UnregisterNameSpace(
1414 IClassFactory* pCF,
1415 LPCWSTR pszProtocol) = 0;
1417 virtual HRESULT STDMETHODCALLTYPE RegisterMimeFilter(
1418 IClassFactory* pCF,
1419 REFCLSID rclsid,
1420 LPCWSTR pwzType) = 0;
1422 virtual HRESULT STDMETHODCALLTYPE UnregisterMimeFilter(
1423 IClassFactory* pCF,
1424 LPCWSTR pwzType) = 0;
1426 virtual HRESULT STDMETHODCALLTYPE CreateBinding(
1427 LPBC pBC,
1428 LPCWSTR szUrl,
1429 IUnknown* pUnkOuter,
1430 IUnknown** ppUnk,
1431 void** ppOInetProt,
1432 DWORD dwOption) = 0;
1434 virtual HRESULT STDMETHODCALLTYPE SetSessionOption(
1435 DWORD dwOption,
1436 LPVOID pBuffer,
1437 DWORD dwBufferLength,
1438 DWORD dwReserved) = 0;
1441 #else
1442 typedef struct IInternetSessionVtbl IInternetSessionVtbl;
1443 struct IInternetSession {
1444 const IInternetSessionVtbl* lpVtbl;
1446 struct IInternetSessionVtbl {
1447 BEGIN_INTERFACE
1449 /*** IUnknown methods ***/
1450 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1451 IInternetSession* This,
1452 REFIID riid,
1453 void** ppvObject);
1455 ULONG (STDMETHODCALLTYPE *AddRef)(
1456 IInternetSession* This);
1458 ULONG (STDMETHODCALLTYPE *Release)(
1459 IInternetSession* This);
1461 /*** IInternetSession methods ***/
1462 HRESULT (STDMETHODCALLTYPE *RegisterNameSpace)(
1463 IInternetSession* This,
1464 IClassFactory* pCF,
1465 REFCLSID rclsid,
1466 LPCWSTR pwzProtocol,
1467 ULONG cPatterns,
1468 const LPCWSTR* ppwzPatterns,
1469 DWORD dwReserved);
1471 HRESULT (STDMETHODCALLTYPE *UnregisterNameSpace)(
1472 IInternetSession* This,
1473 IClassFactory* pCF,
1474 LPCWSTR pszProtocol);
1476 HRESULT (STDMETHODCALLTYPE *RegisterMimeFilter)(
1477 IInternetSession* This,
1478 IClassFactory* pCF,
1479 REFCLSID rclsid,
1480 LPCWSTR pwzType);
1482 HRESULT (STDMETHODCALLTYPE *UnregisterMimeFilter)(
1483 IInternetSession* This,
1484 IClassFactory* pCF,
1485 LPCWSTR pwzType);
1487 HRESULT (STDMETHODCALLTYPE *CreateBinding)(
1488 IInternetSession* This,
1489 LPBC pBC,
1490 LPCWSTR szUrl,
1491 IUnknown* pUnkOuter,
1492 IUnknown** ppUnk,
1493 void** ppOInetProt,
1494 DWORD dwOption);
1496 HRESULT (STDMETHODCALLTYPE *SetSessionOption)(
1497 IInternetSession* This,
1498 DWORD dwOption,
1499 LPVOID pBuffer,
1500 DWORD dwBufferLength,
1501 DWORD dwReserved);
1503 END_INTERFACE
1506 #ifdef COBJMACROS
1507 /*** IUnknown methods ***/
1508 #define IInternetSession_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1509 #define IInternetSession_AddRef(p) (p)->lpVtbl->AddRef(p)
1510 #define IInternetSession_Release(p) (p)->lpVtbl->Release(p)
1511 /*** IInternetSession methods ***/
1512 #define IInternetSession_RegisterNameSpace(p,a,b,c,d,e,f) (p)->lpVtbl->RegisterNameSpace(p,a,b,c,d,e,f)
1513 #define IInternetSession_UnregisterNameSpace(p,a,b) (p)->lpVtbl->UnregisterNameSpace(p,a,b)
1514 #define IInternetSession_RegisterMimeFilter(p,a,b,c) (p)->lpVtbl->RegisterMimeFilter(p,a,b,c)
1515 #define IInternetSession_UnregisterMimeFilter(p,a,b) (p)->lpVtbl->UnregisterMimeFilter(p,a,b)
1516 #define IInternetSession_CreateBinding(p,a,b,c,d,e,f) (p)->lpVtbl->CreateBinding(p,a,b,c,d,e,f)
1517 #define IInternetSession_SetSessionOption(p,a,b,c,d) (p)->lpVtbl->SetSessionOption(p,a,b,c,d)
1518 #endif
1520 #endif
1522 #define IInternetSession_METHODS \
1523 ICOM_MSVTABLE_COMPAT_FIELDS \
1524 /*** IUnknown methods ***/ \
1525 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
1526 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
1527 STDMETHOD_(ULONG,Release)(THIS) PURE; \
1528 /*** IInternetSession methods ***/ \
1529 STDMETHOD_(HRESULT,RegisterNameSpace)(THIS_ IClassFactory* pCF, REFCLSID rclsid, LPCWSTR pwzProtocol, ULONG cPatterns, const LPCWSTR* ppwzPatterns, DWORD dwReserved) PURE; \
1530 STDMETHOD_(HRESULT,UnregisterNameSpace)(THIS_ IClassFactory* pCF, LPCWSTR pszProtocol) PURE; \
1531 STDMETHOD_(HRESULT,RegisterMimeFilter)(THIS_ IClassFactory* pCF, REFCLSID rclsid, LPCWSTR pwzType) PURE; \
1532 STDMETHOD_(HRESULT,UnregisterMimeFilter)(THIS_ IClassFactory* pCF, LPCWSTR pwzType) PURE; \
1533 STDMETHOD_(HRESULT,CreateBinding)(THIS_ LPBC pBC, LPCWSTR szUrl, IUnknown* pUnkOuter, IUnknown** ppUnk, void** ppOInetProt, DWORD dwOption) PURE; \
1534 STDMETHOD_(HRESULT,SetSessionOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD dwReserved) PURE;
1536 HRESULT CALLBACK IInternetSession_RegisterNameSpace_Proxy(
1537 IInternetSession* This,
1538 IClassFactory* pCF,
1539 REFCLSID rclsid,
1540 LPCWSTR pwzProtocol,
1541 ULONG cPatterns,
1542 const LPCWSTR* ppwzPatterns,
1543 DWORD dwReserved);
1544 void __RPC_STUB IInternetSession_RegisterNameSpace_Stub(
1545 struct IRpcStubBuffer* This,
1546 struct IRpcChannelBuffer* pRpcChannelBuffer,
1547 PRPC_MESSAGE pRpcMessage,
1548 DWORD* pdwStubPhase);
1549 HRESULT CALLBACK IInternetSession_UnregisterNameSpace_Proxy(
1550 IInternetSession* This,
1551 IClassFactory* pCF,
1552 LPCWSTR pszProtocol);
1553 void __RPC_STUB IInternetSession_UnregisterNameSpace_Stub(
1554 struct IRpcStubBuffer* This,
1555 struct IRpcChannelBuffer* pRpcChannelBuffer,
1556 PRPC_MESSAGE pRpcMessage,
1557 DWORD* pdwStubPhase);
1558 HRESULT CALLBACK IInternetSession_RegisterMimeFilter_Proxy(
1559 IInternetSession* This,
1560 IClassFactory* pCF,
1561 REFCLSID rclsid,
1562 LPCWSTR pwzType);
1563 void __RPC_STUB IInternetSession_RegisterMimeFilter_Stub(
1564 struct IRpcStubBuffer* This,
1565 struct IRpcChannelBuffer* pRpcChannelBuffer,
1566 PRPC_MESSAGE pRpcMessage,
1567 DWORD* pdwStubPhase);
1568 HRESULT CALLBACK IInternetSession_UnregisterMimeFilter_Proxy(
1569 IInternetSession* This,
1570 IClassFactory* pCF,
1571 LPCWSTR pwzType);
1572 void __RPC_STUB IInternetSession_UnregisterMimeFilter_Stub(
1573 struct IRpcStubBuffer* This,
1574 struct IRpcChannelBuffer* pRpcChannelBuffer,
1575 PRPC_MESSAGE pRpcMessage,
1576 DWORD* pdwStubPhase);
1577 HRESULT CALLBACK IInternetSession_CreateBinding_Proxy(
1578 IInternetSession* This,
1579 LPBC pBC,
1580 LPCWSTR szUrl,
1581 IUnknown* pUnkOuter,
1582 IUnknown** ppUnk,
1583 void** ppOInetProt,
1584 DWORD dwOption);
1585 void __RPC_STUB IInternetSession_CreateBinding_Stub(
1586 struct IRpcStubBuffer* This,
1587 struct IRpcChannelBuffer* pRpcChannelBuffer,
1588 PRPC_MESSAGE pRpcMessage,
1589 DWORD* pdwStubPhase);
1590 HRESULT CALLBACK IInternetSession_SetSessionOption_Proxy(
1591 IInternetSession* This,
1592 DWORD dwOption,
1593 LPVOID pBuffer,
1594 DWORD dwBufferLength,
1595 DWORD dwReserved);
1596 void __RPC_STUB IInternetSession_SetSessionOption_Stub(
1597 struct IRpcStubBuffer* This,
1598 struct IRpcChannelBuffer* pRpcChannelBuffer,
1599 PRPC_MESSAGE pRpcMessage,
1600 DWORD* pdwStubPhase);
1602 #endif /* __IInternetSession_INTERFACE_DEFINED__ */
1604 DEFINE_GUID(IID_IAsyncMoniker, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
1605 DEFINE_GUID(CLSID_StdURLMoniker, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
1606 #define MK_S_ASYNCHRONOUS 0x000401E8
1607 #define S_ASYNCHRONOUS MK_S_ASYNCHRONOUS
1608 #define INET_E_ERROR_FIRST 0x800C0002L
1609 #define INET_E_INVALID_URL 0x800C0002L
1610 #define INET_E_NO_SESSION 0x800C0003L
1611 #define INET_E_CANNOT_CONNECT 0x800C0004L
1612 #define INET_E_RESOURCE_NOT_FOUND 0x800C0005L
1613 #define INET_E_OBJECT_NOT_FOUND 0x800C0006L
1614 #define INET_E_DATA_NOT_AVAILABLE 0x800C0007L
1615 #define INET_E_DOWNLOAD_FAILURE 0x800C0008L
1616 #define INET_E_AUTHENTICATION_REQUIRED 0x800C0009L
1617 #define INET_E_NO_VALID_MEDIA 0x800C000AL
1618 #define INET_E_CONNECTION_TIMEOUT 0x800C000BL
1619 #define INET_E_INVALID_REQUEST 0x800C000CL
1620 #define INET_E_UNKNOWN_PROTOCOL 0x800C000DL
1621 #define INET_E_SECURITY_PROBLEM 0x800C000EL
1622 #define INET_E_CANNOT_LOAD_DATA 0x800C000FL
1623 #define INET_E_CANNOT_INSTANTIATE_OBJECT 0x800C0010L
1624 #define INET_E_QUERYOPTION_UNKNOWN 0x800C0013L
1625 #define INET_E_REDIRECT_FAILED 0x800C0014L
1626 #define INET_E_REDIRECT_TO_DIR 0x800C0015L
1627 #define INET_E_CANNOT_LOCK_REQUEST 0x800C0016L
1628 #define INET_E_ERROR_LAST INET_E_REDIRECT_TO_DIR
1629 HRESULT WINAPI CreateURLMoniker(IMoniker *pmkContext, LPCWSTR szURL, IMoniker **ppmk);
1630 HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusCallback *pbsc, IBindStatusCallback **ppbsc, DWORD dwReserved);
1631 HRESULT WINAPI CompareSecurityIds(BYTE*,DWORD,BYTE*,DWORD,DWORD);
1632 HRESULT WINAPI URLDownloadToFileA(LPUNKNOWN pCaller, LPCSTR szURL, LPCSTR szFileName, DWORD dwReserved, LPBINDSTATUSCALLBACK lpfnCB);
1633 HRESULT WINAPI URLDownloadToFileW(LPUNKNOWN pCaller, LPCWSTR szURL, LPCWSTR szFileName, DWORD dwReserved, LPBINDSTATUSCALLBACK lpfnCB);
1634 HRESULT WINAPI CoInternetGetSession(DWORD,IInternetSession**,DWORD);
1635 HRESULT WINAPI MkParseDisplayNameEx(IBindCtx*,LPCWSTR,ULONG*,IMoniker**);
1636 HRESULT WINAPI IsAsyncMoniker(IMoniker* pmk);
1637 HRESULT WINAPI CreateAsyncBindCtx(DWORD, IBindStatusCallback*, IEnumFORMATETC*, IBindCtx**);
1638 HRESULT WINAPI CoInternetCombineUrl(LPCWSTR,LPCWSTR,DWORD,LPWSTR,DWORD,DWORD*,DWORD);
1639 HRESULT WINAPI CoInternetCompareUrl(LPCWSTR,LPCWSTR,DWORD);
1640 #define OInetCombineUrl CoInternetCombineUrl
1641 #define OInetCompareUrl CoInternetCompareUrl
1642 #define OInetGetSession CoInternetGetSession
1643 #define MKSYS_URLMONIKER 6
1644 #ifdef __cplusplus
1646 #endif
1647 #endif /* __WIDL_URLMON_H */