251ba62d82815d9e45b1926cf331d477a25ce801
[reactos.git] / reactos / w32api / include / urlmon.h
1 /*** Autogenerated by WIDL 0.9.1 from urlmon.idl - Do not edit ***/
2 #include <rpc.h>
3 #include <rpcndr.h>
4
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 #include <msxml.h>
14 #ifndef __IInternetProtocolSink_FWD_DEFINED__
15 #define __IInternetProtocolSink_FWD_DEFINED__
16 typedef struct IInternetProtocolSink IInternetProtocolSink;
17 #endif
18
19 #ifndef __IBinding_FWD_DEFINED__
20 #define __IBinding_FWD_DEFINED__
21 typedef struct IBinding IBinding;
22 #endif
23
24 typedef IBinding *LPBINDING;
25 /*****************************************************************************
26 * IBinding interface
27 */
28 #ifndef __IBinding_INTERFACE_DEFINED__
29 #define __IBinding_INTERFACE_DEFINED__
30
31 DEFINE_GUID(IID_IBinding, 0x79eac9c0, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
32 #if defined(__cplusplus) && !defined(CINTERFACE)
33 struct IBinding : public IUnknown
34 {
35 virtual HRESULT STDMETHODCALLTYPE Abort(
36 ) = 0;
37
38 virtual HRESULT STDMETHODCALLTYPE Suspend(
39 ) = 0;
40
41 virtual HRESULT STDMETHODCALLTYPE Resume(
42 ) = 0;
43
44 virtual HRESULT STDMETHODCALLTYPE SetPriority(
45 LONG nPriority) = 0;
46
47 virtual HRESULT STDMETHODCALLTYPE GetPriority(
48 LONG* pnPriority) = 0;
49
50 virtual HRESULT STDMETHODCALLTYPE GetBindResult(
51 CLSID* pclsidProtocol,
52 DWORD* pdwResult,
53 LPOLESTR* pszResult,
54 DWORD* pdwReserved) = 0;
55
56 };
57 #else
58 typedef struct IBindingVtbl IBindingVtbl;
59 struct IBinding {
60 const IBindingVtbl* lpVtbl;
61 };
62 struct IBindingVtbl {
63 BEGIN_INTERFACE
64
65 /*** IUnknown methods ***/
66 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
67 IBinding* This,
68 REFIID riid,
69 void** ppvObject);
70
71 ULONG (STDMETHODCALLTYPE *AddRef)(
72 IBinding* This);
73
74 ULONG (STDMETHODCALLTYPE *Release)(
75 IBinding* This);
76
77 /*** IBinding methods ***/
78 HRESULT (STDMETHODCALLTYPE *Abort)(
79 IBinding* This);
80
81 HRESULT (STDMETHODCALLTYPE *Suspend)(
82 IBinding* This);
83
84 HRESULT (STDMETHODCALLTYPE *Resume)(
85 IBinding* This);
86
87 HRESULT (STDMETHODCALLTYPE *SetPriority)(
88 IBinding* This,
89 LONG nPriority);
90
91 HRESULT (STDMETHODCALLTYPE *GetPriority)(
92 IBinding* This,
93 LONG* pnPriority);
94
95 HRESULT (STDMETHODCALLTYPE *GetBindResult)(
96 IBinding* This,
97 CLSID* pclsidProtocol,
98 DWORD* pdwResult,
99 LPOLESTR* pszResult,
100 DWORD* pdwReserved);
101
102 END_INTERFACE
103 };
104
105 #ifdef COBJMACROS
106 /*** IUnknown methods ***/
107 #define IBinding_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
108 #define IBinding_AddRef(p) (p)->lpVtbl->AddRef(p)
109 #define IBinding_Release(p) (p)->lpVtbl->Release(p)
110 /*** IBinding methods ***/
111 #define IBinding_Abort(p) (p)->lpVtbl->Abort(p)
112 #define IBinding_Suspend(p) (p)->lpVtbl->Suspend(p)
113 #define IBinding_Resume(p) (p)->lpVtbl->Resume(p)
114 #define IBinding_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a)
115 #define IBinding_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
116 #define IBinding_GetBindResult(p,a,b,c,d) (p)->lpVtbl->GetBindResult(p,a,b,c,d)
117 #endif
118
119 #endif
120
121 HRESULT CALLBACK IBinding_Abort_Proxy(
122 IBinding* This);
123 void __RPC_STUB IBinding_Abort_Stub(
124 struct IRpcStubBuffer* This,
125 struct IRpcChannelBuffer* pRpcChannelBuffer,
126 PRPC_MESSAGE pRpcMessage,
127 DWORD* pdwStubPhase);
128 HRESULT CALLBACK IBinding_Suspend_Proxy(
129 IBinding* This);
130 void __RPC_STUB IBinding_Suspend_Stub(
131 struct IRpcStubBuffer* This,
132 struct IRpcChannelBuffer* pRpcChannelBuffer,
133 PRPC_MESSAGE pRpcMessage,
134 DWORD* pdwStubPhase);
135 HRESULT CALLBACK IBinding_Resume_Proxy(
136 IBinding* This);
137 void __RPC_STUB IBinding_Resume_Stub(
138 struct IRpcStubBuffer* This,
139 struct IRpcChannelBuffer* pRpcChannelBuffer,
140 PRPC_MESSAGE pRpcMessage,
141 DWORD* pdwStubPhase);
142 HRESULT CALLBACK IBinding_SetPriority_Proxy(
143 IBinding* This,
144 LONG nPriority);
145 void __RPC_STUB IBinding_SetPriority_Stub(
146 struct IRpcStubBuffer* This,
147 struct IRpcChannelBuffer* pRpcChannelBuffer,
148 PRPC_MESSAGE pRpcMessage,
149 DWORD* pdwStubPhase);
150 HRESULT CALLBACK IBinding_GetPriority_Proxy(
151 IBinding* This,
152 LONG* pnPriority);
153 void __RPC_STUB IBinding_GetPriority_Stub(
154 struct IRpcStubBuffer* This,
155 struct IRpcChannelBuffer* pRpcChannelBuffer,
156 PRPC_MESSAGE pRpcMessage,
157 DWORD* pdwStubPhase);
158 HRESULT CALLBACK IBinding_RemoteGetBindResult_Proxy(
159 IBinding* This,
160 CLSID* pclsidProtocol,
161 DWORD* pdwResult,
162 LPOLESTR* pszResult,
163 DWORD dwReserved);
164 void __RPC_STUB IBinding_RemoteGetBindResult_Stub(
165 struct IRpcStubBuffer* This,
166 struct IRpcChannelBuffer* pRpcChannelBuffer,
167 PRPC_MESSAGE pRpcMessage,
168 DWORD* pdwStubPhase);
169 HRESULT CALLBACK IBinding_GetBindResult_Proxy(
170 IBinding* This,
171 CLSID* pclsidProtocol,
172 DWORD* pdwResult,
173 LPOLESTR* pszResult,
174 DWORD* pdwReserved);
175 HRESULT __RPC_STUB IBinding_GetBindResult_Stub(
176 IBinding* This,
177 CLSID* pclsidProtocol,
178 DWORD* pdwResult,
179 LPOLESTR* pszResult,
180 DWORD dwReserved);
181
182 #endif /* __IBinding_INTERFACE_DEFINED__ */
183
184 #ifndef __IBindStatusCallback_FWD_DEFINED__
185 #define __IBindStatusCallback_FWD_DEFINED__
186 typedef struct IBindStatusCallback IBindStatusCallback;
187 #endif
188
189 typedef IBindStatusCallback *LPBINDSTATUSCALLBACK;
190 typedef enum {
191 BINDVERB_GET = 0x0,
192 BINDVERB_POST = 0x1,
193 BINDVERB_PUT = 0x2,
194 BINDVERB_CUSTOM = 0x3
195 } BINDVERB;
196 typedef enum {
197 BINDF_ASYNCHRONOUS = 0x1,
198 BINDF_ASYNCSTORAGE = 0x2,
199 BINDF_NOPROGRESSIVERENDERING = 0x4,
200 BINDF_OFFLINEOPERATION = 0x8,
201 BINDF_GETNEWESTVERSION = 0x10,
202 BINDF_NOWRITECACHE = 0x20,
203 BINDF_NEEDFILE = 0x40,
204 BINDF_PULLDATA = 0x80,
205 BINDF_IGNORESECURITYPROBLEM = 0x100,
206 BINDF_RESYNCHRONIZE = 0x200,
207 BINDF_HYPERLINK = 0x400,
208 BINDF_NO_UI = 0x800,
209 BINDF_SILENTOPERATION = 0x1000,
210 BINDF_PRAGMA_NO_CACHE = 0x2000,
211 BINDF_GETCLASSOBJECT = 0x4000,
212 BINDF_RESERVED_1 = 0x8000,
213 BINDF_FREE_THREADED = 0x10000,
214 BINDF_DIRECT_READ = 0x20000,
215 BINDF_FORMS_SUBMIT = 0x40000,
216 BINDF_GETFROMCACHE_IF_NET_FAIL = 0x80000,
217 BINDF_FROMURLMON = 0x100000,
218 BINDF_FWD_BACK = 0x200000,
219 BINDF_PREFERDEFAULTHANDLER = 0x400000,
220 BINDF_ENFORCERESTRICTED = 0x800000
221 } BINDF;
222 typedef struct _tagBINDINFO {
223 ULONG cbSize;
224 LPWSTR szExtraInfo;
225 STGMEDIUM stgmedData;
226 DWORD grfBindInfoF;
227 DWORD dwBindVerb;
228 LPWSTR szCustomVerb;
229 DWORD cbStgmedData;
230 DWORD dwOptions;
231 DWORD dwOptionsFlags;
232 DWORD dwCodePage;
233 SECURITY_ATTRIBUTES securityAttributes;
234 IID iid;
235 IUnknown *pUnk;
236 DWORD dwReserved;
237 } BINDINFO;
238 typedef struct _REMSECURITY_ATTRIBUTES {
239 DWORD nLength;
240 DWORD lpSecurityDescriptor;
241 BOOL bInheritHandle;
242 } REMSECURITY_ATTRIBUTES, *PREMSECURITY_ATTRIBUTES, *LPREMSECURITY_ATTRIBUTES;
243 typedef struct _tagRemBINDINFO {
244 ULONG cbSize;
245 LPWSTR szExtraInfo;
246 DWORD grfBindInfoF;
247 DWORD dwBindVerb;
248 LPWSTR szCustomVerb;
249 DWORD cbstgmedData;
250 DWORD dwOptions;
251 DWORD dwOptionsFlags;
252 DWORD dwCodePage;
253 REMSECURITY_ATTRIBUTES securityAttributes;
254 IID iid;
255 IUnknown *pUnk;
256 DWORD dwReserved;
257 } RemBINDINFO;
258 typedef struct tagRemFORMATETC {
259 DWORD cfFormat;
260 DWORD ptd;
261 DWORD dwAspect;
262 LONG lindex;
263 DWORD tymed;
264 } RemFORMATETC, *LPREMFORMATETC;
265 typedef enum {
266 BSCF_FIRSTDATANOTIFICATION = 0x1,
267 BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
268 BSCF_LASTDATANOTIFICATION = 0x4,
269 BSCF_DATAFULLYAVAILABLE = 0x8,
270 BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10
271 } BSCF;
272 typedef enum BINDSTATUS {
273 BINDSTATUS_FINDINGRESOURCE = 1,
274 BINDSTATUS_CONNECTING,
275 BINDSTATUS_REDIRECTING,
276 BINDSTATUS_BEGINDOWNLOADDATA,
277 BINDSTATUS_DOWNLOADINGDATA,
278 BINDSTATUS_ENDDOWNLOADDATA,
279 BINDSTATUS_BEGINDOWNLOADCOMPONENTS,
280 BINDSTATUS_INSTALLINGCOMPONENTS,
281 BINDSTATUS_ENDDOWNLOADCOMPONENTS,
282 BINDSTATUS_USINGCACHEDCOPY,
283 BINDSTATUS_SENDINGREQUEST,
284 BINDSTATUS_CLASSIDAVAILABLE,
285 BINDSTATUS_MIMETYPEAVAILABLE,
286 BINDSTATUS_CACHEFILENAMEAVAILABLE,
287 BINDSTATUS_BEGINSYNCOPERATION,
288 BINDSTATUS_ENDSYNCOPERATION,
289 BINDSTATUS_BEGINUPLOADDATA,
290 BINDSTATUS_UPLOADINGDATA,
291 BINDSTATUS_ENDUPLOADINGDATA,
292 BINDSTATUS_PROTOCOLCLASSID,
293 BINDSTATUS_ENCODING,
294 BINDSTATUS_VERFIEDMIMETYPEAVAILABLE,
295 BINDSTATUS_CLASSINSTALLLOCATION,
296 BINDSTATUS_DECODING,
297 BINDSTATUS_LOADINGMIMEHANDLER,
298 BINDSTATUS_CONTENTDISPOSITIONATTACH,
299 BINDSTATUS_FILTERREPORTMIMETYPE,
300 BINDSTATUS_CLSIDCANINSTANTIATE,
301 BINDSTATUS_IUNKNOWNAVAILABLE,
302 BINDSTATUS_DIRECTBIND,
303 BINDSTATUS_RAWMIMETYPE,
304 BINDSTATUS_PROXYDETECTING,
305 BINDSTATUS_ACCEPTRANGES,
306 BINDSTATUS_COOKIE_SENT,
307 BINDSTATUS_COMPACT_POLICY_RECEIVED,
308 BINDSTATUS_COOKIE_SUPPRESSED,
309 BINDSTATUS_COOKIE_STATE_UNKNOWN,
310 BINDSTATUS_COOKIE_STATE_ACCEPT,
311 BINDSTATUS_COOKIE_STATE_REJECT,
312 BINDSTATUS_COOKIE_STATE_PROMPT,
313 BINDSTATUS_COOKIE_STATE_LEASH,
314 BINDSTATUS_COOKIE_STATE_DOWNGRADE,
315 BINDSTATUS_POLICY_HREF,
316 BINDSTATUS_P3P_HEADER,
317 BINDSTATUS_SESSION_COOKIE_RECEIVED,
318 BINDSTATUS_PERSISTENT_COOKIE_RECEIVED,
319 BINDSTATUS_SESSION_COOKIES_ALLOWED,
320 BINDSTATUS_CACHECONTROL
321 } BINDSTATUS;
322 /*****************************************************************************
323 * IBindStatusCallback interface
324 */
325 #ifndef __IBindStatusCallback_INTERFACE_DEFINED__
326 #define __IBindStatusCallback_INTERFACE_DEFINED__
327
328 DEFINE_GUID(IID_IBindStatusCallback, 0x79eac9c1, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
329 #if defined(__cplusplus) && !defined(CINTERFACE)
330 struct IBindStatusCallback : public IUnknown
331 {
332 virtual HRESULT STDMETHODCALLTYPE OnStartBinding(
333 DWORD dwReserved,
334 IBinding* pib) = 0;
335
336 virtual HRESULT STDMETHODCALLTYPE GetPriority(
337 LONG* pnPriority) = 0;
338
339 virtual HRESULT STDMETHODCALLTYPE OnLowResource(
340 DWORD reserved) = 0;
341
342 virtual HRESULT STDMETHODCALLTYPE OnProgress(
343 ULONG ulProgress,
344 ULONG ulProgressMax,
345 ULONG ulStatusCode,
346 LPCWSTR szStatusText) = 0;
347
348 virtual HRESULT STDMETHODCALLTYPE OnStopBinding(
349 HRESULT hresult,
350 LPCWSTR szError) = 0;
351
352 virtual HRESULT STDMETHODCALLTYPE GetBindInfo(
353 DWORD* grfBINDF,
354 BINDINFO* pbindinfo) = 0;
355
356 virtual HRESULT STDMETHODCALLTYPE OnDataAvailable(
357 DWORD grfBSCF,
358 DWORD dwSize,
359 FORMATETC* pformatetc,
360 STGMEDIUM* pstgmed) = 0;
361
362 virtual HRESULT STDMETHODCALLTYPE OnObjectAvailable(
363 REFIID riid,
364 IUnknown* punk) = 0;
365
366 };
367 #else
368 typedef struct IBindStatusCallbackVtbl IBindStatusCallbackVtbl;
369 struct IBindStatusCallback {
370 const IBindStatusCallbackVtbl* lpVtbl;
371 };
372 struct IBindStatusCallbackVtbl {
373 BEGIN_INTERFACE
374
375 /*** IUnknown methods ***/
376 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
377 IBindStatusCallback* This,
378 REFIID riid,
379 void** ppvObject);
380
381 ULONG (STDMETHODCALLTYPE *AddRef)(
382 IBindStatusCallback* This);
383
384 ULONG (STDMETHODCALLTYPE *Release)(
385 IBindStatusCallback* This);
386
387 /*** IBindStatusCallback methods ***/
388 HRESULT (STDMETHODCALLTYPE *OnStartBinding)(
389 IBindStatusCallback* This,
390 DWORD dwReserved,
391 IBinding* pib);
392
393 HRESULT (STDMETHODCALLTYPE *GetPriority)(
394 IBindStatusCallback* This,
395 LONG* pnPriority);
396
397 HRESULT (STDMETHODCALLTYPE *OnLowResource)(
398 IBindStatusCallback* This,
399 DWORD reserved);
400
401 HRESULT (STDMETHODCALLTYPE *OnProgress)(
402 IBindStatusCallback* This,
403 ULONG ulProgress,
404 ULONG ulProgressMax,
405 ULONG ulStatusCode,
406 LPCWSTR szStatusText);
407
408 HRESULT (STDMETHODCALLTYPE *OnStopBinding)(
409 IBindStatusCallback* This,
410 HRESULT hresult,
411 LPCWSTR szError);
412
413 HRESULT (STDMETHODCALLTYPE *GetBindInfo)(
414 IBindStatusCallback* This,
415 DWORD* grfBINDF,
416 BINDINFO* pbindinfo);
417
418 HRESULT (STDMETHODCALLTYPE *OnDataAvailable)(
419 IBindStatusCallback* This,
420 DWORD grfBSCF,
421 DWORD dwSize,
422 FORMATETC* pformatetc,
423 STGMEDIUM* pstgmed);
424
425 HRESULT (STDMETHODCALLTYPE *OnObjectAvailable)(
426 IBindStatusCallback* This,
427 REFIID riid,
428 IUnknown* punk);
429
430 END_INTERFACE
431 };
432
433 #ifdef COBJMACROS
434 /*** IUnknown methods ***/
435 #define IBindStatusCallback_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
436 #define IBindStatusCallback_AddRef(p) (p)->lpVtbl->AddRef(p)
437 #define IBindStatusCallback_Release(p) (p)->lpVtbl->Release(p)
438 /*** IBindStatusCallback methods ***/
439 #define IBindStatusCallback_OnStartBinding(p,a,b) (p)->lpVtbl->OnStartBinding(p,a,b)
440 #define IBindStatusCallback_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
441 #define IBindStatusCallback_OnLowResource(p,a) (p)->lpVtbl->OnLowResource(p,a)
442 #define IBindStatusCallback_OnProgress(p,a,b,c,d) (p)->lpVtbl->OnProgress(p,a,b,c,d)
443 #define IBindStatusCallback_OnStopBinding(p,a,b) (p)->lpVtbl->OnStopBinding(p,a,b)
444 #define IBindStatusCallback_GetBindInfo(p,a,b) (p)->lpVtbl->GetBindInfo(p,a,b)
445 #define IBindStatusCallback_OnDataAvailable(p,a,b,c,d) (p)->lpVtbl->OnDataAvailable(p,a,b,c,d)
446 #define IBindStatusCallback_OnObjectAvailable(p,a,b) (p)->lpVtbl->OnObjectAvailable(p,a,b)
447 #endif
448
449 #endif
450
451 HRESULT CALLBACK IBindStatusCallback_OnStartBinding_Proxy(
452 IBindStatusCallback* This,
453 DWORD dwReserved,
454 IBinding* pib);
455 void __RPC_STUB IBindStatusCallback_OnStartBinding_Stub(
456 struct IRpcStubBuffer* This,
457 struct IRpcChannelBuffer* pRpcChannelBuffer,
458 PRPC_MESSAGE pRpcMessage,
459 DWORD* pdwStubPhase);
460 HRESULT CALLBACK IBindStatusCallback_GetPriority_Proxy(
461 IBindStatusCallback* This,
462 LONG* pnPriority);
463 void __RPC_STUB IBindStatusCallback_GetPriority_Stub(
464 struct IRpcStubBuffer* This,
465 struct IRpcChannelBuffer* pRpcChannelBuffer,
466 PRPC_MESSAGE pRpcMessage,
467 DWORD* pdwStubPhase);
468 HRESULT CALLBACK IBindStatusCallback_OnLowResource_Proxy(
469 IBindStatusCallback* This,
470 DWORD reserved);
471 void __RPC_STUB IBindStatusCallback_OnLowResource_Stub(
472 struct IRpcStubBuffer* This,
473 struct IRpcChannelBuffer* pRpcChannelBuffer,
474 PRPC_MESSAGE pRpcMessage,
475 DWORD* pdwStubPhase);
476 HRESULT CALLBACK IBindStatusCallback_OnProgress_Proxy(
477 IBindStatusCallback* This,
478 ULONG ulProgress,
479 ULONG ulProgressMax,
480 ULONG ulStatusCode,
481 LPCWSTR szStatusText);
482 void __RPC_STUB IBindStatusCallback_OnProgress_Stub(
483 struct IRpcStubBuffer* This,
484 struct IRpcChannelBuffer* pRpcChannelBuffer,
485 PRPC_MESSAGE pRpcMessage,
486 DWORD* pdwStubPhase);
487 HRESULT CALLBACK IBindStatusCallback_OnStopBinding_Proxy(
488 IBindStatusCallback* This,
489 HRESULT hresult,
490 LPCWSTR szError);
491 void __RPC_STUB IBindStatusCallback_OnStopBinding_Stub(
492 struct IRpcStubBuffer* This,
493 struct IRpcChannelBuffer* pRpcChannelBuffer,
494 PRPC_MESSAGE pRpcMessage,
495 DWORD* pdwStubPhase);
496 HRESULT CALLBACK IBindStatusCallback_RemoteGetBindInfo_Proxy(
497 IBindStatusCallback* This,
498 DWORD* grfBINDF,
499 RemBINDINFO* pbindinfo,
500 RemSTGMEDIUM* pstgmed);
501 void __RPC_STUB IBindStatusCallback_RemoteGetBindInfo_Stub(
502 struct IRpcStubBuffer* This,
503 struct IRpcChannelBuffer* pRpcChannelBuffer,
504 PRPC_MESSAGE pRpcMessage,
505 DWORD* pdwStubPhase);
506 HRESULT CALLBACK IBindStatusCallback_GetBindInfo_Proxy(
507 IBindStatusCallback* This,
508 DWORD* grfBINDF,
509 BINDINFO* pbindinfo);
510 HRESULT __RPC_STUB IBindStatusCallback_GetBindInfo_Stub(
511 IBindStatusCallback* This,
512 DWORD* grfBINDF,
513 RemBINDINFO* pbindinfo,
514 RemSTGMEDIUM* pstgmed);
515 HRESULT CALLBACK IBindStatusCallback_RemoteOnDataAvailable_Proxy(
516 IBindStatusCallback* This,
517 DWORD grfBSCF,
518 DWORD dwSize,
519 RemFORMATETC* pformatetc,
520 RemSTGMEDIUM* pstgmed);
521 void __RPC_STUB IBindStatusCallback_RemoteOnDataAvailable_Stub(
522 struct IRpcStubBuffer* This,
523 struct IRpcChannelBuffer* pRpcChannelBuffer,
524 PRPC_MESSAGE pRpcMessage,
525 DWORD* pdwStubPhase);
526 HRESULT CALLBACK IBindStatusCallback_OnDataAvailable_Proxy(
527 IBindStatusCallback* This,
528 DWORD grfBSCF,
529 DWORD dwSize,
530 FORMATETC* pformatetc,
531 STGMEDIUM* pstgmed);
532 HRESULT __RPC_STUB IBindStatusCallback_OnDataAvailable_Stub(
533 IBindStatusCallback* This,
534 DWORD grfBSCF,
535 DWORD dwSize,
536 RemFORMATETC* pformatetc,
537 RemSTGMEDIUM* pstgmed);
538 HRESULT CALLBACK IBindStatusCallback_OnObjectAvailable_Proxy(
539 IBindStatusCallback* This,
540 REFIID riid,
541 IUnknown* punk);
542 void __RPC_STUB IBindStatusCallback_OnObjectAvailable_Stub(
543 struct IRpcStubBuffer* This,
544 struct IRpcChannelBuffer* pRpcChannelBuffer,
545 PRPC_MESSAGE pRpcMessage,
546 DWORD* pdwStubPhase);
547
548 #endif /* __IBindStatusCallback_INTERFACE_DEFINED__ */
549
550 #ifndef __IAuthenticate_FWD_DEFINED__
551 #define __IAuthenticate_FWD_DEFINED__
552 typedef struct IAuthenticate IAuthenticate;
553 #endif
554
555 typedef IAuthenticate *LPAUTHENTICATION;
556 /*****************************************************************************
557 * IAuthenticate interface
558 */
559 #ifndef __IAuthenticate_INTERFACE_DEFINED__
560 #define __IAuthenticate_INTERFACE_DEFINED__
561
562 DEFINE_GUID(IID_IAuthenticate, 0x79eac9d0, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
563 #if defined(__cplusplus) && !defined(CINTERFACE)
564 struct IAuthenticate : public IUnknown
565 {
566 virtual HRESULT STDMETHODCALLTYPE Authenticate(
567 HWND* phwnd,
568 LPWSTR* pszUsername,
569 LPWSTR* pszPassword) = 0;
570
571 };
572 #else
573 typedef struct IAuthenticateVtbl IAuthenticateVtbl;
574 struct IAuthenticate {
575 const IAuthenticateVtbl* lpVtbl;
576 };
577 struct IAuthenticateVtbl {
578 BEGIN_INTERFACE
579
580 /*** IUnknown methods ***/
581 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
582 IAuthenticate* This,
583 REFIID riid,
584 void** ppvObject);
585
586 ULONG (STDMETHODCALLTYPE *AddRef)(
587 IAuthenticate* This);
588
589 ULONG (STDMETHODCALLTYPE *Release)(
590 IAuthenticate* This);
591
592 /*** IAuthenticate methods ***/
593 HRESULT (STDMETHODCALLTYPE *Authenticate)(
594 IAuthenticate* This,
595 HWND* phwnd,
596 LPWSTR* pszUsername,
597 LPWSTR* pszPassword);
598
599 END_INTERFACE
600 };
601
602 #ifdef COBJMACROS
603 /*** IUnknown methods ***/
604 #define IAuthenticate_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
605 #define IAuthenticate_AddRef(p) (p)->lpVtbl->AddRef(p)
606 #define IAuthenticate_Release(p) (p)->lpVtbl->Release(p)
607 /*** IAuthenticate methods ***/
608 #define IAuthenticate_Authenticate(p,a,b,c) (p)->lpVtbl->Authenticate(p,a,b,c)
609 #endif
610
611 #endif
612
613 HRESULT CALLBACK IAuthenticate_Authenticate_Proxy(
614 IAuthenticate* This,
615 HWND* phwnd,
616 LPWSTR* pszUsername,
617 LPWSTR* pszPassword);
618 void __RPC_STUB IAuthenticate_Authenticate_Stub(
619 struct IRpcStubBuffer* This,
620 struct IRpcChannelBuffer* pRpcChannelBuffer,
621 PRPC_MESSAGE pRpcMessage,
622 DWORD* pdwStubPhase);
623
624 #endif /* __IAuthenticate_INTERFACE_DEFINED__ */
625
626 #ifndef __IHttpNegotiate_FWD_DEFINED__
627 #define __IHttpNegotiate_FWD_DEFINED__
628 typedef struct IHttpNegotiate IHttpNegotiate;
629 #endif
630
631 typedef IHttpNegotiate *LPHTTPNEGOTIATE;
632 /*****************************************************************************
633 * IHttpNegotiate interface
634 */
635 #ifndef __IHttpNegotiate_INTERFACE_DEFINED__
636 #define __IHttpNegotiate_INTERFACE_DEFINED__
637
638 DEFINE_GUID(IID_IHttpNegotiate, 0x79eac9d2, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
639 #if defined(__cplusplus) && !defined(CINTERFACE)
640 struct IHttpNegotiate : public IUnknown
641 {
642 virtual HRESULT STDMETHODCALLTYPE BeginningTransaction(
643 LPCWSTR szURL,
644 LPCWSTR szHeaders,
645 DWORD dwReserved,
646 LPWSTR* pszAdditionalHeaders) = 0;
647
648 virtual HRESULT STDMETHODCALLTYPE OnResponse(
649 DWORD dwResponseCode,
650 LPCWSTR szResponseHeaders,
651 LPCWSTR szRequestHeaders,
652 LPWSTR* pszAdditionalRequestHeaders) = 0;
653
654 };
655 #else
656 typedef struct IHttpNegotiateVtbl IHttpNegotiateVtbl;
657 struct IHttpNegotiate {
658 const IHttpNegotiateVtbl* lpVtbl;
659 };
660 struct IHttpNegotiateVtbl {
661 BEGIN_INTERFACE
662
663 /*** IUnknown methods ***/
664 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
665 IHttpNegotiate* This,
666 REFIID riid,
667 void** ppvObject);
668
669 ULONG (STDMETHODCALLTYPE *AddRef)(
670 IHttpNegotiate* This);
671
672 ULONG (STDMETHODCALLTYPE *Release)(
673 IHttpNegotiate* This);
674
675 /*** IHttpNegotiate methods ***/
676 HRESULT (STDMETHODCALLTYPE *BeginningTransaction)(
677 IHttpNegotiate* This,
678 LPCWSTR szURL,
679 LPCWSTR szHeaders,
680 DWORD dwReserved,
681 LPWSTR* pszAdditionalHeaders);
682
683 HRESULT (STDMETHODCALLTYPE *OnResponse)(
684 IHttpNegotiate* This,
685 DWORD dwResponseCode,
686 LPCWSTR szResponseHeaders,
687 LPCWSTR szRequestHeaders,
688 LPWSTR* pszAdditionalRequestHeaders);
689
690 END_INTERFACE
691 };
692
693 #ifdef COBJMACROS
694 /*** IUnknown methods ***/
695 #define IHttpNegotiate_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
696 #define IHttpNegotiate_AddRef(p) (p)->lpVtbl->AddRef(p)
697 #define IHttpNegotiate_Release(p) (p)->lpVtbl->Release(p)
698 /*** IHttpNegotiate methods ***/
699 #define IHttpNegotiate_BeginningTransaction(p,a,b,c,d) (p)->lpVtbl->BeginningTransaction(p,a,b,c,d)
700 #define IHttpNegotiate_OnResponse(p,a,b,c,d) (p)->lpVtbl->OnResponse(p,a,b,c,d)
701 #endif
702
703 #endif
704
705 HRESULT CALLBACK IHttpNegotiate_BeginningTransaction_Proxy(
706 IHttpNegotiate* This,
707 LPCWSTR szURL,
708 LPCWSTR szHeaders,
709 DWORD dwReserved,
710 LPWSTR* pszAdditionalHeaders);
711 void __RPC_STUB IHttpNegotiate_BeginningTransaction_Stub(
712 struct IRpcStubBuffer* This,
713 struct IRpcChannelBuffer* pRpcChannelBuffer,
714 PRPC_MESSAGE pRpcMessage,
715 DWORD* pdwStubPhase);
716 HRESULT CALLBACK IHttpNegotiate_OnResponse_Proxy(
717 IHttpNegotiate* This,
718 DWORD dwResponseCode,
719 LPCWSTR szResponseHeaders,
720 LPCWSTR szRequestHeaders,
721 LPWSTR* pszAdditionalRequestHeaders);
722 void __RPC_STUB IHttpNegotiate_OnResponse_Stub(
723 struct IRpcStubBuffer* This,
724 struct IRpcChannelBuffer* pRpcChannelBuffer,
725 PRPC_MESSAGE pRpcMessage,
726 DWORD* pdwStubPhase);
727
728 #endif /* __IHttpNegotiate_INTERFACE_DEFINED__ */
729
730 #ifndef __IHttpNegotiate2_FWD_DEFINED__
731 #define __IHttpNegotiate2_FWD_DEFINED__
732 typedef struct IHttpNegotiate2 IHttpNegotiate2;
733 #endif
734
735 typedef IHttpNegotiate2 *LPHTTPNEGOTIATE2;
736 /*****************************************************************************
737 * IHttpNegotiate2 interface
738 */
739 #ifndef __IHttpNegotiate2_INTERFACE_DEFINED__
740 #define __IHttpNegotiate2_INTERFACE_DEFINED__
741
742 DEFINE_GUID(IID_IHttpNegotiate2, 0x4f9f9fcb, 0xe0f4, 0x48eb, 0xb7,0xab, 0xfa,0x2e,0xa9,0x36,0x5c,0xb4);
743 #if defined(__cplusplus) && !defined(CINTERFACE)
744 struct IHttpNegotiate2 : public IHttpNegotiate
745 {
746 virtual HRESULT STDMETHODCALLTYPE GetRootSecurityId(
747 BYTE* pbSecurityId,
748 DWORD* pcbSecurityId,
749 DWORD_PTR dwReserved) = 0;
750
751 };
752 #else
753 typedef struct IHttpNegotiate2Vtbl IHttpNegotiate2Vtbl;
754 struct IHttpNegotiate2 {
755 const IHttpNegotiate2Vtbl* lpVtbl;
756 };
757 struct IHttpNegotiate2Vtbl {
758 BEGIN_INTERFACE
759
760 /*** IUnknown methods ***/
761 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
762 IHttpNegotiate2* This,
763 REFIID riid,
764 void** ppvObject);
765
766 ULONG (STDMETHODCALLTYPE *AddRef)(
767 IHttpNegotiate2* This);
768
769 ULONG (STDMETHODCALLTYPE *Release)(
770 IHttpNegotiate2* This);
771
772 /*** IHttpNegotiate methods ***/
773 HRESULT (STDMETHODCALLTYPE *BeginningTransaction)(
774 IHttpNegotiate2* This,
775 LPCWSTR szURL,
776 LPCWSTR szHeaders,
777 DWORD dwReserved,
778 LPWSTR* pszAdditionalHeaders);
779
780 HRESULT (STDMETHODCALLTYPE *OnResponse)(
781 IHttpNegotiate2* This,
782 DWORD dwResponseCode,
783 LPCWSTR szResponseHeaders,
784 LPCWSTR szRequestHeaders,
785 LPWSTR* pszAdditionalRequestHeaders);
786
787 /*** IHttpNegotiate2 methods ***/
788 HRESULT (STDMETHODCALLTYPE *GetRootSecurityId)(
789 IHttpNegotiate2* This,
790 BYTE* pbSecurityId,
791 DWORD* pcbSecurityId,
792 DWORD_PTR dwReserved);
793
794 END_INTERFACE
795 };
796
797 #ifdef COBJMACROS
798 /*** IUnknown methods ***/
799 #define IHttpNegotiate2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
800 #define IHttpNegotiate2_AddRef(p) (p)->lpVtbl->AddRef(p)
801 #define IHttpNegotiate2_Release(p) (p)->lpVtbl->Release(p)
802 /*** IHttpNegotiate methods ***/
803 #define IHttpNegotiate2_BeginningTransaction(p,a,b,c,d) (p)->lpVtbl->BeginningTransaction(p,a,b,c,d)
804 #define IHttpNegotiate2_OnResponse(p,a,b,c,d) (p)->lpVtbl->OnResponse(p,a,b,c,d)
805 /*** IHttpNegotiate2 methods ***/
806 #define IHttpNegotiate2_GetRootSecurityId(p,a,b,c) (p)->lpVtbl->GetRootSecurityId(p,a,b,c)
807 #endif
808
809 #endif
810
811 HRESULT CALLBACK IHttpNegotiate2_GetRootSecurityId_Proxy(
812 IHttpNegotiate2* This,
813 BYTE* pbSecurityId,
814 DWORD* pcbSecurityId,
815 DWORD_PTR dwReserved);
816 void __RPC_STUB IHttpNegotiate2_GetRootSecurityId_Stub(
817 struct IRpcStubBuffer* This,
818 struct IRpcChannelBuffer* pRpcChannelBuffer,
819 PRPC_MESSAGE pRpcMessage,
820 DWORD* pdwStubPhase);
821
822 #endif /* __IHttpNegotiate2_INTERFACE_DEFINED__ */
823
824 #define SID_IBindHost IID_IBindHost
825 #define SID_SBindHost IID_IBindHost
826 #ifndef __IBindHost_FWD_DEFINED__
827 #define __IBindHost_FWD_DEFINED__
828 typedef struct IBindHost IBindHost;
829 #endif
830
831 typedef IBindHost *LPBINDHOST;
832 /*****************************************************************************
833 * IBindHost interface
834 */
835 #ifndef __IBindHost_INTERFACE_DEFINED__
836 #define __IBindHost_INTERFACE_DEFINED__
837
838 DEFINE_GUID(IID_IBindHost, 0xfc4801a1, 0x2ba9, 0x11cf, 0xa2,0x29, 0x00,0xaa,0x00,0x3d,0x73,0x52);
839 #if defined(__cplusplus) && !defined(CINTERFACE)
840 struct IBindHost : public IUnknown
841 {
842 virtual HRESULT STDMETHODCALLTYPE CreateMoniker(
843 LPOLESTR szName,
844 IBindCtx* pBC,
845 IMoniker** ppmk,
846 DWORD dwReserved) = 0;
847
848 virtual HRESULT STDMETHODCALLTYPE MonikerBindToStorage(
849 IMoniker* pMk,
850 IBindCtx* pBC,
851 IBindStatusCallback* pBSC,
852 REFIID riid,
853 void** ppvObj) = 0;
854
855 virtual HRESULT STDMETHODCALLTYPE MonikerBindToObject(
856 IMoniker* pMk,
857 IBindCtx* pBC,
858 IBindStatusCallback* pBSC,
859 REFIID riid,
860 void** ppvObj) = 0;
861
862 };
863 #else
864 typedef struct IBindHostVtbl IBindHostVtbl;
865 struct IBindHost {
866 const IBindHostVtbl* lpVtbl;
867 };
868 struct IBindHostVtbl {
869 BEGIN_INTERFACE
870
871 /*** IUnknown methods ***/
872 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
873 IBindHost* This,
874 REFIID riid,
875 void** ppvObject);
876
877 ULONG (STDMETHODCALLTYPE *AddRef)(
878 IBindHost* This);
879
880 ULONG (STDMETHODCALLTYPE *Release)(
881 IBindHost* This);
882
883 /*** IBindHost methods ***/
884 HRESULT (STDMETHODCALLTYPE *CreateMoniker)(
885 IBindHost* This,
886 LPOLESTR szName,
887 IBindCtx* pBC,
888 IMoniker** ppmk,
889 DWORD dwReserved);
890
891 HRESULT (STDMETHODCALLTYPE *MonikerBindToStorage)(
892 IBindHost* This,
893 IMoniker* pMk,
894 IBindCtx* pBC,
895 IBindStatusCallback* pBSC,
896 REFIID riid,
897 void** ppvObj);
898
899 HRESULT (STDMETHODCALLTYPE *MonikerBindToObject)(
900 IBindHost* This,
901 IMoniker* pMk,
902 IBindCtx* pBC,
903 IBindStatusCallback* pBSC,
904 REFIID riid,
905 void** ppvObj);
906
907 END_INTERFACE
908 };
909
910 #ifdef COBJMACROS
911 /*** IUnknown methods ***/
912 #define IBindHost_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
913 #define IBindHost_AddRef(p) (p)->lpVtbl->AddRef(p)
914 #define IBindHost_Release(p) (p)->lpVtbl->Release(p)
915 /*** IBindHost methods ***/
916 #define IBindHost_CreateMoniker(p,a,b,c,d) (p)->lpVtbl->CreateMoniker(p,a,b,c,d)
917 #define IBindHost_MonikerBindToStorage(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToStorage(p,a,b,c,d,e)
918 #define IBindHost_MonikerBindToObject(p,a,b,c,d,e) (p)->lpVtbl->MonikerBindToObject(p,a,b,c,d,e)
919 #endif
920
921 #endif
922
923 HRESULT CALLBACK IBindHost_CreateMoniker_Proxy(
924 IBindHost* This,
925 LPOLESTR szName,
926 IBindCtx* pBC,
927 IMoniker** ppmk,
928 DWORD dwReserved);
929 void __RPC_STUB IBindHost_CreateMoniker_Stub(
930 struct IRpcStubBuffer* This,
931 struct IRpcChannelBuffer* pRpcChannelBuffer,
932 PRPC_MESSAGE pRpcMessage,
933 DWORD* pdwStubPhase);
934 HRESULT CALLBACK IBindHost_RemoteMonikerBindToStorage_Proxy(
935 IBindHost* This,
936 IMoniker* pMk,
937 IBindCtx* pBC,
938 IBindStatusCallback* pBSC,
939 REFIID riid,
940 IUnknown** ppvObj);
941 void __RPC_STUB IBindHost_RemoteMonikerBindToStorage_Stub(
942 struct IRpcStubBuffer* This,
943 struct IRpcChannelBuffer* pRpcChannelBuffer,
944 PRPC_MESSAGE pRpcMessage,
945 DWORD* pdwStubPhase);
946 HRESULT CALLBACK IBindHost_MonikerBindToStorage_Proxy(
947 IBindHost* This,
948 IMoniker* pMk,
949 IBindCtx* pBC,
950 IBindStatusCallback* pBSC,
951 REFIID riid,
952 void** ppvObj);
953 HRESULT __RPC_STUB IBindHost_MonikerBindToStorage_Stub(
954 IBindHost* This,
955 IMoniker* pMk,
956 IBindCtx* pBC,
957 IBindStatusCallback* pBSC,
958 REFIID riid,
959 IUnknown** ppvObj);
960 HRESULT CALLBACK IBindHost_RemoteMonikerBindToObject_Proxy(
961 IBindHost* This,
962 IMoniker* pMk,
963 IBindCtx* pBC,
964 IBindStatusCallback* pBSC,
965 REFIID riid,
966 IUnknown** ppvObj);
967 void __RPC_STUB IBindHost_RemoteMonikerBindToObject_Stub(
968 struct IRpcStubBuffer* This,
969 struct IRpcChannelBuffer* pRpcChannelBuffer,
970 PRPC_MESSAGE pRpcMessage,
971 DWORD* pdwStubPhase);
972 HRESULT CALLBACK IBindHost_MonikerBindToObject_Proxy(
973 IBindHost* This,
974 IMoniker* pMk,
975 IBindCtx* pBC,
976 IBindStatusCallback* pBSC,
977 REFIID riid,
978 void** ppvObj);
979 HRESULT __RPC_STUB IBindHost_MonikerBindToObject_Stub(
980 IBindHost* This,
981 IMoniker* pMk,
982 IBindCtx* pBC,
983 IBindStatusCallback* pBSC,
984 REFIID riid,
985 IUnknown** ppvObj);
986
987 #endif /* __IBindHost_INTERFACE_DEFINED__ */
988
989 #ifndef __IWinInetInfo_FWD_DEFINED__
990 #define __IWinInetInfo_FWD_DEFINED__
991 typedef struct IWinInetInfo IWinInetInfo;
992 #endif
993
994 typedef IWinInetInfo *LPWININETINFO;
995 /*****************************************************************************
996 * IWinInetInfo interface
997 */
998 #ifndef __IWinInetInfo_INTERFACE_DEFINED__
999 #define __IWinInetInfo_INTERFACE_DEFINED__
1000
1001 DEFINE_GUID(IID_IWinInetInfo, 0x79eac9d6, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1002 #if defined(__cplusplus) && !defined(CINTERFACE)
1003 struct IWinInetInfo : public IUnknown
1004 {
1005 virtual HRESULT STDMETHODCALLTYPE QueryOption(
1006 DWORD dwOption,
1007 LPVOID pBuffer,
1008 DWORD* pcbBuf) = 0;
1009
1010 };
1011 #else
1012 typedef struct IWinInetInfoVtbl IWinInetInfoVtbl;
1013 struct IWinInetInfo {
1014 const IWinInetInfoVtbl* lpVtbl;
1015 };
1016 struct IWinInetInfoVtbl {
1017 BEGIN_INTERFACE
1018
1019 /*** IUnknown methods ***/
1020 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1021 IWinInetInfo* This,
1022 REFIID riid,
1023 void** ppvObject);
1024
1025 ULONG (STDMETHODCALLTYPE *AddRef)(
1026 IWinInetInfo* This);
1027
1028 ULONG (STDMETHODCALLTYPE *Release)(
1029 IWinInetInfo* This);
1030
1031 /*** IWinInetInfo methods ***/
1032 HRESULT (STDMETHODCALLTYPE *QueryOption)(
1033 IWinInetInfo* This,
1034 DWORD dwOption,
1035 LPVOID pBuffer,
1036 DWORD* pcbBuf);
1037
1038 END_INTERFACE
1039 };
1040
1041 #ifdef COBJMACROS
1042 /*** IUnknown methods ***/
1043 #define IWinInetInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1044 #define IWinInetInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
1045 #define IWinInetInfo_Release(p) (p)->lpVtbl->Release(p)
1046 /*** IWinInetInfo methods ***/
1047 #define IWinInetInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
1048 #endif
1049
1050 #endif
1051
1052 HRESULT CALLBACK IWinInetInfo_RemoteQueryOption_Proxy(
1053 IWinInetInfo* This,
1054 DWORD dwOption,
1055 BYTE* pBuffer,
1056 DWORD* pcbBuf);
1057 void __RPC_STUB IWinInetInfo_RemoteQueryOption_Stub(
1058 struct IRpcStubBuffer* This,
1059 struct IRpcChannelBuffer* pRpcChannelBuffer,
1060 PRPC_MESSAGE pRpcMessage,
1061 DWORD* pdwStubPhase);
1062 HRESULT CALLBACK IWinInetInfo_QueryOption_Proxy(
1063 IWinInetInfo* This,
1064 DWORD dwOption,
1065 LPVOID pBuffer,
1066 DWORD* pcbBuf);
1067 HRESULT __RPC_STUB IWinInetInfo_QueryOption_Stub(
1068 IWinInetInfo* This,
1069 DWORD dwOption,
1070 BYTE* pBuffer,
1071 DWORD* pcbBuf);
1072
1073 #endif /* __IWinInetInfo_INTERFACE_DEFINED__ */
1074
1075 #ifndef __IWinInetHttpInfo_FWD_DEFINED__
1076 #define __IWinInetHttpInfo_FWD_DEFINED__
1077 typedef struct IWinInetHttpInfo IWinInetHttpInfo;
1078 #endif
1079
1080 typedef IWinInetHttpInfo *LPWININETHTTPINFO;
1081 /*****************************************************************************
1082 * IWinInetHttpInfo interface
1083 */
1084 #ifndef __IWinInetHttpInfo_INTERFACE_DEFINED__
1085 #define __IWinInetHttpInfo_INTERFACE_DEFINED__
1086
1087 DEFINE_GUID(IID_IWinInetHttpInfo, 0x79eac9d8, 0xbafa, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1088 #if defined(__cplusplus) && !defined(CINTERFACE)
1089 struct IWinInetHttpInfo : public IWinInetInfo
1090 {
1091 virtual HRESULT STDMETHODCALLTYPE QueryInfo(
1092 DWORD dwOption,
1093 LPVOID pBuffer,
1094 DWORD* pcbBuf,
1095 DWORD* pdwFlags,
1096 DWORD* pdwReserved) = 0;
1097
1098 };
1099 #else
1100 typedef struct IWinInetHttpInfoVtbl IWinInetHttpInfoVtbl;
1101 struct IWinInetHttpInfo {
1102 const IWinInetHttpInfoVtbl* lpVtbl;
1103 };
1104 struct IWinInetHttpInfoVtbl {
1105 BEGIN_INTERFACE
1106
1107 /*** IUnknown methods ***/
1108 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1109 IWinInetHttpInfo* This,
1110 REFIID riid,
1111 void** ppvObject);
1112
1113 ULONG (STDMETHODCALLTYPE *AddRef)(
1114 IWinInetHttpInfo* This);
1115
1116 ULONG (STDMETHODCALLTYPE *Release)(
1117 IWinInetHttpInfo* This);
1118
1119 /*** IWinInetInfo methods ***/
1120 HRESULT (STDMETHODCALLTYPE *QueryOption)(
1121 IWinInetHttpInfo* This,
1122 DWORD dwOption,
1123 LPVOID pBuffer,
1124 DWORD* pcbBuf);
1125
1126 /*** IWinInetHttpInfo methods ***/
1127 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
1128 IWinInetHttpInfo* This,
1129 DWORD dwOption,
1130 LPVOID pBuffer,
1131 DWORD* pcbBuf,
1132 DWORD* pdwFlags,
1133 DWORD* pdwReserved);
1134
1135 END_INTERFACE
1136 };
1137
1138 #ifdef COBJMACROS
1139 /*** IUnknown methods ***/
1140 #define IWinInetHttpInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1141 #define IWinInetHttpInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
1142 #define IWinInetHttpInfo_Release(p) (p)->lpVtbl->Release(p)
1143 /*** IWinInetInfo methods ***/
1144 #define IWinInetHttpInfo_QueryOption(p,a,b,c) (p)->lpVtbl->QueryOption(p,a,b,c)
1145 /*** IWinInetHttpInfo methods ***/
1146 #define IWinInetHttpInfo_QueryInfo(p,a,b,c,d,e) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e)
1147 #endif
1148
1149 #endif
1150
1151 HRESULT CALLBACK IWinInetHttpInfo_RemoteQueryInfo_Proxy(
1152 IWinInetHttpInfo* This,
1153 DWORD dwOption,
1154 BYTE* pBuffer,
1155 DWORD* pcbBuf,
1156 DWORD* pdwFlags,
1157 DWORD* pdwReserved);
1158 void __RPC_STUB IWinInetHttpInfo_RemoteQueryInfo_Stub(
1159 struct IRpcStubBuffer* This,
1160 struct IRpcChannelBuffer* pRpcChannelBuffer,
1161 PRPC_MESSAGE pRpcMessage,
1162 DWORD* pdwStubPhase);
1163 HRESULT CALLBACK IWinInetHttpInfo_QueryInfo_Proxy(
1164 IWinInetHttpInfo* This,
1165 DWORD dwOption,
1166 LPVOID pBuffer,
1167 DWORD* pcbBuf,
1168 DWORD* pdwFlags,
1169 DWORD* pdwReserved);
1170 HRESULT __RPC_STUB IWinInetHttpInfo_QueryInfo_Stub(
1171 IWinInetHttpInfo* This,
1172 DWORD dwOption,
1173 BYTE* pBuffer,
1174 DWORD* pcbBuf,
1175 DWORD* pdwFlags,
1176 DWORD* pdwReserved);
1177
1178 #endif /* __IWinInetHttpInfo_INTERFACE_DEFINED__ */
1179
1180 #ifndef __IPersistMoniker_FWD_DEFINED__
1181 #define __IPersistMoniker_FWD_DEFINED__
1182 typedef struct IPersistMoniker IPersistMoniker;
1183 #endif
1184
1185 typedef IPersistMoniker *LPPERSISTMONIKER;
1186 /*****************************************************************************
1187 * IPersistMoniker interface
1188 */
1189 #ifndef __IPersistMoniker_INTERFACE_DEFINED__
1190 #define __IPersistMoniker_INTERFACE_DEFINED__
1191
1192 DEFINE_GUID(IID_IPersistMoniker, 0x79eac9c9, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1193 #if defined(__cplusplus) && !defined(CINTERFACE)
1194 struct IPersistMoniker : public IUnknown
1195 {
1196 virtual HRESULT STDMETHODCALLTYPE GetClassID(
1197 CLSID* pClassID) = 0;
1198
1199 virtual HRESULT STDMETHODCALLTYPE IsDirty(
1200 ) = 0;
1201
1202 virtual HRESULT STDMETHODCALLTYPE Load(
1203 BOOL fFullyAvailable,
1204 IMoniker* pimkName,
1205 LPBC pibc,
1206 DWORD grfMode) = 0;
1207
1208 virtual HRESULT STDMETHODCALLTYPE Save(
1209 IMoniker* pimkName,
1210 LPBC pbc,
1211 BOOL fRemember) = 0;
1212
1213 virtual HRESULT STDMETHODCALLTYPE SaveCompleted(
1214 IMoniker* pimkName,
1215 LPBC pibc) = 0;
1216
1217 virtual HRESULT STDMETHODCALLTYPE GetCurMoniker(
1218 IMoniker** ppimkName) = 0;
1219
1220 };
1221 #else
1222 typedef struct IPersistMonikerVtbl IPersistMonikerVtbl;
1223 struct IPersistMoniker {
1224 const IPersistMonikerVtbl* lpVtbl;
1225 };
1226 struct IPersistMonikerVtbl {
1227 BEGIN_INTERFACE
1228
1229 /*** IUnknown methods ***/
1230 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1231 IPersistMoniker* This,
1232 REFIID riid,
1233 void** ppvObject);
1234
1235 ULONG (STDMETHODCALLTYPE *AddRef)(
1236 IPersistMoniker* This);
1237
1238 ULONG (STDMETHODCALLTYPE *Release)(
1239 IPersistMoniker* This);
1240
1241 /*** IPersistMoniker methods ***/
1242 HRESULT (STDMETHODCALLTYPE *GetClassID)(
1243 IPersistMoniker* This,
1244 CLSID* pClassID);
1245
1246 HRESULT (STDMETHODCALLTYPE *IsDirty)(
1247 IPersistMoniker* This);
1248
1249 HRESULT (STDMETHODCALLTYPE *Load)(
1250 IPersistMoniker* This,
1251 BOOL fFullyAvailable,
1252 IMoniker* pimkName,
1253 LPBC pibc,
1254 DWORD grfMode);
1255
1256 HRESULT (STDMETHODCALLTYPE *Save)(
1257 IPersistMoniker* This,
1258 IMoniker* pimkName,
1259 LPBC pbc,
1260 BOOL fRemember);
1261
1262 HRESULT (STDMETHODCALLTYPE *SaveCompleted)(
1263 IPersistMoniker* This,
1264 IMoniker* pimkName,
1265 LPBC pibc);
1266
1267 HRESULT (STDMETHODCALLTYPE *GetCurMoniker)(
1268 IPersistMoniker* This,
1269 IMoniker** ppimkName);
1270
1271 END_INTERFACE
1272 };
1273
1274 #ifdef COBJMACROS
1275 /*** IUnknown methods ***/
1276 #define IPersistMoniker_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1277 #define IPersistMoniker_AddRef(p) (p)->lpVtbl->AddRef(p)
1278 #define IPersistMoniker_Release(p) (p)->lpVtbl->Release(p)
1279 /*** IPersistMoniker methods ***/
1280 #define IPersistMoniker_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
1281 #define IPersistMoniker_IsDirty(p) (p)->lpVtbl->IsDirty(p)
1282 #define IPersistMoniker_Load(p,a,b,c,d) (p)->lpVtbl->Load(p,a,b,c,d)
1283 #define IPersistMoniker_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c)
1284 #define IPersistMoniker_SaveCompleted(p,a,b) (p)->lpVtbl->SaveCompleted(p,a,b)
1285 #define IPersistMoniker_GetCurMoniker(p,a) (p)->lpVtbl->GetCurMoniker(p,a)
1286 #endif
1287
1288 #endif
1289
1290 HRESULT CALLBACK IPersistMoniker_GetClassID_Proxy(
1291 IPersistMoniker* This,
1292 CLSID* pClassID);
1293 void __RPC_STUB IPersistMoniker_GetClassID_Stub(
1294 struct IRpcStubBuffer* This,
1295 struct IRpcChannelBuffer* pRpcChannelBuffer,
1296 PRPC_MESSAGE pRpcMessage,
1297 DWORD* pdwStubPhase);
1298 HRESULT CALLBACK IPersistMoniker_IsDirty_Proxy(
1299 IPersistMoniker* This);
1300 void __RPC_STUB IPersistMoniker_IsDirty_Stub(
1301 struct IRpcStubBuffer* This,
1302 struct IRpcChannelBuffer* pRpcChannelBuffer,
1303 PRPC_MESSAGE pRpcMessage,
1304 DWORD* pdwStubPhase);
1305 HRESULT CALLBACK IPersistMoniker_Load_Proxy(
1306 IPersistMoniker* This,
1307 BOOL fFullyAvailable,
1308 IMoniker* pimkName,
1309 LPBC pibc,
1310 DWORD grfMode);
1311 void __RPC_STUB IPersistMoniker_Load_Stub(
1312 struct IRpcStubBuffer* This,
1313 struct IRpcChannelBuffer* pRpcChannelBuffer,
1314 PRPC_MESSAGE pRpcMessage,
1315 DWORD* pdwStubPhase);
1316 HRESULT CALLBACK IPersistMoniker_Save_Proxy(
1317 IPersistMoniker* This,
1318 IMoniker* pimkName,
1319 LPBC pbc,
1320 BOOL fRemember);
1321 void __RPC_STUB IPersistMoniker_Save_Stub(
1322 struct IRpcStubBuffer* This,
1323 struct IRpcChannelBuffer* pRpcChannelBuffer,
1324 PRPC_MESSAGE pRpcMessage,
1325 DWORD* pdwStubPhase);
1326 HRESULT CALLBACK IPersistMoniker_SaveCompleted_Proxy(
1327 IPersistMoniker* This,
1328 IMoniker* pimkName,
1329 LPBC pibc);
1330 void __RPC_STUB IPersistMoniker_SaveCompleted_Stub(
1331 struct IRpcStubBuffer* This,
1332 struct IRpcChannelBuffer* pRpcChannelBuffer,
1333 PRPC_MESSAGE pRpcMessage,
1334 DWORD* pdwStubPhase);
1335 HRESULT CALLBACK IPersistMoniker_GetCurMoniker_Proxy(
1336 IPersistMoniker* This,
1337 IMoniker** ppimkName);
1338 void __RPC_STUB IPersistMoniker_GetCurMoniker_Stub(
1339 struct IRpcStubBuffer* This,
1340 struct IRpcChannelBuffer* pRpcChannelBuffer,
1341 PRPC_MESSAGE pRpcMessage,
1342 DWORD* pdwStubPhase);
1343
1344 #endif /* __IPersistMoniker_INTERFACE_DEFINED__ */
1345
1346 #ifndef __IMonikerProp_FWD_DEFINED__
1347 #define __IMonikerProp_FWD_DEFINED__
1348 typedef struct IMonikerProp IMonikerProp;
1349 #endif
1350
1351 typedef IMonikerProp *LPMONIKERPROP;
1352 typedef enum {
1353 MIMETYPEPROP = 0x0,
1354 USE_SRC_URL = 0x1
1355 } MONIKERPROPERTY;
1356 /*****************************************************************************
1357 * IMonikerProp interface
1358 */
1359 #ifndef __IMonikerProp_INTERFACE_DEFINED__
1360 #define __IMonikerProp_INTERFACE_DEFINED__
1361
1362 DEFINE_GUID(IID_IMonikerProp, 0xa5ca5f7f, 0x1847, 0x4d87, 0x9c,0x5b, 0x91,0x85,0x09,0xf7,0x51,0x1d);
1363 #if defined(__cplusplus) && !defined(CINTERFACE)
1364 struct IMonikerProp : public IUnknown
1365 {
1366 virtual HRESULT STDMETHODCALLTYPE PutProperty(
1367 MONIKERPROPERTY mkp,
1368 LPCWSTR val) = 0;
1369
1370 };
1371 #else
1372 typedef struct IMonikerPropVtbl IMonikerPropVtbl;
1373 struct IMonikerProp {
1374 const IMonikerPropVtbl* lpVtbl;
1375 };
1376 struct IMonikerPropVtbl {
1377 BEGIN_INTERFACE
1378
1379 /*** IUnknown methods ***/
1380 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1381 IMonikerProp* This,
1382 REFIID riid,
1383 void** ppvObject);
1384
1385 ULONG (STDMETHODCALLTYPE *AddRef)(
1386 IMonikerProp* This);
1387
1388 ULONG (STDMETHODCALLTYPE *Release)(
1389 IMonikerProp* This);
1390
1391 /*** IMonikerProp methods ***/
1392 HRESULT (STDMETHODCALLTYPE *PutProperty)(
1393 IMonikerProp* This,
1394 MONIKERPROPERTY mkp,
1395 LPCWSTR val);
1396
1397 END_INTERFACE
1398 };
1399
1400 #ifdef COBJMACROS
1401 /*** IUnknown methods ***/
1402 #define IMonikerProp_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1403 #define IMonikerProp_AddRef(p) (p)->lpVtbl->AddRef(p)
1404 #define IMonikerProp_Release(p) (p)->lpVtbl->Release(p)
1405 /*** IMonikerProp methods ***/
1406 #define IMonikerProp_PutProperty(p,a,b) (p)->lpVtbl->PutProperty(p,a,b)
1407 #endif
1408
1409 #endif
1410
1411 HRESULT CALLBACK IMonikerProp_PutProperty_Proxy(
1412 IMonikerProp* This,
1413 MONIKERPROPERTY mkp,
1414 LPCWSTR val);
1415 void __RPC_STUB IMonikerProp_PutProperty_Stub(
1416 struct IRpcStubBuffer* This,
1417 struct IRpcChannelBuffer* pRpcChannelBuffer,
1418 PRPC_MESSAGE pRpcMessage,
1419 DWORD* pdwStubPhase);
1420
1421 #endif /* __IMonikerProp_INTERFACE_DEFINED__ */
1422
1423 #ifndef __IInternetBindInfo_FWD_DEFINED__
1424 #define __IInternetBindInfo_FWD_DEFINED__
1425 typedef struct IInternetBindInfo IInternetBindInfo;
1426 #endif
1427
1428 typedef IInternetBindInfo *LPIINTERNETBINDINFO;
1429 typedef enum tagBINDSTRING {
1430 BINDSTRING_HEADERS = 1,
1431 BINDSTRING_ACCEPT_MIMES,
1432 BINDSTRING_EXTRA_URL,
1433 BINDSTRING_LANGUAGE,
1434 BINDSTRING_USERNAME,
1435 BINDSTRING_PASSWORD,
1436 BINDSTRING_UA_PIXELS,
1437 BINDSTRING_UA_COLOR,
1438 BINDSTRING_OS,
1439 BINDSTRING_USER_AGENT,
1440 BINDSTRING_ACCEPT_ENCODINGS,
1441 BINDSTRING_POST_COOKIE,
1442 BINDSTRING_POST_DATA_MIME,
1443 BINDSTRING_URL,
1444 BINDSTRING_IID,
1445 BINDSTRING_FLAG_BIND_TO_OBJECT,
1446 BINDSTRING_PTR_BIND_CONTEXT
1447 } BINDSTRING;
1448 /*****************************************************************************
1449 * IInternetBindInfo interface
1450 */
1451 #ifndef __IInternetBindInfo_INTERFACE_DEFINED__
1452 #define __IInternetBindInfo_INTERFACE_DEFINED__
1453
1454 DEFINE_GUID(IID_IInternetBindInfo, 0x79eac9e1, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1455 #if defined(__cplusplus) && !defined(CINTERFACE)
1456 struct IInternetBindInfo : public IUnknown
1457 {
1458 virtual HRESULT STDMETHODCALLTYPE GetBindInfo(
1459 DWORD* grfBINDF,
1460 BINDINFO* pbindinfo) = 0;
1461
1462 virtual HRESULT STDMETHODCALLTYPE GetBindString(
1463 ULONG ulStringType,
1464 LPOLESTR* ppwzStr,
1465 ULONG cEl,
1466 ULONG* pcElFetched) = 0;
1467
1468 };
1469 #else
1470 typedef struct IInternetBindInfoVtbl IInternetBindInfoVtbl;
1471 struct IInternetBindInfo {
1472 const IInternetBindInfoVtbl* lpVtbl;
1473 };
1474 struct IInternetBindInfoVtbl {
1475 BEGIN_INTERFACE
1476
1477 /*** IUnknown methods ***/
1478 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1479 IInternetBindInfo* This,
1480 REFIID riid,
1481 void** ppvObject);
1482
1483 ULONG (STDMETHODCALLTYPE *AddRef)(
1484 IInternetBindInfo* This);
1485
1486 ULONG (STDMETHODCALLTYPE *Release)(
1487 IInternetBindInfo* This);
1488
1489 /*** IInternetBindInfo methods ***/
1490 HRESULT (STDMETHODCALLTYPE *GetBindInfo)(
1491 IInternetBindInfo* This,
1492 DWORD* grfBINDF,
1493 BINDINFO* pbindinfo);
1494
1495 HRESULT (STDMETHODCALLTYPE *GetBindString)(
1496 IInternetBindInfo* This,
1497 ULONG ulStringType,
1498 LPOLESTR* ppwzStr,
1499 ULONG cEl,
1500 ULONG* pcElFetched);
1501
1502 END_INTERFACE
1503 };
1504
1505 #ifdef COBJMACROS
1506 /*** IUnknown methods ***/
1507 #define IInternetBindInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1508 #define IInternetBindInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
1509 #define IInternetBindInfo_Release(p) (p)->lpVtbl->Release(p)
1510 /*** IInternetBindInfo methods ***/
1511 #define IInternetBindInfo_GetBindInfo(p,a,b) (p)->lpVtbl->GetBindInfo(p,a,b)
1512 #define IInternetBindInfo_GetBindString(p,a,b,c,d) (p)->lpVtbl->GetBindString(p,a,b,c,d)
1513 #endif
1514
1515 #endif
1516
1517 HRESULT CALLBACK IInternetBindInfo_GetBindInfo_Proxy(
1518 IInternetBindInfo* This,
1519 DWORD* grfBINDF,
1520 BINDINFO* pbindinfo);
1521 void __RPC_STUB IInternetBindInfo_GetBindInfo_Stub(
1522 struct IRpcStubBuffer* This,
1523 struct IRpcChannelBuffer* pRpcChannelBuffer,
1524 PRPC_MESSAGE pRpcMessage,
1525 DWORD* pdwStubPhase);
1526 HRESULT CALLBACK IInternetBindInfo_GetBindString_Proxy(
1527 IInternetBindInfo* This,
1528 ULONG ulStringType,
1529 LPOLESTR* ppwzStr,
1530 ULONG cEl,
1531 ULONG* pcElFetched);
1532 void __RPC_STUB IInternetBindInfo_GetBindString_Stub(
1533 struct IRpcStubBuffer* This,
1534 struct IRpcChannelBuffer* pRpcChannelBuffer,
1535 PRPC_MESSAGE pRpcMessage,
1536 DWORD* pdwStubPhase);
1537
1538 #endif /* __IInternetBindInfo_INTERFACE_DEFINED__ */
1539
1540 #ifndef __IInternetPriority_FWD_DEFINED__
1541 #define __IInternetPriority_FWD_DEFINED__
1542 typedef struct IInternetPriority IInternetPriority;
1543 #endif
1544
1545 typedef IInternetPriority *LPIINTERNETPRIORITY;
1546 /*****************************************************************************
1547 * IInternetPriority interface
1548 */
1549 #ifndef __IInternetPriority_INTERFACE_DEFINED__
1550 #define __IInternetPriority_INTERFACE_DEFINED__
1551
1552 DEFINE_GUID(IID_IInternetPriority, 0x79eac9eb, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1553 #if defined(__cplusplus) && !defined(CINTERFACE)
1554 struct IInternetPriority : public IUnknown
1555 {
1556 virtual HRESULT STDMETHODCALLTYPE SetPriority(
1557 LONG nPriority) = 0;
1558
1559 virtual HRESULT STDMETHODCALLTYPE GetPriority(
1560 LONG* pnPriority) = 0;
1561
1562 };
1563 #else
1564 typedef struct IInternetPriorityVtbl IInternetPriorityVtbl;
1565 struct IInternetPriority {
1566 const IInternetPriorityVtbl* lpVtbl;
1567 };
1568 struct IInternetPriorityVtbl {
1569 BEGIN_INTERFACE
1570
1571 /*** IUnknown methods ***/
1572 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1573 IInternetPriority* This,
1574 REFIID riid,
1575 void** ppvObject);
1576
1577 ULONG (STDMETHODCALLTYPE *AddRef)(
1578 IInternetPriority* This);
1579
1580 ULONG (STDMETHODCALLTYPE *Release)(
1581 IInternetPriority* This);
1582
1583 /*** IInternetPriority methods ***/
1584 HRESULT (STDMETHODCALLTYPE *SetPriority)(
1585 IInternetPriority* This,
1586 LONG nPriority);
1587
1588 HRESULT (STDMETHODCALLTYPE *GetPriority)(
1589 IInternetPriority* This,
1590 LONG* pnPriority);
1591
1592 END_INTERFACE
1593 };
1594
1595 #ifdef COBJMACROS
1596 /*** IUnknown methods ***/
1597 #define IInternetPriority_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1598 #define IInternetPriority_AddRef(p) (p)->lpVtbl->AddRef(p)
1599 #define IInternetPriority_Release(p) (p)->lpVtbl->Release(p)
1600 /*** IInternetPriority methods ***/
1601 #define IInternetPriority_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a)
1602 #define IInternetPriority_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
1603 #endif
1604
1605 #endif
1606
1607 HRESULT CALLBACK IInternetPriority_SetPriority_Proxy(
1608 IInternetPriority* This,
1609 LONG nPriority);
1610 void __RPC_STUB IInternetPriority_SetPriority_Stub(
1611 struct IRpcStubBuffer* This,
1612 struct IRpcChannelBuffer* pRpcChannelBuffer,
1613 PRPC_MESSAGE pRpcMessage,
1614 DWORD* pdwStubPhase);
1615 HRESULT CALLBACK IInternetPriority_GetPriority_Proxy(
1616 IInternetPriority* This,
1617 LONG* pnPriority);
1618 void __RPC_STUB IInternetPriority_GetPriority_Stub(
1619 struct IRpcStubBuffer* This,
1620 struct IRpcChannelBuffer* pRpcChannelBuffer,
1621 PRPC_MESSAGE pRpcMessage,
1622 DWORD* pdwStubPhase);
1623
1624 #endif /* __IInternetPriority_INTERFACE_DEFINED__ */
1625
1626 #ifndef __IInternetProtocolRoot_FWD_DEFINED__
1627 #define __IInternetProtocolRoot_FWD_DEFINED__
1628 typedef struct IInternetProtocolRoot IInternetProtocolRoot;
1629 #endif
1630
1631 typedef IInternetProtocolRoot *LPIINTERNETPROTOCOLROOT;
1632 typedef enum _tagPI_FLAGS {
1633 PI_PARSE_URL = 0x1,
1634 PI_FILTER_MODE = 0x2,
1635 PI_FORCE_ASYNC = 0x4,
1636 PI_USE_WORKERTHREAD = 0x8,
1637 PI_MIMEVERIFICATION = 0x10,
1638 PI_CLSIDLOOKUP = 0x20,
1639 PI_DATAPROGRESS = 0x40,
1640 PI_SYNCHRONOUS = 0x80,
1641 PI_APARTMENTTHREADED = 0x100,
1642 PI_CLASSINSTALL = 0x200,
1643 PD_FORCE_SWITCH = 0x10000
1644 } PI_FLAGS;
1645 typedef struct _tagPROTOCOLDATA {
1646 DWORD grfFlags;
1647 DWORD dwState;
1648 LPVOID pData;
1649 ULONG cbData;
1650 } PROTOCOLDATA;
1651 /*****************************************************************************
1652 * IInternetProtocolRoot interface
1653 */
1654 #ifndef __IInternetProtocolRoot_INTERFACE_DEFINED__
1655 #define __IInternetProtocolRoot_INTERFACE_DEFINED__
1656
1657 DEFINE_GUID(IID_IInternetProtocolRoot, 0x79eac9e3, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1658 #if defined(__cplusplus) && !defined(CINTERFACE)
1659 struct IInternetProtocolRoot : public IUnknown
1660 {
1661 virtual HRESULT STDMETHODCALLTYPE Start(
1662 LPCWSTR szUrl,
1663 IInternetProtocolSink* pOIProtSink,
1664 IInternetBindInfo* pOIBindInfo,
1665 DWORD grfPI,
1666 DWORD dwReserved) = 0;
1667
1668 virtual HRESULT STDMETHODCALLTYPE Continue(
1669 PROTOCOLDATA* pProtocolData) = 0;
1670
1671 virtual HRESULT STDMETHODCALLTYPE Abort(
1672 HRESULT hrReason,
1673 DWORD dwOptions) = 0;
1674
1675 virtual HRESULT STDMETHODCALLTYPE Terminate(
1676 DWORD dwOptions) = 0;
1677
1678 virtual HRESULT STDMETHODCALLTYPE Suspend(
1679 ) = 0;
1680
1681 virtual HRESULT STDMETHODCALLTYPE Resume(
1682 ) = 0;
1683
1684 };
1685 #else
1686 typedef struct IInternetProtocolRootVtbl IInternetProtocolRootVtbl;
1687 struct IInternetProtocolRoot {
1688 const IInternetProtocolRootVtbl* lpVtbl;
1689 };
1690 struct IInternetProtocolRootVtbl {
1691 BEGIN_INTERFACE
1692
1693 /*** IUnknown methods ***/
1694 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1695 IInternetProtocolRoot* This,
1696 REFIID riid,
1697 void** ppvObject);
1698
1699 ULONG (STDMETHODCALLTYPE *AddRef)(
1700 IInternetProtocolRoot* This);
1701
1702 ULONG (STDMETHODCALLTYPE *Release)(
1703 IInternetProtocolRoot* This);
1704
1705 /*** IInternetProtocolRoot methods ***/
1706 HRESULT (STDMETHODCALLTYPE *Start)(
1707 IInternetProtocolRoot* This,
1708 LPCWSTR szUrl,
1709 IInternetProtocolSink* pOIProtSink,
1710 IInternetBindInfo* pOIBindInfo,
1711 DWORD grfPI,
1712 DWORD dwReserved);
1713
1714 HRESULT (STDMETHODCALLTYPE *Continue)(
1715 IInternetProtocolRoot* This,
1716 PROTOCOLDATA* pProtocolData);
1717
1718 HRESULT (STDMETHODCALLTYPE *Abort)(
1719 IInternetProtocolRoot* This,
1720 HRESULT hrReason,
1721 DWORD dwOptions);
1722
1723 HRESULT (STDMETHODCALLTYPE *Terminate)(
1724 IInternetProtocolRoot* This,
1725 DWORD dwOptions);
1726
1727 HRESULT (STDMETHODCALLTYPE *Suspend)(
1728 IInternetProtocolRoot* This);
1729
1730 HRESULT (STDMETHODCALLTYPE *Resume)(
1731 IInternetProtocolRoot* This);
1732
1733 END_INTERFACE
1734 };
1735
1736 #ifdef COBJMACROS
1737 /*** IUnknown methods ***/
1738 #define IInternetProtocolRoot_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1739 #define IInternetProtocolRoot_AddRef(p) (p)->lpVtbl->AddRef(p)
1740 #define IInternetProtocolRoot_Release(p) (p)->lpVtbl->Release(p)
1741 /*** IInternetProtocolRoot methods ***/
1742 #define IInternetProtocolRoot_Start(p,a,b,c,d,e) (p)->lpVtbl->Start(p,a,b,c,d,e)
1743 #define IInternetProtocolRoot_Continue(p,a) (p)->lpVtbl->Continue(p,a)
1744 #define IInternetProtocolRoot_Abort(p,a,b) (p)->lpVtbl->Abort(p,a,b)
1745 #define IInternetProtocolRoot_Terminate(p,a) (p)->lpVtbl->Terminate(p,a)
1746 #define IInternetProtocolRoot_Suspend(p) (p)->lpVtbl->Suspend(p)
1747 #define IInternetProtocolRoot_Resume(p) (p)->lpVtbl->Resume(p)
1748 #endif
1749
1750 #endif
1751
1752 HRESULT CALLBACK IInternetProtocolRoot_Start_Proxy(
1753 IInternetProtocolRoot* This,
1754 LPCWSTR szUrl,
1755 IInternetProtocolSink* pOIProtSink,
1756 IInternetBindInfo* pOIBindInfo,
1757 DWORD grfPI,
1758 DWORD dwReserved);
1759 void __RPC_STUB IInternetProtocolRoot_Start_Stub(
1760 struct IRpcStubBuffer* This,
1761 struct IRpcChannelBuffer* pRpcChannelBuffer,
1762 PRPC_MESSAGE pRpcMessage,
1763 DWORD* pdwStubPhase);
1764 HRESULT CALLBACK IInternetProtocolRoot_Continue_Proxy(
1765 IInternetProtocolRoot* This,
1766 PROTOCOLDATA* pProtocolData);
1767 void __RPC_STUB IInternetProtocolRoot_Continue_Stub(
1768 struct IRpcStubBuffer* This,
1769 struct IRpcChannelBuffer* pRpcChannelBuffer,
1770 PRPC_MESSAGE pRpcMessage,
1771 DWORD* pdwStubPhase);
1772 HRESULT CALLBACK IInternetProtocolRoot_Abort_Proxy(
1773 IInternetProtocolRoot* This,
1774 HRESULT hrReason,
1775 DWORD dwOptions);
1776 void __RPC_STUB IInternetProtocolRoot_Abort_Stub(
1777 struct IRpcStubBuffer* This,
1778 struct IRpcChannelBuffer* pRpcChannelBuffer,
1779 PRPC_MESSAGE pRpcMessage,
1780 DWORD* pdwStubPhase);
1781 HRESULT CALLBACK IInternetProtocolRoot_Terminate_Proxy(
1782 IInternetProtocolRoot* This,
1783 DWORD dwOptions);
1784 void __RPC_STUB IInternetProtocolRoot_Terminate_Stub(
1785 struct IRpcStubBuffer* This,
1786 struct IRpcChannelBuffer* pRpcChannelBuffer,
1787 PRPC_MESSAGE pRpcMessage,
1788 DWORD* pdwStubPhase);
1789 HRESULT CALLBACK IInternetProtocolRoot_Suspend_Proxy(
1790 IInternetProtocolRoot* This);
1791 void __RPC_STUB IInternetProtocolRoot_Suspend_Stub(
1792 struct IRpcStubBuffer* This,
1793 struct IRpcChannelBuffer* pRpcChannelBuffer,
1794 PRPC_MESSAGE pRpcMessage,
1795 DWORD* pdwStubPhase);
1796 HRESULT CALLBACK IInternetProtocolRoot_Resume_Proxy(
1797 IInternetProtocolRoot* This);
1798 void __RPC_STUB IInternetProtocolRoot_Resume_Stub(
1799 struct IRpcStubBuffer* This,
1800 struct IRpcChannelBuffer* pRpcChannelBuffer,
1801 PRPC_MESSAGE pRpcMessage,
1802 DWORD* pdwStubPhase);
1803
1804 #endif /* __IInternetProtocolRoot_INTERFACE_DEFINED__ */
1805
1806 typedef IInternetProtocolSink *LPIINTERNETPROTOCOLSINK;
1807 /*****************************************************************************
1808 * IInternetProtocolSink interface
1809 */
1810 #ifndef __IInternetProtocolSink_INTERFACE_DEFINED__
1811 #define __IInternetProtocolSink_INTERFACE_DEFINED__
1812
1813 DEFINE_GUID(IID_IInternetProtocolSink, 0x79eac9e5, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1814 #if defined(__cplusplus) && !defined(CINTERFACE)
1815 struct IInternetProtocolSink : public IUnknown
1816 {
1817 virtual HRESULT STDMETHODCALLTYPE Switch(
1818 PROTOCOLDATA* pProtocolData) = 0;
1819
1820 virtual HRESULT STDMETHODCALLTYPE ReportProgress(
1821 ULONG ulStatusCode,
1822 LPCWSTR szStatusText) = 0;
1823
1824 virtual HRESULT STDMETHODCALLTYPE ReportData(
1825 DWORD grfBSCF,
1826 ULONG ulProgress,
1827 ULONG ulProgressMax) = 0;
1828
1829 virtual HRESULT STDMETHODCALLTYPE ReportResult(
1830 HRESULT hrResult,
1831 DWORD dwError,
1832 LPCWSTR szResult) = 0;
1833
1834 };
1835 #else
1836 typedef struct IInternetProtocolSinkVtbl IInternetProtocolSinkVtbl;
1837 struct IInternetProtocolSink {
1838 const IInternetProtocolSinkVtbl* lpVtbl;
1839 };
1840 struct IInternetProtocolSinkVtbl {
1841 BEGIN_INTERFACE
1842
1843 /*** IUnknown methods ***/
1844 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1845 IInternetProtocolSink* This,
1846 REFIID riid,
1847 void** ppvObject);
1848
1849 ULONG (STDMETHODCALLTYPE *AddRef)(
1850 IInternetProtocolSink* This);
1851
1852 ULONG (STDMETHODCALLTYPE *Release)(
1853 IInternetProtocolSink* This);
1854
1855 /*** IInternetProtocolSink methods ***/
1856 HRESULT (STDMETHODCALLTYPE *Switch)(
1857 IInternetProtocolSink* This,
1858 PROTOCOLDATA* pProtocolData);
1859
1860 HRESULT (STDMETHODCALLTYPE *ReportProgress)(
1861 IInternetProtocolSink* This,
1862 ULONG ulStatusCode,
1863 LPCWSTR szStatusText);
1864
1865 HRESULT (STDMETHODCALLTYPE *ReportData)(
1866 IInternetProtocolSink* This,
1867 DWORD grfBSCF,
1868 ULONG ulProgress,
1869 ULONG ulProgressMax);
1870
1871 HRESULT (STDMETHODCALLTYPE *ReportResult)(
1872 IInternetProtocolSink* This,
1873 HRESULT hrResult,
1874 DWORD dwError,
1875 LPCWSTR szResult);
1876
1877 END_INTERFACE
1878 };
1879
1880 #ifdef COBJMACROS
1881 /*** IUnknown methods ***/
1882 #define IInternetProtocolSink_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1883 #define IInternetProtocolSink_AddRef(p) (p)->lpVtbl->AddRef(p)
1884 #define IInternetProtocolSink_Release(p) (p)->lpVtbl->Release(p)
1885 /*** IInternetProtocolSink methods ***/
1886 #define IInternetProtocolSink_Switch(p,a) (p)->lpVtbl->Switch(p,a)
1887 #define IInternetProtocolSink_ReportProgress(p,a,b) (p)->lpVtbl->ReportProgress(p,a,b)
1888 #define IInternetProtocolSink_ReportData(p,a,b,c) (p)->lpVtbl->ReportData(p,a,b,c)
1889 #define IInternetProtocolSink_ReportResult(p,a,b,c) (p)->lpVtbl->ReportResult(p,a,b,c)
1890 #endif
1891
1892 #endif
1893
1894 HRESULT CALLBACK IInternetProtocolSink_Switch_Proxy(
1895 IInternetProtocolSink* This,
1896 PROTOCOLDATA* pProtocolData);
1897 void __RPC_STUB IInternetProtocolSink_Switch_Stub(
1898 struct IRpcStubBuffer* This,
1899 struct IRpcChannelBuffer* pRpcChannelBuffer,
1900 PRPC_MESSAGE pRpcMessage,
1901 DWORD* pdwStubPhase);
1902 HRESULT CALLBACK IInternetProtocolSink_ReportProgress_Proxy(
1903 IInternetProtocolSink* This,
1904 ULONG ulStatusCode,
1905 LPCWSTR szStatusText);
1906 void __RPC_STUB IInternetProtocolSink_ReportProgress_Stub(
1907 struct IRpcStubBuffer* This,
1908 struct IRpcChannelBuffer* pRpcChannelBuffer,
1909 PRPC_MESSAGE pRpcMessage,
1910 DWORD* pdwStubPhase);
1911 HRESULT CALLBACK IInternetProtocolSink_ReportData_Proxy(
1912 IInternetProtocolSink* This,
1913 DWORD grfBSCF,
1914 ULONG ulProgress,
1915 ULONG ulProgressMax);
1916 void __RPC_STUB IInternetProtocolSink_ReportData_Stub(
1917 struct IRpcStubBuffer* This,
1918 struct IRpcChannelBuffer* pRpcChannelBuffer,
1919 PRPC_MESSAGE pRpcMessage,
1920 DWORD* pdwStubPhase);
1921 HRESULT CALLBACK IInternetProtocolSink_ReportResult_Proxy(
1922 IInternetProtocolSink* This,
1923 HRESULT hrResult,
1924 DWORD dwError,
1925 LPCWSTR szResult);
1926 void __RPC_STUB IInternetProtocolSink_ReportResult_Stub(
1927 struct IRpcStubBuffer* This,
1928 struct IRpcChannelBuffer* pRpcChannelBuffer,
1929 PRPC_MESSAGE pRpcMessage,
1930 DWORD* pdwStubPhase);
1931
1932 #endif /* __IInternetProtocolSink_INTERFACE_DEFINED__ */
1933
1934 #ifndef __IInternetProtocol_FWD_DEFINED__
1935 #define __IInternetProtocol_FWD_DEFINED__
1936 typedef struct IInternetProtocol IInternetProtocol;
1937 #endif
1938
1939 typedef IInternetProtocol *LPIINTERNETPROTOCOL;
1940 /*****************************************************************************
1941 * IInternetProtocol interface
1942 */
1943 #ifndef __IInternetProtocol_INTERFACE_DEFINED__
1944 #define __IInternetProtocol_INTERFACE_DEFINED__
1945
1946 DEFINE_GUID(IID_IInternetProtocol, 0x79eac9e4, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
1947 #if defined(__cplusplus) && !defined(CINTERFACE)
1948 struct IInternetProtocol : public IInternetProtocolRoot
1949 {
1950 virtual HRESULT STDMETHODCALLTYPE Read(
1951 void* pv,
1952 ULONG cb,
1953 ULONG* pcbRead) = 0;
1954
1955 virtual HRESULT STDMETHODCALLTYPE Seek(
1956 LARGE_INTEGER dlibMove,
1957 DWORD dwOrigin,
1958 ULARGE_INTEGER* plibNewPosition) = 0;
1959
1960 virtual HRESULT STDMETHODCALLTYPE LockRequest(
1961 DWORD dwOptions) = 0;
1962
1963 virtual HRESULT STDMETHODCALLTYPE UnlockRequest(
1964 ) = 0;
1965
1966 };
1967 #else
1968 typedef struct IInternetProtocolVtbl IInternetProtocolVtbl;
1969 struct IInternetProtocol {
1970 const IInternetProtocolVtbl* lpVtbl;
1971 };
1972 struct IInternetProtocolVtbl {
1973 BEGIN_INTERFACE
1974
1975 /*** IUnknown methods ***/
1976 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1977 IInternetProtocol* This,
1978 REFIID riid,
1979 void** ppvObject);
1980
1981 ULONG (STDMETHODCALLTYPE *AddRef)(
1982 IInternetProtocol* This);
1983
1984 ULONG (STDMETHODCALLTYPE *Release)(
1985 IInternetProtocol* This);
1986
1987 /*** IInternetProtocolRoot methods ***/
1988 HRESULT (STDMETHODCALLTYPE *Start)(
1989 IInternetProtocol* This,
1990 LPCWSTR szUrl,
1991 IInternetProtocolSink* pOIProtSink,
1992 IInternetBindInfo* pOIBindInfo,
1993 DWORD grfPI,
1994 DWORD dwReserved);
1995
1996 HRESULT (STDMETHODCALLTYPE *Continue)(
1997 IInternetProtocol* This,
1998 PROTOCOLDATA* pProtocolData);
1999
2000 HRESULT (STDMETHODCALLTYPE *Abort)(
2001 IInternetProtocol* This,
2002 HRESULT hrReason,
2003 DWORD dwOptions);
2004
2005 HRESULT (STDMETHODCALLTYPE *Terminate)(
2006 IInternetProtocol* This,
2007 DWORD dwOptions);
2008
2009 HRESULT (STDMETHODCALLTYPE *Suspend)(
2010 IInternetProtocol* This);
2011
2012 HRESULT (STDMETHODCALLTYPE *Resume)(
2013 IInternetProtocol* This);
2014
2015 /*** IInternetProtocol methods ***/
2016 HRESULT (STDMETHODCALLTYPE *Read)(
2017 IInternetProtocol* This,
2018 void* pv,
2019 ULONG cb,
2020 ULONG* pcbRead);
2021
2022 HRESULT (STDMETHODCALLTYPE *Seek)(
2023 IInternetProtocol* This,
2024 LARGE_INTEGER dlibMove,
2025 DWORD dwOrigin,
2026 ULARGE_INTEGER* plibNewPosition);
2027
2028 HRESULT (STDMETHODCALLTYPE *LockRequest)(
2029 IInternetProtocol* This,
2030 DWORD dwOptions);
2031
2032 HRESULT (STDMETHODCALLTYPE *UnlockRequest)(
2033 IInternetProtocol* This);
2034
2035 END_INTERFACE
2036 };
2037
2038 #ifdef COBJMACROS
2039 /*** IUnknown methods ***/
2040 #define IInternetProtocol_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2041 #define IInternetProtocol_AddRef(p) (p)->lpVtbl->AddRef(p)
2042 #define IInternetProtocol_Release(p) (p)->lpVtbl->Release(p)
2043 /*** IInternetProtocolRoot methods ***/
2044 #define IInternetProtocol_Start(p,a,b,c,d,e) (p)->lpVtbl->Start(p,a,b,c,d,e)
2045 #define IInternetProtocol_Continue(p,a) (p)->lpVtbl->Continue(p,a)
2046 #define IInternetProtocol_Abort(p,a,b) (p)->lpVtbl->Abort(p,a,b)
2047 #define IInternetProtocol_Terminate(p,a) (p)->lpVtbl->Terminate(p,a)
2048 #define IInternetProtocol_Suspend(p) (p)->lpVtbl->Suspend(p)
2049 #define IInternetProtocol_Resume(p) (p)->lpVtbl->Resume(p)
2050 /*** IInternetProtocol methods ***/
2051 #define IInternetProtocol_Read(p,a,b,c) (p)->lpVtbl->Read(p,a,b,c)
2052 #define IInternetProtocol_Seek(p,a,b,c) (p)->lpVtbl->Seek(p,a,b,c)
2053 #define IInternetProtocol_LockRequest(p,a) (p)->lpVtbl->LockRequest(p,a)
2054 #define IInternetProtocol_UnlockRequest(p) (p)->lpVtbl->UnlockRequest(p)
2055 #endif
2056
2057 #endif
2058
2059 HRESULT CALLBACK IInternetProtocol_Read_Proxy(
2060 IInternetProtocol* This,
2061 void* pv,
2062 ULONG cb,
2063 ULONG* pcbRead);
2064 void __RPC_STUB IInternetProtocol_Read_Stub(
2065 struct IRpcStubBuffer* This,
2066 struct IRpcChannelBuffer* pRpcChannelBuffer,
2067 PRPC_MESSAGE pRpcMessage,
2068 DWORD* pdwStubPhase);
2069 HRESULT CALLBACK IInternetProtocol_Seek_Proxy(
2070 IInternetProtocol* This,
2071 LARGE_INTEGER dlibMove,
2072 DWORD dwOrigin,
2073 ULARGE_INTEGER* plibNewPosition);
2074 void __RPC_STUB IInternetProtocol_Seek_Stub(
2075 struct IRpcStubBuffer* This,
2076 struct IRpcChannelBuffer* pRpcChannelBuffer,
2077 PRPC_MESSAGE pRpcMessage,
2078 DWORD* pdwStubPhase);
2079 HRESULT CALLBACK IInternetProtocol_LockRequest_Proxy(
2080 IInternetProtocol* This,
2081 DWORD dwOptions);
2082 void __RPC_STUB IInternetProtocol_LockRequest_Stub(
2083 struct IRpcStubBuffer* This,
2084 struct IRpcChannelBuffer* pRpcChannelBuffer,
2085 PRPC_MESSAGE pRpcMessage,
2086 DWORD* pdwStubPhase);
2087 HRESULT CALLBACK IInternetProtocol_UnlockRequest_Proxy(
2088 IInternetProtocol* This);
2089 void __RPC_STUB IInternetProtocol_UnlockRequest_Stub(
2090 struct IRpcStubBuffer* This,
2091 struct IRpcChannelBuffer* pRpcChannelBuffer,
2092 PRPC_MESSAGE pRpcMessage,
2093 DWORD* pdwStubPhase);
2094
2095 #endif /* __IInternetProtocol_INTERFACE_DEFINED__ */
2096
2097 #ifndef __IInternetProtocolInfo_FWD_DEFINED__
2098 #define __IInternetProtocolInfo_FWD_DEFINED__
2099 typedef struct IInternetProtocolInfo IInternetProtocolInfo;
2100 #endif
2101
2102 typedef IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;
2103 typedef enum _tagPARSEACTION {
2104 PARSE_CANONICALIZE = 1,
2105 PARSE_FRIENDLY,
2106 PARSE_SECURITY_URL,
2107 PARSE_ROOTDOCUMENT,
2108 PARSE_DOCUMENT,
2109 PARSE_ANCHOR,
2110 PARSE_ENCODE,
2111 PARSE_DECODE,
2112 PARSE_PATH_FROM_URL,
2113 PARSE_URL_FROM_PATH,
2114 PARSE_MIME,
2115 PARSE_SERVER,
2116 PARSE_SCHEMA,
2117 PARSE_SITE,
2118 PARSE_DOMAIN,
2119 PARSE_LOCATION,
2120 PARSE_SECURITY_DOMAIN,
2121 PARSE_ESCAPE,
2122 PARSE_UNESCAPE
2123 } PARSEACTION;
2124 typedef enum _tagPSUACTION {
2125 PSU_DEFAULT = 1,
2126 PSU_SECURITY_URL_ONLY
2127 } PSUACTION;
2128 typedef enum _tagQUERYOPTION {
2129 QUERY_EXPIRATION_DATE = 1,
2130 QUERY_TIME_OF_LAST_CHANGE,
2131 QUERY_CONTENT_ENCODING,
2132 QUERY_CONTENT_TYPE,
2133 QUERY_REFRESH,
2134 QUERY_RECOMBINE,
2135 QUERY_CAN_NAVIGATE,
2136 QUERY_USES_NETWORK,
2137 QUERY_IS_CACHED,
2138 QUERY_IS_INSTALLEDENTRY,
2139 QUERY_IS_CACHED_OR_MAPPED,
2140 QUERY_USES_CACHE,
2141 QUERY_IS_SECURE,
2142 QUERY_IS_SAFE
2143 } QUERYOPTION;
2144 /*****************************************************************************
2145 * IInternetProtocolInfo interface
2146 */
2147 #ifndef __IInternetProtocolInfo_INTERFACE_DEFINED__
2148 #define __IInternetProtocolInfo_INTERFACE_DEFINED__
2149
2150 DEFINE_GUID(IID_IInternetProtocolInfo, 0x79eac9ec, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2151 #if defined(__cplusplus) && !defined(CINTERFACE)
2152 struct IInternetProtocolInfo : public IUnknown
2153 {
2154 virtual HRESULT STDMETHODCALLTYPE ParseUrl(
2155 LPCWSTR pwzUrl,
2156 PARSEACTION ParseAction,
2157 DWORD dwParseFlags,
2158 LPWSTR pwzResult,
2159 DWORD cchResult,
2160 DWORD* pcchResult,
2161 DWORD dwReserved) = 0;
2162
2163 virtual HRESULT STDMETHODCALLTYPE CombineUrl(
2164 LPCWSTR pwzBaseUrl,
2165 LPCWSTR pwzRelativeUrl,
2166 DWORD dwCombineFlags,
2167 LPWSTR pwzResult,
2168 DWORD cchResult,
2169 DWORD* pcchResult,
2170 DWORD dwReserved) = 0;
2171
2172 virtual HRESULT STDMETHODCALLTYPE CompareUrl(
2173 LPCWSTR pwzUrl1,
2174 LPCWSTR pwzUrl2,
2175 DWORD dwCompareFlags) = 0;
2176
2177 virtual HRESULT STDMETHODCALLTYPE QueryInfo(
2178 LPCWSTR pwzUrl,
2179 QUERYOPTION OueryOption,
2180 DWORD dwQueryFlags,
2181 LPVOID pBuffer,
2182 DWORD cbBuffer,
2183 DWORD* pcbBuf,
2184 DWORD dwReserved) = 0;
2185
2186 };
2187 #else
2188 typedef struct IInternetProtocolInfoVtbl IInternetProtocolInfoVtbl;
2189 struct IInternetProtocolInfo {
2190 const IInternetProtocolInfoVtbl* lpVtbl;
2191 };
2192 struct IInternetProtocolInfoVtbl {
2193 BEGIN_INTERFACE
2194
2195 /*** IUnknown methods ***/
2196 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2197 IInternetProtocolInfo* This,
2198 REFIID riid,
2199 void** ppvObject);
2200
2201 ULONG (STDMETHODCALLTYPE *AddRef)(
2202 IInternetProtocolInfo* This);
2203
2204 ULONG (STDMETHODCALLTYPE *Release)(
2205 IInternetProtocolInfo* This);
2206
2207 /*** IInternetProtocolInfo methods ***/
2208 HRESULT (STDMETHODCALLTYPE *ParseUrl)(
2209 IInternetProtocolInfo* This,
2210 LPCWSTR pwzUrl,
2211 PARSEACTION ParseAction,
2212 DWORD dwParseFlags,
2213 LPWSTR pwzResult,
2214 DWORD cchResult,
2215 DWORD* pcchResult,
2216 DWORD dwReserved);
2217
2218 HRESULT (STDMETHODCALLTYPE *CombineUrl)(
2219 IInternetProtocolInfo* This,
2220 LPCWSTR pwzBaseUrl,
2221 LPCWSTR pwzRelativeUrl,
2222 DWORD dwCombineFlags,
2223 LPWSTR pwzResult,
2224 DWORD cchResult,
2225 DWORD* pcchResult,
2226 DWORD dwReserved);
2227
2228 HRESULT (STDMETHODCALLTYPE *CompareUrl)(
2229 IInternetProtocolInfo* This,
2230 LPCWSTR pwzUrl1,
2231 LPCWSTR pwzUrl2,
2232 DWORD dwCompareFlags);
2233
2234 HRESULT (STDMETHODCALLTYPE *QueryInfo)(
2235 IInternetProtocolInfo* This,
2236 LPCWSTR pwzUrl,
2237 QUERYOPTION OueryOption,
2238 DWORD dwQueryFlags,
2239 LPVOID pBuffer,
2240 DWORD cbBuffer,
2241 DWORD* pcbBuf,
2242 DWORD dwReserved);
2243
2244 END_INTERFACE
2245 };
2246
2247 #ifdef COBJMACROS
2248 /*** IUnknown methods ***/
2249 #define IInternetProtocolInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2250 #define IInternetProtocolInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
2251 #define IInternetProtocolInfo_Release(p) (p)->lpVtbl->Release(p)
2252 /*** IInternetProtocolInfo methods ***/
2253 #define IInternetProtocolInfo_ParseUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->ParseUrl(p,a,b,c,d,e,f,g)
2254 #define IInternetProtocolInfo_CombineUrl(p,a,b,c,d,e,f,g) (p)->lpVtbl->CombineUrl(p,a,b,c,d,e,f,g)
2255 #define IInternetProtocolInfo_CompareUrl(p,a,b,c) (p)->lpVtbl->CompareUrl(p,a,b,c)
2256 #define IInternetProtocolInfo_QueryInfo(p,a,b,c,d,e,f,g) (p)->lpVtbl->QueryInfo(p,a,b,c,d,e,f,g)
2257 #endif
2258
2259 #endif
2260
2261 HRESULT CALLBACK IInternetProtocolInfo_ParseUrl_Proxy(
2262 IInternetProtocolInfo* This,
2263 LPCWSTR pwzUrl,
2264 PARSEACTION ParseAction,
2265 DWORD dwParseFlags,
2266 LPWSTR pwzResult,
2267 DWORD cchResult,
2268 DWORD* pcchResult,
2269 DWORD dwReserved);
2270 void __RPC_STUB IInternetProtocolInfo_ParseUrl_Stub(
2271 struct IRpcStubBuffer* This,
2272 struct IRpcChannelBuffer* pRpcChannelBuffer,
2273 PRPC_MESSAGE pRpcMessage,
2274 DWORD* pdwStubPhase);
2275 HRESULT CALLBACK IInternetProtocolInfo_CombineUrl_Proxy(
2276 IInternetProtocolInfo* This,
2277 LPCWSTR pwzBaseUrl,
2278 LPCWSTR pwzRelativeUrl,
2279 DWORD dwCombineFlags,
2280 LPWSTR pwzResult,
2281 DWORD cchResult,
2282 DWORD* pcchResult,
2283 DWORD dwReserved);
2284 void __RPC_STUB IInternetProtocolInfo_CombineUrl_Stub(
2285 struct IRpcStubBuffer* This,
2286 struct IRpcChannelBuffer* pRpcChannelBuffer,
2287 PRPC_MESSAGE pRpcMessage,
2288 DWORD* pdwStubPhase);
2289 HRESULT CALLBACK IInternetProtocolInfo_CompareUrl_Proxy(
2290 IInternetProtocolInfo* This,
2291 LPCWSTR pwzUrl1,
2292 LPCWSTR pwzUrl2,
2293 DWORD dwCompareFlags);
2294 void __RPC_STUB IInternetProtocolInfo_CompareUrl_Stub(
2295 struct IRpcStubBuffer* This,
2296 struct IRpcChannelBuffer* pRpcChannelBuffer,
2297 PRPC_MESSAGE pRpcMessage,
2298 DWORD* pdwStubPhase);
2299 HRESULT CALLBACK IInternetProtocolInfo_QueryInfo_Proxy(
2300 IInternetProtocolInfo* This,
2301 LPCWSTR pwzUrl,
2302 QUERYOPTION OueryOption,
2303 DWORD dwQueryFlags,
2304 LPVOID pBuffer,
2305 DWORD cbBuffer,
2306 DWORD* pcbBuf,
2307 DWORD dwReserved);
2308 void __RPC_STUB IInternetProtocolInfo_QueryInfo_Stub(
2309 struct IRpcStubBuffer* This,
2310 struct IRpcChannelBuffer* pRpcChannelBuffer,
2311 PRPC_MESSAGE pRpcMessage,
2312 DWORD* pdwStubPhase);
2313
2314 #endif /* __IInternetProtocolInfo_INTERFACE_DEFINED__ */
2315
2316 #ifndef __IInternetSession_FWD_DEFINED__
2317 #define __IInternetSession_FWD_DEFINED__
2318 typedef struct IInternetSession IInternetSession;
2319 #endif
2320
2321 typedef IInternetSession *LPIINTERNETSESSION;
2322 typedef enum _tagOIBDG_FLAGS {
2323 OIBDG_APARTMENTTHREADED = 0x100,
2324 OIBDG_DATAONLY = 0x1000
2325 } OIBDG_FLAGS;
2326 /*****************************************************************************
2327 * IInternetSession interface
2328 */
2329 #ifndef __IInternetSession_INTERFACE_DEFINED__
2330 #define __IInternetSession_INTERFACE_DEFINED__
2331
2332 DEFINE_GUID(IID_IInternetSession, 0x79eac9e7, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2333 #if defined(__cplusplus) && !defined(CINTERFACE)
2334 struct IInternetSession : public IUnknown
2335 {
2336 virtual HRESULT STDMETHODCALLTYPE RegisterNameSpace(
2337 IClassFactory* pCF,
2338 REFCLSID rclsid,
2339 LPCWSTR pwzProtocol,
2340 ULONG cPatterns,
2341 const LPCWSTR* ppwzPatterns,
2342 DWORD dwReserved) = 0;
2343
2344 virtual HRESULT STDMETHODCALLTYPE UnregisterNameSpace(
2345 IClassFactory* pCF,
2346 LPCWSTR pszProtocol) = 0;
2347
2348 virtual HRESULT STDMETHODCALLTYPE RegisterMimeFilter(
2349 IClassFactory* pCF,
2350 REFCLSID rclsid,
2351 LPCWSTR pwzType) = 0;
2352
2353 virtual HRESULT STDMETHODCALLTYPE UnregisterMimeFilter(
2354 IClassFactory* pCF,
2355 LPCWSTR pwzType) = 0;
2356
2357 virtual HRESULT STDMETHODCALLTYPE CreateBinding(
2358 LPBC pBC,
2359 LPCWSTR szUrl,
2360 IUnknown* pUnkOuter,
2361 IUnknown** ppUnk,
2362 IInternetProtocol** ppOInetProt,
2363 DWORD dwOption) = 0;
2364
2365 virtual HRESULT STDMETHODCALLTYPE SetSessionOption(
2366 DWORD dwOption,
2367 LPVOID pBuffer,
2368 DWORD dwBufferLength,
2369 DWORD dwReserved) = 0;
2370
2371 };
2372 #else
2373 typedef struct IInternetSessionVtbl IInternetSessionVtbl;
2374 struct IInternetSession {
2375 const IInternetSessionVtbl* lpVtbl;
2376 };
2377 struct IInternetSessionVtbl {
2378 BEGIN_INTERFACE
2379
2380 /*** IUnknown methods ***/
2381 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2382 IInternetSession* This,
2383 REFIID riid,
2384 void** ppvObject);
2385
2386 ULONG (STDMETHODCALLTYPE *AddRef)(
2387 IInternetSession* This);
2388
2389 ULONG (STDMETHODCALLTYPE *Release)(
2390 IInternetSession* This);
2391
2392 /*** IInternetSession methods ***/
2393 HRESULT (STDMETHODCALLTYPE *RegisterNameSpace)(
2394 IInternetSession* This,
2395 IClassFactory* pCF,
2396 REFCLSID rclsid,
2397 LPCWSTR pwzProtocol,
2398 ULONG cPatterns,
2399 const LPCWSTR* ppwzPatterns,
2400 DWORD dwReserved);
2401
2402 HRESULT (STDMETHODCALLTYPE *UnregisterNameSpace)(
2403 IInternetSession* This,
2404 IClassFactory* pCF,
2405 LPCWSTR pszProtocol);
2406
2407 HRESULT (STDMETHODCALLTYPE *RegisterMimeFilter)(
2408 IInternetSession* This,
2409 IClassFactory* pCF,
2410 REFCLSID rclsid,
2411 LPCWSTR pwzType);
2412
2413 HRESULT (STDMETHODCALLTYPE *UnregisterMimeFilter)(
2414 IInternetSession* This,
2415 IClassFactory* pCF,
2416 LPCWSTR pwzType);
2417
2418 HRESULT (STDMETHODCALLTYPE *CreateBinding)(
2419 IInternetSession* This,
2420 LPBC pBC,
2421 LPCWSTR szUrl,
2422 IUnknown* pUnkOuter,
2423 IUnknown** ppUnk,
2424 IInternetProtocol** ppOInetProt,
2425 DWORD dwOption);
2426
2427 HRESULT (STDMETHODCALLTYPE *SetSessionOption)(
2428 IInternetSession* This,
2429 DWORD dwOption,
2430 LPVOID pBuffer,
2431 DWORD dwBufferLength,
2432 DWORD dwReserved);
2433
2434 END_INTERFACE
2435 };
2436
2437 #ifdef COBJMACROS
2438 /*** IUnknown methods ***/
2439 #define IInternetSession_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2440 #define IInternetSession_AddRef(p) (p)->lpVtbl->AddRef(p)
2441 #define IInternetSession_Release(p) (p)->lpVtbl->Release(p)
2442 /*** IInternetSession methods ***/
2443 #define IInternetSession_RegisterNameSpace(p,a,b,c,d,e,f) (p)->lpVtbl->RegisterNameSpace(p,a,b,c,d,e,f)
2444 #define IInternetSession_UnregisterNameSpace(p,a,b) (p)->lpVtbl->UnregisterNameSpace(p,a,b)
2445 #define IInternetSession_RegisterMimeFilter(p,a,b,c) (p)->lpVtbl->RegisterMimeFilter(p,a,b,c)
2446 #define IInternetSession_UnregisterMimeFilter(p,a,b) (p)->lpVtbl->UnregisterMimeFilter(p,a,b)
2447 #define IInternetSession_CreateBinding(p,a,b,c,d,e,f) (p)->lpVtbl->CreateBinding(p,a,b,c,d,e,f)
2448 #define IInternetSession_SetSessionOption(p,a,b,c,d) (p)->lpVtbl->SetSessionOption(p,a,b,c,d)
2449 #endif
2450
2451 #endif
2452
2453 HRESULT CALLBACK IInternetSession_RegisterNameSpace_Proxy(
2454 IInternetSession* This,
2455 IClassFactory* pCF,
2456 REFCLSID rclsid,
2457 LPCWSTR pwzProtocol,
2458 ULONG cPatterns,
2459 const LPCWSTR* ppwzPatterns,
2460 DWORD dwReserved);
2461 void __RPC_STUB IInternetSession_RegisterNameSpace_Stub(
2462 struct IRpcStubBuffer* This,
2463 struct IRpcChannelBuffer* pRpcChannelBuffer,
2464 PRPC_MESSAGE pRpcMessage,
2465 DWORD* pdwStubPhase);
2466 HRESULT CALLBACK IInternetSession_UnregisterNameSpace_Proxy(
2467 IInternetSession* This,
2468 IClassFactory* pCF,
2469 LPCWSTR pszProtocol);
2470 void __RPC_STUB IInternetSession_UnregisterNameSpace_Stub(
2471 struct IRpcStubBuffer* This,
2472 struct IRpcChannelBuffer* pRpcChannelBuffer,
2473 PRPC_MESSAGE pRpcMessage,
2474 DWORD* pdwStubPhase);
2475 HRESULT CALLBACK IInternetSession_RegisterMimeFilter_Proxy(
2476 IInternetSession* This,
2477 IClassFactory* pCF,
2478 REFCLSID rclsid,
2479 LPCWSTR pwzType);
2480 void __RPC_STUB IInternetSession_RegisterMimeFilter_Stub(
2481 struct IRpcStubBuffer* This,
2482 struct IRpcChannelBuffer* pRpcChannelBuffer,
2483 PRPC_MESSAGE pRpcMessage,
2484 DWORD* pdwStubPhase);
2485 HRESULT CALLBACK IInternetSession_UnregisterMimeFilter_Proxy(
2486 IInternetSession* This,
2487 IClassFactory* pCF,
2488 LPCWSTR pwzType);
2489 void __RPC_STUB IInternetSession_UnregisterMimeFilter_Stub(
2490 struct IRpcStubBuffer* This,
2491 struct IRpcChannelBuffer* pRpcChannelBuffer,
2492 PRPC_MESSAGE pRpcMessage,
2493 DWORD* pdwStubPhase);
2494 HRESULT CALLBACK IInternetSession_CreateBinding_Proxy(
2495 IInternetSession* This,
2496 LPBC pBC,
2497 LPCWSTR szUrl,
2498 IUnknown* pUnkOuter,
2499 IUnknown** ppUnk,
2500 IInternetProtocol** ppOInetProt,
2501 DWORD dwOption);
2502 void __RPC_STUB IInternetSession_CreateBinding_Stub(
2503 struct IRpcStubBuffer* This,
2504 struct IRpcChannelBuffer* pRpcChannelBuffer,
2505 PRPC_MESSAGE pRpcMessage,
2506 DWORD* pdwStubPhase);
2507 HRESULT CALLBACK IInternetSession_SetSessionOption_Proxy(
2508 IInternetSession* This,
2509 DWORD dwOption,
2510 LPVOID pBuffer,
2511 DWORD dwBufferLength,
2512 DWORD dwReserved);
2513 void __RPC_STUB IInternetSession_SetSessionOption_Stub(
2514 struct IRpcStubBuffer* This,
2515 struct IRpcChannelBuffer* pRpcChannelBuffer,
2516 PRPC_MESSAGE pRpcMessage,
2517 DWORD* pdwStubPhase);
2518
2519 #endif /* __IInternetSession_INTERFACE_DEFINED__ */
2520
2521 #ifndef __IInternetSecurityMgrSite_FWD_DEFINED__
2522 #define __IInternetSecurityMgrSite_FWD_DEFINED__
2523 typedef struct IInternetSecurityMgrSite IInternetSecurityMgrSite;
2524 #endif
2525
2526 /*****************************************************************************
2527 * IInternetSecurityMgrSite interface
2528 */
2529 #ifndef __IInternetSecurityMgrSite_INTERFACE_DEFINED__
2530 #define __IInternetSecurityMgrSite_INTERFACE_DEFINED__
2531
2532 DEFINE_GUID(IID_IInternetSecurityMgrSite, 0x79eac9ed, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2533 #if defined(__cplusplus) && !defined(CINTERFACE)
2534 struct IInternetSecurityMgrSite : public IUnknown
2535 {
2536 virtual HRESULT STDMETHODCALLTYPE GetWindow(
2537 HWND* phwnd) = 0;
2538
2539 virtual HRESULT STDMETHODCALLTYPE EnableModeless(
2540 BOOL fEnable) = 0;
2541
2542 };
2543 #else
2544 typedef struct IInternetSecurityMgrSiteVtbl IInternetSecurityMgrSiteVtbl;
2545 struct IInternetSecurityMgrSite {
2546 const IInternetSecurityMgrSiteVtbl* lpVtbl;
2547 };
2548 struct IInternetSecurityMgrSiteVtbl {
2549 BEGIN_INTERFACE
2550
2551 /*** IUnknown methods ***/
2552 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2553 IInternetSecurityMgrSite* This,
2554 REFIID riid,
2555 void** ppvObject);
2556
2557 ULONG (STDMETHODCALLTYPE *AddRef)(
2558 IInternetSecurityMgrSite* This);
2559
2560 ULONG (STDMETHODCALLTYPE *Release)(
2561 IInternetSecurityMgrSite* This);
2562
2563 /*** IInternetSecurityMgrSite methods ***/
2564 HRESULT (STDMETHODCALLTYPE *GetWindow)(
2565 IInternetSecurityMgrSite* This,
2566 HWND* phwnd);
2567
2568 HRESULT (STDMETHODCALLTYPE *EnableModeless)(
2569 IInternetSecurityMgrSite* This,
2570 BOOL fEnable);
2571
2572 END_INTERFACE
2573 };
2574
2575 #ifdef COBJMACROS
2576 /*** IUnknown methods ***/
2577 #define IInternetSecurityMgrSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2578 #define IInternetSecurityMgrSite_AddRef(p) (p)->lpVtbl->AddRef(p)
2579 #define IInternetSecurityMgrSite_Release(p) (p)->lpVtbl->Release(p)
2580 /*** IInternetSecurityMgrSite methods ***/
2581 #define IInternetSecurityMgrSite_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
2582 #define IInternetSecurityMgrSite_EnableModeless(p,a) (p)->lpVtbl->EnableModeless(p,a)
2583 #endif
2584
2585 #endif
2586
2587 HRESULT CALLBACK IInternetSecurityMgrSite_GetWindow_Proxy(
2588 IInternetSecurityMgrSite* This,
2589 HWND* phwnd);
2590 void __RPC_STUB IInternetSecurityMgrSite_GetWindow_Stub(
2591 struct IRpcStubBuffer* This,
2592 struct IRpcChannelBuffer* pRpcChannelBuffer,
2593 PRPC_MESSAGE pRpcMessage,
2594 DWORD* pdwStubPhase);
2595 HRESULT CALLBACK IInternetSecurityMgrSite_EnableModeless_Proxy(
2596 IInternetSecurityMgrSite* This,
2597 BOOL fEnable);
2598 void __RPC_STUB IInternetSecurityMgrSite_EnableModeless_Stub(
2599 struct IRpcStubBuffer* This,
2600 struct IRpcChannelBuffer* pRpcChannelBuffer,
2601 PRPC_MESSAGE pRpcMessage,
2602 DWORD* pdwStubPhase);
2603
2604 #endif /* __IInternetSecurityMgrSite_INTERFACE_DEFINED__ */
2605
2606 #define SID_SInternetSecurityManager IID_IInternetSecurityManager
2607 #ifndef __IInternetSecurityManager_FWD_DEFINED__
2608 #define __IInternetSecurityManager_FWD_DEFINED__
2609 typedef struct IInternetSecurityManager IInternetSecurityManager;
2610 #endif
2611
2612 #define MAX_SIZE_SECURITY_ID 512
2613 typedef enum {
2614 PUAF_DEFAULT = 0x0,
2615 PUAF_NOUI = 0x1,
2616 PUAF_ISFILE = 0x2,
2617 PUAF_WARN_IF_DENIED = 0x4,
2618 PUAF_FORCEUI_FOREGROUND = 0x8,
2619 PUAF_CHECK_TIPS = 0x10
2620 } PUAF;
2621 typedef enum {
2622 SZM_CREATE = 0x0,
2623 SZM_DELETE = 0x1
2624 } SZM_FLAGS;
2625 /*****************************************************************************
2626 * IInternetSecurityManager interface
2627 */
2628 #ifndef __IInternetSecurityManager_INTERFACE_DEFINED__
2629 #define __IInternetSecurityManager_INTERFACE_DEFINED__
2630
2631 DEFINE_GUID(IID_IInternetSecurityManager, 0x79eac9ee, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2632 #if defined(__cplusplus) && !defined(CINTERFACE)
2633 struct IInternetSecurityManager : public IUnknown
2634 {
2635 virtual HRESULT STDMETHODCALLTYPE SetSecuritySite(
2636 IInternetSecurityMgrSite* pSite) = 0;
2637
2638 virtual HRESULT STDMETHODCALLTYPE GetSecuritySite(
2639 IInternetSecurityMgrSite** ppSite) = 0;
2640
2641 virtual HRESULT STDMETHODCALLTYPE MapUrlToZone(
2642 LPCWSTR pwszUrl,
2643 DWORD* pdwZone,
2644 DWORD dwFlags) = 0;
2645
2646 virtual HRESULT STDMETHODCALLTYPE GetSecurityId(
2647 LPCWSTR pwszUrl,
2648 BYTE* pbSecurityId,
2649 DWORD* pcbSecurityId,
2650 DWORD_PTR dwReserved) = 0;
2651
2652 virtual HRESULT STDMETHODCALLTYPE ProcessUrlAction(
2653 LPCWSTR pwszUrl,
2654 DWORD dwAction,
2655 BYTE* pPolicy,
2656 DWORD cbPolicy,
2657 BYTE* pContext,
2658 DWORD cbContext,
2659 DWORD dwFlags,
2660 DWORD dwReserved) = 0;
2661
2662 virtual HRESULT STDMETHODCALLTYPE QueryCustomPolicy(
2663 LPCWSTR pwszUrl,
2664 REFGUID guidKey,
2665 BYTE** ppPolicy,
2666 DWORD* pcbPolicy,
2667 BYTE* pContext,
2668 DWORD cbContext,
2669 DWORD dwReserved) = 0;
2670
2671 virtual HRESULT STDMETHODCALLTYPE SetZoneMapping(
2672 DWORD dwZone,
2673 LPCWSTR lpszPattern,
2674 DWORD dwFlags) = 0;
2675
2676 virtual HRESULT STDMETHODCALLTYPE GetZoneMappings(
2677 DWORD dwZone,
2678 IEnumString** ppenumString,
2679 DWORD dwFlags) = 0;
2680
2681 };
2682 #else
2683 typedef struct IInternetSecurityManagerVtbl IInternetSecurityManagerVtbl;
2684 struct IInternetSecurityManager {
2685 const IInternetSecurityManagerVtbl* lpVtbl;
2686 };
2687 struct IInternetSecurityManagerVtbl {
2688 BEGIN_INTERFACE
2689
2690 /*** IUnknown methods ***/
2691 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2692 IInternetSecurityManager* This,
2693 REFIID riid,
2694 void** ppvObject);
2695
2696 ULONG (STDMETHODCALLTYPE *AddRef)(
2697 IInternetSecurityManager* This);
2698
2699 ULONG (STDMETHODCALLTYPE *Release)(
2700 IInternetSecurityManager* This);
2701
2702 /*** IInternetSecurityManager methods ***/
2703 HRESULT (STDMETHODCALLTYPE *SetSecuritySite)(
2704 IInternetSecurityManager* This,
2705 IInternetSecurityMgrSite* pSite);
2706
2707 HRESULT (STDMETHODCALLTYPE *GetSecuritySite)(
2708 IInternetSecurityManager* This,
2709 IInternetSecurityMgrSite** ppSite);
2710
2711 HRESULT (STDMETHODCALLTYPE *MapUrlToZone)(
2712 IInternetSecurityManager* This,
2713 LPCWSTR pwszUrl,
2714 DWORD* pdwZone,
2715 DWORD dwFlags);
2716
2717 HRESULT (STDMETHODCALLTYPE *GetSecurityId)(
2718 IInternetSecurityManager* This,
2719 LPCWSTR pwszUrl,
2720 BYTE* pbSecurityId,
2721 DWORD* pcbSecurityId,
2722 DWORD_PTR dwReserved);
2723
2724 HRESULT (STDMETHODCALLTYPE *ProcessUrlAction)(
2725 IInternetSecurityManager* This,
2726 LPCWSTR pwszUrl,
2727 DWORD dwAction,
2728 BYTE* pPolicy,
2729 DWORD cbPolicy,
2730 BYTE* pContext,
2731 DWORD cbContext,
2732 DWORD dwFlags,
2733 DWORD dwReserved);
2734
2735 HRESULT (STDMETHODCALLTYPE *QueryCustomPolicy)(
2736 IInternetSecurityManager* This,
2737 LPCWSTR pwszUrl,
2738 REFGUID guidKey,
2739 BYTE** ppPolicy,
2740 DWORD* pcbPolicy,
2741 BYTE* pContext,
2742 DWORD cbContext,
2743 DWORD dwReserved);
2744
2745 HRESULT (STDMETHODCALLTYPE *SetZoneMapping)(
2746 IInternetSecurityManager* This,
2747 DWORD dwZone,
2748 LPCWSTR lpszPattern,
2749 DWORD dwFlags);
2750
2751 HRESULT (STDMETHODCALLTYPE *GetZoneMappings)(
2752 IInternetSecurityManager* This,
2753 DWORD dwZone,
2754 IEnumString** ppenumString,
2755 DWORD dwFlags);
2756
2757 END_INTERFACE
2758 };
2759
2760 #ifdef COBJMACROS
2761 /*** IUnknown methods ***/
2762 #define IInternetSecurityManager_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2763 #define IInternetSecurityManager_AddRef(p) (p)->lpVtbl->AddRef(p)
2764 #define IInternetSecurityManager_Release(p) (p)->lpVtbl->Release(p)
2765 /*** IInternetSecurityManager methods ***/
2766 #define IInternetSecurityManager_SetSecuritySite(p,a) (p)->lpVtbl->SetSecuritySite(p,a)
2767 #define IInternetSecurityManager_GetSecuritySite(p,a) (p)->lpVtbl->GetSecuritySite(p,a)
2768 #define IInternetSecurityManager_MapUrlToZone(p,a,b,c) (p)->lpVtbl->MapUrlToZone(p,a,b,c)
2769 #define IInternetSecurityManager_GetSecurityId(p,a,b,c,d) (p)->lpVtbl->GetSecurityId(p,a,b,c,d)
2770 #define IInternetSecurityManager_ProcessUrlAction(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->ProcessUrlAction(p,a,b,c,d,e,f,g,h)
2771 #define IInternetSecurityManager_QueryCustomPolicy(p,a,b,c,d,e,f,g) (p)->lpVtbl->QueryCustomPolicy(p,a,b,c,d,e,f,g)
2772 #define IInternetSecurityManager_SetZoneMapping(p,a,b,c) (p)->lpVtbl->SetZoneMapping(p,a,b,c)
2773 #define IInternetSecurityManager_GetZoneMappings(p,a,b,c) (p)->lpVtbl->GetZoneMappings(p,a,b,c)
2774 #endif
2775
2776 #endif
2777
2778 HRESULT CALLBACK IInternetSecurityManager_SetSecuritySite_Proxy(
2779 IInternetSecurityManager* This,
2780 IInternetSecurityMgrSite* pSite);
2781 void __RPC_STUB IInternetSecurityManager_SetSecuritySite_Stub(
2782 struct IRpcStubBuffer* This,
2783 struct IRpcChannelBuffer* pRpcChannelBuffer,
2784 PRPC_MESSAGE pRpcMessage,
2785 DWORD* pdwStubPhase);
2786 HRESULT CALLBACK IInternetSecurityManager_GetSecuritySite_Proxy(
2787 IInternetSecurityManager* This,
2788 IInternetSecurityMgrSite** ppSite);
2789 void __RPC_STUB IInternetSecurityManager_GetSecuritySite_Stub(
2790 struct IRpcStubBuffer* This,
2791 struct IRpcChannelBuffer* pRpcChannelBuffer,
2792 PRPC_MESSAGE pRpcMessage,
2793 DWORD* pdwStubPhase);
2794 HRESULT CALLBACK IInternetSecurityManager_MapUrlToZone_Proxy(
2795 IInternetSecurityManager* This,
2796 LPCWSTR pwszUrl,
2797 DWORD* pdwZone,
2798 DWORD dwFlags);
2799 void __RPC_STUB IInternetSecurityManager_MapUrlToZone_Stub(
2800 struct IRpcStubBuffer* This,
2801 struct IRpcChannelBuffer* pRpcChannelBuffer,
2802 PRPC_MESSAGE pRpcMessage,
2803 DWORD* pdwStubPhase);
2804 HRESULT CALLBACK IInternetSecurityManager_GetSecurityId_Proxy(
2805 IInternetSecurityManager* This,
2806 LPCWSTR pwszUrl,
2807 BYTE* pbSecurityId,
2808 DWORD* pcbSecurityId,
2809 DWORD_PTR dwReserved);
2810 void __RPC_STUB IInternetSecurityManager_GetSecurityId_Stub(
2811 struct IRpcStubBuffer* This,
2812 struct IRpcChannelBuffer* pRpcChannelBuffer,
2813 PRPC_MESSAGE pRpcMessage,
2814 DWORD* pdwStubPhase);
2815 HRESULT CALLBACK IInternetSecurityManager_ProcessUrlAction_Proxy(
2816 IInternetSecurityManager* This,
2817 LPCWSTR pwszUrl,
2818 DWORD dwAction,
2819 BYTE* pPolicy,
2820 DWORD cbPolicy,
2821 BYTE* pContext,
2822 DWORD cbContext,
2823 DWORD dwFlags,
2824 DWORD dwReserved);
2825 void __RPC_STUB IInternetSecurityManager_ProcessUrlAction_Stub(
2826 struct IRpcStubBuffer* This,
2827 struct IRpcChannelBuffer* pRpcChannelBuffer,
2828 PRPC_MESSAGE pRpcMessage,
2829 DWORD* pdwStubPhase);
2830 HRESULT CALLBACK IInternetSecurityManager_QueryCustomPolicy_Proxy(
2831 IInternetSecurityManager* This,
2832 LPCWSTR pwszUrl,
2833 REFGUID guidKey,
2834 BYTE** ppPolicy,
2835 DWORD* pcbPolicy,
2836 BYTE* pContext,
2837 DWORD cbContext,
2838 DWORD dwReserved);
2839 void __RPC_STUB IInternetSecurityManager_QueryCustomPolicy_Stub(
2840 struct IRpcStubBuffer* This,
2841 struct IRpcChannelBuffer* pRpcChannelBuffer,
2842 PRPC_MESSAGE pRpcMessage,
2843 DWORD* pdwStubPhase);
2844 HRESULT CALLBACK IInternetSecurityManager_SetZoneMapping_Proxy(
2845 IInternetSecurityManager* This,
2846 DWORD dwZone,
2847 LPCWSTR lpszPattern,
2848 DWORD dwFlags);
2849 void __RPC_STUB IInternetSecurityManager_SetZoneMapping_Stub(
2850 struct IRpcStubBuffer* This,
2851 struct IRpcChannelBuffer* pRpcChannelBuffer,
2852 PRPC_MESSAGE pRpcMessage,
2853 DWORD* pdwStubPhase);
2854 HRESULT CALLBACK IInternetSecurityManager_GetZoneMappings_Proxy(
2855 IInternetSecurityManager* This,
2856 DWORD dwZone,
2857 IEnumString** ppenumString,
2858 DWORD dwFlags);
2859 void __RPC_STUB IInternetSecurityManager_GetZoneMappings_Stub(
2860 struct IRpcStubBuffer* This,
2861 struct IRpcChannelBuffer* pRpcChannelBuffer,
2862 PRPC_MESSAGE pRpcMessage,
2863 DWORD* pdwStubPhase);
2864
2865 #endif /* __IInternetSecurityManager_INTERFACE_DEFINED__ */
2866
2867 #ifndef __IInternetZoneManager_FWD_DEFINED__
2868 #define __IInternetZoneManager_FWD_DEFINED__
2869 typedef struct IInternetZoneManager IInternetZoneManager;
2870 #endif
2871
2872 typedef IInternetZoneManager *LPURLZONEMANAGER;
2873 typedef enum tagURLZONE {
2874 URLZONE_PREDEFINED_MIN = 0,
2875 URLZONE_LOCAL_MACHINE = 0,
2876 URLZONE_INTRANET = 1,
2877 URLZONE_TRUSTED = 2,
2878 URLZONE_INTERNET = 3,
2879 URLZONE_UNTRUSTED = 4,
2880 URLZONE_PREDEFINED_MAX = 999,
2881 URLZONE_USER_MIN = 1000,
2882 URLZONE_USER_MAX = 10000
2883 } URLZONE;
2884 typedef enum tagURLTEMPLATE {
2885 URLTEMPLATE_CUSTOM = 0x0,
2886 URLTEMPLATE_PREDEFINED_MIN = 0x10000,
2887 URLTEMPLATE_LOW = 0x10000,
2888 URLTEMPLATE_MEDIUM = 0x11000,
2889 URLTEMPLATE_HIGH = 0x12000,
2890 URLTEMPLATE_PREDEFINED_MAX = 0x20000
2891 } URLTEMPLATE;
2892 typedef enum {
2893 ZAFLAGS_CUSTOM_EDIT = 0x1,
2894 ZAFLAGS_ADD_SITES = 0x2,
2895 ZAFLAGS_REQUIRE_VERIFICATION = 0x4,
2896 ZAFLAGS_INCLUDE_PROXY_OVERRIDE = 0x8,
2897 ZAFLAGS_INCLUDE_INTRANET_SITES = 0x10,
2898 ZAFLAGS_NO_UI = 0x20,
2899 ZAFLAGS_SUPPORTS_VERIFICATION = 0x40,
2900 ZAFLAGS_UNC_AS_INTRANET = 0x80
2901 } ZAFLAGS;
2902 enum {
2903 MAX_ZONE_PATH = 260,
2904 MAX_ZONE_DESCRIPTION = 200
2905 };
2906
2907 typedef struct _ZONEATTRIBUTES {
2908 ULONG cbSize;
2909 WCHAR szDisplayName[260];
2910 WCHAR szDescription[200];
2911 WCHAR szIconPath[260];
2912 DWORD dwTemplateMinLevel;
2913 DWORD dwTemplateRecommended;
2914 DWORD dwTemplateCurrentLevel;
2915 DWORD dwFlags;
2916 } ZONEATTRIBUTES, *LPZONEATTRIBUTES;
2917 typedef enum _URLZONEREG {
2918 URLZONEREG_DEFAULT,
2919 URLZONEREG_HKLM,
2920 URLZONEREG_HKCU
2921 } URLZONEREG;
2922 /*****************************************************************************
2923 * IInternetZoneManager interface
2924 */
2925 #ifndef __IInternetZoneManager_INTERFACE_DEFINED__
2926 #define __IInternetZoneManager_INTERFACE_DEFINED__
2927
2928 DEFINE_GUID(IID_IInternetZoneManager, 0x79eac9ef, 0xbaf9, 0x11ce, 0x8c,0x82, 0x00,0xaa,0x00,0x4b,0xa9,0x0b);
2929 #if defined(__cplusplus) && !defined(CINTERFACE)
2930 struct IInternetZoneManager : public IUnknown
2931 {
2932 virtual HRESULT STDMETHODCALLTYPE GetZoneAttributes(
2933 DWORD dwZone,
2934 ZONEATTRIBUTES* pZoneAttributes) = 0;
2935
2936 virtual HRESULT STDMETHODCALLTYPE SetZoneAttributes(
2937 DWORD dwZone,
2938 ZONEATTRIBUTES* pZoneAttributes) = 0;
2939
2940 virtual HRESULT STDMETHODCALLTYPE GetZoneCustomPolicy(
2941 DWORD dwZone,
2942 REFGUID guidKey,
2943 BYTE** ppPolicy,
2944 DWORD* pcbPolicy,
2945 URLZONEREG ulrZoneReg) = 0;
2946
2947 virtual HRESULT STDMETHODCALLTYPE SetZoneCustomPolicy(
2948 DWORD dwZone,
2949 REFGUID guidKey,
2950 BYTE* ppPolicy,
2951 DWORD pcbPolicy,
2952 URLZONEREG ulrZoneReg) = 0;
2953
2954 virtual HRESULT STDMETHODCALLTYPE GetZoneActionPolicy(
2955 DWORD dwZone,
2956 DWORD dwAction,
2957 BYTE* pPolicy,
2958 DWORD cbPolicy,
2959 URLZONEREG urlZoneReg) = 0;
2960
2961 virtual HRESULT STDMETHODCALLTYPE SetZoneActionPolicy(
2962 DWORD dwZone,
2963 DWORD dwAction,
2964 BYTE* pPolicy,
2965 DWORD cbPolicy,
2966 URLZONEREG urlZoneReg) = 0;
2967
2968 virtual HRESULT STDMETHODCALLTYPE PromptAction(
2969 DWORD dwAction,
2970 HWND hwndParent,
2971 LPCWSTR pwszUrl,
2972 LPCWSTR pwszText,
2973 DWORD dwPromptFlags) = 0;
2974
2975 virtual HRESULT STDMETHODCALLTYPE LogAction(
2976 DWORD dwAction,
2977 LPCWSTR pwszUrl,
2978 LPCWSTR pwszText,
2979 DWORD dwLogFlags) = 0;
2980
2981 virtual HRESULT STDMETHODCALLTYPE CreateZoneEnumerator(
2982 DWORD* pdwEnum,
2983 DWORD* pdwCount,
2984 DWORD dwFlags) = 0;
2985
2986 virtual HRESULT STDMETHODCALLTYPE GetZoneAt(
2987 DWORD dwEnum,
2988 DWORD dwIndex,
2989 DWORD* pdwZone) = 0;
2990
2991 virtual HRESULT STDMETHODCALLTYPE DestroyZoneEnumerator(
2992 DWORD dwEnum) = 0;
2993
2994 virtual HRESULT STDMETHODCALLTYPE CopyTemplatePoliciesToZone(
2995 DWORD dwTemplate,
2996 DWORD dwZone,
2997 DWORD dwReserved) = 0;
2998
2999 };
3000 #else
3001 typedef struct IInternetZoneManagerVtbl IInternetZoneManagerVtbl;
3002 struct IInternetZoneManager {
3003 const IInternetZoneManagerVtbl* lpVtbl;
3004 };
3005 struct IInternetZoneManagerVtbl {
3006 BEGIN_INTERFACE
3007
3008 /*** IUnknown methods ***/
3009 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3010 IInternetZoneManager* This,
3011 REFIID riid,
3012 void** ppvObject);
3013
3014 ULONG (STDMETHODCALLTYPE *AddRef)(
3015 IInternetZoneManager* This);
3016
3017 ULONG (STDMETHODCALLTYPE *Release)(
3018 IInternetZoneManager* This);
3019
3020 /*** IInternetZoneManager methods ***/
3021 HRESULT (STDMETHODCALLTYPE *GetZoneAttributes)(
3022 IInternetZoneManager* This,
3023 DWORD dwZone,
3024 ZONEATTRIBUTES* pZoneAttributes);
3025
3026 HRESULT (STDMETHODCALLTYPE *SetZoneAttributes)(
3027 IInternetZoneManager* This,
3028 DWORD dwZone,
3029 ZONEATTRIBUTES* pZoneAttributes);
3030
3031 HRESULT (STDMETHODCALLTYPE *GetZoneCustomPolicy)(
3032 IInternetZoneManager* This,
3033 DWORD dwZone,
3034 REFGUID guidKey,
3035 BYTE** ppPolicy,
3036 DWORD* pcbPolicy,
3037 URLZONEREG ulrZoneReg);
3038
3039 HRESULT (STDMETHODCALLTYPE *SetZoneCustomPolicy)(
3040 IInternetZoneManager* This,
3041 DWORD dwZone,
3042 REFGUID guidKey,
3043 BYTE* ppPolicy,
3044 DWORD pcbPolicy,
3045 URLZONEREG ulrZoneReg);
3046
3047 HRESULT (STDMETHODCALLTYPE *GetZoneActionPolicy)(
3048 IInternetZoneManager* This,
3049 DWORD dwZone,
3050 DWORD dwAction,
3051 BYTE* pPolicy,
3052 DWORD cbPolicy,
3053 URLZONEREG urlZoneReg);
3054
3055 HRESULT (STDMETHODCALLTYPE *SetZoneActionPolicy)(
3056 IInternetZoneManager* This,
3057 DWORD dwZone,
3058 DWORD dwAction,
3059 BYTE* pPolicy,
3060 DWORD cbPolicy,
3061 URLZONEREG urlZoneReg);
3062
3063 HRESULT (STDMETHODCALLTYPE *PromptAction)(
3064 IInternetZoneManager* This,
3065 DWORD dwAction,
3066 HWND hwndParent,
3067 LPCWSTR pwszUrl,
3068 LPCWSTR pwszText,
3069 DWORD dwPromptFlags);
3070
3071 HRESULT (STDMETHODCALLTYPE *LogAction)(
3072 IInternetZoneManager* This,
3073 DWORD dwAction,
3074 LPCWSTR pwszUrl,
3075 LPCWSTR pwszText,
3076 DWORD dwLogFlags);
3077
3078 HRESULT (STDMETHODCALLTYPE *CreateZoneEnumerator)(
3079 IInternetZoneManager* This,
3080 DWORD* pdwEnum,
3081 DWORD* pdwCount,
3082 DWORD dwFlags);
3083
3084 HRESULT (STDMETHODCALLTYPE *GetZoneAt)(
3085 IInternetZoneManager* This,
3086 DWORD dwEnum,
3087 DWORD dwIndex,
3088 DWORD* pdwZone);
3089
3090 HRESULT (STDMETHODCALLTYPE *DestroyZoneEnumerator)(
3091 IInternetZoneManager* This,
3092 DWORD dwEnum);
3093
3094 HRESULT (STDMETHODCALLTYPE *CopyTemplatePoliciesToZone)(
3095 IInternetZoneManager* This,
3096 DWORD dwTemplate,
3097 DWORD dwZone,
3098 DWORD dwReserved);
3099
3100 END_INTERFACE
3101 };
3102
3103 #ifdef COBJMACROS
3104 /*** IUnknown methods ***/
3105 #define IInternetZoneManager_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3106 #define IInternetZoneManager_AddRef(p) (p)->lpVtbl->AddRef(p)
3107 #define IInternetZoneManager_Release(p) (p)->lpVtbl->Release(p)
3108 /*** IInternetZoneManager methods ***/
3109 #define IInternetZoneManager_GetZoneAttributes(p,a,b) (p)->lpVtbl->GetZoneAttributes(p,a,b)
3110 #define IInternetZoneManager_SetZoneAttributes(p,a,b) (p)->lpVtbl->SetZoneAttributes(p,a,b)
3111 #define IInternetZoneManager_GetZoneCustomPolicy(p,a,b,c,d,e) (p)->lpVtbl->GetZoneCustomPolicy(p,a,b,c,d,e)
3112 #define IInternetZoneManager_SetZoneCustomPolicy(p,a,b,c,d,e) (p)->lpVtbl->SetZoneCustomPolicy(p,a,b,c,d,e)
3113 #define IInternetZoneManager_GetZoneActionPolicy(p,a,b,c,d,e) (p)->lpVtbl->GetZoneActionPolicy(p,a,b,c,d,e)
3114 #define IInternetZoneManager_SetZoneActionPolicy(p,a,b,c,d,e) (p)->lpVtbl->SetZoneActionPolicy(p,a,b,c,d,e)
3115 #define IInternetZoneManager_PromptAction(p,a,b,c,d,e) (p)->lpVtbl->PromptAction(p,a,b,c,d,e)
3116 #define IInternetZoneManager_LogAction(p,a,b,c,d) (p)->lpVtbl->LogAction(p,a,b,c,d)
3117 #define IInternetZoneManager_CreateZoneEnumerator(p,a,b,c) (p)->lpVtbl->CreateZoneEnumerator(p,a,b,c)
3118 #define IInternetZoneManager_GetZoneAt(p,a,b,c) (p)->lpVtbl->GetZoneAt(p,a,b,c)
3119 #define IInternetZoneManager_DestroyZoneEnumerator(p,a) (p)->lpVtbl->DestroyZoneEnumerator(p,a)
3120 #define IInternetZoneManager_CopyTemplatePoliciesToZone(p,a,b,c) (p)->lpVtbl->CopyTemplatePoliciesToZone(p,a,b,c)
3121 #endif
3122
3123 #endif
3124
3125 HRESULT CALLBACK IInternetZoneManager_GetZoneAttributes_Proxy(
3126 IInternetZoneManager* This,
3127 DWORD dwZone,
3128 ZONEATTRIBUTES* pZoneAttributes);
3129 void __RPC_STUB IInternetZoneManager_GetZoneAttributes_Stub(
3130 struct IRpcStubBuffer* This,
3131 struct IRpcChannelBuffer* pRpcChannelBuffer,
3132 PRPC_MESSAGE pRpcMessage,
3133 DWORD* pdwStubPhase);
3134 HRESULT CALLBACK IInternetZoneManager_SetZoneAttributes_Proxy(
3135 IInternetZoneManager* This,
3136 DWORD dwZone,
3137 ZONEATTRIBUTES* pZoneAttributes);
3138 void __RPC_STUB IInternetZoneManager_SetZoneAttributes_Stub(
3139 struct IRpcStubBuffer* This,
3140 struct IRpcChannelBuffer* pRpcChannelBuffer,
3141 PRPC_MESSAGE pRpcMessage,
3142 DWORD* pdwStubPhase);
3143 HRESULT CALLBACK IInternetZoneManager_GetZoneCustomPolicy_Proxy(
3144 IInternetZoneManager* This,
3145 DWORD dwZone,
3146 REFGUID guidKey,
3147 BYTE** ppPolicy,
3148 DWORD* pcbPolicy,
3149 URLZONEREG ulrZoneReg);
3150 void __RPC_STUB IInternetZoneManager_GetZoneCustomPolicy_Stub(
3151 struct IRpcStubBuffer* This,
3152 struct IRpcChannelBuffer* pRpcChannelBuffer,
3153 PRPC_MESSAGE pRpcMessage,
3154 DWORD* pdwStubPhase);
3155 HRESULT CALLBACK IInternetZoneManager_SetZoneCustomPolicy_Proxy(
3156 IInternetZoneManager* This,
3157 DWORD dwZone,
3158 REFGUID guidKey,
3159 BYTE* ppPolicy,
3160 DWORD pcbPolicy,
3161 URLZONEREG ulrZoneReg);
3162 void __RPC_STUB IInternetZoneManager_SetZoneCustomPolicy_Stub(
3163 struct IRpcStubBuffer* This,
3164 struct IRpcChannelBuffer* pRpcChannelBuffer,
3165 PRPC_MESSAGE pRpcMessage,
3166 DWORD* pdwStubPhase);
3167 HRESULT CALLBACK IInternetZoneManager_GetZoneActionPolicy_Proxy(
3168 IInternetZoneManager* This,
3169 DWORD dwZone,
3170 DWORD dwAction,
3171 BYTE* pPolicy,
3172 DWORD cbPolicy,
3173 URLZONEREG urlZoneReg);
3174 void __RPC_STUB IInternetZoneManager_GetZoneActionPolicy_Stub(
3175 struct IRpcStubBuffer* This,
3176 struct IRpcChannelBuffer* pRpcChannelBuffer,
3177 PRPC_MESSAGE pRpcMessage,
3178 DWORD* pdwStubPhase);
3179 HRESULT CALLBACK IInternetZoneManager_SetZoneActionPolicy_Proxy(
3180 IInternetZoneManager* This,
3181 DWORD dwZone,
3182 DWORD dwAction,
3183 BYTE* pPolicy,
3184 DWORD cbPolicy,
3185 URLZONEREG urlZoneReg);
3186 void __RPC_STUB IInternetZoneManager_SetZoneActionPolicy_Stub(
3187 struct IRpcStubBuffer* This,
3188 struct IRpcChannelBuffer* pRpcChannelBuffer,
3189 PRPC_MESSAGE pRpcMessage,
3190 DWORD* pdwStubPhase);
3191 HRESULT CALLBACK IInternetZoneManager_PromptAction_Proxy(
3192 IInternetZoneManager* This,
3193 DWORD dwAction,
3194 HWND hwndParent,
3195 LPCWSTR pwszUrl,
3196 LPCWSTR pwszText,
3197 DWORD dwPromptFlags);
3198 void __RPC_STUB IInternetZoneManager_PromptAction_Stub(
3199 struct IRpcStubBuffer* This,
3200 struct IRpcChannelBuffer* pRpcChannelBuffer,
3201 PRPC_MESSAGE pRpcMessage,
3202 DWORD* pdwStubPhase);
3203 HRESULT CALLBACK IInternetZoneManager_LogAction_Proxy(
3204 IInternetZoneManager* This,
3205 DWORD dwAction,
3206 LPCWSTR pwszUrl,
3207 LPCWSTR pwszText,
3208 DWORD dwLogFlags);
3209 void __RPC_STUB IInternetZoneManager_LogAction_Stub(
3210 struct IRpcStubBuffer* This,
3211 struct IRpcChannelBuffer* pRpcChannelBuffer,
3212 PRPC_MESSAGE pRpcMessage,
3213 DWORD* pdwStubPhase);
3214 HRESULT CALLBACK IInternetZoneManager_CreateZoneEnumerator_Proxy(
3215 IInternetZoneManager* This,
3216 DWORD* pdwEnum,
3217 DWORD* pdwCount,
3218 DWORD dwFlags);
3219 void __RPC_STUB IInternetZoneManager_CreateZoneEnumerator_Stub(
3220 struct IRpcStubBuffer* This,
3221 struct IRpcChannelBuffer* pRpcChannelBuffer,
3222 PRPC_MESSAGE pRpcMessage,
3223 DWORD* pdwStubPhase);
3224 HRESULT CALLBACK IInternetZoneManager_GetZoneAt_Proxy(
3225 IInternetZoneManager* This,
3226 DWORD dwEnum,
3227 DWORD dwIndex,
3228 DWORD* pdwZone);
3229 void __RPC_STUB IInternetZoneManager_GetZoneAt_Stub(
3230 struct IRpcStubBuffer* This,
3231 struct IRpcChannelBuffer* pRpcChannelBuffer,
3232 PRPC_MESSAGE pRpcMessage,
3233 DWORD* pdwStubPhase);
3234 HRESULT CALLBACK IInternetZoneManager_DestroyZoneEnumerator_Proxy(
3235 IInternetZoneManager* This,
3236 DWORD dwEnum);
3237 void __RPC_STUB IInternetZoneManager_DestroyZoneEnumerator_Stub(
3238 struct IRpcStubBuffer* This,
3239 struct IRpcChannelBuffer* pRpcChannelBuffer,
3240 PRPC_MESSAGE pRpcMessage,
3241 DWORD* pdwStubPhase);
3242 HRESULT CALLBACK IInternetZoneManager_CopyTemplatePoliciesToZone_Proxy(
3243 IInternetZoneManager* This,
3244 DWORD dwTemplate,
3245 DWORD dwZone,
3246 DWORD dwReserved);
3247 void __RPC_STUB IInternetZoneManager_CopyTemplatePoliciesToZone_Stub(
3248 struct IRpcStubBuffer* This,
3249 struct IRpcChannelBuffer* pRpcChannelBuffer,
3250 PRPC_MESSAGE pRpcMessage,
3251 DWORD* pdwStubPhase);
3252
3253 #endif /* __IInternetZoneManager_INTERFACE_DEFINED__ */
3254
3255 typedef struct _tagSOFTDISTINFO {
3256 ULONG cbSize;
3257 DWORD dwFlags;
3258 DWORD dwAdState;
3259 LPWSTR szTitle;
3260 LPWSTR szAbstract;
3261 LPWSTR szHREF;
3262 DWORD dwInstalledVersionMS;
3263 DWORD dwInstalledVersionLS;
3264 DWORD dwUpdateVersionMS;
3265 DWORD dwUpdateVersionLS;
3266 DWORD dwAdvertisedVersionMS;
3267 DWORD dwAdvertisedVersionLS;
3268 DWORD dwReserved;
3269 } SOFTDISTINFO, *LPSOFTDISTINFO;
3270 typedef struct _tagCODEBASEHOLD {
3271 DWORD cbSize;
3272 LPWSTR szDistUnit;
3273 LPWSTR szCodeBase;
3274 DWORD dwVersionMS;
3275 DWORD dwVersionLS;
3276 DWORD dwStyle;
3277 } CODEBASEHOLD, *LPCODEBASEHOLD;
3278 #ifndef __ISoftDistExt_FWD_DEFINED__
3279 #define __ISoftDistExt_FWD_DEFINED__
3280 typedef struct ISoftDistExt ISoftDistExt;
3281 #endif
3282
3283 /*****************************************************************************
3284 * ISoftDistExt interface
3285 */
3286 #ifndef __ISoftDistExt_INTERFACE_DEFINED__
3287 #define __ISoftDistExt_INTERFACE_DEFINED__
3288
3289 DEFINE_GUID(IID_ISoftDistExt, 0xb15b8dc1, 0xc7e1, 0x11d0, 0x86,0x80, 0x00,0xaa,0x00,0xbd,0xcb,0x71);
3290 #if defined(__cplusplus) && !defined(CINTERFACE)
3291 struct ISoftDistExt : public IUnknown
3292 {
3293 virtual HRESULT STDMETHODCALLTYPE ProcessSoftDist(
3294 LPCWSTR szCDFURL,
3295 IXMLElement* pSoftDistElement,
3296 LPSOFTDISTINFO lpsdi) = 0;
3297
3298 virtual HRESULT STDMETHODCALLTYPE GetFirstCodeBase(
3299 LPWSTR* szCodeBase,
3300 LPDWORD dwMaxSize) = 0;
3301
3302 virtual HRESULT STDMETHODCALLTYPE GetNextCodeBase(
3303 LPWSTR* szCodeBase,
3304 LPDWORD dwMaxSize) = 0;
3305
3306 virtual HRESULT STDMETHODCALLTYPE AsyncInstallDistributionUnit(
3307 IBindCtx* pbc,
3308 LPVOID lpReserved,
3309 DWORD flags,
3310 LPCODEBASEHOLD lpcbh) = 0;
3311
3312 };
3313 #else
3314 typedef struct ISoftDistExtVtbl ISoftDistExtVtbl;
3315 struct ISoftDistExt {
3316 const ISoftDistExtVtbl* lpVtbl;
3317 };
3318 struct ISoftDistExtVtbl {
3319 BEGIN_INTERFACE
3320
3321 /*** IUnknown methods ***/
3322 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3323 ISoftDistExt* This,
3324 REFIID riid,
3325 void** ppvObject);
3326
3327 ULONG (STDMETHODCALLTYPE *AddRef)(
3328 ISoftDistExt* This);
3329
3330 ULONG (STDMETHODCALLTYPE *Release)(
3331 ISoftDistExt* This);
3332
3333 /*** ISoftDistExt methods ***/
3334 HRESULT (STDMETHODCALLTYPE *ProcessSoftDist)(
3335 ISoftDistExt* This,
3336 LPCWSTR szCDFURL,
3337 IXMLElement* pSoftDistElement,
3338 LPSOFTDISTINFO lpsdi);
3339
3340 HRESULT (STDMETHODCALLTYPE *GetFirstCodeBase)(
3341 ISoftDistExt* This,
3342 LPWSTR* szCodeBase,
3343 LPDWORD dwMaxSize);
3344
3345 HRESULT (STDMETHODCALLTYPE *GetNextCodeBase)(
3346 ISoftDistExt* This,
3347 LPWSTR* szCodeBase,
3348 LPDWORD dwMaxSize);
3349
3350 HRESULT (STDMETHODCALLTYPE *AsyncInstallDistributionUnit)(
3351 ISoftDistExt* This,
3352 IBindCtx* pbc,
3353 LPVOID lpReserved,
3354 DWORD flags,
3355 LPCODEBASEHOLD lpcbh);
3356
3357 END_INTERFACE
3358 };
3359
3360 #ifdef COBJMACROS
3361 /*** IUnknown methods ***/
3362 #define ISoftDistExt_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
3363 #define ISoftDistExt_AddRef(p) (p)->lpVtbl->AddRef(p)
3364 #define ISoftDistExt_Release(p) (p)->lpVtbl->Release(p)
3365 /*** ISoftDistExt methods ***/
3366 #define ISoftDistExt_ProcessSoftDist(p,a,b,c) (p)->lpVtbl->ProcessSoftDist(p,a,b,c)
3367 #define ISoftDistExt_GetFirstCodeBase(p,a,b) (p)->lpVtbl->GetFirstCodeBase(p,a,b)
3368 #define ISoftDistExt_GetNextCodeBase(p,a,b) (p)->lpVtbl->GetNextCodeBase(p,a,b)
3369 #define ISoftDistExt_AsyncInstallDistributionUnit(p,a,b,c,d) (p)->lpVtbl->AsyncInstallDistributionUnit(p,a,b,c,d)
3370 #endif
3371
3372 #endif
3373
3374 HRESULT CALLBACK ISoftDistExt_ProcessSoftDist_Proxy(
3375 ISoftDistExt* This,
3376 LPCWSTR szCDFURL,
3377 IXMLElement* pSoftDistElement,
3378 LPSOFTDISTINFO lpsdi);
3379 void __RPC_STUB ISoftDistExt_ProcessSoftDist_Stub(
3380 struct IRpcStubBuffer* This,
3381 struct IRpcChannelBuffer* pRpcChannelBuffer,
3382 PRPC_MESSAGE pRpcMessage,
3383 DWORD* pdwStubPhase);
3384 HRESULT CALLBACK ISoftDistExt_GetFirstCodeBase_Proxy(
3385 ISoftDistExt* This,
3386 LPWSTR* szCodeBase,
3387 LPDWORD dwMaxSize);
3388 void __RPC_STUB ISoftDistExt_GetFirstCodeBase_Stub(
3389 struct IRpcStubBuffer* This,
3390 struct IRpcChannelBuffer* pRpcChannelBuffer,
3391 PRPC_MESSAGE pRpcMessage,
3392 DWORD* pdwStubPhase);
3393 HRESULT CALLBACK ISoftDistExt_GetNextCodeBase_Proxy(
3394 ISoftDistExt* This,
3395 LPWSTR* szCodeBase,
3396 LPDWORD dwMaxSize);
3397 void __RPC_STUB ISoftDistExt_GetNextCodeBase_Stub(
3398 struct IRpcStubBuffer* This,
3399 struct IRpcChannelBuffer* pRpcChannelBuffer,
3400 PRPC_MESSAGE pRpcMessage,
3401 DWORD* pdwStubPhase);
3402 HRESULT CALLBACK ISoftDistExt_AsyncInstallDistributionUnit_Proxy(
3403 ISoftDistExt* This,
3404 IBindCtx* pbc,
3405 LPVOID lpReserved,
3406 DWORD flags,
3407 LPCODEBASEHOLD lpcbh);
3408 void __RPC_STUB ISoftDistExt_AsyncInstallDistributionUnit_Stub(
3409 struct IRpcStubBuffer* This,
3410 struct IRpcChannelBuffer* pRpcChannelBuffer,
3411 PRPC_MESSAGE pRpcMessage,
3412 DWORD* pdwStubPhase);
3413
3414 #endif /* __ISoftDistExt_INTERFACE_DEFINED__ */
3415
3416 DEFINE_GUID(CLSID_InternetSecurityManager, 0x7b8a2d94, 0x0ac9, 0x11d1, 0x89, 0x6c, 0x00, 0xc0, 0x4f, 0xB6, 0xbf, 0xc4);
3417 DEFINE_GUID(CLSID_InternetZoneManager, 0x7B8A2D95, 0x0AC9, 0x11D1, 0x89, 0x6C, 0x00, 0xC0, 0x4F, 0xB6, 0xBF, 0xC4);
3418 DEFINE_GUID(IID_IAsyncMoniker, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
3419 DEFINE_GUID(IID_IAsyncBindCtx, 0x79EAC9D4, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
3420 DEFINE_GUID(CLSID_StdURLMoniker, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);
3421 DEFINE_GUID(CLSID_CdlProtocol, 0x3dd53d40, 0x7b8b, 0x11D0, 0xb0,0x13, 0x00,0xaa,0x00,0x59,0xce,0x02);
3422 DEFINE_GUID(CLSID_FileProtocol, 0x79EAC9E7, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
3423 DEFINE_GUID(CLSID_FtpProtocol, 0x79EAC9E3, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
3424 DEFINE_GUID(CLSID_GopherProtocol, 0x79EAC9E4, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
3425 DEFINE_GUID(CLSID_HttpProtocol, 0x79EAC9E2, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
3426 DEFINE_GUID(CLSID_HttpSProtocol, 0x79EAC9E5, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
3427 DEFINE_GUID(CLSID_MkProtocol, 0x79EAC9E6, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
3428 #define MK_S_ASYNCHRONOUS 0x000401E8
3429 #define S_ASYNCHRONOUS MK_S_ASYNCHRONOUS
3430 #define INET_E_ERROR_FIRST 0x800C0002
3431 #define INET_E_INVALID_URL 0x800C0002
3432 #define INET_E_NO_SESSION 0x800C0003
3433 #define INET_E_CANNOT_CONNECT 0x800C0004
3434 #define INET_E_RESOURCE_NOT_FOUND 0x800C0005
3435 #define INET_E_OBJECT_NOT_FOUND 0x800C0006
3436 #define INET_E_DATA_NOT_AVAILABLE 0x800C0007
3437 #define INET_E_DOWNLOAD_FAILURE 0x800C0008
3438 #define INET_E_AUTHENTICATION_REQUIRED 0x800C0009
3439 #define INET_E_NO_VALID_MEDIA 0x800C000A
3440 #define INET_E_CONNECTION_TIMEOUT 0x800C000B
3441 #define INET_E_INVALID_REQUEST 0x800C000C
3442 #define INET_E_UNKNOWN_PROTOCOL 0x800C000D
3443 #define INET_E_SECURITY_PROBLEM 0x800C000E
3444 #define INET_E_CANNOT_LOAD_DATA 0x800C000F
3445 #define INET_E_CANNOT_INSTANTIATE_OBJECT 0x800C0010
3446 #define INET_E_USE_DEFAULT_PROTOCOLHANDLER 0x800C0011
3447 #define INET_E_QUERYOPTION_UNKNOWN 0x800C0013
3448 #define INET_E_REDIRECT_FAILED 0x800C0014
3449 #define INET_E_REDIRECT_TO_DIR 0x800C0015
3450 #define INET_E_CANNOT_LOCK_REQUEST 0x800C0016
3451 #define INET_E_ERROR_LAST INET_E_REDIRECT_TO_DIR
3452 #define INET_E_DEFAULT_ACTION INET_E_USE_DEFAULT_PROTOCOLHANDLER
3453 HRESULT WINAPI CoGetClassObjectFromURL(REFCLSID, LPCWSTR, DWORD, DWORD, LPCWSTR, LPBINDCTX, DWORD, LPVOID, REFIID, LPVOID*);
3454 HRESULT WINAPI CreateURLMoniker(IMoniker *pmkContext, LPCWSTR szURL, IMoniker **ppmk);
3455 HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusCallback *pbsc, IBindStatusCallback **ppbsc, DWORD dwReserved);
3456 HRESULT WINAPI CompareSecurityIds(BYTE*,DWORD,BYTE*,DWORD,DWORD);
3457 HRESULT WINAPI URLDownloadToFileA(LPUNKNOWN,LPCSTR,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
3458 HRESULT WINAPI URLDownloadToFileW(LPUNKNOWN,LPCWSTR,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
3459 HRESULT WINAPI URLDownloadToCacheFileA(LPUNKNOWN,LPCSTR,LPSTR,DWORD,DWORD,LPBINDSTATUSCALLBACK);
3460 HRESULT WINAPI URLDownloadToCacheFileW(LPUNKNOWN,LPCWSTR,LPWSTR,DWORD,DWORD,LPBINDSTATUSCALLBACK);
3461 HRESULT WINAPI CoInternetGetSession(DWORD,IInternetSession**,DWORD);
3462 HRESULT WINAPI MkParseDisplayNameEx(IBindCtx*,LPCWSTR,ULONG*,IMoniker**);
3463 HRESULT WINAPI IsAsyncMoniker(IMoniker* pmk);
3464 HRESULT WINAPI CreateAsyncBindCtx(DWORD, IBindStatusCallback*, IEnumFORMATETC*, IBindCtx**);
3465 HRESULT WINAPI CreateAsyncBindCtxEx(IBindCtx*,DWORD,IBindStatusCallback*,IEnumFORMATETC*,IBindCtx**,DWORD);
3466 HRESULT WINAPI CoInternetCreateSecurityManager(IServiceProvider*,IInternetSecurityManager**,DWORD);
3467 HRESULT WINAPI CoInternetCombineUrl(LPCWSTR,LPCWSTR,DWORD,LPWSTR,DWORD,DWORD*,DWORD);
3468 HRESULT WINAPI CoInternetCompareUrl(LPCWSTR,LPCWSTR,DWORD);
3469 HRESULT WINAPI CoInternetCreateZoneManager(IServiceProvider*, IInternetZoneManager**, DWORD);
3470 HRESULT WINAPI CoInternetParseUrl(LPCWSTR,PARSEACTION,DWORD,LPWSTR,DWORD,DWORD*,DWORD);
3471 HRESULT WINAPI CoInternetQueryInfo(LPCWSTR,QUERYOPTION,DWORD,LPVOID,DWORD,DWORD*,DWORD);
3472 HRESULT WINAPI CreateFormatEnumerator(UINT,FORMATETC*,IEnumFORMATETC**);
3473 HRESULT WINAPI GetSoftwareUpdateInfo( LPCWSTR szDistUnit, LPSOFTDISTINFO psdi);
3474 HRESULT WINAPI FaultInIEFeature(HWND,uCLSSPEC*,QUERYCONTEXT*,DWORD);
3475 HRESULT WINAPI FindMimeFromData(LPBC,LPCWSTR,LPVOID,DWORD,LPCWSTR,DWORD,LPWSTR*,DWORD);
3476 HRESULT WINAPI HlinkGoBack(IUnknown*);
3477 HRESULT WINAPI HlinkGoForward(IUnknown*);
3478 HRESULT WINAPI HlinkNavigateMoniker(IUnknown*,IMoniker*);
3479 HRESULT WINAPI HlinkNavigateString(IUnknown*,LPCWSTR);
3480 HRESULT WINAPI HlinkSimpleNavigateToMoniker(IMoniker*,LPCWSTR,LPCWSTR,IUnknown*,IBindCtx*,IBindStatusCallback*,DWORD,DWORD);
3481 HRESULT WINAPI HlinkSimpleNavigateToString(LPCWSTR,LPCWSTR,LPCWSTR,IUnknown*,IBindCtx*,IBindStatusCallback*,DWORD,DWORD);
3482 HRESULT WINAPI IsValidURL(LPBC,LPCWSTR,DWORD);
3483 HRESULT WINAPI ObtainUserAgentString(DWORD,LPSTR,DWORD*);
3484 HRESULT WINAPI RegisterFormatEnumerator(LPBC,IEnumFORMATETC*,DWORD);
3485 HRESULT WINAPI RevokeFormatEnumerator(LPBC,IEnumFORMATETC*);
3486 HRESULT WINAPI RevokeBindStatusCallback(LPBC,IBindStatusCallback*);
3487 void WINAPI ReleaseBindInfo(BINDINFO*);
3488 HRESULT WINAPI UrlMkGetSessionOption(DWORD,LPVOID,DWORD,DWORD*,DWORD);
3489 HRESULT WINAPI UrlMkSetSessionOption(DWORD,LPVOID,DWORD,DWORD);
3490 #define OInetCombineUrl CoInternetCombineUrl
3491 #define OInetCompareUrl CoInternetCompareUrl
3492 #define OInetGetSession CoInternetGetSession
3493 #define MKSYS_URLMONIKER 6
3494 /* Begin additional prototypes for all interfaces */
3495
3496 unsigned long __RPC_USER STGMEDIUM_UserSize (unsigned long *, unsigned long, STGMEDIUM *);
3497 unsigned char * __RPC_USER STGMEDIUM_UserMarshal (unsigned long *, unsigned char *, STGMEDIUM *);
3498 unsigned char * __RPC_USER STGMEDIUM_UserUnmarshal(unsigned long *, unsigned char *, STGMEDIUM *);
3499 void __RPC_USER STGMEDIUM_UserFree (unsigned long *, STGMEDIUM *);
3500 unsigned long __RPC_USER HWND_UserSize (unsigned long *, unsigned long, HWND *);
3501 unsigned char * __RPC_USER HWND_UserMarshal (unsigned long *, unsigned char *, HWND *);
3502 unsigned char * __RPC_USER HWND_UserUnmarshal(unsigned long *, unsigned char *, HWND *);
3503 void __RPC_USER HWND_UserFree (unsigned long *, HWND *);
3504
3505 /* End additional prototypes */
3506
3507 #ifdef __cplusplus
3508 }
3509 #endif
3510 #endif /* __WIDL_URLMON_H */