source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/objidlbase.h@ 1180

Last change on this file since 1180 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 210.3 KB
RevLine 
[1166]1/*** Autogenerated by WIDL 6.4 from include/objidlbase.idl - Do not edit ***/
2
3#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__
5#define __REQUIRED_RPCNDR_H_VERSION__ 475
6#endif
7#include <rpc.h>
8#include <rpcndr.h>
9#endif
10
11#ifndef COM_NO_WINDOWS_H
12#include <windows.h>
13#include <ole2.h>
14#endif
15
16#ifndef __objidlbase_h__
17#define __objidlbase_h__
18
19/* Forward declarations */
20
21#ifndef __IMarshal_FWD_DEFINED__
22#define __IMarshal_FWD_DEFINED__
23typedef interface IMarshal IMarshal;
24#ifdef __cplusplus
25interface IMarshal;
26#endif /* __cplusplus */
27#endif
28
29#ifndef __INoMarshal_FWD_DEFINED__
30#define __INoMarshal_FWD_DEFINED__
31typedef interface INoMarshal INoMarshal;
32#ifdef __cplusplus
33interface INoMarshal;
34#endif /* __cplusplus */
35#endif
36
37#ifndef __IAgileObject_FWD_DEFINED__
38#define __IAgileObject_FWD_DEFINED__
39typedef interface IAgileObject IAgileObject;
40#ifdef __cplusplus
41interface IAgileObject;
42#endif /* __cplusplus */
43#endif
44
45#ifndef __IAgileReference_FWD_DEFINED__
46#define __IAgileReference_FWD_DEFINED__
47typedef interface IAgileReference IAgileReference;
48#ifdef __cplusplus
49interface IAgileReference;
50#endif /* __cplusplus */
51#endif
52
53#ifndef __IMarshal2_FWD_DEFINED__
54#define __IMarshal2_FWD_DEFINED__
55typedef interface IMarshal2 IMarshal2;
56#ifdef __cplusplus
57interface IMarshal2;
58#endif /* __cplusplus */
59#endif
60
61#ifndef __IMalloc_FWD_DEFINED__
62#define __IMalloc_FWD_DEFINED__
63typedef interface IMalloc IMalloc;
64#ifdef __cplusplus
65interface IMalloc;
66#endif /* __cplusplus */
67#endif
68
69#ifndef __IStdMarshalInfo_FWD_DEFINED__
70#define __IStdMarshalInfo_FWD_DEFINED__
71typedef interface IStdMarshalInfo IStdMarshalInfo;
72#ifdef __cplusplus
73interface IStdMarshalInfo;
74#endif /* __cplusplus */
75#endif
76
77#ifndef __IExternalConnection_FWD_DEFINED__
78#define __IExternalConnection_FWD_DEFINED__
79typedef interface IExternalConnection IExternalConnection;
80#ifdef __cplusplus
81interface IExternalConnection;
82#endif /* __cplusplus */
83#endif
84
85#ifndef __IMultiQI_FWD_DEFINED__
86#define __IMultiQI_FWD_DEFINED__
87typedef interface IMultiQI IMultiQI;
88#ifdef __cplusplus
89interface IMultiQI;
90#endif /* __cplusplus */
91#endif
92
93#ifndef __AsyncIMultiQI_FWD_DEFINED__
94#define __AsyncIMultiQI_FWD_DEFINED__
95typedef interface AsyncIMultiQI AsyncIMultiQI;
96#ifdef __cplusplus
97interface AsyncIMultiQI;
98#endif /* __cplusplus */
99#endif
100
101#ifndef __IInternalUnknown_FWD_DEFINED__
102#define __IInternalUnknown_FWD_DEFINED__
103typedef interface IInternalUnknown IInternalUnknown;
104#ifdef __cplusplus
105interface IInternalUnknown;
106#endif /* __cplusplus */
107#endif
108
109#ifndef __IEnumUnknown_FWD_DEFINED__
110#define __IEnumUnknown_FWD_DEFINED__
111typedef interface IEnumUnknown IEnumUnknown;
112#ifdef __cplusplus
113interface IEnumUnknown;
114#endif /* __cplusplus */
115#endif
116
117#ifndef __IEnumString_FWD_DEFINED__
118#define __IEnumString_FWD_DEFINED__
119typedef interface IEnumString IEnumString;
120#ifdef __cplusplus
121interface IEnumString;
122#endif /* __cplusplus */
123#endif
124
125#ifndef __ISequentialStream_FWD_DEFINED__
126#define __ISequentialStream_FWD_DEFINED__
127typedef interface ISequentialStream ISequentialStream;
128#ifdef __cplusplus
129interface ISequentialStream;
130#endif /* __cplusplus */
131#endif
132
133#ifndef __IStream_FWD_DEFINED__
134#define __IStream_FWD_DEFINED__
135typedef interface IStream IStream;
136#ifdef __cplusplus
137interface IStream;
138#endif /* __cplusplus */
139#endif
140
141#ifndef __IRpcChannelBuffer_FWD_DEFINED__
142#define __IRpcChannelBuffer_FWD_DEFINED__
143typedef interface IRpcChannelBuffer IRpcChannelBuffer;
144#ifdef __cplusplus
145interface IRpcChannelBuffer;
146#endif /* __cplusplus */
147#endif
148
149#ifndef __IRpcChannelBuffer2_FWD_DEFINED__
150#define __IRpcChannelBuffer2_FWD_DEFINED__
151typedef interface IRpcChannelBuffer2 IRpcChannelBuffer2;
152#ifdef __cplusplus
153interface IRpcChannelBuffer2;
154#endif /* __cplusplus */
155#endif
156
157#ifndef __IAsyncRpcChannelBuffer_FWD_DEFINED__
158#define __IAsyncRpcChannelBuffer_FWD_DEFINED__
159typedef interface IAsyncRpcChannelBuffer IAsyncRpcChannelBuffer;
160#ifdef __cplusplus
161interface IAsyncRpcChannelBuffer;
162#endif /* __cplusplus */
163#endif
164
165#ifndef __IRpcChannelBuffer3_FWD_DEFINED__
166#define __IRpcChannelBuffer3_FWD_DEFINED__
167typedef interface IRpcChannelBuffer3 IRpcChannelBuffer3;
168#ifdef __cplusplus
169interface IRpcChannelBuffer3;
170#endif /* __cplusplus */
171#endif
172
173#ifndef __IRpcSyntaxNegotiate_FWD_DEFINED__
174#define __IRpcSyntaxNegotiate_FWD_DEFINED__
175typedef interface IRpcSyntaxNegotiate IRpcSyntaxNegotiate;
176#ifdef __cplusplus
177interface IRpcSyntaxNegotiate;
178#endif /* __cplusplus */
179#endif
180
181#ifndef __IRpcProxyBuffer_FWD_DEFINED__
182#define __IRpcProxyBuffer_FWD_DEFINED__
183typedef interface IRpcProxyBuffer IRpcProxyBuffer;
184#ifdef __cplusplus
185interface IRpcProxyBuffer;
186#endif /* __cplusplus */
187#endif
188
189#ifndef __IRpcStubBuffer_FWD_DEFINED__
190#define __IRpcStubBuffer_FWD_DEFINED__
191typedef interface IRpcStubBuffer IRpcStubBuffer;
192#ifdef __cplusplus
193interface IRpcStubBuffer;
194#endif /* __cplusplus */
195#endif
196
197#ifndef __IPSFactoryBuffer_FWD_DEFINED__
198#define __IPSFactoryBuffer_FWD_DEFINED__
199typedef interface IPSFactoryBuffer IPSFactoryBuffer;
200#ifdef __cplusplus
201interface IPSFactoryBuffer;
202#endif /* __cplusplus */
203#endif
204
205#ifndef __IChannelHook_FWD_DEFINED__
206#define __IChannelHook_FWD_DEFINED__
207typedef interface IChannelHook IChannelHook;
208#ifdef __cplusplus
209interface IChannelHook;
210#endif /* __cplusplus */
211#endif
212
213#ifndef __IClientSecurity_FWD_DEFINED__
214#define __IClientSecurity_FWD_DEFINED__
215typedef interface IClientSecurity IClientSecurity;
216#ifdef __cplusplus
217interface IClientSecurity;
218#endif /* __cplusplus */
219#endif
220
221#ifndef __IServerSecurity_FWD_DEFINED__
222#define __IServerSecurity_FWD_DEFINED__
223typedef interface IServerSecurity IServerSecurity;
224#ifdef __cplusplus
225interface IServerSecurity;
226#endif /* __cplusplus */
227#endif
228
229#ifndef __IRpcOptions_FWD_DEFINED__
230#define __IRpcOptions_FWD_DEFINED__
231typedef interface IRpcOptions IRpcOptions;
232#ifdef __cplusplus
233interface IRpcOptions;
234#endif /* __cplusplus */
235#endif
236
237#ifndef __IGlobalOptions_FWD_DEFINED__
238#define __IGlobalOptions_FWD_DEFINED__
239typedef interface IGlobalOptions IGlobalOptions;
240#ifdef __cplusplus
241interface IGlobalOptions;
242#endif /* __cplusplus */
243#endif
244
245#ifndef __ISurrogate_FWD_DEFINED__
246#define __ISurrogate_FWD_DEFINED__
247typedef interface ISurrogate ISurrogate;
248#ifdef __cplusplus
249interface ISurrogate;
250#endif /* __cplusplus */
251#endif
252
253#ifndef __IGlobalInterfaceTable_FWD_DEFINED__
254#define __IGlobalInterfaceTable_FWD_DEFINED__
255typedef interface IGlobalInterfaceTable IGlobalInterfaceTable;
256#ifdef __cplusplus
257interface IGlobalInterfaceTable;
258#endif /* __cplusplus */
259#endif
260
261#ifndef __ISynchronize_FWD_DEFINED__
262#define __ISynchronize_FWD_DEFINED__
263typedef interface ISynchronize ISynchronize;
264#ifdef __cplusplus
265interface ISynchronize;
266#endif /* __cplusplus */
267#endif
268
269#ifndef __ISynchronizeHandle_FWD_DEFINED__
270#define __ISynchronizeHandle_FWD_DEFINED__
271typedef interface ISynchronizeHandle ISynchronizeHandle;
272#ifdef __cplusplus
273interface ISynchronizeHandle;
274#endif /* __cplusplus */
275#endif
276
277#ifndef __ISynchronizeEvent_FWD_DEFINED__
278#define __ISynchronizeEvent_FWD_DEFINED__
279typedef interface ISynchronizeEvent ISynchronizeEvent;
280#ifdef __cplusplus
281interface ISynchronizeEvent;
282#endif /* __cplusplus */
283#endif
284
285#ifndef __ISynchronizeContainer_FWD_DEFINED__
286#define __ISynchronizeContainer_FWD_DEFINED__
287typedef interface ISynchronizeContainer ISynchronizeContainer;
288#ifdef __cplusplus
289interface ISynchronizeContainer;
290#endif /* __cplusplus */
291#endif
292
293#ifndef __ISynchronizeMutex_FWD_DEFINED__
294#define __ISynchronizeMutex_FWD_DEFINED__
295typedef interface ISynchronizeMutex ISynchronizeMutex;
296#ifdef __cplusplus
297interface ISynchronizeMutex;
298#endif /* __cplusplus */
299#endif
300
301#ifndef __ICancelMethodCalls_FWD_DEFINED__
302#define __ICancelMethodCalls_FWD_DEFINED__
303typedef interface ICancelMethodCalls ICancelMethodCalls;
304#ifdef __cplusplus
305interface ICancelMethodCalls;
306#endif /* __cplusplus */
307#endif
308
309#ifndef __IAsyncManager_FWD_DEFINED__
310#define __IAsyncManager_FWD_DEFINED__
311typedef interface IAsyncManager IAsyncManager;
312#ifdef __cplusplus
313interface IAsyncManager;
314#endif /* __cplusplus */
315#endif
316
317#ifndef __ICallFactory_FWD_DEFINED__
318#define __ICallFactory_FWD_DEFINED__
319typedef interface ICallFactory ICallFactory;
320#ifdef __cplusplus
321interface ICallFactory;
322#endif /* __cplusplus */
323#endif
324
325#ifndef __IRpcHelper_FWD_DEFINED__
326#define __IRpcHelper_FWD_DEFINED__
327typedef interface IRpcHelper IRpcHelper;
328#ifdef __cplusplus
329interface IRpcHelper;
330#endif /* __cplusplus */
331#endif
332
333#ifndef __IReleaseMarshalBuffers_FWD_DEFINED__
334#define __IReleaseMarshalBuffers_FWD_DEFINED__
335typedef interface IReleaseMarshalBuffers IReleaseMarshalBuffers;
336#ifdef __cplusplus
337interface IReleaseMarshalBuffers;
338#endif /* __cplusplus */
339#endif
340
341#ifndef __IWaitMultiple_FWD_DEFINED__
342#define __IWaitMultiple_FWD_DEFINED__
343typedef interface IWaitMultiple IWaitMultiple;
344#ifdef __cplusplus
345interface IWaitMultiple;
346#endif /* __cplusplus */
347#endif
348
349#ifndef __IAddrTrackingControl_FWD_DEFINED__
350#define __IAddrTrackingControl_FWD_DEFINED__
351typedef interface IAddrTrackingControl IAddrTrackingControl;
352#ifdef __cplusplus
353interface IAddrTrackingControl;
354#endif /* __cplusplus */
355#endif
356
357#ifndef __IAddrExclusionControl_FWD_DEFINED__
358#define __IAddrExclusionControl_FWD_DEFINED__
359typedef interface IAddrExclusionControl IAddrExclusionControl;
360#ifdef __cplusplus
361interface IAddrExclusionControl;
362#endif /* __cplusplus */
363#endif
364
365#ifndef __IPipeByte_FWD_DEFINED__
366#define __IPipeByte_FWD_DEFINED__
367typedef interface IPipeByte IPipeByte;
368#ifdef __cplusplus
369interface IPipeByte;
370#endif /* __cplusplus */
371#endif
372
373#ifndef __IPipeLong_FWD_DEFINED__
374#define __IPipeLong_FWD_DEFINED__
375typedef interface IPipeLong IPipeLong;
376#ifdef __cplusplus
377interface IPipeLong;
378#endif /* __cplusplus */
379#endif
380
381#ifndef __IPipeDouble_FWD_DEFINED__
382#define __IPipeDouble_FWD_DEFINED__
383typedef interface IPipeDouble IPipeDouble;
384#ifdef __cplusplus
385interface IPipeDouble;
386#endif /* __cplusplus */
387#endif
388
389#ifndef __IEnumContextProps_FWD_DEFINED__
390#define __IEnumContextProps_FWD_DEFINED__
391typedef interface IEnumContextProps IEnumContextProps;
392#ifdef __cplusplus
393interface IEnumContextProps;
394#endif /* __cplusplus */
395#endif
396
397#ifndef __IContext_FWD_DEFINED__
398#define __IContext_FWD_DEFINED__
399typedef interface IContext IContext;
400#ifdef __cplusplus
401interface IContext;
402#endif /* __cplusplus */
403#endif
404
405#ifndef __IComThreadingInfo_FWD_DEFINED__
406#define __IComThreadingInfo_FWD_DEFINED__
407typedef interface IComThreadingInfo IComThreadingInfo;
408#ifdef __cplusplus
409interface IComThreadingInfo;
410#endif /* __cplusplus */
411#endif
412
413#ifndef __IProcessInitControl_FWD_DEFINED__
414#define __IProcessInitControl_FWD_DEFINED__
415typedef interface IProcessInitControl IProcessInitControl;
416#ifdef __cplusplus
417interface IProcessInitControl;
418#endif /* __cplusplus */
419#endif
420
421#ifndef __IFastRundown_FWD_DEFINED__
422#define __IFastRundown_FWD_DEFINED__
423typedef interface IFastRundown IFastRundown;
424#ifdef __cplusplus
425interface IFastRundown;
426#endif /* __cplusplus */
427#endif
428
429#ifndef __IMarshalingStream_FWD_DEFINED__
430#define __IMarshalingStream_FWD_DEFINED__
431typedef interface IMarshalingStream IMarshalingStream;
432#ifdef __cplusplus
433interface IMarshalingStream;
434#endif /* __cplusplus */
435#endif
436
437/* Headers for imported files */
438
439#include <unknwnbase.h>
440#include <wtypesbase.h>
441
442#ifdef __cplusplus
443extern "C" {
444#endif
445
446/**
447 * This file is part of the mingw-w64 runtime package.
448 * No warranty is given; refer to the file DISCLAIMER within this package.
449 */
450
451#include <winapifamily.h>
452
453#if (NTDDI_VERSION >= NTDDI_VISTA && !defined(_WIN32_WINNT))
454#define _WIN32_WINNT 0x0600
455#endif
456
457#if (NTDDI_VERSION >= NTDDI_WS03 && !defined(_WIN32_WINNT))
458#define _WIN32_WINNT 0x0502
459#endif
460
461#if (NTDDI_VERSION >= NTDDI_WINXP && !defined(_WIN32_WINNT))
462#define _WIN32_WINNT 0x0501
463#endif
464
465
466#ifndef _OBJIDLBASE_
467#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
468#ifndef __IStream_FWD_DEFINED__
469#define __IStream_FWD_DEFINED__
470typedef interface IStream IStream;
471#ifdef __cplusplus
472interface IStream;
473#endif /* __cplusplus */
474#endif
475
476#ifndef __IEnumString_FWD_DEFINED__
477#define __IEnumString_FWD_DEFINED__
478typedef interface IEnumString IEnumString;
479#ifdef __cplusplus
480interface IEnumString;
481#endif /* __cplusplus */
482#endif
483
484#ifndef __IMultiQI_FWD_DEFINED__
485#define __IMultiQI_FWD_DEFINED__
486typedef interface IMultiQI IMultiQI;
487#ifdef __cplusplus
488interface IMultiQI;
489#endif /* __cplusplus */
490#endif
491
492#endif
493
494#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
495#ifndef __IAsyncManager_FWD_DEFINED__
496#define __IAsyncManager_FWD_DEFINED__
497typedef interface IAsyncManager IAsyncManager;
498#ifdef __cplusplus
499interface IAsyncManager;
500#endif /* __cplusplus */
501#endif
502
503#ifndef __ICallFactory_FWD_DEFINED__
504#define __ICallFactory_FWD_DEFINED__
505typedef interface ICallFactory ICallFactory;
506#ifdef __cplusplus
507interface ICallFactory;
508#endif /* __cplusplus */
509#endif
510
511#ifndef __ISynchronize_FWD_DEFINED__
512#define __ISynchronize_FWD_DEFINED__
513typedef interface ISynchronize ISynchronize;
514#ifdef __cplusplus
515interface ISynchronize;
516#endif /* __cplusplus */
517#endif
518
519#endif
520
521#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
522typedef struct _COSERVERINFO {
523 DWORD dwReserved1;
524 LPWSTR pwszName;
525 COAUTHINFO *pAuthInfo;
526 DWORD dwReserved2;
527} COSERVERINFO;
528
529/*****************************************************************************
530 * IMarshal interface
531 */
532#ifndef __IMarshal_INTERFACE_DEFINED__
533#define __IMarshal_INTERFACE_DEFINED__
534
535typedef IMarshal *LPMARSHAL;
536DEFINE_GUID(IID_IMarshal, 0x00000003, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
537#if defined(__cplusplus) && !defined(CINTERFACE)
538MIDL_INTERFACE("00000003-0000-0000-c000-000000000046")
539IMarshal : public IUnknown
540{
541 virtual HRESULT STDMETHODCALLTYPE GetUnmarshalClass(
542 REFIID riid,
543 void *pv,
544 DWORD dwDestContext,
545 void *pvDestContext,
546 DWORD mshlflags,
547 CLSID *pCid) = 0;
548
549 virtual HRESULT STDMETHODCALLTYPE GetMarshalSizeMax(
550 REFIID riid,
551 void *pv,
552 DWORD dwDestContext,
553 void *pvDestContext,
554 DWORD mshlflags,
555 DWORD *pSize) = 0;
556
557 virtual HRESULT STDMETHODCALLTYPE MarshalInterface(
558 IStream *pStm,
559 REFIID riid,
560 void *pv,
561 DWORD dwDestContext,
562 void *pvDestContext,
563 DWORD mshlflags) = 0;
564
565 virtual HRESULT STDMETHODCALLTYPE UnmarshalInterface(
566 IStream *pStm,
567 REFIID riid,
568 void **ppv) = 0;
569
570 virtual HRESULT STDMETHODCALLTYPE ReleaseMarshalData(
571 IStream *pStm) = 0;
572
573 virtual HRESULT STDMETHODCALLTYPE DisconnectObject(
574 DWORD dwReserved) = 0;
575
576};
577#ifdef __CRT_UUID_DECL
578__CRT_UUID_DECL(IMarshal, 0x00000003, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
579#endif
580#else
581typedef struct IMarshalVtbl {
582 BEGIN_INTERFACE
583
584 /*** IUnknown methods ***/
585 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
586 IMarshal *This,
587 REFIID riid,
588 void **ppvObject);
589
590 ULONG (STDMETHODCALLTYPE *AddRef)(
591 IMarshal *This);
592
593 ULONG (STDMETHODCALLTYPE *Release)(
594 IMarshal *This);
595
596 /*** IMarshal methods ***/
597 HRESULT (STDMETHODCALLTYPE *GetUnmarshalClass)(
598 IMarshal *This,
599 REFIID riid,
600 void *pv,
601 DWORD dwDestContext,
602 void *pvDestContext,
603 DWORD mshlflags,
604 CLSID *pCid);
605
606 HRESULT (STDMETHODCALLTYPE *GetMarshalSizeMax)(
607 IMarshal *This,
608 REFIID riid,
609 void *pv,
610 DWORD dwDestContext,
611 void *pvDestContext,
612 DWORD mshlflags,
613 DWORD *pSize);
614
615 HRESULT (STDMETHODCALLTYPE *MarshalInterface)(
616 IMarshal *This,
617 IStream *pStm,
618 REFIID riid,
619 void *pv,
620 DWORD dwDestContext,
621 void *pvDestContext,
622 DWORD mshlflags);
623
624 HRESULT (STDMETHODCALLTYPE *UnmarshalInterface)(
625 IMarshal *This,
626 IStream *pStm,
627 REFIID riid,
628 void **ppv);
629
630 HRESULT (STDMETHODCALLTYPE *ReleaseMarshalData)(
631 IMarshal *This,
632 IStream *pStm);
633
634 HRESULT (STDMETHODCALLTYPE *DisconnectObject)(
635 IMarshal *This,
636 DWORD dwReserved);
637
638 END_INTERFACE
639} IMarshalVtbl;
640
641interface IMarshal {
642 CONST_VTBL IMarshalVtbl* lpVtbl;
643};
644
645#ifdef COBJMACROS
646#ifndef WIDL_C_INLINE_WRAPPERS
647/*** IUnknown methods ***/
648#define IMarshal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
649#define IMarshal_AddRef(This) (This)->lpVtbl->AddRef(This)
650#define IMarshal_Release(This) (This)->lpVtbl->Release(This)
651/*** IMarshal methods ***/
652#define IMarshal_GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) (This)->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid)
653#define IMarshal_GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) (This)->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize)
654#define IMarshal_MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) (This)->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags)
655#define IMarshal_UnmarshalInterface(This,pStm,riid,ppv) (This)->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv)
656#define IMarshal_ReleaseMarshalData(This,pStm) (This)->lpVtbl->ReleaseMarshalData(This,pStm)
657#define IMarshal_DisconnectObject(This,dwReserved) (This)->lpVtbl->DisconnectObject(This,dwReserved)
658#else
659/*** IUnknown methods ***/
660static FORCEINLINE HRESULT IMarshal_QueryInterface(IMarshal* This,REFIID riid,void **ppvObject) {
661 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
662}
663static FORCEINLINE ULONG IMarshal_AddRef(IMarshal* This) {
664 return This->lpVtbl->AddRef(This);
665}
666static FORCEINLINE ULONG IMarshal_Release(IMarshal* This) {
667 return This->lpVtbl->Release(This);
668}
669/*** IMarshal methods ***/
670static FORCEINLINE HRESULT IMarshal_GetUnmarshalClass(IMarshal* This,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags,CLSID *pCid) {
671 return This->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid);
672}
673static FORCEINLINE HRESULT IMarshal_GetMarshalSizeMax(IMarshal* This,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags,DWORD *pSize) {
674 return This->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize);
675}
676static FORCEINLINE HRESULT IMarshal_MarshalInterface(IMarshal* This,IStream *pStm,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags) {
677 return This->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags);
678}
679static FORCEINLINE HRESULT IMarshal_UnmarshalInterface(IMarshal* This,IStream *pStm,REFIID riid,void **ppv) {
680 return This->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv);
681}
682static FORCEINLINE HRESULT IMarshal_ReleaseMarshalData(IMarshal* This,IStream *pStm) {
683 return This->lpVtbl->ReleaseMarshalData(This,pStm);
684}
685static FORCEINLINE HRESULT IMarshal_DisconnectObject(IMarshal* This,DWORD dwReserved) {
686 return This->lpVtbl->DisconnectObject(This,dwReserved);
687}
688#endif
689#endif
690
691#endif
692
693
694#endif /* __IMarshal_INTERFACE_DEFINED__ */
695
696
697/*****************************************************************************
698 * INoMarshal interface
699 */
700#ifndef __INoMarshal_INTERFACE_DEFINED__
701#define __INoMarshal_INTERFACE_DEFINED__
702
703DEFINE_GUID(IID_INoMarshal, 0xecc8691b, 0xc1db, 0x4dc0, 0x85,0x5e, 0x65,0xf6,0xc5,0x51,0xaf,0x49);
704#if defined(__cplusplus) && !defined(CINTERFACE)
705MIDL_INTERFACE("ecc8691b-c1db-4dc0-855e-65f6c551af49")
706INoMarshal : public IUnknown
707{
708};
709#ifdef __CRT_UUID_DECL
710__CRT_UUID_DECL(INoMarshal, 0xecc8691b, 0xc1db, 0x4dc0, 0x85,0x5e, 0x65,0xf6,0xc5,0x51,0xaf,0x49)
711#endif
712#else
713typedef struct INoMarshalVtbl {
714 BEGIN_INTERFACE
715
716 /*** IUnknown methods ***/
717 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
718 INoMarshal *This,
719 REFIID riid,
720 void **ppvObject);
721
722 ULONG (STDMETHODCALLTYPE *AddRef)(
723 INoMarshal *This);
724
725 ULONG (STDMETHODCALLTYPE *Release)(
726 INoMarshal *This);
727
728 END_INTERFACE
729} INoMarshalVtbl;
730
731interface INoMarshal {
732 CONST_VTBL INoMarshalVtbl* lpVtbl;
733};
734
735#ifdef COBJMACROS
736#ifndef WIDL_C_INLINE_WRAPPERS
737/*** IUnknown methods ***/
738#define INoMarshal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
739#define INoMarshal_AddRef(This) (This)->lpVtbl->AddRef(This)
740#define INoMarshal_Release(This) (This)->lpVtbl->Release(This)
741#else
742/*** IUnknown methods ***/
743static FORCEINLINE HRESULT INoMarshal_QueryInterface(INoMarshal* This,REFIID riid,void **ppvObject) {
744 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
745}
746static FORCEINLINE ULONG INoMarshal_AddRef(INoMarshal* This) {
747 return This->lpVtbl->AddRef(This);
748}
749static FORCEINLINE ULONG INoMarshal_Release(INoMarshal* This) {
750 return This->lpVtbl->Release(This);
751}
752#endif
753#endif
754
755#endif
756
757
758#endif /* __INoMarshal_INTERFACE_DEFINED__ */
759
760
761/*****************************************************************************
762 * IAgileObject interface
763 */
764#ifndef __IAgileObject_INTERFACE_DEFINED__
765#define __IAgileObject_INTERFACE_DEFINED__
766
767DEFINE_GUID(IID_IAgileObject, 0x94ea2b94, 0xe9cc, 0x49e0, 0xc0,0xff, 0xee,0x64,0xca,0x8f,0x5b,0x90);
768#if defined(__cplusplus) && !defined(CINTERFACE)
769MIDL_INTERFACE("94ea2b94-e9cc-49e0-c0ff-ee64ca8f5b90")
770IAgileObject : public IUnknown
771{
772};
773#ifdef __CRT_UUID_DECL
774__CRT_UUID_DECL(IAgileObject, 0x94ea2b94, 0xe9cc, 0x49e0, 0xc0,0xff, 0xee,0x64,0xca,0x8f,0x5b,0x90)
775#endif
776#else
777typedef struct IAgileObjectVtbl {
778 BEGIN_INTERFACE
779
780 /*** IUnknown methods ***/
781 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
782 IAgileObject *This,
783 REFIID riid,
784 void **ppvObject);
785
786 ULONG (STDMETHODCALLTYPE *AddRef)(
787 IAgileObject *This);
788
789 ULONG (STDMETHODCALLTYPE *Release)(
790 IAgileObject *This);
791
792 END_INTERFACE
793} IAgileObjectVtbl;
794
795interface IAgileObject {
796 CONST_VTBL IAgileObjectVtbl* lpVtbl;
797};
798
799#ifdef COBJMACROS
800#ifndef WIDL_C_INLINE_WRAPPERS
801/*** IUnknown methods ***/
802#define IAgileObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
803#define IAgileObject_AddRef(This) (This)->lpVtbl->AddRef(This)
804#define IAgileObject_Release(This) (This)->lpVtbl->Release(This)
805#else
806/*** IUnknown methods ***/
807static FORCEINLINE HRESULT IAgileObject_QueryInterface(IAgileObject* This,REFIID riid,void **ppvObject) {
808 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
809}
810static FORCEINLINE ULONG IAgileObject_AddRef(IAgileObject* This) {
811 return This->lpVtbl->AddRef(This);
812}
813static FORCEINLINE ULONG IAgileObject_Release(IAgileObject* This) {
814 return This->lpVtbl->Release(This);
815}
816#endif
817#endif
818
819#endif
820
821
822#endif /* __IAgileObject_INTERFACE_DEFINED__ */
823
824/*****************************************************************************
825 * IAgileReference interface
826 */
827#ifndef __IAgileReference_INTERFACE_DEFINED__
828#define __IAgileReference_INTERFACE_DEFINED__
829
830DEFINE_GUID(IID_IAgileReference, 0xc03f6a43, 0x65a4, 0x9818, 0x98,0x7e, 0xe0,0xb8,0x10,0xd2,0xa6,0xf2);
831#if defined(__cplusplus) && !defined(CINTERFACE)
832MIDL_INTERFACE("c03f6a43-65a4-9818-987e-e0b810d2a6f2")
833IAgileReference : public IUnknown
834{
835 virtual HRESULT STDMETHODCALLTYPE Resolve(
836 REFIID riid,
837 void **ppv) = 0;
838
839};
840#ifdef __CRT_UUID_DECL
841__CRT_UUID_DECL(IAgileReference, 0xc03f6a43, 0x65a4, 0x9818, 0x98,0x7e, 0xe0,0xb8,0x10,0xd2,0xa6,0xf2)
842#endif
843#else
844typedef struct IAgileReferenceVtbl {
845 BEGIN_INTERFACE
846
847 /*** IUnknown methods ***/
848 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
849 IAgileReference *This,
850 REFIID riid,
851 void **ppvObject);
852
853 ULONG (STDMETHODCALLTYPE *AddRef)(
854 IAgileReference *This);
855
856 ULONG (STDMETHODCALLTYPE *Release)(
857 IAgileReference *This);
858
859 /*** IAgileReference methods ***/
860 HRESULT (STDMETHODCALLTYPE *Resolve)(
861 IAgileReference *This,
862 REFIID riid,
863 void **ppv);
864
865 END_INTERFACE
866} IAgileReferenceVtbl;
867
868interface IAgileReference {
869 CONST_VTBL IAgileReferenceVtbl* lpVtbl;
870};
871
872#ifdef COBJMACROS
873#ifndef WIDL_C_INLINE_WRAPPERS
874/*** IUnknown methods ***/
875#define IAgileReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
876#define IAgileReference_AddRef(This) (This)->lpVtbl->AddRef(This)
877#define IAgileReference_Release(This) (This)->lpVtbl->Release(This)
878/*** IAgileReference methods ***/
879#define IAgileReference_Resolve(This,riid,ppv) (This)->lpVtbl->Resolve(This,riid,ppv)
880#else
881/*** IUnknown methods ***/
882static FORCEINLINE HRESULT IAgileReference_QueryInterface(IAgileReference* This,REFIID riid,void **ppvObject) {
883 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
884}
885static FORCEINLINE ULONG IAgileReference_AddRef(IAgileReference* This) {
886 return This->lpVtbl->AddRef(This);
887}
888static FORCEINLINE ULONG IAgileReference_Release(IAgileReference* This) {
889 return This->lpVtbl->Release(This);
890}
891/*** IAgileReference methods ***/
892static FORCEINLINE HRESULT IAgileReference_Resolve(IAgileReference* This,REFIID riid,void **ppv) {
893 return This->lpVtbl->Resolve(This,riid,ppv);
894}
895#endif
896#endif
897
898#endif
899
900
901#endif /* __IAgileReference_INTERFACE_DEFINED__ */
902
903#endif
904
905#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
906/*****************************************************************************
907 * IMarshal2 interface
908 */
909#ifndef __IMarshal2_INTERFACE_DEFINED__
910#define __IMarshal2_INTERFACE_DEFINED__
911
912typedef IMarshal2 *LPMARSHAL2;
913DEFINE_GUID(IID_IMarshal2, 0x000001cf, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
914#if defined(__cplusplus) && !defined(CINTERFACE)
915MIDL_INTERFACE("000001cf-0000-0000-c000-000000000046")
916IMarshal2 : public IMarshal
917{
918};
919#ifdef __CRT_UUID_DECL
920__CRT_UUID_DECL(IMarshal2, 0x000001cf, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
921#endif
922#else
923typedef struct IMarshal2Vtbl {
924 BEGIN_INTERFACE
925
926 /*** IUnknown methods ***/
927 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
928 IMarshal2 *This,
929 REFIID riid,
930 void **ppvObject);
931
932 ULONG (STDMETHODCALLTYPE *AddRef)(
933 IMarshal2 *This);
934
935 ULONG (STDMETHODCALLTYPE *Release)(
936 IMarshal2 *This);
937
938 /*** IMarshal methods ***/
939 HRESULT (STDMETHODCALLTYPE *GetUnmarshalClass)(
940 IMarshal2 *This,
941 REFIID riid,
942 void *pv,
943 DWORD dwDestContext,
944 void *pvDestContext,
945 DWORD mshlflags,
946 CLSID *pCid);
947
948 HRESULT (STDMETHODCALLTYPE *GetMarshalSizeMax)(
949 IMarshal2 *This,
950 REFIID riid,
951 void *pv,
952 DWORD dwDestContext,
953 void *pvDestContext,
954 DWORD mshlflags,
955 DWORD *pSize);
956
957 HRESULT (STDMETHODCALLTYPE *MarshalInterface)(
958 IMarshal2 *This,
959 IStream *pStm,
960 REFIID riid,
961 void *pv,
962 DWORD dwDestContext,
963 void *pvDestContext,
964 DWORD mshlflags);
965
966 HRESULT (STDMETHODCALLTYPE *UnmarshalInterface)(
967 IMarshal2 *This,
968 IStream *pStm,
969 REFIID riid,
970 void **ppv);
971
972 HRESULT (STDMETHODCALLTYPE *ReleaseMarshalData)(
973 IMarshal2 *This,
974 IStream *pStm);
975
976 HRESULT (STDMETHODCALLTYPE *DisconnectObject)(
977 IMarshal2 *This,
978 DWORD dwReserved);
979
980 END_INTERFACE
981} IMarshal2Vtbl;
982
983interface IMarshal2 {
984 CONST_VTBL IMarshal2Vtbl* lpVtbl;
985};
986
987#ifdef COBJMACROS
988#ifndef WIDL_C_INLINE_WRAPPERS
989/*** IUnknown methods ***/
990#define IMarshal2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
991#define IMarshal2_AddRef(This) (This)->lpVtbl->AddRef(This)
992#define IMarshal2_Release(This) (This)->lpVtbl->Release(This)
993/*** IMarshal methods ***/
994#define IMarshal2_GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) (This)->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid)
995#define IMarshal2_GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) (This)->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize)
996#define IMarshal2_MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) (This)->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags)
997#define IMarshal2_UnmarshalInterface(This,pStm,riid,ppv) (This)->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv)
998#define IMarshal2_ReleaseMarshalData(This,pStm) (This)->lpVtbl->ReleaseMarshalData(This,pStm)
999#define IMarshal2_DisconnectObject(This,dwReserved) (This)->lpVtbl->DisconnectObject(This,dwReserved)
1000#else
1001/*** IUnknown methods ***/
1002static FORCEINLINE HRESULT IMarshal2_QueryInterface(IMarshal2* This,REFIID riid,void **ppvObject) {
1003 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1004}
1005static FORCEINLINE ULONG IMarshal2_AddRef(IMarshal2* This) {
1006 return This->lpVtbl->AddRef(This);
1007}
1008static FORCEINLINE ULONG IMarshal2_Release(IMarshal2* This) {
1009 return This->lpVtbl->Release(This);
1010}
1011/*** IMarshal methods ***/
1012static FORCEINLINE HRESULT IMarshal2_GetUnmarshalClass(IMarshal2* This,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags,CLSID *pCid) {
1013 return This->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid);
1014}
1015static FORCEINLINE HRESULT IMarshal2_GetMarshalSizeMax(IMarshal2* This,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags,DWORD *pSize) {
1016 return This->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize);
1017}
1018static FORCEINLINE HRESULT IMarshal2_MarshalInterface(IMarshal2* This,IStream *pStm,REFIID riid,void *pv,DWORD dwDestContext,void *pvDestContext,DWORD mshlflags) {
1019 return This->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags);
1020}
1021static FORCEINLINE HRESULT IMarshal2_UnmarshalInterface(IMarshal2* This,IStream *pStm,REFIID riid,void **ppv) {
1022 return This->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv);
1023}
1024static FORCEINLINE HRESULT IMarshal2_ReleaseMarshalData(IMarshal2* This,IStream *pStm) {
1025 return This->lpVtbl->ReleaseMarshalData(This,pStm);
1026}
1027static FORCEINLINE HRESULT IMarshal2_DisconnectObject(IMarshal2* This,DWORD dwReserved) {
1028 return This->lpVtbl->DisconnectObject(This,dwReserved);
1029}
1030#endif
1031#endif
1032
1033#endif
1034
1035
1036#endif /* __IMarshal2_INTERFACE_DEFINED__ */
1037
1038
1039/*****************************************************************************
1040 * IMalloc interface
1041 */
1042#ifndef __IMalloc_INTERFACE_DEFINED__
1043#define __IMalloc_INTERFACE_DEFINED__
1044
1045typedef IMalloc *LPMALLOC;
1046
1047DEFINE_GUID(IID_IMalloc, 0x00000002, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1048#if defined(__cplusplus) && !defined(CINTERFACE)
1049MIDL_INTERFACE("00000002-0000-0000-c000-000000000046")
1050IMalloc : public IUnknown
1051{
1052 virtual void * STDMETHODCALLTYPE Alloc(
1053 SIZE_T cb) = 0;
1054
1055 virtual void * STDMETHODCALLTYPE Realloc(
1056 void *pv,
1057 SIZE_T cb) = 0;
1058
1059 virtual void STDMETHODCALLTYPE Free(
1060 void *pv) = 0;
1061
1062 virtual SIZE_T STDMETHODCALLTYPE GetSize(
1063 void *pv) = 0;
1064
1065 virtual int STDMETHODCALLTYPE DidAlloc(
1066 void *pv) = 0;
1067
1068 virtual void STDMETHODCALLTYPE HeapMinimize(
1069 ) = 0;
1070
1071};
1072#ifdef __CRT_UUID_DECL
1073__CRT_UUID_DECL(IMalloc, 0x00000002, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
1074#endif
1075#else
1076typedef struct IMallocVtbl {
1077 BEGIN_INTERFACE
1078
1079 /*** IUnknown methods ***/
1080 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1081 IMalloc *This,
1082 REFIID riid,
1083 void **ppvObject);
1084
1085 ULONG (STDMETHODCALLTYPE *AddRef)(
1086 IMalloc *This);
1087
1088 ULONG (STDMETHODCALLTYPE *Release)(
1089 IMalloc *This);
1090
1091 /*** IMalloc methods ***/
1092 void * (STDMETHODCALLTYPE *Alloc)(
1093 IMalloc *This,
1094 SIZE_T cb);
1095
1096 void * (STDMETHODCALLTYPE *Realloc)(
1097 IMalloc *This,
1098 void *pv,
1099 SIZE_T cb);
1100
1101 void (STDMETHODCALLTYPE *Free)(
1102 IMalloc *This,
1103 void *pv);
1104
1105 SIZE_T (STDMETHODCALLTYPE *GetSize)(
1106 IMalloc *This,
1107 void *pv);
1108
1109 int (STDMETHODCALLTYPE *DidAlloc)(
1110 IMalloc *This,
1111 void *pv);
1112
1113 void (STDMETHODCALLTYPE *HeapMinimize)(
1114 IMalloc *This);
1115
1116 END_INTERFACE
1117} IMallocVtbl;
1118
1119interface IMalloc {
1120 CONST_VTBL IMallocVtbl* lpVtbl;
1121};
1122
1123#ifdef COBJMACROS
1124#ifndef WIDL_C_INLINE_WRAPPERS
1125/*** IUnknown methods ***/
1126#define IMalloc_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1127#define IMalloc_AddRef(This) (This)->lpVtbl->AddRef(This)
1128#define IMalloc_Release(This) (This)->lpVtbl->Release(This)
1129/*** IMalloc methods ***/
1130#define IMalloc_Alloc(This,cb) (This)->lpVtbl->Alloc(This,cb)
1131#define IMalloc_Realloc(This,pv,cb) (This)->lpVtbl->Realloc(This,pv,cb)
1132#define IMalloc_Free(This,pv) (This)->lpVtbl->Free(This,pv)
1133#define IMalloc_GetSize(This,pv) (This)->lpVtbl->GetSize(This,pv)
1134#define IMalloc_DidAlloc(This,pv) (This)->lpVtbl->DidAlloc(This,pv)
1135#define IMalloc_HeapMinimize(This) (This)->lpVtbl->HeapMinimize(This)
1136#else
1137/*** IUnknown methods ***/
1138static FORCEINLINE HRESULT IMalloc_QueryInterface(IMalloc* This,REFIID riid,void **ppvObject) {
1139 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1140}
1141static FORCEINLINE ULONG IMalloc_AddRef(IMalloc* This) {
1142 return This->lpVtbl->AddRef(This);
1143}
1144static FORCEINLINE ULONG IMalloc_Release(IMalloc* This) {
1145 return This->lpVtbl->Release(This);
1146}
1147/*** IMalloc methods ***/
1148static FORCEINLINE void * IMalloc_Alloc(IMalloc* This,SIZE_T cb) {
1149 return This->lpVtbl->Alloc(This,cb);
1150}
1151static FORCEINLINE void * IMalloc_Realloc(IMalloc* This,void *pv,SIZE_T cb) {
1152 return This->lpVtbl->Realloc(This,pv,cb);
1153}
1154static FORCEINLINE void IMalloc_Free(IMalloc* This,void *pv) {
1155 This->lpVtbl->Free(This,pv);
1156}
1157static FORCEINLINE SIZE_T IMalloc_GetSize(IMalloc* This,void *pv) {
1158 return This->lpVtbl->GetSize(This,pv);
1159}
1160static FORCEINLINE int IMalloc_DidAlloc(IMalloc* This,void *pv) {
1161 return This->lpVtbl->DidAlloc(This,pv);
1162}
1163static FORCEINLINE void IMalloc_HeapMinimize(IMalloc* This) {
1164 This->lpVtbl->HeapMinimize(This);
1165}
1166#endif
1167#endif
1168
1169#endif
1170
1171
1172#endif /* __IMalloc_INTERFACE_DEFINED__ */
1173
1174
1175/*****************************************************************************
1176 * IStdMarshalInfo interface
1177 */
1178#ifndef __IStdMarshalInfo_INTERFACE_DEFINED__
1179#define __IStdMarshalInfo_INTERFACE_DEFINED__
1180
1181typedef IStdMarshalInfo *LPSTDMARSHALINFO;
1182
1183DEFINE_GUID(IID_IStdMarshalInfo, 0x00000018, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1184#if defined(__cplusplus) && !defined(CINTERFACE)
1185MIDL_INTERFACE("00000018-0000-0000-c000-000000000046")
1186IStdMarshalInfo : public IUnknown
1187{
1188 virtual HRESULT STDMETHODCALLTYPE GetClassForHandler(
1189 DWORD dwDestContext,
1190 void *pvDestContext,
1191 CLSID *pClsid) = 0;
1192
1193};
1194#ifdef __CRT_UUID_DECL
1195__CRT_UUID_DECL(IStdMarshalInfo, 0x00000018, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
1196#endif
1197#else
1198typedef struct IStdMarshalInfoVtbl {
1199 BEGIN_INTERFACE
1200
1201 /*** IUnknown methods ***/
1202 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1203 IStdMarshalInfo *This,
1204 REFIID riid,
1205 void **ppvObject);
1206
1207 ULONG (STDMETHODCALLTYPE *AddRef)(
1208 IStdMarshalInfo *This);
1209
1210 ULONG (STDMETHODCALLTYPE *Release)(
1211 IStdMarshalInfo *This);
1212
1213 /*** IStdMarshalInfo methods ***/
1214 HRESULT (STDMETHODCALLTYPE *GetClassForHandler)(
1215 IStdMarshalInfo *This,
1216 DWORD dwDestContext,
1217 void *pvDestContext,
1218 CLSID *pClsid);
1219
1220 END_INTERFACE
1221} IStdMarshalInfoVtbl;
1222
1223interface IStdMarshalInfo {
1224 CONST_VTBL IStdMarshalInfoVtbl* lpVtbl;
1225};
1226
1227#ifdef COBJMACROS
1228#ifndef WIDL_C_INLINE_WRAPPERS
1229/*** IUnknown methods ***/
1230#define IStdMarshalInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1231#define IStdMarshalInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
1232#define IStdMarshalInfo_Release(This) (This)->lpVtbl->Release(This)
1233/*** IStdMarshalInfo methods ***/
1234#define IStdMarshalInfo_GetClassForHandler(This,dwDestContext,pvDestContext,pClsid) (This)->lpVtbl->GetClassForHandler(This,dwDestContext,pvDestContext,pClsid)
1235#else
1236/*** IUnknown methods ***/
1237static FORCEINLINE HRESULT IStdMarshalInfo_QueryInterface(IStdMarshalInfo* This,REFIID riid,void **ppvObject) {
1238 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1239}
1240static FORCEINLINE ULONG IStdMarshalInfo_AddRef(IStdMarshalInfo* This) {
1241 return This->lpVtbl->AddRef(This);
1242}
1243static FORCEINLINE ULONG IStdMarshalInfo_Release(IStdMarshalInfo* This) {
1244 return This->lpVtbl->Release(This);
1245}
1246/*** IStdMarshalInfo methods ***/
1247static FORCEINLINE HRESULT IStdMarshalInfo_GetClassForHandler(IStdMarshalInfo* This,DWORD dwDestContext,void *pvDestContext,CLSID *pClsid) {
1248 return This->lpVtbl->GetClassForHandler(This,dwDestContext,pvDestContext,pClsid);
1249}
1250#endif
1251#endif
1252
1253#endif
1254
1255
1256#endif /* __IStdMarshalInfo_INTERFACE_DEFINED__ */
1257
1258
1259/*****************************************************************************
1260 * IExternalConnection interface
1261 */
1262#ifndef __IExternalConnection_INTERFACE_DEFINED__
1263#define __IExternalConnection_INTERFACE_DEFINED__
1264
1265typedef IExternalConnection *LPEXTERNALCONNECTION;
1266
1267typedef enum tagEXTCONN {
1268 EXTCONN_STRONG = 0x1,
1269 EXTCONN_WEAK = 0x2,
1270 EXTCONN_CALLABLE = 0x4
1271} EXTCONN;
1272
1273DEFINE_GUID(IID_IExternalConnection, 0x00000019, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1274#if defined(__cplusplus) && !defined(CINTERFACE)
1275MIDL_INTERFACE("00000019-0000-0000-c000-000000000046")
1276IExternalConnection : public IUnknown
1277{
1278 virtual DWORD STDMETHODCALLTYPE AddConnection(
1279 DWORD extconn,
1280 DWORD reserved) = 0;
1281
1282 virtual DWORD STDMETHODCALLTYPE ReleaseConnection(
1283 DWORD extconn,
1284 DWORD reserved,
1285 WINBOOL fLastReleaseCloses) = 0;
1286
1287};
1288#ifdef __CRT_UUID_DECL
1289__CRT_UUID_DECL(IExternalConnection, 0x00000019, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
1290#endif
1291#else
1292typedef struct IExternalConnectionVtbl {
1293 BEGIN_INTERFACE
1294
1295 /*** IUnknown methods ***/
1296 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1297 IExternalConnection *This,
1298 REFIID riid,
1299 void **ppvObject);
1300
1301 ULONG (STDMETHODCALLTYPE *AddRef)(
1302 IExternalConnection *This);
1303
1304 ULONG (STDMETHODCALLTYPE *Release)(
1305 IExternalConnection *This);
1306
1307 /*** IExternalConnection methods ***/
1308 DWORD (STDMETHODCALLTYPE *AddConnection)(
1309 IExternalConnection *This,
1310 DWORD extconn,
1311 DWORD reserved);
1312
1313 DWORD (STDMETHODCALLTYPE *ReleaseConnection)(
1314 IExternalConnection *This,
1315 DWORD extconn,
1316 DWORD reserved,
1317 WINBOOL fLastReleaseCloses);
1318
1319 END_INTERFACE
1320} IExternalConnectionVtbl;
1321
1322interface IExternalConnection {
1323 CONST_VTBL IExternalConnectionVtbl* lpVtbl;
1324};
1325
1326#ifdef COBJMACROS
1327#ifndef WIDL_C_INLINE_WRAPPERS
1328/*** IUnknown methods ***/
1329#define IExternalConnection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1330#define IExternalConnection_AddRef(This) (This)->lpVtbl->AddRef(This)
1331#define IExternalConnection_Release(This) (This)->lpVtbl->Release(This)
1332/*** IExternalConnection methods ***/
1333#define IExternalConnection_AddConnection(This,extconn,reserved) (This)->lpVtbl->AddConnection(This,extconn,reserved)
1334#define IExternalConnection_ReleaseConnection(This,extconn,reserved,fLastReleaseCloses) (This)->lpVtbl->ReleaseConnection(This,extconn,reserved,fLastReleaseCloses)
1335#else
1336/*** IUnknown methods ***/
1337static FORCEINLINE HRESULT IExternalConnection_QueryInterface(IExternalConnection* This,REFIID riid,void **ppvObject) {
1338 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1339}
1340static FORCEINLINE ULONG IExternalConnection_AddRef(IExternalConnection* This) {
1341 return This->lpVtbl->AddRef(This);
1342}
1343static FORCEINLINE ULONG IExternalConnection_Release(IExternalConnection* This) {
1344 return This->lpVtbl->Release(This);
1345}
1346/*** IExternalConnection methods ***/
1347static FORCEINLINE DWORD IExternalConnection_AddConnection(IExternalConnection* This,DWORD extconn,DWORD reserved) {
1348 return This->lpVtbl->AddConnection(This,extconn,reserved);
1349}
1350static FORCEINLINE DWORD IExternalConnection_ReleaseConnection(IExternalConnection* This,DWORD extconn,DWORD reserved,WINBOOL fLastReleaseCloses) {
1351 return This->lpVtbl->ReleaseConnection(This,extconn,reserved,fLastReleaseCloses);
1352}
1353#endif
1354#endif
1355
1356#endif
1357
1358
1359#endif /* __IExternalConnection_INTERFACE_DEFINED__ */
1360
1361
1362typedef IMultiQI *LPMULTIQI;
1363#endif
1364
1365#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
1366typedef struct tagMULTI_QI {
1367 const IID *pIID;
1368 IUnknown *pItf;
1369 HRESULT hr;
1370} MULTI_QI;
1371
1372/*****************************************************************************
1373 * IMultiQI interface
1374 */
1375#ifndef __IMultiQI_INTERFACE_DEFINED__
1376#define __IMultiQI_INTERFACE_DEFINED__
1377
1378DEFINE_GUID(IID_IMultiQI, 0x00000020, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1379#if defined(__cplusplus) && !defined(CINTERFACE)
1380MIDL_INTERFACE("00000020-0000-0000-c000-000000000046")
1381IMultiQI : public IUnknown
1382{
1383 virtual HRESULT STDMETHODCALLTYPE QueryMultipleInterfaces(
1384 ULONG cMQIs,
1385 MULTI_QI *pMQIs) = 0;
1386
1387};
1388#ifdef __CRT_UUID_DECL
1389__CRT_UUID_DECL(IMultiQI, 0x00000020, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
1390#endif
1391#else
1392typedef struct IMultiQIVtbl {
1393 BEGIN_INTERFACE
1394
1395 /*** IUnknown methods ***/
1396 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1397 IMultiQI *This,
1398 REFIID riid,
1399 void **ppvObject);
1400
1401 ULONG (STDMETHODCALLTYPE *AddRef)(
1402 IMultiQI *This);
1403
1404 ULONG (STDMETHODCALLTYPE *Release)(
1405 IMultiQI *This);
1406
1407 /*** IMultiQI methods ***/
1408 HRESULT (STDMETHODCALLTYPE *QueryMultipleInterfaces)(
1409 IMultiQI *This,
1410 ULONG cMQIs,
1411 MULTI_QI *pMQIs);
1412
1413 END_INTERFACE
1414} IMultiQIVtbl;
1415
1416interface IMultiQI {
1417 CONST_VTBL IMultiQIVtbl* lpVtbl;
1418};
1419
1420#ifdef COBJMACROS
1421#ifndef WIDL_C_INLINE_WRAPPERS
1422/*** IUnknown methods ***/
1423#define IMultiQI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1424#define IMultiQI_AddRef(This) (This)->lpVtbl->AddRef(This)
1425#define IMultiQI_Release(This) (This)->lpVtbl->Release(This)
1426/*** IMultiQI methods ***/
1427#define IMultiQI_QueryMultipleInterfaces(This,cMQIs,pMQIs) (This)->lpVtbl->QueryMultipleInterfaces(This,cMQIs,pMQIs)
1428#else
1429/*** IUnknown methods ***/
1430static FORCEINLINE HRESULT IMultiQI_QueryInterface(IMultiQI* This,REFIID riid,void **ppvObject) {
1431 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1432}
1433static FORCEINLINE ULONG IMultiQI_AddRef(IMultiQI* This) {
1434 return This->lpVtbl->AddRef(This);
1435}
1436static FORCEINLINE ULONG IMultiQI_Release(IMultiQI* This) {
1437 return This->lpVtbl->Release(This);
1438}
1439/*** IMultiQI methods ***/
1440static FORCEINLINE HRESULT IMultiQI_QueryMultipleInterfaces(IMultiQI* This,ULONG cMQIs,MULTI_QI *pMQIs) {
1441 return This->lpVtbl->QueryMultipleInterfaces(This,cMQIs,pMQIs);
1442}
1443#endif
1444#endif
1445
1446#endif
1447
1448
1449#endif /* __IMultiQI_INTERFACE_DEFINED__ */
1450
1451/*****************************************************************************
1452 * AsyncIMultiQI interface
1453 */
1454#ifndef __AsyncIMultiQI_INTERFACE_DEFINED__
1455#define __AsyncIMultiQI_INTERFACE_DEFINED__
1456
1457DEFINE_GUID(IID_AsyncIMultiQI, 0x000e0020, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1458#if defined(__cplusplus) && !defined(CINTERFACE)
1459MIDL_INTERFACE("000e0020-0000-0000-c000-000000000046")
1460AsyncIMultiQI : public IUnknown
1461{
1462 virtual HRESULT STDMETHODCALLTYPE Begin_QueryMultipleInterfaces(
1463 ULONG cMQIs,
1464 MULTI_QI *pMQIs) = 0;
1465
1466 virtual HRESULT STDMETHODCALLTYPE Finish_QueryMultipleInterfaces(
1467 MULTI_QI *pMQIs) = 0;
1468
1469};
1470#ifdef __CRT_UUID_DECL
1471__CRT_UUID_DECL(AsyncIMultiQI, 0x000e0020, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
1472#endif
1473#else
1474typedef struct AsyncIMultiQIVtbl {
1475 BEGIN_INTERFACE
1476
1477 /*** IUnknown methods ***/
1478 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1479 AsyncIMultiQI *This,
1480 REFIID riid,
1481 void **ppvObject);
1482
1483 ULONG (STDMETHODCALLTYPE *AddRef)(
1484 AsyncIMultiQI *This);
1485
1486 ULONG (STDMETHODCALLTYPE *Release)(
1487 AsyncIMultiQI *This);
1488
1489 /*** AsyncIMultiQI methods ***/
1490 HRESULT (STDMETHODCALLTYPE *Begin_QueryMultipleInterfaces)(
1491 AsyncIMultiQI *This,
1492 ULONG cMQIs,
1493 MULTI_QI *pMQIs);
1494
1495 HRESULT (STDMETHODCALLTYPE *Finish_QueryMultipleInterfaces)(
1496 AsyncIMultiQI *This,
1497 MULTI_QI *pMQIs);
1498
1499 END_INTERFACE
1500} AsyncIMultiQIVtbl;
1501
1502interface AsyncIMultiQI {
1503 CONST_VTBL AsyncIMultiQIVtbl* lpVtbl;
1504};
1505
1506#ifdef COBJMACROS
1507#ifndef WIDL_C_INLINE_WRAPPERS
1508/*** IUnknown methods ***/
1509#define AsyncIMultiQI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1510#define AsyncIMultiQI_AddRef(This) (This)->lpVtbl->AddRef(This)
1511#define AsyncIMultiQI_Release(This) (This)->lpVtbl->Release(This)
1512/*** AsyncIMultiQI methods ***/
1513#define AsyncIMultiQI_Begin_QueryMultipleInterfaces(This,cMQIs,pMQIs) (This)->lpVtbl->Begin_QueryMultipleInterfaces(This,cMQIs,pMQIs)
1514#define AsyncIMultiQI_Finish_QueryMultipleInterfaces(This,pMQIs) (This)->lpVtbl->Finish_QueryMultipleInterfaces(This,pMQIs)
1515#else
1516/*** IUnknown methods ***/
1517static FORCEINLINE HRESULT AsyncIMultiQI_QueryInterface(AsyncIMultiQI* This,REFIID riid,void **ppvObject) {
1518 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1519}
1520static FORCEINLINE ULONG AsyncIMultiQI_AddRef(AsyncIMultiQI* This) {
1521 return This->lpVtbl->AddRef(This);
1522}
1523static FORCEINLINE ULONG AsyncIMultiQI_Release(AsyncIMultiQI* This) {
1524 return This->lpVtbl->Release(This);
1525}
1526/*** AsyncIMultiQI methods ***/
1527static FORCEINLINE HRESULT AsyncIMultiQI_Begin_QueryMultipleInterfaces(AsyncIMultiQI* This,ULONG cMQIs,MULTI_QI *pMQIs) {
1528 return This->lpVtbl->Begin_QueryMultipleInterfaces(This,cMQIs,pMQIs);
1529}
1530static FORCEINLINE HRESULT AsyncIMultiQI_Finish_QueryMultipleInterfaces(AsyncIMultiQI* This,MULTI_QI *pMQIs) {
1531 return This->lpVtbl->Finish_QueryMultipleInterfaces(This,pMQIs);
1532}
1533#endif
1534#endif
1535
1536#endif
1537
1538
1539#endif /* __AsyncIMultiQI_INTERFACE_DEFINED__ */
1540
1541#endif
1542
1543#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
1544/*****************************************************************************
1545 * IInternalUnknown interface
1546 */
1547#ifndef __IInternalUnknown_INTERFACE_DEFINED__
1548#define __IInternalUnknown_INTERFACE_DEFINED__
1549
1550DEFINE_GUID(IID_IInternalUnknown, 0x00000021, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1551#if defined(__cplusplus) && !defined(CINTERFACE)
1552MIDL_INTERFACE("00000021-0000-0000-c000-000000000046")
1553IInternalUnknown : public IUnknown
1554{
1555 virtual HRESULT STDMETHODCALLTYPE QueryInternalInterface(
1556 REFIID riid,
1557 void **ppv) = 0;
1558
1559};
1560#ifdef __CRT_UUID_DECL
1561__CRT_UUID_DECL(IInternalUnknown, 0x00000021, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
1562#endif
1563#else
1564typedef struct IInternalUnknownVtbl {
1565 BEGIN_INTERFACE
1566
1567 /*** IUnknown methods ***/
1568 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1569 IInternalUnknown *This,
1570 REFIID riid,
1571 void **ppvObject);
1572
1573 ULONG (STDMETHODCALLTYPE *AddRef)(
1574 IInternalUnknown *This);
1575
1576 ULONG (STDMETHODCALLTYPE *Release)(
1577 IInternalUnknown *This);
1578
1579 /*** IInternalUnknown methods ***/
1580 HRESULT (STDMETHODCALLTYPE *QueryInternalInterface)(
1581 IInternalUnknown *This,
1582 REFIID riid,
1583 void **ppv);
1584
1585 END_INTERFACE
1586} IInternalUnknownVtbl;
1587
1588interface IInternalUnknown {
1589 CONST_VTBL IInternalUnknownVtbl* lpVtbl;
1590};
1591
1592#ifdef COBJMACROS
1593#ifndef WIDL_C_INLINE_WRAPPERS
1594/*** IUnknown methods ***/
1595#define IInternalUnknown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1596#define IInternalUnknown_AddRef(This) (This)->lpVtbl->AddRef(This)
1597#define IInternalUnknown_Release(This) (This)->lpVtbl->Release(This)
1598/*** IInternalUnknown methods ***/
1599#define IInternalUnknown_QueryInternalInterface(This,riid,ppv) (This)->lpVtbl->QueryInternalInterface(This,riid,ppv)
1600#else
1601/*** IUnknown methods ***/
1602static FORCEINLINE HRESULT IInternalUnknown_QueryInterface(IInternalUnknown* This,REFIID riid,void **ppvObject) {
1603 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1604}
1605static FORCEINLINE ULONG IInternalUnknown_AddRef(IInternalUnknown* This) {
1606 return This->lpVtbl->AddRef(This);
1607}
1608static FORCEINLINE ULONG IInternalUnknown_Release(IInternalUnknown* This) {
1609 return This->lpVtbl->Release(This);
1610}
1611/*** IInternalUnknown methods ***/
1612static FORCEINLINE HRESULT IInternalUnknown_QueryInternalInterface(IInternalUnknown* This,REFIID riid,void **ppv) {
1613 return This->lpVtbl->QueryInternalInterface(This,riid,ppv);
1614}
1615#endif
1616#endif
1617
1618#endif
1619
1620
1621#endif /* __IInternalUnknown_INTERFACE_DEFINED__ */
1622
1623#endif
1624
1625#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
1626/*****************************************************************************
1627 * IEnumUnknown interface
1628 */
1629#ifndef __IEnumUnknown_INTERFACE_DEFINED__
1630#define __IEnumUnknown_INTERFACE_DEFINED__
1631
1632typedef IEnumUnknown *LPENUMUNKNOWN;
1633
1634DEFINE_GUID(IID_IEnumUnknown, 0x00000100, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1635#if defined(__cplusplus) && !defined(CINTERFACE)
1636MIDL_INTERFACE("00000100-0000-0000-c000-000000000046")
1637IEnumUnknown : public IUnknown
1638{
1639 virtual HRESULT STDMETHODCALLTYPE Next(
1640 ULONG celt,
1641 IUnknown **rgelt,
1642 ULONG *pceltFetched) = 0;
1643
1644 virtual HRESULT STDMETHODCALLTYPE Skip(
1645 ULONG celt) = 0;
1646
1647 virtual HRESULT STDMETHODCALLTYPE Reset(
1648 ) = 0;
1649
1650 virtual HRESULT STDMETHODCALLTYPE Clone(
1651 IEnumUnknown **ppenum) = 0;
1652
1653};
1654#ifdef __CRT_UUID_DECL
1655__CRT_UUID_DECL(IEnumUnknown, 0x00000100, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
1656#endif
1657#else
1658typedef struct IEnumUnknownVtbl {
1659 BEGIN_INTERFACE
1660
1661 /*** IUnknown methods ***/
1662 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1663 IEnumUnknown *This,
1664 REFIID riid,
1665 void **ppvObject);
1666
1667 ULONG (STDMETHODCALLTYPE *AddRef)(
1668 IEnumUnknown *This);
1669
1670 ULONG (STDMETHODCALLTYPE *Release)(
1671 IEnumUnknown *This);
1672
1673 /*** IEnumUnknown methods ***/
1674 HRESULT (STDMETHODCALLTYPE *Next)(
1675 IEnumUnknown *This,
1676 ULONG celt,
1677 IUnknown **rgelt,
1678 ULONG *pceltFetched);
1679
1680 HRESULT (STDMETHODCALLTYPE *Skip)(
1681 IEnumUnknown *This,
1682 ULONG celt);
1683
1684 HRESULT (STDMETHODCALLTYPE *Reset)(
1685 IEnumUnknown *This);
1686
1687 HRESULT (STDMETHODCALLTYPE *Clone)(
1688 IEnumUnknown *This,
1689 IEnumUnknown **ppenum);
1690
1691 END_INTERFACE
1692} IEnumUnknownVtbl;
1693
1694interface IEnumUnknown {
1695 CONST_VTBL IEnumUnknownVtbl* lpVtbl;
1696};
1697
1698#ifdef COBJMACROS
1699#ifndef WIDL_C_INLINE_WRAPPERS
1700/*** IUnknown methods ***/
1701#define IEnumUnknown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1702#define IEnumUnknown_AddRef(This) (This)->lpVtbl->AddRef(This)
1703#define IEnumUnknown_Release(This) (This)->lpVtbl->Release(This)
1704/*** IEnumUnknown methods ***/
1705#define IEnumUnknown_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
1706#define IEnumUnknown_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
1707#define IEnumUnknown_Reset(This) (This)->lpVtbl->Reset(This)
1708#define IEnumUnknown_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
1709#else
1710/*** IUnknown methods ***/
1711static FORCEINLINE HRESULT IEnumUnknown_QueryInterface(IEnumUnknown* This,REFIID riid,void **ppvObject) {
1712 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1713}
1714static FORCEINLINE ULONG IEnumUnknown_AddRef(IEnumUnknown* This) {
1715 return This->lpVtbl->AddRef(This);
1716}
1717static FORCEINLINE ULONG IEnumUnknown_Release(IEnumUnknown* This) {
1718 return This->lpVtbl->Release(This);
1719}
1720/*** IEnumUnknown methods ***/
1721static FORCEINLINE HRESULT IEnumUnknown_Next(IEnumUnknown* This,ULONG celt,IUnknown **rgelt,ULONG *pceltFetched) {
1722 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched);
1723}
1724static FORCEINLINE HRESULT IEnumUnknown_Skip(IEnumUnknown* This,ULONG celt) {
1725 return This->lpVtbl->Skip(This,celt);
1726}
1727static FORCEINLINE HRESULT IEnumUnknown_Reset(IEnumUnknown* This) {
1728 return This->lpVtbl->Reset(This);
1729}
1730static FORCEINLINE HRESULT IEnumUnknown_Clone(IEnumUnknown* This,IEnumUnknown **ppenum) {
1731 return This->lpVtbl->Clone(This,ppenum);
1732}
1733#endif
1734#endif
1735
1736#endif
1737
1738HRESULT STDMETHODCALLTYPE IEnumUnknown_RemoteNext_Proxy(
1739 IEnumUnknown* This,
1740 ULONG celt,
1741 IUnknown **rgelt,
1742 ULONG *pceltFetched);
1743void __RPC_STUB IEnumUnknown_RemoteNext_Stub(
1744 IRpcStubBuffer* This,
1745 IRpcChannelBuffer* pRpcChannelBuffer,
1746 PRPC_MESSAGE pRpcMessage,
1747 DWORD* pdwStubPhase);
1748HRESULT CALLBACK IEnumUnknown_Next_Proxy(
1749 IEnumUnknown* This,
1750 ULONG celt,
1751 IUnknown **rgelt,
1752 ULONG *pceltFetched);
1753HRESULT __RPC_STUB IEnumUnknown_Next_Stub(
1754 IEnumUnknown* This,
1755 ULONG celt,
1756 IUnknown **rgelt,
1757 ULONG *pceltFetched);
1758
1759#endif /* __IEnumUnknown_INTERFACE_DEFINED__ */
1760
1761
1762/*****************************************************************************
1763 * IEnumString interface
1764 */
1765#ifndef __IEnumString_INTERFACE_DEFINED__
1766#define __IEnumString_INTERFACE_DEFINED__
1767
1768typedef IEnumString *LPENUMSTRING;
1769
1770DEFINE_GUID(IID_IEnumString, 0x00000101, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
1771#if defined(__cplusplus) && !defined(CINTERFACE)
1772MIDL_INTERFACE("00000101-0000-0000-c000-000000000046")
1773IEnumString : public IUnknown
1774{
1775 virtual HRESULT STDMETHODCALLTYPE Next(
1776 ULONG celt,
1777 LPOLESTR *rgelt,
1778 ULONG *pceltFetched) = 0;
1779
1780 virtual HRESULT STDMETHODCALLTYPE Skip(
1781 ULONG celt) = 0;
1782
1783 virtual HRESULT STDMETHODCALLTYPE Reset(
1784 ) = 0;
1785
1786 virtual HRESULT STDMETHODCALLTYPE Clone(
1787 IEnumString **ppenum) = 0;
1788
1789};
1790#ifdef __CRT_UUID_DECL
1791__CRT_UUID_DECL(IEnumString, 0x00000101, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
1792#endif
1793#else
1794typedef struct IEnumStringVtbl {
1795 BEGIN_INTERFACE
1796
1797 /*** IUnknown methods ***/
1798 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1799 IEnumString *This,
1800 REFIID riid,
1801 void **ppvObject);
1802
1803 ULONG (STDMETHODCALLTYPE *AddRef)(
1804 IEnumString *This);
1805
1806 ULONG (STDMETHODCALLTYPE *Release)(
1807 IEnumString *This);
1808
1809 /*** IEnumString methods ***/
1810 HRESULT (STDMETHODCALLTYPE *Next)(
1811 IEnumString *This,
1812 ULONG celt,
1813 LPOLESTR *rgelt,
1814 ULONG *pceltFetched);
1815
1816 HRESULT (STDMETHODCALLTYPE *Skip)(
1817 IEnumString *This,
1818 ULONG celt);
1819
1820 HRESULT (STDMETHODCALLTYPE *Reset)(
1821 IEnumString *This);
1822
1823 HRESULT (STDMETHODCALLTYPE *Clone)(
1824 IEnumString *This,
1825 IEnumString **ppenum);
1826
1827 END_INTERFACE
1828} IEnumStringVtbl;
1829
1830interface IEnumString {
1831 CONST_VTBL IEnumStringVtbl* lpVtbl;
1832};
1833
1834#ifdef COBJMACROS
1835#ifndef WIDL_C_INLINE_WRAPPERS
1836/*** IUnknown methods ***/
1837#define IEnumString_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1838#define IEnumString_AddRef(This) (This)->lpVtbl->AddRef(This)
1839#define IEnumString_Release(This) (This)->lpVtbl->Release(This)
1840/*** IEnumString methods ***/
1841#define IEnumString_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
1842#define IEnumString_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
1843#define IEnumString_Reset(This) (This)->lpVtbl->Reset(This)
1844#define IEnumString_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
1845#else
1846/*** IUnknown methods ***/
1847static FORCEINLINE HRESULT IEnumString_QueryInterface(IEnumString* This,REFIID riid,void **ppvObject) {
1848 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1849}
1850static FORCEINLINE ULONG IEnumString_AddRef(IEnumString* This) {
1851 return This->lpVtbl->AddRef(This);
1852}
1853static FORCEINLINE ULONG IEnumString_Release(IEnumString* This) {
1854 return This->lpVtbl->Release(This);
1855}
1856/*** IEnumString methods ***/
1857static FORCEINLINE HRESULT IEnumString_Next(IEnumString* This,ULONG celt,LPOLESTR *rgelt,ULONG *pceltFetched) {
1858 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched);
1859}
1860static FORCEINLINE HRESULT IEnumString_Skip(IEnumString* This,ULONG celt) {
1861 return This->lpVtbl->Skip(This,celt);
1862}
1863static FORCEINLINE HRESULT IEnumString_Reset(IEnumString* This) {
1864 return This->lpVtbl->Reset(This);
1865}
1866static FORCEINLINE HRESULT IEnumString_Clone(IEnumString* This,IEnumString **ppenum) {
1867 return This->lpVtbl->Clone(This,ppenum);
1868}
1869#endif
1870#endif
1871
1872#endif
1873
1874HRESULT STDMETHODCALLTYPE IEnumString_RemoteNext_Proxy(
1875 IEnumString* This,
1876 ULONG celt,
1877 LPOLESTR *rgelt,
1878 ULONG *pceltFetched);
1879void __RPC_STUB IEnumString_RemoteNext_Stub(
1880 IRpcStubBuffer* This,
1881 IRpcChannelBuffer* pRpcChannelBuffer,
1882 PRPC_MESSAGE pRpcMessage,
1883 DWORD* pdwStubPhase);
1884HRESULT CALLBACK IEnumString_Next_Proxy(
1885 IEnumString* This,
1886 ULONG celt,
1887 LPOLESTR *rgelt,
1888 ULONG *pceltFetched);
1889HRESULT __RPC_STUB IEnumString_Next_Stub(
1890 IEnumString* This,
1891 ULONG celt,
1892 LPOLESTR *rgelt,
1893 ULONG *pceltFetched);
1894
1895#endif /* __IEnumString_INTERFACE_DEFINED__ */
1896
1897
1898/*****************************************************************************
1899 * ISequentialStream interface
1900 */
1901#ifndef __ISequentialStream_INTERFACE_DEFINED__
1902#define __ISequentialStream_INTERFACE_DEFINED__
1903
1904DEFINE_GUID(IID_ISequentialStream, 0x0c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d);
1905#if defined(__cplusplus) && !defined(CINTERFACE)
1906MIDL_INTERFACE("0c733a30-2a1c-11ce-ade5-00aa0044773d")
1907ISequentialStream : public IUnknown
1908{
1909 virtual HRESULT STDMETHODCALLTYPE Read(
1910 void *pv,
1911 ULONG cb,
1912 ULONG *pcbRead) = 0;
1913
1914 virtual HRESULT STDMETHODCALLTYPE Write(
1915 const void *pv,
1916 ULONG cb,
1917 ULONG *pcbWritten) = 0;
1918
1919};
1920#ifdef __CRT_UUID_DECL
1921__CRT_UUID_DECL(ISequentialStream, 0x0c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d)
1922#endif
1923#else
1924typedef struct ISequentialStreamVtbl {
1925 BEGIN_INTERFACE
1926
1927 /*** IUnknown methods ***/
1928 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1929 ISequentialStream *This,
1930 REFIID riid,
1931 void **ppvObject);
1932
1933 ULONG (STDMETHODCALLTYPE *AddRef)(
1934 ISequentialStream *This);
1935
1936 ULONG (STDMETHODCALLTYPE *Release)(
1937 ISequentialStream *This);
1938
1939 /*** ISequentialStream methods ***/
1940 HRESULT (STDMETHODCALLTYPE *Read)(
1941 ISequentialStream *This,
1942 void *pv,
1943 ULONG cb,
1944 ULONG *pcbRead);
1945
1946 HRESULT (STDMETHODCALLTYPE *Write)(
1947 ISequentialStream *This,
1948 const void *pv,
1949 ULONG cb,
1950 ULONG *pcbWritten);
1951
1952 END_INTERFACE
1953} ISequentialStreamVtbl;
1954
1955interface ISequentialStream {
1956 CONST_VTBL ISequentialStreamVtbl* lpVtbl;
1957};
1958
1959#ifdef COBJMACROS
1960#ifndef WIDL_C_INLINE_WRAPPERS
1961/*** IUnknown methods ***/
1962#define ISequentialStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1963#define ISequentialStream_AddRef(This) (This)->lpVtbl->AddRef(This)
1964#define ISequentialStream_Release(This) (This)->lpVtbl->Release(This)
1965/*** ISequentialStream methods ***/
1966#define ISequentialStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
1967#define ISequentialStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
1968#else
1969/*** IUnknown methods ***/
1970static FORCEINLINE HRESULT ISequentialStream_QueryInterface(ISequentialStream* This,REFIID riid,void **ppvObject) {
1971 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1972}
1973static FORCEINLINE ULONG ISequentialStream_AddRef(ISequentialStream* This) {
1974 return This->lpVtbl->AddRef(This);
1975}
1976static FORCEINLINE ULONG ISequentialStream_Release(ISequentialStream* This) {
1977 return This->lpVtbl->Release(This);
1978}
1979/*** ISequentialStream methods ***/
1980static FORCEINLINE HRESULT ISequentialStream_Read(ISequentialStream* This,void *pv,ULONG cb,ULONG *pcbRead) {
1981 return This->lpVtbl->Read(This,pv,cb,pcbRead);
1982}
1983static FORCEINLINE HRESULT ISequentialStream_Write(ISequentialStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
1984 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
1985}
1986#endif
1987#endif
1988
1989#endif
1990
1991HRESULT STDMETHODCALLTYPE ISequentialStream_RemoteRead_Proxy(
1992 ISequentialStream* This,
1993 byte *pv,
1994 ULONG cb,
1995 ULONG *pcbRead);
1996void __RPC_STUB ISequentialStream_RemoteRead_Stub(
1997 IRpcStubBuffer* This,
1998 IRpcChannelBuffer* pRpcChannelBuffer,
1999 PRPC_MESSAGE pRpcMessage,
2000 DWORD* pdwStubPhase);
2001HRESULT STDMETHODCALLTYPE ISequentialStream_RemoteWrite_Proxy(
2002 ISequentialStream* This,
2003 const byte *pv,
2004 ULONG cb,
2005 ULONG *pcbWritten);
2006void __RPC_STUB ISequentialStream_RemoteWrite_Stub(
2007 IRpcStubBuffer* This,
2008 IRpcChannelBuffer* pRpcChannelBuffer,
2009 PRPC_MESSAGE pRpcMessage,
2010 DWORD* pdwStubPhase);
2011HRESULT CALLBACK ISequentialStream_Read_Proxy(
2012 ISequentialStream* This,
2013 void *pv,
2014 ULONG cb,
2015 ULONG *pcbRead);
2016HRESULT __RPC_STUB ISequentialStream_Read_Stub(
2017 ISequentialStream* This,
2018 byte *pv,
2019 ULONG cb,
2020 ULONG *pcbRead);
2021HRESULT CALLBACK ISequentialStream_Write_Proxy(
2022 ISequentialStream* This,
2023 const void *pv,
2024 ULONG cb,
2025 ULONG *pcbWritten);
2026HRESULT __RPC_STUB ISequentialStream_Write_Stub(
2027 ISequentialStream* This,
2028 const byte *pv,
2029 ULONG cb,
2030 ULONG *pcbWritten);
2031
2032#endif /* __ISequentialStream_INTERFACE_DEFINED__ */
2033
2034
2035/*****************************************************************************
2036 * IStream interface
2037 */
2038#ifndef __IStream_INTERFACE_DEFINED__
2039#define __IStream_INTERFACE_DEFINED__
2040
2041typedef IStream *LPSTREAM;
2042
2043typedef struct tagSTATSTG {
2044 LPOLESTR pwcsName;
2045 DWORD type;
2046 ULARGE_INTEGER cbSize;
2047 FILETIME mtime;
2048 FILETIME ctime;
2049 FILETIME atime;
2050 DWORD grfMode;
2051 DWORD grfLocksSupported;
2052 CLSID clsid;
2053 DWORD grfStateBits;
2054 DWORD reserved;
2055} STATSTG;
2056
2057typedef enum tagSTGTY {
2058 STGTY_STORAGE = 1,
2059 STGTY_STREAM = 2,
2060 STGTY_LOCKBYTES = 3,
2061 STGTY_PROPERTY = 4
2062} STGTY;
2063
2064typedef enum tagSTREAM_SEEK {
2065 STREAM_SEEK_SET = 0,
2066 STREAM_SEEK_CUR = 1,
2067 STREAM_SEEK_END = 2
2068} STREAM_SEEK;
2069
2070typedef enum tagLOCKTYPE {
2071 LOCK_WRITE = 1,
2072 LOCK_EXCLUSIVE = 2,
2073 LOCK_ONLYONCE = 4
2074} LOCKTYPE;
2075
2076DEFINE_GUID(IID_IStream, 0x0000000c, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
2077#if defined(__cplusplus) && !defined(CINTERFACE)
2078MIDL_INTERFACE("0000000c-0000-0000-c000-000000000046")
2079IStream : public ISequentialStream
2080{
2081 virtual HRESULT STDMETHODCALLTYPE Seek(
2082 LARGE_INTEGER dlibMove,
2083 DWORD dwOrigin,
2084 ULARGE_INTEGER *plibNewPosition) = 0;
2085
2086 virtual HRESULT STDMETHODCALLTYPE SetSize(
2087 ULARGE_INTEGER libNewSize) = 0;
2088
2089 virtual HRESULT STDMETHODCALLTYPE CopyTo(
2090 IStream *pstm,
2091 ULARGE_INTEGER cb,
2092 ULARGE_INTEGER *pcbRead,
2093 ULARGE_INTEGER *pcbWritten) = 0;
2094
2095 virtual HRESULT STDMETHODCALLTYPE Commit(
2096 DWORD grfCommitFlags) = 0;
2097
2098 virtual HRESULT STDMETHODCALLTYPE Revert(
2099 ) = 0;
2100
2101 virtual HRESULT STDMETHODCALLTYPE LockRegion(
2102 ULARGE_INTEGER libOffset,
2103 ULARGE_INTEGER cb,
2104 DWORD dwLockType) = 0;
2105
2106 virtual HRESULT STDMETHODCALLTYPE UnlockRegion(
2107 ULARGE_INTEGER libOffset,
2108 ULARGE_INTEGER cb,
2109 DWORD dwLockType) = 0;
2110
2111 virtual HRESULT STDMETHODCALLTYPE Stat(
2112 STATSTG *pstatstg,
2113 DWORD grfStatFlag) = 0;
2114
2115 virtual HRESULT STDMETHODCALLTYPE Clone(
2116 IStream **ppstm) = 0;
2117
2118};
2119#ifdef __CRT_UUID_DECL
2120__CRT_UUID_DECL(IStream, 0x0000000c, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
2121#endif
2122#else
2123typedef struct IStreamVtbl {
2124 BEGIN_INTERFACE
2125
2126 /*** IUnknown methods ***/
2127 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2128 IStream *This,
2129 REFIID riid,
2130 void **ppvObject);
2131
2132 ULONG (STDMETHODCALLTYPE *AddRef)(
2133 IStream *This);
2134
2135 ULONG (STDMETHODCALLTYPE *Release)(
2136 IStream *This);
2137
2138 /*** ISequentialStream methods ***/
2139 HRESULT (STDMETHODCALLTYPE *Read)(
2140 IStream *This,
2141 void *pv,
2142 ULONG cb,
2143 ULONG *pcbRead);
2144
2145 HRESULT (STDMETHODCALLTYPE *Write)(
2146 IStream *This,
2147 const void *pv,
2148 ULONG cb,
2149 ULONG *pcbWritten);
2150
2151 /*** IStream methods ***/
2152 HRESULT (STDMETHODCALLTYPE *Seek)(
2153 IStream *This,
2154 LARGE_INTEGER dlibMove,
2155 DWORD dwOrigin,
2156 ULARGE_INTEGER *plibNewPosition);
2157
2158 HRESULT (STDMETHODCALLTYPE *SetSize)(
2159 IStream *This,
2160 ULARGE_INTEGER libNewSize);
2161
2162 HRESULT (STDMETHODCALLTYPE *CopyTo)(
2163 IStream *This,
2164 IStream *pstm,
2165 ULARGE_INTEGER cb,
2166 ULARGE_INTEGER *pcbRead,
2167 ULARGE_INTEGER *pcbWritten);
2168
2169 HRESULT (STDMETHODCALLTYPE *Commit)(
2170 IStream *This,
2171 DWORD grfCommitFlags);
2172
2173 HRESULT (STDMETHODCALLTYPE *Revert)(
2174 IStream *This);
2175
2176 HRESULT (STDMETHODCALLTYPE *LockRegion)(
2177 IStream *This,
2178 ULARGE_INTEGER libOffset,
2179 ULARGE_INTEGER cb,
2180 DWORD dwLockType);
2181
2182 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
2183 IStream *This,
2184 ULARGE_INTEGER libOffset,
2185 ULARGE_INTEGER cb,
2186 DWORD dwLockType);
2187
2188 HRESULT (STDMETHODCALLTYPE *Stat)(
2189 IStream *This,
2190 STATSTG *pstatstg,
2191 DWORD grfStatFlag);
2192
2193 HRESULT (STDMETHODCALLTYPE *Clone)(
2194 IStream *This,
2195 IStream **ppstm);
2196
2197 END_INTERFACE
2198} IStreamVtbl;
2199
2200interface IStream {
2201 CONST_VTBL IStreamVtbl* lpVtbl;
2202};
2203
2204#ifdef COBJMACROS
2205#ifndef WIDL_C_INLINE_WRAPPERS
2206/*** IUnknown methods ***/
2207#define IStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2208#define IStream_AddRef(This) (This)->lpVtbl->AddRef(This)
2209#define IStream_Release(This) (This)->lpVtbl->Release(This)
2210/*** ISequentialStream methods ***/
2211#define IStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
2212#define IStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
2213/*** IStream methods ***/
2214#define IStream_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
2215#define IStream_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
2216#define IStream_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
2217#define IStream_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
2218#define IStream_Revert(This) (This)->lpVtbl->Revert(This)
2219#define IStream_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
2220#define IStream_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
2221#define IStream_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
2222#define IStream_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
2223#else
2224/*** IUnknown methods ***/
2225static FORCEINLINE HRESULT IStream_QueryInterface(IStream* This,REFIID riid,void **ppvObject) {
2226 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2227}
2228static FORCEINLINE ULONG IStream_AddRef(IStream* This) {
2229 return This->lpVtbl->AddRef(This);
2230}
2231static FORCEINLINE ULONG IStream_Release(IStream* This) {
2232 return This->lpVtbl->Release(This);
2233}
2234/*** ISequentialStream methods ***/
2235static FORCEINLINE HRESULT IStream_Read(IStream* This,void *pv,ULONG cb,ULONG *pcbRead) {
2236 return This->lpVtbl->Read(This,pv,cb,pcbRead);
2237}
2238static FORCEINLINE HRESULT IStream_Write(IStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
2239 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
2240}
2241/*** IStream methods ***/
2242static FORCEINLINE HRESULT IStream_Seek(IStream* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
2243 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
2244}
2245static FORCEINLINE HRESULT IStream_SetSize(IStream* This,ULARGE_INTEGER libNewSize) {
2246 return This->lpVtbl->SetSize(This,libNewSize);
2247}
2248static FORCEINLINE HRESULT IStream_CopyTo(IStream* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
2249 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
2250}
2251static FORCEINLINE HRESULT IStream_Commit(IStream* This,DWORD grfCommitFlags) {
2252 return This->lpVtbl->Commit(This,grfCommitFlags);
2253}
2254static FORCEINLINE HRESULT IStream_Revert(IStream* This) {
2255 return This->lpVtbl->Revert(This);
2256}
2257static FORCEINLINE HRESULT IStream_LockRegion(IStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
2258 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
2259}
2260static FORCEINLINE HRESULT IStream_UnlockRegion(IStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
2261 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
2262}
2263static FORCEINLINE HRESULT IStream_Stat(IStream* This,STATSTG *pstatstg,DWORD grfStatFlag) {
2264 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
2265}
2266static FORCEINLINE HRESULT IStream_Clone(IStream* This,IStream **ppstm) {
2267 return This->lpVtbl->Clone(This,ppstm);
2268}
2269#endif
2270#endif
2271
2272#endif
2273
2274HRESULT STDMETHODCALLTYPE IStream_RemoteSeek_Proxy(
2275 IStream* This,
2276 LARGE_INTEGER dlibMove,
2277 DWORD dwOrigin,
2278 ULARGE_INTEGER *plibNewPosition);
2279void __RPC_STUB IStream_RemoteSeek_Stub(
2280 IRpcStubBuffer* This,
2281 IRpcChannelBuffer* pRpcChannelBuffer,
2282 PRPC_MESSAGE pRpcMessage,
2283 DWORD* pdwStubPhase);
2284HRESULT STDMETHODCALLTYPE IStream_RemoteCopyTo_Proxy(
2285 IStream* This,
2286 IStream *pstm,
2287 ULARGE_INTEGER cb,
2288 ULARGE_INTEGER *pcbRead,
2289 ULARGE_INTEGER *pcbWritten);
2290void __RPC_STUB IStream_RemoteCopyTo_Stub(
2291 IRpcStubBuffer* This,
2292 IRpcChannelBuffer* pRpcChannelBuffer,
2293 PRPC_MESSAGE pRpcMessage,
2294 DWORD* pdwStubPhase);
2295HRESULT CALLBACK IStream_Seek_Proxy(
2296 IStream* This,
2297 LARGE_INTEGER dlibMove,
2298 DWORD dwOrigin,
2299 ULARGE_INTEGER *plibNewPosition);
2300HRESULT __RPC_STUB IStream_Seek_Stub(
2301 IStream* This,
2302 LARGE_INTEGER dlibMove,
2303 DWORD dwOrigin,
2304 ULARGE_INTEGER *plibNewPosition);
2305HRESULT CALLBACK IStream_CopyTo_Proxy(
2306 IStream* This,
2307 IStream *pstm,
2308 ULARGE_INTEGER cb,
2309 ULARGE_INTEGER *pcbRead,
2310 ULARGE_INTEGER *pcbWritten);
2311HRESULT __RPC_STUB IStream_CopyTo_Stub(
2312 IStream* This,
2313 IStream *pstm,
2314 ULARGE_INTEGER cb,
2315 ULARGE_INTEGER *pcbRead,
2316 ULARGE_INTEGER *pcbWritten);
2317
2318#endif /* __IStream_INTERFACE_DEFINED__ */
2319
2320
2321/*****************************************************************************
2322 * IRpcChannelBuffer interface
2323 */
2324#ifndef __IRpcChannelBuffer_INTERFACE_DEFINED__
2325#define __IRpcChannelBuffer_INTERFACE_DEFINED__
2326
2327typedef ULONG RPCOLEDATAREP;
2328
2329typedef struct tagRPCOLEMESSAGE {
2330 void *reserved1;
2331 RPCOLEDATAREP dataRepresentation;
2332 void *Buffer;
2333 ULONG cbBuffer;
2334 ULONG iMethod;
2335 void * reserved2[5];
2336 ULONG rpcFlags;
2337} RPCOLEMESSAGE;
2338
2339typedef RPCOLEMESSAGE *PRPCOLEMESSAGE;
2340
2341DEFINE_GUID(IID_IRpcChannelBuffer, 0xd5f56b60, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a);
2342#if defined(__cplusplus) && !defined(CINTERFACE)
2343MIDL_INTERFACE("d5f56b60-593b-101a-b569-08002b2dbf7a")
2344IRpcChannelBuffer : public IUnknown
2345{
2346 virtual HRESULT STDMETHODCALLTYPE GetBuffer(
2347 RPCOLEMESSAGE *pMessage,
2348 REFIID riid) = 0;
2349
2350 virtual HRESULT STDMETHODCALLTYPE SendReceive(
2351 RPCOLEMESSAGE *pMessage,
2352 ULONG *pStatus) = 0;
2353
2354 virtual HRESULT STDMETHODCALLTYPE FreeBuffer(
2355 RPCOLEMESSAGE *pMessage) = 0;
2356
2357 virtual HRESULT STDMETHODCALLTYPE GetDestCtx(
2358 DWORD *pdwDestContext,
2359 void **ppvDestContext) = 0;
2360
2361 virtual HRESULT STDMETHODCALLTYPE IsConnected(
2362 ) = 0;
2363
2364};
2365#ifdef __CRT_UUID_DECL
2366__CRT_UUID_DECL(IRpcChannelBuffer, 0xd5f56b60, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a)
2367#endif
2368#else
2369typedef struct IRpcChannelBufferVtbl {
2370 BEGIN_INTERFACE
2371
2372 /*** IUnknown methods ***/
2373 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2374 IRpcChannelBuffer *This,
2375 REFIID riid,
2376 void **ppvObject);
2377
2378 ULONG (STDMETHODCALLTYPE *AddRef)(
2379 IRpcChannelBuffer *This);
2380
2381 ULONG (STDMETHODCALLTYPE *Release)(
2382 IRpcChannelBuffer *This);
2383
2384 /*** IRpcChannelBuffer methods ***/
2385 HRESULT (STDMETHODCALLTYPE *GetBuffer)(
2386 IRpcChannelBuffer *This,
2387 RPCOLEMESSAGE *pMessage,
2388 REFIID riid);
2389
2390 HRESULT (STDMETHODCALLTYPE *SendReceive)(
2391 IRpcChannelBuffer *This,
2392 RPCOLEMESSAGE *pMessage,
2393 ULONG *pStatus);
2394
2395 HRESULT (STDMETHODCALLTYPE *FreeBuffer)(
2396 IRpcChannelBuffer *This,
2397 RPCOLEMESSAGE *pMessage);
2398
2399 HRESULT (STDMETHODCALLTYPE *GetDestCtx)(
2400 IRpcChannelBuffer *This,
2401 DWORD *pdwDestContext,
2402 void **ppvDestContext);
2403
2404 HRESULT (STDMETHODCALLTYPE *IsConnected)(
2405 IRpcChannelBuffer *This);
2406
2407 END_INTERFACE
2408} IRpcChannelBufferVtbl;
2409
2410interface IRpcChannelBuffer {
2411 CONST_VTBL IRpcChannelBufferVtbl* lpVtbl;
2412};
2413
2414#ifdef COBJMACROS
2415#ifndef WIDL_C_INLINE_WRAPPERS
2416/*** IUnknown methods ***/
2417#define IRpcChannelBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2418#define IRpcChannelBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
2419#define IRpcChannelBuffer_Release(This) (This)->lpVtbl->Release(This)
2420/*** IRpcChannelBuffer methods ***/
2421#define IRpcChannelBuffer_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid)
2422#define IRpcChannelBuffer_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus)
2423#define IRpcChannelBuffer_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage)
2424#define IRpcChannelBuffer_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext)
2425#define IRpcChannelBuffer_IsConnected(This) (This)->lpVtbl->IsConnected(This)
2426#else
2427/*** IUnknown methods ***/
2428static FORCEINLINE HRESULT IRpcChannelBuffer_QueryInterface(IRpcChannelBuffer* This,REFIID riid,void **ppvObject) {
2429 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2430}
2431static FORCEINLINE ULONG IRpcChannelBuffer_AddRef(IRpcChannelBuffer* This) {
2432 return This->lpVtbl->AddRef(This);
2433}
2434static FORCEINLINE ULONG IRpcChannelBuffer_Release(IRpcChannelBuffer* This) {
2435 return This->lpVtbl->Release(This);
2436}
2437/*** IRpcChannelBuffer methods ***/
2438static FORCEINLINE HRESULT IRpcChannelBuffer_GetBuffer(IRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage,REFIID riid) {
2439 return This->lpVtbl->GetBuffer(This,pMessage,riid);
2440}
2441static FORCEINLINE HRESULT IRpcChannelBuffer_SendReceive(IRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage,ULONG *pStatus) {
2442 return This->lpVtbl->SendReceive(This,pMessage,pStatus);
2443}
2444static FORCEINLINE HRESULT IRpcChannelBuffer_FreeBuffer(IRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage) {
2445 return This->lpVtbl->FreeBuffer(This,pMessage);
2446}
2447static FORCEINLINE HRESULT IRpcChannelBuffer_GetDestCtx(IRpcChannelBuffer* This,DWORD *pdwDestContext,void **ppvDestContext) {
2448 return This->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext);
2449}
2450static FORCEINLINE HRESULT IRpcChannelBuffer_IsConnected(IRpcChannelBuffer* This) {
2451 return This->lpVtbl->IsConnected(This);
2452}
2453#endif
2454#endif
2455
2456#endif
2457
2458
2459#endif /* __IRpcChannelBuffer_INTERFACE_DEFINED__ */
2460
2461#endif
2462
2463#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
2464/*****************************************************************************
2465 * IRpcChannelBuffer2 interface
2466 */
2467#ifndef __IRpcChannelBuffer2_INTERFACE_DEFINED__
2468#define __IRpcChannelBuffer2_INTERFACE_DEFINED__
2469
2470DEFINE_GUID(IID_IRpcChannelBuffer2, 0x594f31d0, 0x7f19, 0x11d0, 0xb1,0x94, 0x00,0xa0,0xc9,0x0d,0xc8,0xbf);
2471#if defined(__cplusplus) && !defined(CINTERFACE)
2472MIDL_INTERFACE("594f31d0-7f19-11d0-b194-00a0c90dc8bf")
2473IRpcChannelBuffer2 : public IRpcChannelBuffer
2474{
2475 virtual HRESULT STDMETHODCALLTYPE GetProtocolVersion(
2476 DWORD *pdwVersion) = 0;
2477
2478};
2479#ifdef __CRT_UUID_DECL
2480__CRT_UUID_DECL(IRpcChannelBuffer2, 0x594f31d0, 0x7f19, 0x11d0, 0xb1,0x94, 0x00,0xa0,0xc9,0x0d,0xc8,0xbf)
2481#endif
2482#else
2483typedef struct IRpcChannelBuffer2Vtbl {
2484 BEGIN_INTERFACE
2485
2486 /*** IUnknown methods ***/
2487 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2488 IRpcChannelBuffer2 *This,
2489 REFIID riid,
2490 void **ppvObject);
2491
2492 ULONG (STDMETHODCALLTYPE *AddRef)(
2493 IRpcChannelBuffer2 *This);
2494
2495 ULONG (STDMETHODCALLTYPE *Release)(
2496 IRpcChannelBuffer2 *This);
2497
2498 /*** IRpcChannelBuffer methods ***/
2499 HRESULT (STDMETHODCALLTYPE *GetBuffer)(
2500 IRpcChannelBuffer2 *This,
2501 RPCOLEMESSAGE *pMessage,
2502 REFIID riid);
2503
2504 HRESULT (STDMETHODCALLTYPE *SendReceive)(
2505 IRpcChannelBuffer2 *This,
2506 RPCOLEMESSAGE *pMessage,
2507 ULONG *pStatus);
2508
2509 HRESULT (STDMETHODCALLTYPE *FreeBuffer)(
2510 IRpcChannelBuffer2 *This,
2511 RPCOLEMESSAGE *pMessage);
2512
2513 HRESULT (STDMETHODCALLTYPE *GetDestCtx)(
2514 IRpcChannelBuffer2 *This,
2515 DWORD *pdwDestContext,
2516 void **ppvDestContext);
2517
2518 HRESULT (STDMETHODCALLTYPE *IsConnected)(
2519 IRpcChannelBuffer2 *This);
2520
2521 /*** IRpcChannelBuffer2 methods ***/
2522 HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)(
2523 IRpcChannelBuffer2 *This,
2524 DWORD *pdwVersion);
2525
2526 END_INTERFACE
2527} IRpcChannelBuffer2Vtbl;
2528
2529interface IRpcChannelBuffer2 {
2530 CONST_VTBL IRpcChannelBuffer2Vtbl* lpVtbl;
2531};
2532
2533#ifdef COBJMACROS
2534#ifndef WIDL_C_INLINE_WRAPPERS
2535/*** IUnknown methods ***/
2536#define IRpcChannelBuffer2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2537#define IRpcChannelBuffer2_AddRef(This) (This)->lpVtbl->AddRef(This)
2538#define IRpcChannelBuffer2_Release(This) (This)->lpVtbl->Release(This)
2539/*** IRpcChannelBuffer methods ***/
2540#define IRpcChannelBuffer2_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid)
2541#define IRpcChannelBuffer2_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus)
2542#define IRpcChannelBuffer2_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage)
2543#define IRpcChannelBuffer2_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext)
2544#define IRpcChannelBuffer2_IsConnected(This) (This)->lpVtbl->IsConnected(This)
2545/*** IRpcChannelBuffer2 methods ***/
2546#define IRpcChannelBuffer2_GetProtocolVersion(This,pdwVersion) (This)->lpVtbl->GetProtocolVersion(This,pdwVersion)
2547#else
2548/*** IUnknown methods ***/
2549static FORCEINLINE HRESULT IRpcChannelBuffer2_QueryInterface(IRpcChannelBuffer2* This,REFIID riid,void **ppvObject) {
2550 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2551}
2552static FORCEINLINE ULONG IRpcChannelBuffer2_AddRef(IRpcChannelBuffer2* This) {
2553 return This->lpVtbl->AddRef(This);
2554}
2555static FORCEINLINE ULONG IRpcChannelBuffer2_Release(IRpcChannelBuffer2* This) {
2556 return This->lpVtbl->Release(This);
2557}
2558/*** IRpcChannelBuffer methods ***/
2559static FORCEINLINE HRESULT IRpcChannelBuffer2_GetBuffer(IRpcChannelBuffer2* This,RPCOLEMESSAGE *pMessage,REFIID riid) {
2560 return This->lpVtbl->GetBuffer(This,pMessage,riid);
2561}
2562static FORCEINLINE HRESULT IRpcChannelBuffer2_SendReceive(IRpcChannelBuffer2* This,RPCOLEMESSAGE *pMessage,ULONG *pStatus) {
2563 return This->lpVtbl->SendReceive(This,pMessage,pStatus);
2564}
2565static FORCEINLINE HRESULT IRpcChannelBuffer2_FreeBuffer(IRpcChannelBuffer2* This,RPCOLEMESSAGE *pMessage) {
2566 return This->lpVtbl->FreeBuffer(This,pMessage);
2567}
2568static FORCEINLINE HRESULT IRpcChannelBuffer2_GetDestCtx(IRpcChannelBuffer2* This,DWORD *pdwDestContext,void **ppvDestContext) {
2569 return This->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext);
2570}
2571static FORCEINLINE HRESULT IRpcChannelBuffer2_IsConnected(IRpcChannelBuffer2* This) {
2572 return This->lpVtbl->IsConnected(This);
2573}
2574/*** IRpcChannelBuffer2 methods ***/
2575static FORCEINLINE HRESULT IRpcChannelBuffer2_GetProtocolVersion(IRpcChannelBuffer2* This,DWORD *pdwVersion) {
2576 return This->lpVtbl->GetProtocolVersion(This,pdwVersion);
2577}
2578#endif
2579#endif
2580
2581#endif
2582
2583
2584#endif /* __IRpcChannelBuffer2_INTERFACE_DEFINED__ */
2585
2586
2587/*****************************************************************************
2588 * IAsyncRpcChannelBuffer interface
2589 */
2590#ifndef __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__
2591#define __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__
2592
2593DEFINE_GUID(IID_IAsyncRpcChannelBuffer, 0xa5029fb6, 0x3c34, 0x11d1, 0x9c,0x99, 0x00,0xc0,0x4f,0xb9,0x98,0xaa);
2594#if defined(__cplusplus) && !defined(CINTERFACE)
2595MIDL_INTERFACE("a5029fb6-3c34-11d1-9c99-00c04fb998aa")
2596IAsyncRpcChannelBuffer : public IRpcChannelBuffer2
2597{
2598 virtual HRESULT STDMETHODCALLTYPE Send(
2599 RPCOLEMESSAGE *pMsg,
2600 ISynchronize *pSync,
2601 ULONG *pulStatus) = 0;
2602
2603 virtual HRESULT STDMETHODCALLTYPE Receive(
2604 RPCOLEMESSAGE *pMsg,
2605 ULONG *pulStatus) = 0;
2606
2607 virtual HRESULT STDMETHODCALLTYPE GetDestCtxEx(
2608 RPCOLEMESSAGE *pMsg,
2609 DWORD *pdwDestContext,
2610 void **ppvDestContext) = 0;
2611
2612};
2613#ifdef __CRT_UUID_DECL
2614__CRT_UUID_DECL(IAsyncRpcChannelBuffer, 0xa5029fb6, 0x3c34, 0x11d1, 0x9c,0x99, 0x00,0xc0,0x4f,0xb9,0x98,0xaa)
2615#endif
2616#else
2617typedef struct IAsyncRpcChannelBufferVtbl {
2618 BEGIN_INTERFACE
2619
2620 /*** IUnknown methods ***/
2621 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2622 IAsyncRpcChannelBuffer *This,
2623 REFIID riid,
2624 void **ppvObject);
2625
2626 ULONG (STDMETHODCALLTYPE *AddRef)(
2627 IAsyncRpcChannelBuffer *This);
2628
2629 ULONG (STDMETHODCALLTYPE *Release)(
2630 IAsyncRpcChannelBuffer *This);
2631
2632 /*** IRpcChannelBuffer methods ***/
2633 HRESULT (STDMETHODCALLTYPE *GetBuffer)(
2634 IAsyncRpcChannelBuffer *This,
2635 RPCOLEMESSAGE *pMessage,
2636 REFIID riid);
2637
2638 HRESULT (STDMETHODCALLTYPE *SendReceive)(
2639 IAsyncRpcChannelBuffer *This,
2640 RPCOLEMESSAGE *pMessage,
2641 ULONG *pStatus);
2642
2643 HRESULT (STDMETHODCALLTYPE *FreeBuffer)(
2644 IAsyncRpcChannelBuffer *This,
2645 RPCOLEMESSAGE *pMessage);
2646
2647 HRESULT (STDMETHODCALLTYPE *GetDestCtx)(
2648 IAsyncRpcChannelBuffer *This,
2649 DWORD *pdwDestContext,
2650 void **ppvDestContext);
2651
2652 HRESULT (STDMETHODCALLTYPE *IsConnected)(
2653 IAsyncRpcChannelBuffer *This);
2654
2655 /*** IRpcChannelBuffer2 methods ***/
2656 HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)(
2657 IAsyncRpcChannelBuffer *This,
2658 DWORD *pdwVersion);
2659
2660 /*** IAsyncRpcChannelBuffer methods ***/
2661 HRESULT (STDMETHODCALLTYPE *Send)(
2662 IAsyncRpcChannelBuffer *This,
2663 RPCOLEMESSAGE *pMsg,
2664 ISynchronize *pSync,
2665 ULONG *pulStatus);
2666
2667 HRESULT (STDMETHODCALLTYPE *Receive)(
2668 IAsyncRpcChannelBuffer *This,
2669 RPCOLEMESSAGE *pMsg,
2670 ULONG *pulStatus);
2671
2672 HRESULT (STDMETHODCALLTYPE *GetDestCtxEx)(
2673 IAsyncRpcChannelBuffer *This,
2674 RPCOLEMESSAGE *pMsg,
2675 DWORD *pdwDestContext,
2676 void **ppvDestContext);
2677
2678 END_INTERFACE
2679} IAsyncRpcChannelBufferVtbl;
2680
2681interface IAsyncRpcChannelBuffer {
2682 CONST_VTBL IAsyncRpcChannelBufferVtbl* lpVtbl;
2683};
2684
2685#ifdef COBJMACROS
2686#ifndef WIDL_C_INLINE_WRAPPERS
2687/*** IUnknown methods ***/
2688#define IAsyncRpcChannelBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2689#define IAsyncRpcChannelBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
2690#define IAsyncRpcChannelBuffer_Release(This) (This)->lpVtbl->Release(This)
2691/*** IRpcChannelBuffer methods ***/
2692#define IAsyncRpcChannelBuffer_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid)
2693#define IAsyncRpcChannelBuffer_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus)
2694#define IAsyncRpcChannelBuffer_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage)
2695#define IAsyncRpcChannelBuffer_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext)
2696#define IAsyncRpcChannelBuffer_IsConnected(This) (This)->lpVtbl->IsConnected(This)
2697/*** IRpcChannelBuffer2 methods ***/
2698#define IAsyncRpcChannelBuffer_GetProtocolVersion(This,pdwVersion) (This)->lpVtbl->GetProtocolVersion(This,pdwVersion)
2699/*** IAsyncRpcChannelBuffer methods ***/
2700#define IAsyncRpcChannelBuffer_Send(This,pMsg,pSync,pulStatus) (This)->lpVtbl->Send(This,pMsg,pSync,pulStatus)
2701#define IAsyncRpcChannelBuffer_Receive(This,pMsg,pulStatus) (This)->lpVtbl->Receive(This,pMsg,pulStatus)
2702#define IAsyncRpcChannelBuffer_GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext)
2703#else
2704/*** IUnknown methods ***/
2705static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_QueryInterface(IAsyncRpcChannelBuffer* This,REFIID riid,void **ppvObject) {
2706 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2707}
2708static FORCEINLINE ULONG IAsyncRpcChannelBuffer_AddRef(IAsyncRpcChannelBuffer* This) {
2709 return This->lpVtbl->AddRef(This);
2710}
2711static FORCEINLINE ULONG IAsyncRpcChannelBuffer_Release(IAsyncRpcChannelBuffer* This) {
2712 return This->lpVtbl->Release(This);
2713}
2714/*** IRpcChannelBuffer methods ***/
2715static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_GetBuffer(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage,REFIID riid) {
2716 return This->lpVtbl->GetBuffer(This,pMessage,riid);
2717}
2718static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_SendReceive(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage,ULONG *pStatus) {
2719 return This->lpVtbl->SendReceive(This,pMessage,pStatus);
2720}
2721static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_FreeBuffer(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMessage) {
2722 return This->lpVtbl->FreeBuffer(This,pMessage);
2723}
2724static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_GetDestCtx(IAsyncRpcChannelBuffer* This,DWORD *pdwDestContext,void **ppvDestContext) {
2725 return This->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext);
2726}
2727static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_IsConnected(IAsyncRpcChannelBuffer* This) {
2728 return This->lpVtbl->IsConnected(This);
2729}
2730/*** IRpcChannelBuffer2 methods ***/
2731static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_GetProtocolVersion(IAsyncRpcChannelBuffer* This,DWORD *pdwVersion) {
2732 return This->lpVtbl->GetProtocolVersion(This,pdwVersion);
2733}
2734/*** IAsyncRpcChannelBuffer methods ***/
2735static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_Send(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMsg,ISynchronize *pSync,ULONG *pulStatus) {
2736 return This->lpVtbl->Send(This,pMsg,pSync,pulStatus);
2737}
2738static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_Receive(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMsg,ULONG *pulStatus) {
2739 return This->lpVtbl->Receive(This,pMsg,pulStatus);
2740}
2741static FORCEINLINE HRESULT IAsyncRpcChannelBuffer_GetDestCtxEx(IAsyncRpcChannelBuffer* This,RPCOLEMESSAGE *pMsg,DWORD *pdwDestContext,void **ppvDestContext) {
2742 return This->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext);
2743}
2744#endif
2745#endif
2746
2747#endif
2748
2749
2750#endif /* __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__ */
2751
2752
2753/*****************************************************************************
2754 * IRpcChannelBuffer3 interface
2755 */
2756#ifndef __IRpcChannelBuffer3_INTERFACE_DEFINED__
2757#define __IRpcChannelBuffer3_INTERFACE_DEFINED__
2758
2759DEFINE_GUID(IID_IRpcChannelBuffer3, 0x25b15600, 0x0115, 0x11d0, 0xbf,0x0d, 0x00,0xaa,0x00,0xb8,0xdf,0xd2);
2760#if defined(__cplusplus) && !defined(CINTERFACE)
2761MIDL_INTERFACE("25b15600-0115-11d0-bf0d-00aa00b8dfd2")
2762IRpcChannelBuffer3 : public IRpcChannelBuffer2
2763{
2764 virtual HRESULT STDMETHODCALLTYPE Send(
2765 RPCOLEMESSAGE *pMsg,
2766 ULONG *pulStatus) = 0;
2767
2768 virtual HRESULT STDMETHODCALLTYPE Receive(
2769 RPCOLEMESSAGE *pMsg,
2770 ULONG ulSize,
2771 ULONG *pulStatus) = 0;
2772
2773 virtual HRESULT STDMETHODCALLTYPE Cancel(
2774 RPCOLEMESSAGE *pMsg) = 0;
2775
2776 virtual HRESULT STDMETHODCALLTYPE GetCallContext(
2777 RPCOLEMESSAGE *pMsg,
2778 REFIID riid,
2779 void **pInterface) = 0;
2780
2781 virtual HRESULT STDMETHODCALLTYPE GetDestCtxEx(
2782 RPCOLEMESSAGE *pMsg,
2783 DWORD *pdwDestContext,
2784 void **ppvDestContext) = 0;
2785
2786 virtual HRESULT STDMETHODCALLTYPE GetState(
2787 RPCOLEMESSAGE *pMsg,
2788 DWORD *pState) = 0;
2789
2790 virtual HRESULT STDMETHODCALLTYPE RegisterAsync(
2791 RPCOLEMESSAGE *pMsg,
2792 IAsyncManager *pAsyncMgr) = 0;
2793
2794};
2795#ifdef __CRT_UUID_DECL
2796__CRT_UUID_DECL(IRpcChannelBuffer3, 0x25b15600, 0x0115, 0x11d0, 0xbf,0x0d, 0x00,0xaa,0x00,0xb8,0xdf,0xd2)
2797#endif
2798#else
2799typedef struct IRpcChannelBuffer3Vtbl {
2800 BEGIN_INTERFACE
2801
2802 /*** IUnknown methods ***/
2803 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2804 IRpcChannelBuffer3 *This,
2805 REFIID riid,
2806 void **ppvObject);
2807
2808 ULONG (STDMETHODCALLTYPE *AddRef)(
2809 IRpcChannelBuffer3 *This);
2810
2811 ULONG (STDMETHODCALLTYPE *Release)(
2812 IRpcChannelBuffer3 *This);
2813
2814 /*** IRpcChannelBuffer methods ***/
2815 HRESULT (STDMETHODCALLTYPE *GetBuffer)(
2816 IRpcChannelBuffer3 *This,
2817 RPCOLEMESSAGE *pMessage,
2818 REFIID riid);
2819
2820 HRESULT (STDMETHODCALLTYPE *SendReceive)(
2821 IRpcChannelBuffer3 *This,
2822 RPCOLEMESSAGE *pMessage,
2823 ULONG *pStatus);
2824
2825 HRESULT (STDMETHODCALLTYPE *FreeBuffer)(
2826 IRpcChannelBuffer3 *This,
2827 RPCOLEMESSAGE *pMessage);
2828
2829 HRESULT (STDMETHODCALLTYPE *GetDestCtx)(
2830 IRpcChannelBuffer3 *This,
2831 DWORD *pdwDestContext,
2832 void **ppvDestContext);
2833
2834 HRESULT (STDMETHODCALLTYPE *IsConnected)(
2835 IRpcChannelBuffer3 *This);
2836
2837 /*** IRpcChannelBuffer2 methods ***/
2838 HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)(
2839 IRpcChannelBuffer3 *This,
2840 DWORD *pdwVersion);
2841
2842 /*** IRpcChannelBuffer3 methods ***/
2843 HRESULT (STDMETHODCALLTYPE *Send)(
2844 IRpcChannelBuffer3 *This,
2845 RPCOLEMESSAGE *pMsg,
2846 ULONG *pulStatus);
2847
2848 HRESULT (STDMETHODCALLTYPE *Receive)(
2849 IRpcChannelBuffer3 *This,
2850 RPCOLEMESSAGE *pMsg,
2851 ULONG ulSize,
2852 ULONG *pulStatus);
2853
2854 HRESULT (STDMETHODCALLTYPE *Cancel)(
2855 IRpcChannelBuffer3 *This,
2856 RPCOLEMESSAGE *pMsg);
2857
2858 HRESULT (STDMETHODCALLTYPE *GetCallContext)(
2859 IRpcChannelBuffer3 *This,
2860 RPCOLEMESSAGE *pMsg,
2861 REFIID riid,
2862 void **pInterface);
2863
2864 HRESULT (STDMETHODCALLTYPE *GetDestCtxEx)(
2865 IRpcChannelBuffer3 *This,
2866 RPCOLEMESSAGE *pMsg,
2867 DWORD *pdwDestContext,
2868 void **ppvDestContext);
2869
2870 HRESULT (STDMETHODCALLTYPE *GetState)(
2871 IRpcChannelBuffer3 *This,
2872 RPCOLEMESSAGE *pMsg,
2873 DWORD *pState);
2874
2875 HRESULT (STDMETHODCALLTYPE *RegisterAsync)(
2876 IRpcChannelBuffer3 *This,
2877 RPCOLEMESSAGE *pMsg,
2878 IAsyncManager *pAsyncMgr);
2879
2880 END_INTERFACE
2881} IRpcChannelBuffer3Vtbl;
2882
2883interface IRpcChannelBuffer3 {
2884 CONST_VTBL IRpcChannelBuffer3Vtbl* lpVtbl;
2885};
2886
2887#ifdef COBJMACROS
2888#ifndef WIDL_C_INLINE_WRAPPERS
2889/*** IUnknown methods ***/
2890#define IRpcChannelBuffer3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2891#define IRpcChannelBuffer3_AddRef(This) (This)->lpVtbl->AddRef(This)
2892#define IRpcChannelBuffer3_Release(This) (This)->lpVtbl->Release(This)
2893/*** IRpcChannelBuffer methods ***/
2894#define IRpcChannelBuffer3_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid)
2895#define IRpcChannelBuffer3_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus)
2896#define IRpcChannelBuffer3_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage)
2897#define IRpcChannelBuffer3_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext)
2898#define IRpcChannelBuffer3_IsConnected(This) (This)->lpVtbl->IsConnected(This)
2899/*** IRpcChannelBuffer2 methods ***/
2900#define IRpcChannelBuffer3_GetProtocolVersion(This,pdwVersion) (This)->lpVtbl->GetProtocolVersion(This,pdwVersion)
2901/*** IRpcChannelBuffer3 methods ***/
2902#define IRpcChannelBuffer3_Send(This,pMsg,pulStatus) (This)->lpVtbl->Send(This,pMsg,pulStatus)
2903#define IRpcChannelBuffer3_Receive(This,pMsg,ulSize,pulStatus) (This)->lpVtbl->Receive(This,pMsg,ulSize,pulStatus)
2904#define IRpcChannelBuffer3_Cancel(This,pMsg) (This)->lpVtbl->Cancel(This,pMsg)
2905#define IRpcChannelBuffer3_GetCallContext(This,pMsg,riid,pInterface) (This)->lpVtbl->GetCallContext(This,pMsg,riid,pInterface)
2906#define IRpcChannelBuffer3_GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext)
2907#define IRpcChannelBuffer3_GetState(This,pMsg,pState) (This)->lpVtbl->GetState(This,pMsg,pState)
2908#define IRpcChannelBuffer3_RegisterAsync(This,pMsg,pAsyncMgr) (This)->lpVtbl->RegisterAsync(This,pMsg,pAsyncMgr)
2909#else
2910/*** IUnknown methods ***/
2911static FORCEINLINE HRESULT IRpcChannelBuffer3_QueryInterface(IRpcChannelBuffer3* This,REFIID riid,void **ppvObject) {
2912 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2913}
2914static FORCEINLINE ULONG IRpcChannelBuffer3_AddRef(IRpcChannelBuffer3* This) {
2915 return This->lpVtbl->AddRef(This);
2916}
2917static FORCEINLINE ULONG IRpcChannelBuffer3_Release(IRpcChannelBuffer3* This) {
2918 return This->lpVtbl->Release(This);
2919}
2920/*** IRpcChannelBuffer methods ***/
2921static FORCEINLINE HRESULT IRpcChannelBuffer3_GetBuffer(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMessage,REFIID riid) {
2922 return This->lpVtbl->GetBuffer(This,pMessage,riid);
2923}
2924static FORCEINLINE HRESULT IRpcChannelBuffer3_SendReceive(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMessage,ULONG *pStatus) {
2925 return This->lpVtbl->SendReceive(This,pMessage,pStatus);
2926}
2927static FORCEINLINE HRESULT IRpcChannelBuffer3_FreeBuffer(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMessage) {
2928 return This->lpVtbl->FreeBuffer(This,pMessage);
2929}
2930static FORCEINLINE HRESULT IRpcChannelBuffer3_GetDestCtx(IRpcChannelBuffer3* This,DWORD *pdwDestContext,void **ppvDestContext) {
2931 return This->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext);
2932}
2933static FORCEINLINE HRESULT IRpcChannelBuffer3_IsConnected(IRpcChannelBuffer3* This) {
2934 return This->lpVtbl->IsConnected(This);
2935}
2936/*** IRpcChannelBuffer2 methods ***/
2937static FORCEINLINE HRESULT IRpcChannelBuffer3_GetProtocolVersion(IRpcChannelBuffer3* This,DWORD *pdwVersion) {
2938 return This->lpVtbl->GetProtocolVersion(This,pdwVersion);
2939}
2940/*** IRpcChannelBuffer3 methods ***/
2941static FORCEINLINE HRESULT IRpcChannelBuffer3_Send(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,ULONG *pulStatus) {
2942 return This->lpVtbl->Send(This,pMsg,pulStatus);
2943}
2944static FORCEINLINE HRESULT IRpcChannelBuffer3_Receive(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,ULONG ulSize,ULONG *pulStatus) {
2945 return This->lpVtbl->Receive(This,pMsg,ulSize,pulStatus);
2946}
2947static FORCEINLINE HRESULT IRpcChannelBuffer3_Cancel(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg) {
2948 return This->lpVtbl->Cancel(This,pMsg);
2949}
2950static FORCEINLINE HRESULT IRpcChannelBuffer3_GetCallContext(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,REFIID riid,void **pInterface) {
2951 return This->lpVtbl->GetCallContext(This,pMsg,riid,pInterface);
2952}
2953static FORCEINLINE HRESULT IRpcChannelBuffer3_GetDestCtxEx(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,DWORD *pdwDestContext,void **ppvDestContext) {
2954 return This->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext);
2955}
2956static FORCEINLINE HRESULT IRpcChannelBuffer3_GetState(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,DWORD *pState) {
2957 return This->lpVtbl->GetState(This,pMsg,pState);
2958}
2959static FORCEINLINE HRESULT IRpcChannelBuffer3_RegisterAsync(IRpcChannelBuffer3* This,RPCOLEMESSAGE *pMsg,IAsyncManager *pAsyncMgr) {
2960 return This->lpVtbl->RegisterAsync(This,pMsg,pAsyncMgr);
2961}
2962#endif
2963#endif
2964
2965#endif
2966
2967
2968#endif /* __IRpcChannelBuffer3_INTERFACE_DEFINED__ */
2969
2970
2971/*****************************************************************************
2972 * IRpcSyntaxNegotiate interface
2973 */
2974#ifndef __IRpcSyntaxNegotiate_INTERFACE_DEFINED__
2975#define __IRpcSyntaxNegotiate_INTERFACE_DEFINED__
2976
2977DEFINE_GUID(IID_IRpcSyntaxNegotiate, 0x58a08519, 0x24c8, 0x4935, 0xb4,0x82, 0x3f,0xd8,0x23,0x33,0x3a,0x4f);
2978#if defined(__cplusplus) && !defined(CINTERFACE)
2979MIDL_INTERFACE("58a08519-24c8-4935-b482-3fd823333a4f")
2980IRpcSyntaxNegotiate : public IUnknown
2981{
2982 virtual HRESULT STDMETHODCALLTYPE NegotiateSyntax(
2983 RPCOLEMESSAGE *pMsg) = 0;
2984
2985};
2986#ifdef __CRT_UUID_DECL
2987__CRT_UUID_DECL(IRpcSyntaxNegotiate, 0x58a08519, 0x24c8, 0x4935, 0xb4,0x82, 0x3f,0xd8,0x23,0x33,0x3a,0x4f)
2988#endif
2989#else
2990typedef struct IRpcSyntaxNegotiateVtbl {
2991 BEGIN_INTERFACE
2992
2993 /*** IUnknown methods ***/
2994 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2995 IRpcSyntaxNegotiate *This,
2996 REFIID riid,
2997 void **ppvObject);
2998
2999 ULONG (STDMETHODCALLTYPE *AddRef)(
3000 IRpcSyntaxNegotiate *This);
3001
3002 ULONG (STDMETHODCALLTYPE *Release)(
3003 IRpcSyntaxNegotiate *This);
3004
3005 /*** IRpcSyntaxNegotiate methods ***/
3006 HRESULT (STDMETHODCALLTYPE *NegotiateSyntax)(
3007 IRpcSyntaxNegotiate *This,
3008 RPCOLEMESSAGE *pMsg);
3009
3010 END_INTERFACE
3011} IRpcSyntaxNegotiateVtbl;
3012
3013interface IRpcSyntaxNegotiate {
3014 CONST_VTBL IRpcSyntaxNegotiateVtbl* lpVtbl;
3015};
3016
3017#ifdef COBJMACROS
3018#ifndef WIDL_C_INLINE_WRAPPERS
3019/*** IUnknown methods ***/
3020#define IRpcSyntaxNegotiate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3021#define IRpcSyntaxNegotiate_AddRef(This) (This)->lpVtbl->AddRef(This)
3022#define IRpcSyntaxNegotiate_Release(This) (This)->lpVtbl->Release(This)
3023/*** IRpcSyntaxNegotiate methods ***/
3024#define IRpcSyntaxNegotiate_NegotiateSyntax(This,pMsg) (This)->lpVtbl->NegotiateSyntax(This,pMsg)
3025#else
3026/*** IUnknown methods ***/
3027static FORCEINLINE HRESULT IRpcSyntaxNegotiate_QueryInterface(IRpcSyntaxNegotiate* This,REFIID riid,void **ppvObject) {
3028 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3029}
3030static FORCEINLINE ULONG IRpcSyntaxNegotiate_AddRef(IRpcSyntaxNegotiate* This) {
3031 return This->lpVtbl->AddRef(This);
3032}
3033static FORCEINLINE ULONG IRpcSyntaxNegotiate_Release(IRpcSyntaxNegotiate* This) {
3034 return This->lpVtbl->Release(This);
3035}
3036/*** IRpcSyntaxNegotiate methods ***/
3037static FORCEINLINE HRESULT IRpcSyntaxNegotiate_NegotiateSyntax(IRpcSyntaxNegotiate* This,RPCOLEMESSAGE *pMsg) {
3038 return This->lpVtbl->NegotiateSyntax(This,pMsg);
3039}
3040#endif
3041#endif
3042
3043#endif
3044
3045
3046#endif /* __IRpcSyntaxNegotiate_INTERFACE_DEFINED__ */
3047
3048
3049/*****************************************************************************
3050 * IRpcProxyBuffer interface
3051 */
3052#ifndef __IRpcProxyBuffer_INTERFACE_DEFINED__
3053#define __IRpcProxyBuffer_INTERFACE_DEFINED__
3054
3055DEFINE_GUID(IID_IRpcProxyBuffer, 0xd5f56a34, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a);
3056#if defined(__cplusplus) && !defined(CINTERFACE)
3057MIDL_INTERFACE("d5f56a34-593b-101a-b569-08002b2dbf7a")
3058IRpcProxyBuffer : public IUnknown
3059{
3060 virtual HRESULT STDMETHODCALLTYPE Connect(
3061 IRpcChannelBuffer *pRpcChannelBuffer) = 0;
3062
3063 virtual void STDMETHODCALLTYPE Disconnect(
3064 ) = 0;
3065
3066};
3067#ifdef __CRT_UUID_DECL
3068__CRT_UUID_DECL(IRpcProxyBuffer, 0xd5f56a34, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a)
3069#endif
3070#else
3071typedef struct IRpcProxyBufferVtbl {
3072 BEGIN_INTERFACE
3073
3074 /*** IUnknown methods ***/
3075 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3076 IRpcProxyBuffer *This,
3077 REFIID riid,
3078 void **ppvObject);
3079
3080 ULONG (STDMETHODCALLTYPE *AddRef)(
3081 IRpcProxyBuffer *This);
3082
3083 ULONG (STDMETHODCALLTYPE *Release)(
3084 IRpcProxyBuffer *This);
3085
3086 /*** IRpcProxyBuffer methods ***/
3087 HRESULT (STDMETHODCALLTYPE *Connect)(
3088 IRpcProxyBuffer *This,
3089 IRpcChannelBuffer *pRpcChannelBuffer);
3090
3091 void (STDMETHODCALLTYPE *Disconnect)(
3092 IRpcProxyBuffer *This);
3093
3094 END_INTERFACE
3095} IRpcProxyBufferVtbl;
3096
3097interface IRpcProxyBuffer {
3098 CONST_VTBL IRpcProxyBufferVtbl* lpVtbl;
3099};
3100
3101#ifdef COBJMACROS
3102#ifndef WIDL_C_INLINE_WRAPPERS
3103/*** IUnknown methods ***/
3104#define IRpcProxyBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3105#define IRpcProxyBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
3106#define IRpcProxyBuffer_Release(This) (This)->lpVtbl->Release(This)
3107/*** IRpcProxyBuffer methods ***/
3108#define IRpcProxyBuffer_Connect(This,pRpcChannelBuffer) (This)->lpVtbl->Connect(This,pRpcChannelBuffer)
3109#define IRpcProxyBuffer_Disconnect(This) (This)->lpVtbl->Disconnect(This)
3110#else
3111/*** IUnknown methods ***/
3112static FORCEINLINE HRESULT IRpcProxyBuffer_QueryInterface(IRpcProxyBuffer* This,REFIID riid,void **ppvObject) {
3113 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3114}
3115static FORCEINLINE ULONG IRpcProxyBuffer_AddRef(IRpcProxyBuffer* This) {
3116 return This->lpVtbl->AddRef(This);
3117}
3118static FORCEINLINE ULONG IRpcProxyBuffer_Release(IRpcProxyBuffer* This) {
3119 return This->lpVtbl->Release(This);
3120}
3121/*** IRpcProxyBuffer methods ***/
3122static FORCEINLINE HRESULT IRpcProxyBuffer_Connect(IRpcProxyBuffer* This,IRpcChannelBuffer *pRpcChannelBuffer) {
3123 return This->lpVtbl->Connect(This,pRpcChannelBuffer);
3124}
3125static FORCEINLINE void IRpcProxyBuffer_Disconnect(IRpcProxyBuffer* This) {
3126 This->lpVtbl->Disconnect(This);
3127}
3128#endif
3129#endif
3130
3131#endif
3132
3133
3134#endif /* __IRpcProxyBuffer_INTERFACE_DEFINED__ */
3135
3136#endif
3137
3138#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
3139/*****************************************************************************
3140 * IRpcStubBuffer interface
3141 */
3142#ifndef __IRpcStubBuffer_INTERFACE_DEFINED__
3143#define __IRpcStubBuffer_INTERFACE_DEFINED__
3144
3145DEFINE_GUID(IID_IRpcStubBuffer, 0xd5f56afc, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a);
3146#if defined(__cplusplus) && !defined(CINTERFACE)
3147MIDL_INTERFACE("d5f56afc-593b-101a-b569-08002b2dbf7a")
3148IRpcStubBuffer : public IUnknown
3149{
3150 virtual HRESULT STDMETHODCALLTYPE Connect(
3151 IUnknown *pUnkServer) = 0;
3152
3153 virtual void STDMETHODCALLTYPE Disconnect(
3154 ) = 0;
3155
3156 virtual HRESULT STDMETHODCALLTYPE Invoke(
3157 RPCOLEMESSAGE *_prpcmsg,
3158 IRpcChannelBuffer *_pRpcChannelBuffer) = 0;
3159
3160 virtual IRpcStubBuffer * STDMETHODCALLTYPE IsIIDSupported(
3161 REFIID riid) = 0;
3162
3163 virtual ULONG STDMETHODCALLTYPE CountRefs(
3164 ) = 0;
3165
3166 virtual HRESULT STDMETHODCALLTYPE DebugServerQueryInterface(
3167 void **ppv) = 0;
3168
3169 virtual void STDMETHODCALLTYPE DebugServerRelease(
3170 void *pv) = 0;
3171
3172};
3173#ifdef __CRT_UUID_DECL
3174__CRT_UUID_DECL(IRpcStubBuffer, 0xd5f56afc, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a)
3175#endif
3176#else
3177typedef struct IRpcStubBufferVtbl {
3178 BEGIN_INTERFACE
3179
3180 /*** IUnknown methods ***/
3181 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3182 IRpcStubBuffer *This,
3183 REFIID riid,
3184 void **ppvObject);
3185
3186 ULONG (STDMETHODCALLTYPE *AddRef)(
3187 IRpcStubBuffer *This);
3188
3189 ULONG (STDMETHODCALLTYPE *Release)(
3190 IRpcStubBuffer *This);
3191
3192 /*** IRpcStubBuffer methods ***/
3193 HRESULT (STDMETHODCALLTYPE *Connect)(
3194 IRpcStubBuffer *This,
3195 IUnknown *pUnkServer);
3196
3197 void (STDMETHODCALLTYPE *Disconnect)(
3198 IRpcStubBuffer *This);
3199
3200 HRESULT (STDMETHODCALLTYPE *Invoke)(
3201 IRpcStubBuffer *This,
3202 RPCOLEMESSAGE *_prpcmsg,
3203 IRpcChannelBuffer *_pRpcChannelBuffer);
3204
3205 IRpcStubBuffer * (STDMETHODCALLTYPE *IsIIDSupported)(
3206 IRpcStubBuffer *This,
3207 REFIID riid);
3208
3209 ULONG (STDMETHODCALLTYPE *CountRefs)(
3210 IRpcStubBuffer *This);
3211
3212 HRESULT (STDMETHODCALLTYPE *DebugServerQueryInterface)(
3213 IRpcStubBuffer *This,
3214 void **ppv);
3215
3216 void (STDMETHODCALLTYPE *DebugServerRelease)(
3217 IRpcStubBuffer *This,
3218 void *pv);
3219
3220 END_INTERFACE
3221} IRpcStubBufferVtbl;
3222
3223interface IRpcStubBuffer {
3224 CONST_VTBL IRpcStubBufferVtbl* lpVtbl;
3225};
3226
3227#ifdef COBJMACROS
3228#ifndef WIDL_C_INLINE_WRAPPERS
3229/*** IUnknown methods ***/
3230#define IRpcStubBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3231#define IRpcStubBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
3232#define IRpcStubBuffer_Release(This) (This)->lpVtbl->Release(This)
3233/*** IRpcStubBuffer methods ***/
3234#define IRpcStubBuffer_Connect(This,pUnkServer) (This)->lpVtbl->Connect(This,pUnkServer)
3235#define IRpcStubBuffer_Disconnect(This) (This)->lpVtbl->Disconnect(This)
3236#define IRpcStubBuffer_Invoke(This,_prpcmsg,_pRpcChannelBuffer) (This)->lpVtbl->Invoke(This,_prpcmsg,_pRpcChannelBuffer)
3237#define IRpcStubBuffer_IsIIDSupported(This,riid) (This)->lpVtbl->IsIIDSupported(This,riid)
3238#define IRpcStubBuffer_CountRefs(This) (This)->lpVtbl->CountRefs(This)
3239#define IRpcStubBuffer_DebugServerQueryInterface(This,ppv) (This)->lpVtbl->DebugServerQueryInterface(This,ppv)
3240#define IRpcStubBuffer_DebugServerRelease(This,pv) (This)->lpVtbl->DebugServerRelease(This,pv)
3241#else
3242/*** IUnknown methods ***/
3243static FORCEINLINE HRESULT IRpcStubBuffer_QueryInterface(IRpcStubBuffer* This,REFIID riid,void **ppvObject) {
3244 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3245}
3246static FORCEINLINE ULONG IRpcStubBuffer_AddRef(IRpcStubBuffer* This) {
3247 return This->lpVtbl->AddRef(This);
3248}
3249static FORCEINLINE ULONG IRpcStubBuffer_Release(IRpcStubBuffer* This) {
3250 return This->lpVtbl->Release(This);
3251}
3252/*** IRpcStubBuffer methods ***/
3253static FORCEINLINE HRESULT IRpcStubBuffer_Connect(IRpcStubBuffer* This,IUnknown *pUnkServer) {
3254 return This->lpVtbl->Connect(This,pUnkServer);
3255}
3256static FORCEINLINE void IRpcStubBuffer_Disconnect(IRpcStubBuffer* This) {
3257 This->lpVtbl->Disconnect(This);
3258}
3259static FORCEINLINE HRESULT IRpcStubBuffer_Invoke(IRpcStubBuffer* This,RPCOLEMESSAGE *_prpcmsg,IRpcChannelBuffer *_pRpcChannelBuffer) {
3260 return This->lpVtbl->Invoke(This,_prpcmsg,_pRpcChannelBuffer);
3261}
3262static FORCEINLINE IRpcStubBuffer * IRpcStubBuffer_IsIIDSupported(IRpcStubBuffer* This,REFIID riid) {
3263 return This->lpVtbl->IsIIDSupported(This,riid);
3264}
3265static FORCEINLINE ULONG IRpcStubBuffer_CountRefs(IRpcStubBuffer* This) {
3266 return This->lpVtbl->CountRefs(This);
3267}
3268static FORCEINLINE HRESULT IRpcStubBuffer_DebugServerQueryInterface(IRpcStubBuffer* This,void **ppv) {
3269 return This->lpVtbl->DebugServerQueryInterface(This,ppv);
3270}
3271static FORCEINLINE void IRpcStubBuffer_DebugServerRelease(IRpcStubBuffer* This,void *pv) {
3272 This->lpVtbl->DebugServerRelease(This,pv);
3273}
3274#endif
3275#endif
3276
3277#endif
3278
3279
3280#endif /* __IRpcStubBuffer_INTERFACE_DEFINED__ */
3281
3282
3283/*****************************************************************************
3284 * IPSFactoryBuffer interface
3285 */
3286#ifndef __IPSFactoryBuffer_INTERFACE_DEFINED__
3287#define __IPSFactoryBuffer_INTERFACE_DEFINED__
3288
3289DEFINE_GUID(IID_IPSFactoryBuffer, 0xd5f569d0, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a);
3290#if defined(__cplusplus) && !defined(CINTERFACE)
3291MIDL_INTERFACE("d5f569d0-593b-101a-b569-08002b2dbf7a")
3292IPSFactoryBuffer : public IUnknown
3293{
3294 virtual HRESULT STDMETHODCALLTYPE CreateProxy(
3295 IUnknown *pUnkOuter,
3296 REFIID riid,
3297 IRpcProxyBuffer **ppProxy,
3298 void **ppv) = 0;
3299
3300 virtual HRESULT STDMETHODCALLTYPE CreateStub(
3301 REFIID riid,
3302 IUnknown *pUnkServer,
3303 IRpcStubBuffer **ppStub) = 0;
3304
3305};
3306#ifdef __CRT_UUID_DECL
3307__CRT_UUID_DECL(IPSFactoryBuffer, 0xd5f569d0, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a)
3308#endif
3309#else
3310typedef struct IPSFactoryBufferVtbl {
3311 BEGIN_INTERFACE
3312
3313 /*** IUnknown methods ***/
3314 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3315 IPSFactoryBuffer *This,
3316 REFIID riid,
3317 void **ppvObject);
3318
3319 ULONG (STDMETHODCALLTYPE *AddRef)(
3320 IPSFactoryBuffer *This);
3321
3322 ULONG (STDMETHODCALLTYPE *Release)(
3323 IPSFactoryBuffer *This);
3324
3325 /*** IPSFactoryBuffer methods ***/
3326 HRESULT (STDMETHODCALLTYPE *CreateProxy)(
3327 IPSFactoryBuffer *This,
3328 IUnknown *pUnkOuter,
3329 REFIID riid,
3330 IRpcProxyBuffer **ppProxy,
3331 void **ppv);
3332
3333 HRESULT (STDMETHODCALLTYPE *CreateStub)(
3334 IPSFactoryBuffer *This,
3335 REFIID riid,
3336 IUnknown *pUnkServer,
3337 IRpcStubBuffer **ppStub);
3338
3339 END_INTERFACE
3340} IPSFactoryBufferVtbl;
3341
3342interface IPSFactoryBuffer {
3343 CONST_VTBL IPSFactoryBufferVtbl* lpVtbl;
3344};
3345
3346#ifdef COBJMACROS
3347#ifndef WIDL_C_INLINE_WRAPPERS
3348/*** IUnknown methods ***/
3349#define IPSFactoryBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3350#define IPSFactoryBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
3351#define IPSFactoryBuffer_Release(This) (This)->lpVtbl->Release(This)
3352/*** IPSFactoryBuffer methods ***/
3353#define IPSFactoryBuffer_CreateProxy(This,pUnkOuter,riid,ppProxy,ppv) (This)->lpVtbl->CreateProxy(This,pUnkOuter,riid,ppProxy,ppv)
3354#define IPSFactoryBuffer_CreateStub(This,riid,pUnkServer,ppStub) (This)->lpVtbl->CreateStub(This,riid,pUnkServer,ppStub)
3355#else
3356/*** IUnknown methods ***/
3357static FORCEINLINE HRESULT IPSFactoryBuffer_QueryInterface(IPSFactoryBuffer* This,REFIID riid,void **ppvObject) {
3358 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3359}
3360static FORCEINLINE ULONG IPSFactoryBuffer_AddRef(IPSFactoryBuffer* This) {
3361 return This->lpVtbl->AddRef(This);
3362}
3363static FORCEINLINE ULONG IPSFactoryBuffer_Release(IPSFactoryBuffer* This) {
3364 return This->lpVtbl->Release(This);
3365}
3366/*** IPSFactoryBuffer methods ***/
3367static FORCEINLINE HRESULT IPSFactoryBuffer_CreateProxy(IPSFactoryBuffer* This,IUnknown *pUnkOuter,REFIID riid,IRpcProxyBuffer **ppProxy,void **ppv) {
3368 return This->lpVtbl->CreateProxy(This,pUnkOuter,riid,ppProxy,ppv);
3369}
3370static FORCEINLINE HRESULT IPSFactoryBuffer_CreateStub(IPSFactoryBuffer* This,REFIID riid,IUnknown *pUnkServer,IRpcStubBuffer **ppStub) {
3371 return This->lpVtbl->CreateStub(This,riid,pUnkServer,ppStub);
3372}
3373#endif
3374#endif
3375
3376#endif
3377
3378
3379#endif /* __IPSFactoryBuffer_INTERFACE_DEFINED__ */
3380
3381#endif
3382
3383#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
3384#if (_WIN32_WINNT >= 0x0400 ) || defined(_WIN32_DCOM)
3385typedef struct SChannelHookCallInfo {
3386 IID iid;
3387 DWORD cbSize;
3388 GUID uCausality;
3389 DWORD dwServerPid;
3390 DWORD iMethod;
3391 void *pObject;
3392} SChannelHookCallInfo;
3393
3394/*****************************************************************************
3395 * IChannelHook interface
3396 */
3397#ifndef __IChannelHook_INTERFACE_DEFINED__
3398#define __IChannelHook_INTERFACE_DEFINED__
3399
3400DEFINE_GUID(IID_IChannelHook, 0x1008c4a0, 0x7613, 0x11cf, 0x9a,0xf1, 0x00,0x20,0xaf,0x6e,0x72,0xf4);
3401#if defined(__cplusplus) && !defined(CINTERFACE)
3402MIDL_INTERFACE("1008c4a0-7613-11cf-9af1-0020af6e72f4")
3403IChannelHook : public IUnknown
3404{
3405 virtual void STDMETHODCALLTYPE ClientGetSize(
3406 REFGUID uExtent,
3407 REFIID riid,
3408 ULONG *pDataSize) = 0;
3409
3410 virtual void STDMETHODCALLTYPE ClientFillBuffer(
3411 REFGUID uExtent,
3412 REFIID riid,
3413 ULONG *pDataSize,
3414 void *pDataBuffer) = 0;
3415
3416 virtual void STDMETHODCALLTYPE ClientNotify(
3417 REFGUID uExtent,
3418 REFIID riid,
3419 ULONG cbDataSize,
3420 void *pDataBuffer,
3421 DWORD lDataRep,
3422 HRESULT hrFault) = 0;
3423
3424 virtual void STDMETHODCALLTYPE ServerNotify(
3425 REFGUID uExtent,
3426 REFIID riid,
3427 ULONG cbDataSize,
3428 void *pDataBuffer,
3429 DWORD lDataRep) = 0;
3430
3431 virtual void STDMETHODCALLTYPE ServerGetSize(
3432 REFGUID uExtent,
3433 REFIID riid,
3434 HRESULT hrFault,
3435 ULONG *pDataSize) = 0;
3436
3437 virtual void STDMETHODCALLTYPE ServerFillBuffer(
3438 REFGUID uExtent,
3439 REFIID riid,
3440 ULONG *pDataSize,
3441 void *pDataBuffer,
3442 HRESULT hrFault) = 0;
3443
3444};
3445#ifdef __CRT_UUID_DECL
3446__CRT_UUID_DECL(IChannelHook, 0x1008c4a0, 0x7613, 0x11cf, 0x9a,0xf1, 0x00,0x20,0xaf,0x6e,0x72,0xf4)
3447#endif
3448#else
3449typedef struct IChannelHookVtbl {
3450 BEGIN_INTERFACE
3451
3452 /*** IUnknown methods ***/
3453 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3454 IChannelHook *This,
3455 REFIID riid,
3456 void **ppvObject);
3457
3458 ULONG (STDMETHODCALLTYPE *AddRef)(
3459 IChannelHook *This);
3460
3461 ULONG (STDMETHODCALLTYPE *Release)(
3462 IChannelHook *This);
3463
3464 /*** IChannelHook methods ***/
3465 void (STDMETHODCALLTYPE *ClientGetSize)(
3466 IChannelHook *This,
3467 REFGUID uExtent,
3468 REFIID riid,
3469 ULONG *pDataSize);
3470
3471 void (STDMETHODCALLTYPE *ClientFillBuffer)(
3472 IChannelHook *This,
3473 REFGUID uExtent,
3474 REFIID riid,
3475 ULONG *pDataSize,
3476 void *pDataBuffer);
3477
3478 void (STDMETHODCALLTYPE *ClientNotify)(
3479 IChannelHook *This,
3480 REFGUID uExtent,
3481 REFIID riid,
3482 ULONG cbDataSize,
3483 void *pDataBuffer,
3484 DWORD lDataRep,
3485 HRESULT hrFault);
3486
3487 void (STDMETHODCALLTYPE *ServerNotify)(
3488 IChannelHook *This,
3489 REFGUID uExtent,
3490 REFIID riid,
3491 ULONG cbDataSize,
3492 void *pDataBuffer,
3493 DWORD lDataRep);
3494
3495 void (STDMETHODCALLTYPE *ServerGetSize)(
3496 IChannelHook *This,
3497 REFGUID uExtent,
3498 REFIID riid,
3499 HRESULT hrFault,
3500 ULONG *pDataSize);
3501
3502 void (STDMETHODCALLTYPE *ServerFillBuffer)(
3503 IChannelHook *This,
3504 REFGUID uExtent,
3505 REFIID riid,
3506 ULONG *pDataSize,
3507 void *pDataBuffer,
3508 HRESULT hrFault);
3509
3510 END_INTERFACE
3511} IChannelHookVtbl;
3512
3513interface IChannelHook {
3514 CONST_VTBL IChannelHookVtbl* lpVtbl;
3515};
3516
3517#ifdef COBJMACROS
3518#ifndef WIDL_C_INLINE_WRAPPERS
3519/*** IUnknown methods ***/
3520#define IChannelHook_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3521#define IChannelHook_AddRef(This) (This)->lpVtbl->AddRef(This)
3522#define IChannelHook_Release(This) (This)->lpVtbl->Release(This)
3523/*** IChannelHook methods ***/
3524#define IChannelHook_ClientGetSize(This,uExtent,riid,pDataSize) (This)->lpVtbl->ClientGetSize(This,uExtent,riid,pDataSize)
3525#define IChannelHook_ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer) (This)->lpVtbl->ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer)
3526#define IChannelHook_ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault) (This)->lpVtbl->ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault)
3527#define IChannelHook_ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep) (This)->lpVtbl->ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep)
3528#define IChannelHook_ServerGetSize(This,uExtent,riid,hrFault,pDataSize) (This)->lpVtbl->ServerGetSize(This,uExtent,riid,hrFault,pDataSize)
3529#define IChannelHook_ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault) (This)->lpVtbl->ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault)
3530#else
3531/*** IUnknown methods ***/
3532static FORCEINLINE HRESULT IChannelHook_QueryInterface(IChannelHook* This,REFIID riid,void **ppvObject) {
3533 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3534}
3535static FORCEINLINE ULONG IChannelHook_AddRef(IChannelHook* This) {
3536 return This->lpVtbl->AddRef(This);
3537}
3538static FORCEINLINE ULONG IChannelHook_Release(IChannelHook* This) {
3539 return This->lpVtbl->Release(This);
3540}
3541/*** IChannelHook methods ***/
3542static FORCEINLINE void IChannelHook_ClientGetSize(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG *pDataSize) {
3543 This->lpVtbl->ClientGetSize(This,uExtent,riid,pDataSize);
3544}
3545static FORCEINLINE void IChannelHook_ClientFillBuffer(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG *pDataSize,void *pDataBuffer) {
3546 This->lpVtbl->ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer);
3547}
3548static FORCEINLINE void IChannelHook_ClientNotify(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG cbDataSize,void *pDataBuffer,DWORD lDataRep,HRESULT hrFault) {
3549 This->lpVtbl->ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault);
3550}
3551static FORCEINLINE void IChannelHook_ServerNotify(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG cbDataSize,void *pDataBuffer,DWORD lDataRep) {
3552 This->lpVtbl->ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep);
3553}
3554static FORCEINLINE void IChannelHook_ServerGetSize(IChannelHook* This,REFGUID uExtent,REFIID riid,HRESULT hrFault,ULONG *pDataSize) {
3555 This->lpVtbl->ServerGetSize(This,uExtent,riid,hrFault,pDataSize);
3556}
3557static FORCEINLINE void IChannelHook_ServerFillBuffer(IChannelHook* This,REFGUID uExtent,REFIID riid,ULONG *pDataSize,void *pDataBuffer,HRESULT hrFault) {
3558 This->lpVtbl->ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault);
3559}
3560#endif
3561#endif
3562
3563#endif
3564
3565
3566#endif /* __IChannelHook_INTERFACE_DEFINED__ */
3567
3568#endif
3569#endif
3570
3571#if (_WIN32_WINNT >= 0x0400 ) || defined(_WIN32_DCOM)
3572#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
3573/*****************************************************************************
3574 * IClientSecurity interface
3575 */
3576#ifndef __IClientSecurity_INTERFACE_DEFINED__
3577#define __IClientSecurity_INTERFACE_DEFINED__
3578
3579typedef struct tagSOLE_AUTHENTICATION_SERVICE {
3580 DWORD dwAuthnSvc;
3581 DWORD dwAuthzSvc;
3582 OLECHAR *pPrincipalName;
3583 HRESULT hr;
3584} SOLE_AUTHENTICATION_SERVICE;
3585
3586typedef SOLE_AUTHENTICATION_SERVICE *PSOLE_AUTHENTICATION_SERVICE;
3587
3588typedef enum tagEOLE_AUTHENTICATION_CAPABILITIES {
3589 EOAC_NONE = 0x0,
3590 EOAC_MUTUAL_AUTH = 0x1,
3591 EOAC_STATIC_CLOAKING = 0x20,
3592 EOAC_DYNAMIC_CLOAKING = 0x40,
3593 EOAC_ANY_AUTHORITY = 0x80,
3594 EOAC_MAKE_FULLSIC = 0x100,
3595 EOAC_DEFAULT = 0x800,
3596 EOAC_SECURE_REFS = 0x2,
3597 EOAC_ACCESS_CONTROL = 0x4,
3598 EOAC_APPID = 0x8,
3599 EOAC_DYNAMIC = 0x10,
3600 EOAC_REQUIRE_FULLSIC = 0x200,
3601 EOAC_AUTO_IMPERSONATE = 0x400,
3602 EOAC_NO_CUSTOM_MARSHAL = 0x2000,
3603 EOAC_DISABLE_AAA = 0x1000
3604} EOLE_AUTHENTICATION_CAPABILITIES;
3605
3606#define COLE_DEFAULT_PRINCIPAL ((OLECHAR *)(INT_PTR)-1)
3607
3608#define COLE_DEFAULT_AUTHINFO ((void *)(INT_PTR)-1)
3609
3610
3611typedef struct tagSOLE_AUTHENTICATION_INFO {
3612 DWORD dwAuthnSvc;
3613 DWORD dwAuthzSvc;
3614 void *pAuthInfo;
3615} SOLE_AUTHENTICATION_INFO;
3616typedef struct tagSOLE_AUTHENTICATION_INFO *PSOLE_AUTHENTICATION_INFO;
3617
3618typedef struct tagSOLE_AUTHENTICATION_LIST {
3619 DWORD cAuthInfo;
3620 SOLE_AUTHENTICATION_INFO *aAuthInfo;
3621} SOLE_AUTHENTICATION_LIST;
3622typedef struct tagSOLE_AUTHENTICATION_LIST *PSOLE_AUTHENTICATION_LIST;
3623
3624DEFINE_GUID(IID_IClientSecurity, 0x0000013d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3625#if defined(__cplusplus) && !defined(CINTERFACE)
3626MIDL_INTERFACE("0000013d-0000-0000-c000-000000000046")
3627IClientSecurity : public IUnknown
3628{
3629 virtual HRESULT STDMETHODCALLTYPE QueryBlanket(
3630 IUnknown *pProxy,
3631 DWORD *pAuthnSvc,
3632 DWORD *pAuthzSvc,
3633 OLECHAR **pServerPrincName,
3634 DWORD *pAuthnLevel,
3635 DWORD *pImpLevel,
3636 void **pAuthInfo,
3637 DWORD *pCapabilites) = 0;
3638
3639 virtual HRESULT STDMETHODCALLTYPE SetBlanket(
3640 IUnknown *pProxy,
3641 DWORD dwAuthnSvc,
3642 DWORD dwAuthzSvc,
3643 OLECHAR *pServerPrincName,
3644 DWORD dwAuthnLevel,
3645 DWORD dwImpLevel,
3646 void *pAuthInfo,
3647 DWORD dwCapabilities) = 0;
3648
3649 virtual HRESULT STDMETHODCALLTYPE CopyProxy(
3650 IUnknown *pProxy,
3651 IUnknown **ppCopy) = 0;
3652
3653};
3654#ifdef __CRT_UUID_DECL
3655__CRT_UUID_DECL(IClientSecurity, 0x0000013d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
3656#endif
3657#else
3658typedef struct IClientSecurityVtbl {
3659 BEGIN_INTERFACE
3660
3661 /*** IUnknown methods ***/
3662 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3663 IClientSecurity *This,
3664 REFIID riid,
3665 void **ppvObject);
3666
3667 ULONG (STDMETHODCALLTYPE *AddRef)(
3668 IClientSecurity *This);
3669
3670 ULONG (STDMETHODCALLTYPE *Release)(
3671 IClientSecurity *This);
3672
3673 /*** IClientSecurity methods ***/
3674 HRESULT (STDMETHODCALLTYPE *QueryBlanket)(
3675 IClientSecurity *This,
3676 IUnknown *pProxy,
3677 DWORD *pAuthnSvc,
3678 DWORD *pAuthzSvc,
3679 OLECHAR **pServerPrincName,
3680 DWORD *pAuthnLevel,
3681 DWORD *pImpLevel,
3682 void **pAuthInfo,
3683 DWORD *pCapabilites);
3684
3685 HRESULT (STDMETHODCALLTYPE *SetBlanket)(
3686 IClientSecurity *This,
3687 IUnknown *pProxy,
3688 DWORD dwAuthnSvc,
3689 DWORD dwAuthzSvc,
3690 OLECHAR *pServerPrincName,
3691 DWORD dwAuthnLevel,
3692 DWORD dwImpLevel,
3693 void *pAuthInfo,
3694 DWORD dwCapabilities);
3695
3696 HRESULT (STDMETHODCALLTYPE *CopyProxy)(
3697 IClientSecurity *This,
3698 IUnknown *pProxy,
3699 IUnknown **ppCopy);
3700
3701 END_INTERFACE
3702} IClientSecurityVtbl;
3703
3704interface IClientSecurity {
3705 CONST_VTBL IClientSecurityVtbl* lpVtbl;
3706};
3707
3708#ifdef COBJMACROS
3709#ifndef WIDL_C_INLINE_WRAPPERS
3710/*** IUnknown methods ***/
3711#define IClientSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3712#define IClientSecurity_AddRef(This) (This)->lpVtbl->AddRef(This)
3713#define IClientSecurity_Release(This) (This)->lpVtbl->Release(This)
3714/*** IClientSecurity methods ***/
3715#define IClientSecurity_QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilites) (This)->lpVtbl->QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilites)
3716#define IClientSecurity_SetBlanket(This,pProxy,dwAuthnSvc,dwAuthzSvc,pServerPrincName,dwAuthnLevel,dwImpLevel,pAuthInfo,dwCapabilities) (This)->lpVtbl->SetBlanket(This,pProxy,dwAuthnSvc,dwAuthzSvc,pServerPrincName,dwAuthnLevel,dwImpLevel,pAuthInfo,dwCapabilities)
3717#define IClientSecurity_CopyProxy(This,pProxy,ppCopy) (This)->lpVtbl->CopyProxy(This,pProxy,ppCopy)
3718#else
3719/*** IUnknown methods ***/
3720static FORCEINLINE HRESULT IClientSecurity_QueryInterface(IClientSecurity* This,REFIID riid,void **ppvObject) {
3721 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3722}
3723static FORCEINLINE ULONG IClientSecurity_AddRef(IClientSecurity* This) {
3724 return This->lpVtbl->AddRef(This);
3725}
3726static FORCEINLINE ULONG IClientSecurity_Release(IClientSecurity* This) {
3727 return This->lpVtbl->Release(This);
3728}
3729/*** IClientSecurity methods ***/
3730static FORCEINLINE HRESULT IClientSecurity_QueryBlanket(IClientSecurity* This,IUnknown *pProxy,DWORD *pAuthnSvc,DWORD *pAuthzSvc,OLECHAR **pServerPrincName,DWORD *pAuthnLevel,DWORD *pImpLevel,void **pAuthInfo,DWORD *pCapabilites) {
3731 return This->lpVtbl->QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilites);
3732}
3733static FORCEINLINE HRESULT IClientSecurity_SetBlanket(IClientSecurity* This,IUnknown *pProxy,DWORD dwAuthnSvc,DWORD dwAuthzSvc,OLECHAR *pServerPrincName,DWORD dwAuthnLevel,DWORD dwImpLevel,void *pAuthInfo,DWORD dwCapabilities) {
3734 return This->lpVtbl->SetBlanket(This,pProxy,dwAuthnSvc,dwAuthzSvc,pServerPrincName,dwAuthnLevel,dwImpLevel,pAuthInfo,dwCapabilities);
3735}
3736static FORCEINLINE HRESULT IClientSecurity_CopyProxy(IClientSecurity* This,IUnknown *pProxy,IUnknown **ppCopy) {
3737 return This->lpVtbl->CopyProxy(This,pProxy,ppCopy);
3738}
3739#endif
3740#endif
3741
3742#endif
3743
3744
3745#endif /* __IClientSecurity_INTERFACE_DEFINED__ */
3746
3747#endif
3748
3749#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
3750/*****************************************************************************
3751 * IServerSecurity interface
3752 */
3753#ifndef __IServerSecurity_INTERFACE_DEFINED__
3754#define __IServerSecurity_INTERFACE_DEFINED__
3755
3756DEFINE_GUID(IID_IServerSecurity, 0x0000013e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3757#if defined(__cplusplus) && !defined(CINTERFACE)
3758MIDL_INTERFACE("0000013e-0000-0000-c000-000000000046")
3759IServerSecurity : public IUnknown
3760{
3761 virtual HRESULT STDMETHODCALLTYPE QueryBlanket(
3762 DWORD *pAuthnSvc,
3763 DWORD *pAuthzSvc,
3764 OLECHAR **pServerPrincName,
3765 DWORD *pAuthnLevel,
3766 DWORD *pImpLevel,
3767 void **pPrivs,
3768 DWORD *pCapabilities) = 0;
3769
3770 virtual HRESULT STDMETHODCALLTYPE ImpersonateClient(
3771 ) = 0;
3772
3773 virtual HRESULT STDMETHODCALLTYPE RevertToSelf(
3774 ) = 0;
3775
3776 virtual WINBOOL STDMETHODCALLTYPE IsImpersonating(
3777 ) = 0;
3778
3779};
3780#ifdef __CRT_UUID_DECL
3781__CRT_UUID_DECL(IServerSecurity, 0x0000013e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
3782#endif
3783#else
3784typedef struct IServerSecurityVtbl {
3785 BEGIN_INTERFACE
3786
3787 /*** IUnknown methods ***/
3788 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3789 IServerSecurity *This,
3790 REFIID riid,
3791 void **ppvObject);
3792
3793 ULONG (STDMETHODCALLTYPE *AddRef)(
3794 IServerSecurity *This);
3795
3796 ULONG (STDMETHODCALLTYPE *Release)(
3797 IServerSecurity *This);
3798
3799 /*** IServerSecurity methods ***/
3800 HRESULT (STDMETHODCALLTYPE *QueryBlanket)(
3801 IServerSecurity *This,
3802 DWORD *pAuthnSvc,
3803 DWORD *pAuthzSvc,
3804 OLECHAR **pServerPrincName,
3805 DWORD *pAuthnLevel,
3806 DWORD *pImpLevel,
3807 void **pPrivs,
3808 DWORD *pCapabilities);
3809
3810 HRESULT (STDMETHODCALLTYPE *ImpersonateClient)(
3811 IServerSecurity *This);
3812
3813 HRESULT (STDMETHODCALLTYPE *RevertToSelf)(
3814 IServerSecurity *This);
3815
3816 WINBOOL (STDMETHODCALLTYPE *IsImpersonating)(
3817 IServerSecurity *This);
3818
3819 END_INTERFACE
3820} IServerSecurityVtbl;
3821
3822interface IServerSecurity {
3823 CONST_VTBL IServerSecurityVtbl* lpVtbl;
3824};
3825
3826#ifdef COBJMACROS
3827#ifndef WIDL_C_INLINE_WRAPPERS
3828/*** IUnknown methods ***/
3829#define IServerSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3830#define IServerSecurity_AddRef(This) (This)->lpVtbl->AddRef(This)
3831#define IServerSecurity_Release(This) (This)->lpVtbl->Release(This)
3832/*** IServerSecurity methods ***/
3833#define IServerSecurity_QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities) (This)->lpVtbl->QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities)
3834#define IServerSecurity_ImpersonateClient(This) (This)->lpVtbl->ImpersonateClient(This)
3835#define IServerSecurity_RevertToSelf(This) (This)->lpVtbl->RevertToSelf(This)
3836#define IServerSecurity_IsImpersonating(This) (This)->lpVtbl->IsImpersonating(This)
3837#else
3838/*** IUnknown methods ***/
3839static FORCEINLINE HRESULT IServerSecurity_QueryInterface(IServerSecurity* This,REFIID riid,void **ppvObject) {
3840 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3841}
3842static FORCEINLINE ULONG IServerSecurity_AddRef(IServerSecurity* This) {
3843 return This->lpVtbl->AddRef(This);
3844}
3845static FORCEINLINE ULONG IServerSecurity_Release(IServerSecurity* This) {
3846 return This->lpVtbl->Release(This);
3847}
3848/*** IServerSecurity methods ***/
3849static FORCEINLINE HRESULT IServerSecurity_QueryBlanket(IServerSecurity* This,DWORD *pAuthnSvc,DWORD *pAuthzSvc,OLECHAR **pServerPrincName,DWORD *pAuthnLevel,DWORD *pImpLevel,void **pPrivs,DWORD *pCapabilities) {
3850 return This->lpVtbl->QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities);
3851}
3852static FORCEINLINE HRESULT IServerSecurity_ImpersonateClient(IServerSecurity* This) {
3853 return This->lpVtbl->ImpersonateClient(This);
3854}
3855static FORCEINLINE HRESULT IServerSecurity_RevertToSelf(IServerSecurity* This) {
3856 return This->lpVtbl->RevertToSelf(This);
3857}
3858static FORCEINLINE WINBOOL IServerSecurity_IsImpersonating(IServerSecurity* This) {
3859 return This->lpVtbl->IsImpersonating(This);
3860}
3861#endif
3862#endif
3863
3864#endif
3865
3866
3867#endif /* __IServerSecurity_INTERFACE_DEFINED__ */
3868
3869
3870typedef enum tagRPCOPT_PROPERTIES {
3871 COMBND_RPCTIMEOUT = 0x1,
3872 COMBND_SERVER_LOCALITY = 0x2,
3873 COMBND_RESERVED1 = 0x4
3874} RPCOPT_PROPERTIES;
3875
3876typedef enum tagRPCOPT_SERVER_LOCALITY_VALUES {
3877 SERVER_LOCALITY_PROCESS_LOCAL = 0,
3878 SERVER_LOCALITY_MACHINE_LOCAL = 1,
3879 SERVER_LOCALITY_REMOTE = 2
3880} RPCOPT_SERVER_LOCALITY_VALUES;
3881
3882/*****************************************************************************
3883 * IRpcOptions interface
3884 */
3885#ifndef __IRpcOptions_INTERFACE_DEFINED__
3886#define __IRpcOptions_INTERFACE_DEFINED__
3887
3888DEFINE_GUID(IID_IRpcOptions, 0x00000144, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
3889#if defined(__cplusplus) && !defined(CINTERFACE)
3890MIDL_INTERFACE("00000144-0000-0000-c000-000000000046")
3891IRpcOptions : public IUnknown
3892{
3893 virtual HRESULT STDMETHODCALLTYPE Set(
3894 IUnknown *pPrx,
3895 RPCOPT_PROPERTIES dwProperty,
3896 ULONG_PTR dwValue) = 0;
3897
3898 virtual HRESULT STDMETHODCALLTYPE Query(
3899 IUnknown *pPrx,
3900 RPCOPT_PROPERTIES dwProperty,
3901 ULONG_PTR *pdwValue) = 0;
3902
3903};
3904#ifdef __CRT_UUID_DECL
3905__CRT_UUID_DECL(IRpcOptions, 0x00000144, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
3906#endif
3907#else
3908typedef struct IRpcOptionsVtbl {
3909 BEGIN_INTERFACE
3910
3911 /*** IUnknown methods ***/
3912 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3913 IRpcOptions *This,
3914 REFIID riid,
3915 void **ppvObject);
3916
3917 ULONG (STDMETHODCALLTYPE *AddRef)(
3918 IRpcOptions *This);
3919
3920 ULONG (STDMETHODCALLTYPE *Release)(
3921 IRpcOptions *This);
3922
3923 /*** IRpcOptions methods ***/
3924 HRESULT (STDMETHODCALLTYPE *Set)(
3925 IRpcOptions *This,
3926 IUnknown *pPrx,
3927 RPCOPT_PROPERTIES dwProperty,
3928 ULONG_PTR dwValue);
3929
3930 HRESULT (STDMETHODCALLTYPE *Query)(
3931 IRpcOptions *This,
3932 IUnknown *pPrx,
3933 RPCOPT_PROPERTIES dwProperty,
3934 ULONG_PTR *pdwValue);
3935
3936 END_INTERFACE
3937} IRpcOptionsVtbl;
3938
3939interface IRpcOptions {
3940 CONST_VTBL IRpcOptionsVtbl* lpVtbl;
3941};
3942
3943#ifdef COBJMACROS
3944#ifndef WIDL_C_INLINE_WRAPPERS
3945/*** IUnknown methods ***/
3946#define IRpcOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3947#define IRpcOptions_AddRef(This) (This)->lpVtbl->AddRef(This)
3948#define IRpcOptions_Release(This) (This)->lpVtbl->Release(This)
3949/*** IRpcOptions methods ***/
3950#define IRpcOptions_Set(This,pPrx,dwProperty,dwValue) (This)->lpVtbl->Set(This,pPrx,dwProperty,dwValue)
3951#define IRpcOptions_Query(This,pPrx,dwProperty,pdwValue) (This)->lpVtbl->Query(This,pPrx,dwProperty,pdwValue)
3952#else
3953/*** IUnknown methods ***/
3954static FORCEINLINE HRESULT IRpcOptions_QueryInterface(IRpcOptions* This,REFIID riid,void **ppvObject) {
3955 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3956}
3957static FORCEINLINE ULONG IRpcOptions_AddRef(IRpcOptions* This) {
3958 return This->lpVtbl->AddRef(This);
3959}
3960static FORCEINLINE ULONG IRpcOptions_Release(IRpcOptions* This) {
3961 return This->lpVtbl->Release(This);
3962}
3963/*** IRpcOptions methods ***/
3964static FORCEINLINE HRESULT IRpcOptions_Set(IRpcOptions* This,IUnknown *pPrx,RPCOPT_PROPERTIES dwProperty,ULONG_PTR dwValue) {
3965 return This->lpVtbl->Set(This,pPrx,dwProperty,dwValue);
3966}
3967static FORCEINLINE HRESULT IRpcOptions_Query(IRpcOptions* This,IUnknown *pPrx,RPCOPT_PROPERTIES dwProperty,ULONG_PTR *pdwValue) {
3968 return This->lpVtbl->Query(This,pPrx,dwProperty,pdwValue);
3969}
3970#endif
3971#endif
3972
3973#endif
3974
3975
3976#endif /* __IRpcOptions_INTERFACE_DEFINED__ */
3977
3978#endif
3979
3980#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
3981typedef enum tagGLOBALOPT_PROPERTIES {
3982 COMGLB_EXCEPTION_HANDLING = 1,
3983 COMGLB_APPID = 2,
3984 COMGLB_RPC_THREADPOOL_SETTING = 3,
3985 COMGLB_RO_SETTINGS = 4,
3986 COMGLB_UNMARSHALING_POLICY = 5
3987} GLOBALOPT_PROPERTIES;
3988
3989typedef enum tagGLOBALOPT_EH_VALUES {
3990 COMGLB_EXCEPTION_HANDLE = 0,
3991 COMGLB_EXCEPTION_DONOT_HANDLE_FATAL = 1,
3992 COMGLB_EXCEPTION_DONOT_HANDLE = COMGLB_EXCEPTION_DONOT_HANDLE_FATAL,
3993 COMGLB_EXCEPTION_DONOT_HANDLE_ANY = 2
3994} GLOBALOPT_EH_VALUES;
3995
3996typedef enum tagGLOBALOPT_RPCTP_VALUES {
3997 COMGLB_RPC_THREADPOOL_SETTING_DEFAULT_POOL = 0,
3998 COMGLB_RPC_THREADPOOL_SETTING_PRIVATE_POOL = 1
3999} GLOBALOPT_RPCTP_VALUES;
4000
4001typedef enum tagGLOBALOPT_RO_FLAGS {
4002 COMGLB_STA_MODALLOOP_REMOVE_TOUCH_MESSAGES = 0x1,
4003 COMGLB_STA_MODALLOOP_SHARED_QUEUE_REMOVE_INPUT_MESSAGES = 0x2,
4004 COMGLB_STA_MODALLOOP_SHARED_QUEUE_DONOT_REMOVE_INPUT_MESSAGES = 0x4,
4005 COMGLB_FAST_RUNDOWN = 0x8,
4006 COMGLB_RESERVED1 = 0x10,
4007 COMGLB_RESERVED2 = 0x20,
4008 COMGLB_RESERVED3 = 0x40,
4009 COMGLB_STA_MODALLOOP_SHARED_QUEUE_REORDER_POINTER_MESSAGES = 0x80
4010} GLOBALOPT_RO_FLAGS;
4011
4012typedef enum tagGLOBALOPT_UNMARSHALING_POLICY_VALUES {
4013 COMGLB_UNMARSHALING_POLICY_NORMAL = 0,
4014 COMGLB_UNMARSHALING_POLICY_STRONG = 1,
4015 COMGLB_UNMARSHALING_POLICY_HYBRID = 2
4016} GLOBALOPT_UNMARSHALING_POLICY_VALUES;
4017
4018/*****************************************************************************
4019 * IGlobalOptions interface
4020 */
4021#ifndef __IGlobalOptions_INTERFACE_DEFINED__
4022#define __IGlobalOptions_INTERFACE_DEFINED__
4023
4024DEFINE_GUID(IID_IGlobalOptions, 0x0000015b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4025#if defined(__cplusplus) && !defined(CINTERFACE)
4026MIDL_INTERFACE("0000015b-0000-0000-c000-000000000046")
4027IGlobalOptions : public IUnknown
4028{
4029 virtual HRESULT STDMETHODCALLTYPE Set(
4030 GLOBALOPT_PROPERTIES dwProperty,
4031 ULONG_PTR dwValue) = 0;
4032
4033 virtual HRESULT STDMETHODCALLTYPE Query(
4034 GLOBALOPT_PROPERTIES dwProperty,
4035 ULONG_PTR *pdwValue) = 0;
4036
4037};
4038#ifdef __CRT_UUID_DECL
4039__CRT_UUID_DECL(IGlobalOptions, 0x0000015b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4040#endif
4041#else
4042typedef struct IGlobalOptionsVtbl {
4043 BEGIN_INTERFACE
4044
4045 /*** IUnknown methods ***/
4046 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4047 IGlobalOptions *This,
4048 REFIID riid,
4049 void **ppvObject);
4050
4051 ULONG (STDMETHODCALLTYPE *AddRef)(
4052 IGlobalOptions *This);
4053
4054 ULONG (STDMETHODCALLTYPE *Release)(
4055 IGlobalOptions *This);
4056
4057 /*** IGlobalOptions methods ***/
4058 HRESULT (STDMETHODCALLTYPE *Set)(
4059 IGlobalOptions *This,
4060 GLOBALOPT_PROPERTIES dwProperty,
4061 ULONG_PTR dwValue);
4062
4063 HRESULT (STDMETHODCALLTYPE *Query)(
4064 IGlobalOptions *This,
4065 GLOBALOPT_PROPERTIES dwProperty,
4066 ULONG_PTR *pdwValue);
4067
4068 END_INTERFACE
4069} IGlobalOptionsVtbl;
4070
4071interface IGlobalOptions {
4072 CONST_VTBL IGlobalOptionsVtbl* lpVtbl;
4073};
4074
4075#ifdef COBJMACROS
4076#ifndef WIDL_C_INLINE_WRAPPERS
4077/*** IUnknown methods ***/
4078#define IGlobalOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4079#define IGlobalOptions_AddRef(This) (This)->lpVtbl->AddRef(This)
4080#define IGlobalOptions_Release(This) (This)->lpVtbl->Release(This)
4081/*** IGlobalOptions methods ***/
4082#define IGlobalOptions_Set(This,dwProperty,dwValue) (This)->lpVtbl->Set(This,dwProperty,dwValue)
4083#define IGlobalOptions_Query(This,dwProperty,pdwValue) (This)->lpVtbl->Query(This,dwProperty,pdwValue)
4084#else
4085/*** IUnknown methods ***/
4086static FORCEINLINE HRESULT IGlobalOptions_QueryInterface(IGlobalOptions* This,REFIID riid,void **ppvObject) {
4087 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4088}
4089static FORCEINLINE ULONG IGlobalOptions_AddRef(IGlobalOptions* This) {
4090 return This->lpVtbl->AddRef(This);
4091}
4092static FORCEINLINE ULONG IGlobalOptions_Release(IGlobalOptions* This) {
4093 return This->lpVtbl->Release(This);
4094}
4095/*** IGlobalOptions methods ***/
4096static FORCEINLINE HRESULT IGlobalOptions_Set(IGlobalOptions* This,GLOBALOPT_PROPERTIES dwProperty,ULONG_PTR dwValue) {
4097 return This->lpVtbl->Set(This,dwProperty,dwValue);
4098}
4099static FORCEINLINE HRESULT IGlobalOptions_Query(IGlobalOptions* This,GLOBALOPT_PROPERTIES dwProperty,ULONG_PTR *pdwValue) {
4100 return This->lpVtbl->Query(This,dwProperty,pdwValue);
4101}
4102#endif
4103#endif
4104
4105#endif
4106
4107
4108#endif /* __IGlobalOptions_INTERFACE_DEFINED__ */
4109
4110#endif
4111#endif
4112
4113#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
4114/*****************************************************************************
4115 * ISurrogate interface
4116 */
4117#ifndef __ISurrogate_INTERFACE_DEFINED__
4118#define __ISurrogate_INTERFACE_DEFINED__
4119
4120typedef ISurrogate *LPSURROGATE;
4121
4122DEFINE_GUID(IID_ISurrogate, 0x00000022, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4123#if defined(__cplusplus) && !defined(CINTERFACE)
4124MIDL_INTERFACE("00000022-0000-0000-c000-000000000046")
4125ISurrogate : public IUnknown
4126{
4127 virtual HRESULT STDMETHODCALLTYPE LoadDllServer(
4128 REFCLSID Clsid) = 0;
4129
4130 virtual HRESULT STDMETHODCALLTYPE FreeSurrogate(
4131 ) = 0;
4132
4133};
4134#ifdef __CRT_UUID_DECL
4135__CRT_UUID_DECL(ISurrogate, 0x00000022, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4136#endif
4137#else
4138typedef struct ISurrogateVtbl {
4139 BEGIN_INTERFACE
4140
4141 /*** IUnknown methods ***/
4142 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4143 ISurrogate *This,
4144 REFIID riid,
4145 void **ppvObject);
4146
4147 ULONG (STDMETHODCALLTYPE *AddRef)(
4148 ISurrogate *This);
4149
4150 ULONG (STDMETHODCALLTYPE *Release)(
4151 ISurrogate *This);
4152
4153 /*** ISurrogate methods ***/
4154 HRESULT (STDMETHODCALLTYPE *LoadDllServer)(
4155 ISurrogate *This,
4156 REFCLSID Clsid);
4157
4158 HRESULT (STDMETHODCALLTYPE *FreeSurrogate)(
4159 ISurrogate *This);
4160
4161 END_INTERFACE
4162} ISurrogateVtbl;
4163
4164interface ISurrogate {
4165 CONST_VTBL ISurrogateVtbl* lpVtbl;
4166};
4167
4168#ifdef COBJMACROS
4169#ifndef WIDL_C_INLINE_WRAPPERS
4170/*** IUnknown methods ***/
4171#define ISurrogate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4172#define ISurrogate_AddRef(This) (This)->lpVtbl->AddRef(This)
4173#define ISurrogate_Release(This) (This)->lpVtbl->Release(This)
4174/*** ISurrogate methods ***/
4175#define ISurrogate_LoadDllServer(This,Clsid) (This)->lpVtbl->LoadDllServer(This,Clsid)
4176#define ISurrogate_FreeSurrogate(This) (This)->lpVtbl->FreeSurrogate(This)
4177#else
4178/*** IUnknown methods ***/
4179static FORCEINLINE HRESULT ISurrogate_QueryInterface(ISurrogate* This,REFIID riid,void **ppvObject) {
4180 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4181}
4182static FORCEINLINE ULONG ISurrogate_AddRef(ISurrogate* This) {
4183 return This->lpVtbl->AddRef(This);
4184}
4185static FORCEINLINE ULONG ISurrogate_Release(ISurrogate* This) {
4186 return This->lpVtbl->Release(This);
4187}
4188/*** ISurrogate methods ***/
4189static FORCEINLINE HRESULT ISurrogate_LoadDllServer(ISurrogate* This,REFCLSID Clsid) {
4190 return This->lpVtbl->LoadDllServer(This,Clsid);
4191}
4192static FORCEINLINE HRESULT ISurrogate_FreeSurrogate(ISurrogate* This) {
4193 return This->lpVtbl->FreeSurrogate(This);
4194}
4195#endif
4196#endif
4197
4198#endif
4199
4200
4201#endif /* __ISurrogate_INTERFACE_DEFINED__ */
4202
4203
4204/*****************************************************************************
4205 * IGlobalInterfaceTable interface
4206 */
4207#ifndef __IGlobalInterfaceTable_INTERFACE_DEFINED__
4208#define __IGlobalInterfaceTable_INTERFACE_DEFINED__
4209
4210typedef IGlobalInterfaceTable *LPGLOBALINTERFACETABLE;
4211
4212DEFINE_GUID(IID_IGlobalInterfaceTable, 0x00000146, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4213#if defined(__cplusplus) && !defined(CINTERFACE)
4214MIDL_INTERFACE("00000146-0000-0000-c000-000000000046")
4215IGlobalInterfaceTable : public IUnknown
4216{
4217 virtual HRESULT STDMETHODCALLTYPE RegisterInterfaceInGlobal(
4218 IUnknown *pUnk,
4219 REFIID riid,
4220 DWORD *pdwCookie) = 0;
4221
4222 virtual HRESULT STDMETHODCALLTYPE RevokeInterfaceFromGlobal(
4223 DWORD dwCookie) = 0;
4224
4225 virtual HRESULT STDMETHODCALLTYPE GetInterfaceFromGlobal(
4226 DWORD dwCookie,
4227 REFIID riid,
4228 void **ppv) = 0;
4229
4230};
4231#ifdef __CRT_UUID_DECL
4232__CRT_UUID_DECL(IGlobalInterfaceTable, 0x00000146, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4233#endif
4234#else
4235typedef struct IGlobalInterfaceTableVtbl {
4236 BEGIN_INTERFACE
4237
4238 /*** IUnknown methods ***/
4239 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4240 IGlobalInterfaceTable *This,
4241 REFIID riid,
4242 void **ppvObject);
4243
4244 ULONG (STDMETHODCALLTYPE *AddRef)(
4245 IGlobalInterfaceTable *This);
4246
4247 ULONG (STDMETHODCALLTYPE *Release)(
4248 IGlobalInterfaceTable *This);
4249
4250 /*** IGlobalInterfaceTable methods ***/
4251 HRESULT (STDMETHODCALLTYPE *RegisterInterfaceInGlobal)(
4252 IGlobalInterfaceTable *This,
4253 IUnknown *pUnk,
4254 REFIID riid,
4255 DWORD *pdwCookie);
4256
4257 HRESULT (STDMETHODCALLTYPE *RevokeInterfaceFromGlobal)(
4258 IGlobalInterfaceTable *This,
4259 DWORD dwCookie);
4260
4261 HRESULT (STDMETHODCALLTYPE *GetInterfaceFromGlobal)(
4262 IGlobalInterfaceTable *This,
4263 DWORD dwCookie,
4264 REFIID riid,
4265 void **ppv);
4266
4267 END_INTERFACE
4268} IGlobalInterfaceTableVtbl;
4269
4270interface IGlobalInterfaceTable {
4271 CONST_VTBL IGlobalInterfaceTableVtbl* lpVtbl;
4272};
4273
4274#ifdef COBJMACROS
4275#ifndef WIDL_C_INLINE_WRAPPERS
4276/*** IUnknown methods ***/
4277#define IGlobalInterfaceTable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4278#define IGlobalInterfaceTable_AddRef(This) (This)->lpVtbl->AddRef(This)
4279#define IGlobalInterfaceTable_Release(This) (This)->lpVtbl->Release(This)
4280/*** IGlobalInterfaceTable methods ***/
4281#define IGlobalInterfaceTable_RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie) (This)->lpVtbl->RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie)
4282#define IGlobalInterfaceTable_RevokeInterfaceFromGlobal(This,dwCookie) (This)->lpVtbl->RevokeInterfaceFromGlobal(This,dwCookie)
4283#define IGlobalInterfaceTable_GetInterfaceFromGlobal(This,dwCookie,riid,ppv) (This)->lpVtbl->GetInterfaceFromGlobal(This,dwCookie,riid,ppv)
4284#else
4285/*** IUnknown methods ***/
4286static FORCEINLINE HRESULT IGlobalInterfaceTable_QueryInterface(IGlobalInterfaceTable* This,REFIID riid,void **ppvObject) {
4287 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4288}
4289static FORCEINLINE ULONG IGlobalInterfaceTable_AddRef(IGlobalInterfaceTable* This) {
4290 return This->lpVtbl->AddRef(This);
4291}
4292static FORCEINLINE ULONG IGlobalInterfaceTable_Release(IGlobalInterfaceTable* This) {
4293 return This->lpVtbl->Release(This);
4294}
4295/*** IGlobalInterfaceTable methods ***/
4296static FORCEINLINE HRESULT IGlobalInterfaceTable_RegisterInterfaceInGlobal(IGlobalInterfaceTable* This,IUnknown *pUnk,REFIID riid,DWORD *pdwCookie) {
4297 return This->lpVtbl->RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie);
4298}
4299static FORCEINLINE HRESULT IGlobalInterfaceTable_RevokeInterfaceFromGlobal(IGlobalInterfaceTable* This,DWORD dwCookie) {
4300 return This->lpVtbl->RevokeInterfaceFromGlobal(This,dwCookie);
4301}
4302static FORCEINLINE HRESULT IGlobalInterfaceTable_GetInterfaceFromGlobal(IGlobalInterfaceTable* This,DWORD dwCookie,REFIID riid,void **ppv) {
4303 return This->lpVtbl->GetInterfaceFromGlobal(This,dwCookie,riid,ppv);
4304}
4305#endif
4306#endif
4307
4308#endif
4309
4310
4311#endif /* __IGlobalInterfaceTable_INTERFACE_DEFINED__ */
4312
4313#endif
4314
4315#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
4316/*****************************************************************************
4317 * ISynchronize interface
4318 */
4319#ifndef __ISynchronize_INTERFACE_DEFINED__
4320#define __ISynchronize_INTERFACE_DEFINED__
4321
4322DEFINE_GUID(IID_ISynchronize, 0x00000030, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4323#if defined(__cplusplus) && !defined(CINTERFACE)
4324MIDL_INTERFACE("00000030-0000-0000-c000-000000000046")
4325ISynchronize : public IUnknown
4326{
4327 virtual HRESULT STDMETHODCALLTYPE Wait(
4328 DWORD dwFlags,
4329 DWORD dwMilliseconds) = 0;
4330
4331 virtual HRESULT STDMETHODCALLTYPE Signal(
4332 ) = 0;
4333
4334 virtual HRESULT STDMETHODCALLTYPE Reset(
4335 ) = 0;
4336
4337};
4338#ifdef __CRT_UUID_DECL
4339__CRT_UUID_DECL(ISynchronize, 0x00000030, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4340#endif
4341#else
4342typedef struct ISynchronizeVtbl {
4343 BEGIN_INTERFACE
4344
4345 /*** IUnknown methods ***/
4346 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4347 ISynchronize *This,
4348 REFIID riid,
4349 void **ppvObject);
4350
4351 ULONG (STDMETHODCALLTYPE *AddRef)(
4352 ISynchronize *This);
4353
4354 ULONG (STDMETHODCALLTYPE *Release)(
4355 ISynchronize *This);
4356
4357 /*** ISynchronize methods ***/
4358 HRESULT (STDMETHODCALLTYPE *Wait)(
4359 ISynchronize *This,
4360 DWORD dwFlags,
4361 DWORD dwMilliseconds);
4362
4363 HRESULT (STDMETHODCALLTYPE *Signal)(
4364 ISynchronize *This);
4365
4366 HRESULT (STDMETHODCALLTYPE *Reset)(
4367 ISynchronize *This);
4368
4369 END_INTERFACE
4370} ISynchronizeVtbl;
4371
4372interface ISynchronize {
4373 CONST_VTBL ISynchronizeVtbl* lpVtbl;
4374};
4375
4376#ifdef COBJMACROS
4377#ifndef WIDL_C_INLINE_WRAPPERS
4378/*** IUnknown methods ***/
4379#define ISynchronize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4380#define ISynchronize_AddRef(This) (This)->lpVtbl->AddRef(This)
4381#define ISynchronize_Release(This) (This)->lpVtbl->Release(This)
4382/*** ISynchronize methods ***/
4383#define ISynchronize_Wait(This,dwFlags,dwMilliseconds) (This)->lpVtbl->Wait(This,dwFlags,dwMilliseconds)
4384#define ISynchronize_Signal(This) (This)->lpVtbl->Signal(This)
4385#define ISynchronize_Reset(This) (This)->lpVtbl->Reset(This)
4386#else
4387/*** IUnknown methods ***/
4388static FORCEINLINE HRESULT ISynchronize_QueryInterface(ISynchronize* This,REFIID riid,void **ppvObject) {
4389 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4390}
4391static FORCEINLINE ULONG ISynchronize_AddRef(ISynchronize* This) {
4392 return This->lpVtbl->AddRef(This);
4393}
4394static FORCEINLINE ULONG ISynchronize_Release(ISynchronize* This) {
4395 return This->lpVtbl->Release(This);
4396}
4397/*** ISynchronize methods ***/
4398static FORCEINLINE HRESULT ISynchronize_Wait(ISynchronize* This,DWORD dwFlags,DWORD dwMilliseconds) {
4399 return This->lpVtbl->Wait(This,dwFlags,dwMilliseconds);
4400}
4401static FORCEINLINE HRESULT ISynchronize_Signal(ISynchronize* This) {
4402 return This->lpVtbl->Signal(This);
4403}
4404static FORCEINLINE HRESULT ISynchronize_Reset(ISynchronize* This) {
4405 return This->lpVtbl->Reset(This);
4406}
4407#endif
4408#endif
4409
4410#endif
4411
4412
4413#endif /* __ISynchronize_INTERFACE_DEFINED__ */
4414
4415
4416/*****************************************************************************
4417 * ISynchronizeHandle interface
4418 */
4419#ifndef __ISynchronizeHandle_INTERFACE_DEFINED__
4420#define __ISynchronizeHandle_INTERFACE_DEFINED__
4421
4422DEFINE_GUID(IID_ISynchronizeHandle, 0x00000031, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4423#if defined(__cplusplus) && !defined(CINTERFACE)
4424MIDL_INTERFACE("00000031-0000-0000-c000-000000000046")
4425ISynchronizeHandle : public IUnknown
4426{
4427 virtual HRESULT STDMETHODCALLTYPE GetHandle(
4428 HANDLE *ph) = 0;
4429
4430};
4431#ifdef __CRT_UUID_DECL
4432__CRT_UUID_DECL(ISynchronizeHandle, 0x00000031, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4433#endif
4434#else
4435typedef struct ISynchronizeHandleVtbl {
4436 BEGIN_INTERFACE
4437
4438 /*** IUnknown methods ***/
4439 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4440 ISynchronizeHandle *This,
4441 REFIID riid,
4442 void **ppvObject);
4443
4444 ULONG (STDMETHODCALLTYPE *AddRef)(
4445 ISynchronizeHandle *This);
4446
4447 ULONG (STDMETHODCALLTYPE *Release)(
4448 ISynchronizeHandle *This);
4449
4450 /*** ISynchronizeHandle methods ***/
4451 HRESULT (STDMETHODCALLTYPE *GetHandle)(
4452 ISynchronizeHandle *This,
4453 HANDLE *ph);
4454
4455 END_INTERFACE
4456} ISynchronizeHandleVtbl;
4457
4458interface ISynchronizeHandle {
4459 CONST_VTBL ISynchronizeHandleVtbl* lpVtbl;
4460};
4461
4462#ifdef COBJMACROS
4463#ifndef WIDL_C_INLINE_WRAPPERS
4464/*** IUnknown methods ***/
4465#define ISynchronizeHandle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4466#define ISynchronizeHandle_AddRef(This) (This)->lpVtbl->AddRef(This)
4467#define ISynchronizeHandle_Release(This) (This)->lpVtbl->Release(This)
4468/*** ISynchronizeHandle methods ***/
4469#define ISynchronizeHandle_GetHandle(This,ph) (This)->lpVtbl->GetHandle(This,ph)
4470#else
4471/*** IUnknown methods ***/
4472static FORCEINLINE HRESULT ISynchronizeHandle_QueryInterface(ISynchronizeHandle* This,REFIID riid,void **ppvObject) {
4473 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4474}
4475static FORCEINLINE ULONG ISynchronizeHandle_AddRef(ISynchronizeHandle* This) {
4476 return This->lpVtbl->AddRef(This);
4477}
4478static FORCEINLINE ULONG ISynchronizeHandle_Release(ISynchronizeHandle* This) {
4479 return This->lpVtbl->Release(This);
4480}
4481/*** ISynchronizeHandle methods ***/
4482static FORCEINLINE HRESULT ISynchronizeHandle_GetHandle(ISynchronizeHandle* This,HANDLE *ph) {
4483 return This->lpVtbl->GetHandle(This,ph);
4484}
4485#endif
4486#endif
4487
4488#endif
4489
4490
4491#endif /* __ISynchronizeHandle_INTERFACE_DEFINED__ */
4492
4493
4494/*****************************************************************************
4495 * ISynchronizeEvent interface
4496 */
4497#ifndef __ISynchronizeEvent_INTERFACE_DEFINED__
4498#define __ISynchronizeEvent_INTERFACE_DEFINED__
4499
4500DEFINE_GUID(IID_ISynchronizeEvent, 0x00000032, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4501#if defined(__cplusplus) && !defined(CINTERFACE)
4502MIDL_INTERFACE("00000032-0000-0000-c000-000000000046")
4503ISynchronizeEvent : public ISynchronizeHandle
4504{
4505 virtual HRESULT STDMETHODCALLTYPE SetEventHandle(
4506 HANDLE *ph) = 0;
4507
4508};
4509#ifdef __CRT_UUID_DECL
4510__CRT_UUID_DECL(ISynchronizeEvent, 0x00000032, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4511#endif
4512#else
4513typedef struct ISynchronizeEventVtbl {
4514 BEGIN_INTERFACE
4515
4516 /*** IUnknown methods ***/
4517 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4518 ISynchronizeEvent *This,
4519 REFIID riid,
4520 void **ppvObject);
4521
4522 ULONG (STDMETHODCALLTYPE *AddRef)(
4523 ISynchronizeEvent *This);
4524
4525 ULONG (STDMETHODCALLTYPE *Release)(
4526 ISynchronizeEvent *This);
4527
4528 /*** ISynchronizeHandle methods ***/
4529 HRESULT (STDMETHODCALLTYPE *GetHandle)(
4530 ISynchronizeEvent *This,
4531 HANDLE *ph);
4532
4533 /*** ISynchronizeEvent methods ***/
4534 HRESULT (STDMETHODCALLTYPE *SetEventHandle)(
4535 ISynchronizeEvent *This,
4536 HANDLE *ph);
4537
4538 END_INTERFACE
4539} ISynchronizeEventVtbl;
4540
4541interface ISynchronizeEvent {
4542 CONST_VTBL ISynchronizeEventVtbl* lpVtbl;
4543};
4544
4545#ifdef COBJMACROS
4546#ifndef WIDL_C_INLINE_WRAPPERS
4547/*** IUnknown methods ***/
4548#define ISynchronizeEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4549#define ISynchronizeEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
4550#define ISynchronizeEvent_Release(This) (This)->lpVtbl->Release(This)
4551/*** ISynchronizeHandle methods ***/
4552#define ISynchronizeEvent_GetHandle(This,ph) (This)->lpVtbl->GetHandle(This,ph)
4553/*** ISynchronizeEvent methods ***/
4554#define ISynchronizeEvent_SetEventHandle(This,ph) (This)->lpVtbl->SetEventHandle(This,ph)
4555#else
4556/*** IUnknown methods ***/
4557static FORCEINLINE HRESULT ISynchronizeEvent_QueryInterface(ISynchronizeEvent* This,REFIID riid,void **ppvObject) {
4558 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4559}
4560static FORCEINLINE ULONG ISynchronizeEvent_AddRef(ISynchronizeEvent* This) {
4561 return This->lpVtbl->AddRef(This);
4562}
4563static FORCEINLINE ULONG ISynchronizeEvent_Release(ISynchronizeEvent* This) {
4564 return This->lpVtbl->Release(This);
4565}
4566/*** ISynchronizeHandle methods ***/
4567static FORCEINLINE HRESULT ISynchronizeEvent_GetHandle(ISynchronizeEvent* This,HANDLE *ph) {
4568 return This->lpVtbl->GetHandle(This,ph);
4569}
4570/*** ISynchronizeEvent methods ***/
4571static FORCEINLINE HRESULT ISynchronizeEvent_SetEventHandle(ISynchronizeEvent* This,HANDLE *ph) {
4572 return This->lpVtbl->SetEventHandle(This,ph);
4573}
4574#endif
4575#endif
4576
4577#endif
4578
4579
4580#endif /* __ISynchronizeEvent_INTERFACE_DEFINED__ */
4581
4582
4583/*****************************************************************************
4584 * ISynchronizeContainer interface
4585 */
4586#ifndef __ISynchronizeContainer_INTERFACE_DEFINED__
4587#define __ISynchronizeContainer_INTERFACE_DEFINED__
4588
4589DEFINE_GUID(IID_ISynchronizeContainer, 0x00000033, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4590#if defined(__cplusplus) && !defined(CINTERFACE)
4591MIDL_INTERFACE("00000033-0000-0000-c000-000000000046")
4592ISynchronizeContainer : public IUnknown
4593{
4594 virtual HRESULT STDMETHODCALLTYPE AddSynchronize(
4595 ISynchronize *pSync) = 0;
4596
4597 virtual HRESULT STDMETHODCALLTYPE WaitMultiple(
4598 DWORD dwFlags,
4599 DWORD dwTimeOut,
4600 ISynchronize **ppSync) = 0;
4601
4602};
4603#ifdef __CRT_UUID_DECL
4604__CRT_UUID_DECL(ISynchronizeContainer, 0x00000033, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4605#endif
4606#else
4607typedef struct ISynchronizeContainerVtbl {
4608 BEGIN_INTERFACE
4609
4610 /*** IUnknown methods ***/
4611 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4612 ISynchronizeContainer *This,
4613 REFIID riid,
4614 void **ppvObject);
4615
4616 ULONG (STDMETHODCALLTYPE *AddRef)(
4617 ISynchronizeContainer *This);
4618
4619 ULONG (STDMETHODCALLTYPE *Release)(
4620 ISynchronizeContainer *This);
4621
4622 /*** ISynchronizeContainer methods ***/
4623 HRESULT (STDMETHODCALLTYPE *AddSynchronize)(
4624 ISynchronizeContainer *This,
4625 ISynchronize *pSync);
4626
4627 HRESULT (STDMETHODCALLTYPE *WaitMultiple)(
4628 ISynchronizeContainer *This,
4629 DWORD dwFlags,
4630 DWORD dwTimeOut,
4631 ISynchronize **ppSync);
4632
4633 END_INTERFACE
4634} ISynchronizeContainerVtbl;
4635
4636interface ISynchronizeContainer {
4637 CONST_VTBL ISynchronizeContainerVtbl* lpVtbl;
4638};
4639
4640#ifdef COBJMACROS
4641#ifndef WIDL_C_INLINE_WRAPPERS
4642/*** IUnknown methods ***/
4643#define ISynchronizeContainer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4644#define ISynchronizeContainer_AddRef(This) (This)->lpVtbl->AddRef(This)
4645#define ISynchronizeContainer_Release(This) (This)->lpVtbl->Release(This)
4646/*** ISynchronizeContainer methods ***/
4647#define ISynchronizeContainer_AddSynchronize(This,pSync) (This)->lpVtbl->AddSynchronize(This,pSync)
4648#define ISynchronizeContainer_WaitMultiple(This,dwFlags,dwTimeOut,ppSync) (This)->lpVtbl->WaitMultiple(This,dwFlags,dwTimeOut,ppSync)
4649#else
4650/*** IUnknown methods ***/
4651static FORCEINLINE HRESULT ISynchronizeContainer_QueryInterface(ISynchronizeContainer* This,REFIID riid,void **ppvObject) {
4652 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4653}
4654static FORCEINLINE ULONG ISynchronizeContainer_AddRef(ISynchronizeContainer* This) {
4655 return This->lpVtbl->AddRef(This);
4656}
4657static FORCEINLINE ULONG ISynchronizeContainer_Release(ISynchronizeContainer* This) {
4658 return This->lpVtbl->Release(This);
4659}
4660/*** ISynchronizeContainer methods ***/
4661static FORCEINLINE HRESULT ISynchronizeContainer_AddSynchronize(ISynchronizeContainer* This,ISynchronize *pSync) {
4662 return This->lpVtbl->AddSynchronize(This,pSync);
4663}
4664static FORCEINLINE HRESULT ISynchronizeContainer_WaitMultiple(ISynchronizeContainer* This,DWORD dwFlags,DWORD dwTimeOut,ISynchronize **ppSync) {
4665 return This->lpVtbl->WaitMultiple(This,dwFlags,dwTimeOut,ppSync);
4666}
4667#endif
4668#endif
4669
4670#endif
4671
4672
4673#endif /* __ISynchronizeContainer_INTERFACE_DEFINED__ */
4674
4675
4676/*****************************************************************************
4677 * ISynchronizeMutex interface
4678 */
4679#ifndef __ISynchronizeMutex_INTERFACE_DEFINED__
4680#define __ISynchronizeMutex_INTERFACE_DEFINED__
4681
4682DEFINE_GUID(IID_ISynchronizeMutex, 0x00000025, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4683#if defined(__cplusplus) && !defined(CINTERFACE)
4684MIDL_INTERFACE("00000025-0000-0000-c000-000000000046")
4685ISynchronizeMutex : public ISynchronize
4686{
4687 virtual HRESULT STDMETHODCALLTYPE ReleaseMutex(
4688 ) = 0;
4689
4690};
4691#ifdef __CRT_UUID_DECL
4692__CRT_UUID_DECL(ISynchronizeMutex, 0x00000025, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4693#endif
4694#else
4695typedef struct ISynchronizeMutexVtbl {
4696 BEGIN_INTERFACE
4697
4698 /*** IUnknown methods ***/
4699 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4700 ISynchronizeMutex *This,
4701 REFIID riid,
4702 void **ppvObject);
4703
4704 ULONG (STDMETHODCALLTYPE *AddRef)(
4705 ISynchronizeMutex *This);
4706
4707 ULONG (STDMETHODCALLTYPE *Release)(
4708 ISynchronizeMutex *This);
4709
4710 /*** ISynchronize methods ***/
4711 HRESULT (STDMETHODCALLTYPE *Wait)(
4712 ISynchronizeMutex *This,
4713 DWORD dwFlags,
4714 DWORD dwMilliseconds);
4715
4716 HRESULT (STDMETHODCALLTYPE *Signal)(
4717 ISynchronizeMutex *This);
4718
4719 HRESULT (STDMETHODCALLTYPE *Reset)(
4720 ISynchronizeMutex *This);
4721
4722 /*** ISynchronizeMutex methods ***/
4723 HRESULT (STDMETHODCALLTYPE *ReleaseMutex)(
4724 ISynchronizeMutex *This);
4725
4726 END_INTERFACE
4727} ISynchronizeMutexVtbl;
4728
4729interface ISynchronizeMutex {
4730 CONST_VTBL ISynchronizeMutexVtbl* lpVtbl;
4731};
4732
4733#ifdef COBJMACROS
4734#ifndef WIDL_C_INLINE_WRAPPERS
4735/*** IUnknown methods ***/
4736#define ISynchronizeMutex_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4737#define ISynchronizeMutex_AddRef(This) (This)->lpVtbl->AddRef(This)
4738#define ISynchronizeMutex_Release(This) (This)->lpVtbl->Release(This)
4739/*** ISynchronize methods ***/
4740#define ISynchronizeMutex_Wait(This,dwFlags,dwMilliseconds) (This)->lpVtbl->Wait(This,dwFlags,dwMilliseconds)
4741#define ISynchronizeMutex_Signal(This) (This)->lpVtbl->Signal(This)
4742#define ISynchronizeMutex_Reset(This) (This)->lpVtbl->Reset(This)
4743/*** ISynchronizeMutex methods ***/
4744#define ISynchronizeMutex_ReleaseMutex(This) (This)->lpVtbl->ReleaseMutex(This)
4745#else
4746/*** IUnknown methods ***/
4747static FORCEINLINE HRESULT ISynchronizeMutex_QueryInterface(ISynchronizeMutex* This,REFIID riid,void **ppvObject) {
4748 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4749}
4750static FORCEINLINE ULONG ISynchronizeMutex_AddRef(ISynchronizeMutex* This) {
4751 return This->lpVtbl->AddRef(This);
4752}
4753static FORCEINLINE ULONG ISynchronizeMutex_Release(ISynchronizeMutex* This) {
4754 return This->lpVtbl->Release(This);
4755}
4756/*** ISynchronize methods ***/
4757static FORCEINLINE HRESULT ISynchronizeMutex_Wait(ISynchronizeMutex* This,DWORD dwFlags,DWORD dwMilliseconds) {
4758 return This->lpVtbl->Wait(This,dwFlags,dwMilliseconds);
4759}
4760static FORCEINLINE HRESULT ISynchronizeMutex_Signal(ISynchronizeMutex* This) {
4761 return This->lpVtbl->Signal(This);
4762}
4763static FORCEINLINE HRESULT ISynchronizeMutex_Reset(ISynchronizeMutex* This) {
4764 return This->lpVtbl->Reset(This);
4765}
4766/*** ISynchronizeMutex methods ***/
4767static FORCEINLINE HRESULT ISynchronizeMutex_ReleaseMutex(ISynchronizeMutex* This) {
4768 return This->lpVtbl->ReleaseMutex(This);
4769}
4770#endif
4771#endif
4772
4773#endif
4774
4775
4776#endif /* __ISynchronizeMutex_INTERFACE_DEFINED__ */
4777
4778
4779/*****************************************************************************
4780 * ICancelMethodCalls interface
4781 */
4782#ifndef __ICancelMethodCalls_INTERFACE_DEFINED__
4783#define __ICancelMethodCalls_INTERFACE_DEFINED__
4784
4785typedef ICancelMethodCalls *LPCANCELMETHODCALLS;
4786
4787DEFINE_GUID(IID_ICancelMethodCalls, 0x00000029, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4788#if defined(__cplusplus) && !defined(CINTERFACE)
4789MIDL_INTERFACE("00000029-0000-0000-c000-000000000046")
4790ICancelMethodCalls : public IUnknown
4791{
4792 virtual HRESULT STDMETHODCALLTYPE Cancel(
4793 ULONG ulSeconds) = 0;
4794
4795 virtual HRESULT STDMETHODCALLTYPE TestCancel(
4796 ) = 0;
4797
4798};
4799#ifdef __CRT_UUID_DECL
4800__CRT_UUID_DECL(ICancelMethodCalls, 0x00000029, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4801#endif
4802#else
4803typedef struct ICancelMethodCallsVtbl {
4804 BEGIN_INTERFACE
4805
4806 /*** IUnknown methods ***/
4807 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4808 ICancelMethodCalls *This,
4809 REFIID riid,
4810 void **ppvObject);
4811
4812 ULONG (STDMETHODCALLTYPE *AddRef)(
4813 ICancelMethodCalls *This);
4814
4815 ULONG (STDMETHODCALLTYPE *Release)(
4816 ICancelMethodCalls *This);
4817
4818 /*** ICancelMethodCalls methods ***/
4819 HRESULT (STDMETHODCALLTYPE *Cancel)(
4820 ICancelMethodCalls *This,
4821 ULONG ulSeconds);
4822
4823 HRESULT (STDMETHODCALLTYPE *TestCancel)(
4824 ICancelMethodCalls *This);
4825
4826 END_INTERFACE
4827} ICancelMethodCallsVtbl;
4828
4829interface ICancelMethodCalls {
4830 CONST_VTBL ICancelMethodCallsVtbl* lpVtbl;
4831};
4832
4833#ifdef COBJMACROS
4834#ifndef WIDL_C_INLINE_WRAPPERS
4835/*** IUnknown methods ***/
4836#define ICancelMethodCalls_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4837#define ICancelMethodCalls_AddRef(This) (This)->lpVtbl->AddRef(This)
4838#define ICancelMethodCalls_Release(This) (This)->lpVtbl->Release(This)
4839/*** ICancelMethodCalls methods ***/
4840#define ICancelMethodCalls_Cancel(This,ulSeconds) (This)->lpVtbl->Cancel(This,ulSeconds)
4841#define ICancelMethodCalls_TestCancel(This) (This)->lpVtbl->TestCancel(This)
4842#else
4843/*** IUnknown methods ***/
4844static FORCEINLINE HRESULT ICancelMethodCalls_QueryInterface(ICancelMethodCalls* This,REFIID riid,void **ppvObject) {
4845 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4846}
4847static FORCEINLINE ULONG ICancelMethodCalls_AddRef(ICancelMethodCalls* This) {
4848 return This->lpVtbl->AddRef(This);
4849}
4850static FORCEINLINE ULONG ICancelMethodCalls_Release(ICancelMethodCalls* This) {
4851 return This->lpVtbl->Release(This);
4852}
4853/*** ICancelMethodCalls methods ***/
4854static FORCEINLINE HRESULT ICancelMethodCalls_Cancel(ICancelMethodCalls* This,ULONG ulSeconds) {
4855 return This->lpVtbl->Cancel(This,ulSeconds);
4856}
4857static FORCEINLINE HRESULT ICancelMethodCalls_TestCancel(ICancelMethodCalls* This) {
4858 return This->lpVtbl->TestCancel(This);
4859}
4860#endif
4861#endif
4862
4863#endif
4864
4865
4866#endif /* __ICancelMethodCalls_INTERFACE_DEFINED__ */
4867
4868
4869/*****************************************************************************
4870 * IAsyncManager interface
4871 */
4872#ifndef __IAsyncManager_INTERFACE_DEFINED__
4873#define __IAsyncManager_INTERFACE_DEFINED__
4874
4875typedef enum tagDCOM_CALL_STATE {
4876 DCOM_NONE = 0x0,
4877 DCOM_CALL_COMPLETE = 0x1,
4878 DCOM_CALL_CANCELED = 0x2
4879} DCOM_CALL_STATE;
4880
4881DEFINE_GUID(IID_IAsyncManager, 0x0000002a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
4882#if defined(__cplusplus) && !defined(CINTERFACE)
4883MIDL_INTERFACE("0000002a-0000-0000-c000-000000000046")
4884IAsyncManager : public IUnknown
4885{
4886 virtual HRESULT STDMETHODCALLTYPE CompleteCall(
4887 HRESULT Result) = 0;
4888
4889 virtual HRESULT STDMETHODCALLTYPE GetCallContext(
4890 REFIID riid,
4891 void **pInterface) = 0;
4892
4893 virtual HRESULT STDMETHODCALLTYPE GetState(
4894 ULONG *pulStateFlags) = 0;
4895
4896};
4897#ifdef __CRT_UUID_DECL
4898__CRT_UUID_DECL(IAsyncManager, 0x0000002a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
4899#endif
4900#else
4901typedef struct IAsyncManagerVtbl {
4902 BEGIN_INTERFACE
4903
4904 /*** IUnknown methods ***/
4905 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4906 IAsyncManager *This,
4907 REFIID riid,
4908 void **ppvObject);
4909
4910 ULONG (STDMETHODCALLTYPE *AddRef)(
4911 IAsyncManager *This);
4912
4913 ULONG (STDMETHODCALLTYPE *Release)(
4914 IAsyncManager *This);
4915
4916 /*** IAsyncManager methods ***/
4917 HRESULT (STDMETHODCALLTYPE *CompleteCall)(
4918 IAsyncManager *This,
4919 HRESULT Result);
4920
4921 HRESULT (STDMETHODCALLTYPE *GetCallContext)(
4922 IAsyncManager *This,
4923 REFIID riid,
4924 void **pInterface);
4925
4926 HRESULT (STDMETHODCALLTYPE *GetState)(
4927 IAsyncManager *This,
4928 ULONG *pulStateFlags);
4929
4930 END_INTERFACE
4931} IAsyncManagerVtbl;
4932
4933interface IAsyncManager {
4934 CONST_VTBL IAsyncManagerVtbl* lpVtbl;
4935};
4936
4937#ifdef COBJMACROS
4938#ifndef WIDL_C_INLINE_WRAPPERS
4939/*** IUnknown methods ***/
4940#define IAsyncManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4941#define IAsyncManager_AddRef(This) (This)->lpVtbl->AddRef(This)
4942#define IAsyncManager_Release(This) (This)->lpVtbl->Release(This)
4943/*** IAsyncManager methods ***/
4944#define IAsyncManager_CompleteCall(This,Result) (This)->lpVtbl->CompleteCall(This,Result)
4945#define IAsyncManager_GetCallContext(This,riid,pInterface) (This)->lpVtbl->GetCallContext(This,riid,pInterface)
4946#define IAsyncManager_GetState(This,pulStateFlags) (This)->lpVtbl->GetState(This,pulStateFlags)
4947#else
4948/*** IUnknown methods ***/
4949static FORCEINLINE HRESULT IAsyncManager_QueryInterface(IAsyncManager* This,REFIID riid,void **ppvObject) {
4950 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4951}
4952static FORCEINLINE ULONG IAsyncManager_AddRef(IAsyncManager* This) {
4953 return This->lpVtbl->AddRef(This);
4954}
4955static FORCEINLINE ULONG IAsyncManager_Release(IAsyncManager* This) {
4956 return This->lpVtbl->Release(This);
4957}
4958/*** IAsyncManager methods ***/
4959static FORCEINLINE HRESULT IAsyncManager_CompleteCall(IAsyncManager* This,HRESULT Result) {
4960 return This->lpVtbl->CompleteCall(This,Result);
4961}
4962static FORCEINLINE HRESULT IAsyncManager_GetCallContext(IAsyncManager* This,REFIID riid,void **pInterface) {
4963 return This->lpVtbl->GetCallContext(This,riid,pInterface);
4964}
4965static FORCEINLINE HRESULT IAsyncManager_GetState(IAsyncManager* This,ULONG *pulStateFlags) {
4966 return This->lpVtbl->GetState(This,pulStateFlags);
4967}
4968#endif
4969#endif
4970
4971#endif
4972
4973
4974#endif /* __IAsyncManager_INTERFACE_DEFINED__ */
4975
4976
4977/*****************************************************************************
4978 * ICallFactory interface
4979 */
4980#ifndef __ICallFactory_INTERFACE_DEFINED__
4981#define __ICallFactory_INTERFACE_DEFINED__
4982
4983DEFINE_GUID(IID_ICallFactory, 0x1c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d);
4984#if defined(__cplusplus) && !defined(CINTERFACE)
4985MIDL_INTERFACE("1c733a30-2a1c-11ce-ade5-00aa0044773d")
4986ICallFactory : public IUnknown
4987{
4988 virtual HRESULT STDMETHODCALLTYPE CreateCall(
4989 REFIID riid,
4990 IUnknown *pCtrlUnk,
4991 REFIID riid2,
4992 IUnknown **ppv) = 0;
4993
4994};
4995#ifdef __CRT_UUID_DECL
4996__CRT_UUID_DECL(ICallFactory, 0x1c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d)
4997#endif
4998#else
4999typedef struct ICallFactoryVtbl {
5000 BEGIN_INTERFACE
5001
5002 /*** IUnknown methods ***/
5003 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5004 ICallFactory *This,
5005 REFIID riid,
5006 void **ppvObject);
5007
5008 ULONG (STDMETHODCALLTYPE *AddRef)(
5009 ICallFactory *This);
5010
5011 ULONG (STDMETHODCALLTYPE *Release)(
5012 ICallFactory *This);
5013
5014 /*** ICallFactory methods ***/
5015 HRESULT (STDMETHODCALLTYPE *CreateCall)(
5016 ICallFactory *This,
5017 REFIID riid,
5018 IUnknown *pCtrlUnk,
5019 REFIID riid2,
5020 IUnknown **ppv);
5021
5022 END_INTERFACE
5023} ICallFactoryVtbl;
5024
5025interface ICallFactory {
5026 CONST_VTBL ICallFactoryVtbl* lpVtbl;
5027};
5028
5029#ifdef COBJMACROS
5030#ifndef WIDL_C_INLINE_WRAPPERS
5031/*** IUnknown methods ***/
5032#define ICallFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5033#define ICallFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
5034#define ICallFactory_Release(This) (This)->lpVtbl->Release(This)
5035/*** ICallFactory methods ***/
5036#define ICallFactory_CreateCall(This,riid,pCtrlUnk,riid2,ppv) (This)->lpVtbl->CreateCall(This,riid,pCtrlUnk,riid2,ppv)
5037#else
5038/*** IUnknown methods ***/
5039static FORCEINLINE HRESULT ICallFactory_QueryInterface(ICallFactory* This,REFIID riid,void **ppvObject) {
5040 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5041}
5042static FORCEINLINE ULONG ICallFactory_AddRef(ICallFactory* This) {
5043 return This->lpVtbl->AddRef(This);
5044}
5045static FORCEINLINE ULONG ICallFactory_Release(ICallFactory* This) {
5046 return This->lpVtbl->Release(This);
5047}
5048/*** ICallFactory methods ***/
5049static FORCEINLINE HRESULT ICallFactory_CreateCall(ICallFactory* This,REFIID riid,IUnknown *pCtrlUnk,REFIID riid2,IUnknown **ppv) {
5050 return This->lpVtbl->CreateCall(This,riid,pCtrlUnk,riid2,ppv);
5051}
5052#endif
5053#endif
5054
5055#endif
5056
5057
5058#endif /* __ICallFactory_INTERFACE_DEFINED__ */
5059
5060
5061/*****************************************************************************
5062 * IRpcHelper interface
5063 */
5064#ifndef __IRpcHelper_INTERFACE_DEFINED__
5065#define __IRpcHelper_INTERFACE_DEFINED__
5066
5067DEFINE_GUID(IID_IRpcHelper, 0x00000149, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
5068#if defined(__cplusplus) && !defined(CINTERFACE)
5069MIDL_INTERFACE("00000149-0000-0000-c000-000000000046")
5070IRpcHelper : public IUnknown
5071{
5072 virtual HRESULT STDMETHODCALLTYPE GetDCOMProtocolVersion(
5073 DWORD *pComVersion) = 0;
5074
5075 virtual HRESULT STDMETHODCALLTYPE GetIIDFromOBJREF(
5076 void *pObjRef,
5077 IID **piid) = 0;
5078
5079};
5080#ifdef __CRT_UUID_DECL
5081__CRT_UUID_DECL(IRpcHelper, 0x00000149, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
5082#endif
5083#else
5084typedef struct IRpcHelperVtbl {
5085 BEGIN_INTERFACE
5086
5087 /*** IUnknown methods ***/
5088 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5089 IRpcHelper *This,
5090 REFIID riid,
5091 void **ppvObject);
5092
5093 ULONG (STDMETHODCALLTYPE *AddRef)(
5094 IRpcHelper *This);
5095
5096 ULONG (STDMETHODCALLTYPE *Release)(
5097 IRpcHelper *This);
5098
5099 /*** IRpcHelper methods ***/
5100 HRESULT (STDMETHODCALLTYPE *GetDCOMProtocolVersion)(
5101 IRpcHelper *This,
5102 DWORD *pComVersion);
5103
5104 HRESULT (STDMETHODCALLTYPE *GetIIDFromOBJREF)(
5105 IRpcHelper *This,
5106 void *pObjRef,
5107 IID **piid);
5108
5109 END_INTERFACE
5110} IRpcHelperVtbl;
5111
5112interface IRpcHelper {
5113 CONST_VTBL IRpcHelperVtbl* lpVtbl;
5114};
5115
5116#ifdef COBJMACROS
5117#ifndef WIDL_C_INLINE_WRAPPERS
5118/*** IUnknown methods ***/
5119#define IRpcHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5120#define IRpcHelper_AddRef(This) (This)->lpVtbl->AddRef(This)
5121#define IRpcHelper_Release(This) (This)->lpVtbl->Release(This)
5122/*** IRpcHelper methods ***/
5123#define IRpcHelper_GetDCOMProtocolVersion(This,pComVersion) (This)->lpVtbl->GetDCOMProtocolVersion(This,pComVersion)
5124#define IRpcHelper_GetIIDFromOBJREF(This,pObjRef,piid) (This)->lpVtbl->GetIIDFromOBJREF(This,pObjRef,piid)
5125#else
5126/*** IUnknown methods ***/
5127static FORCEINLINE HRESULT IRpcHelper_QueryInterface(IRpcHelper* This,REFIID riid,void **ppvObject) {
5128 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5129}
5130static FORCEINLINE ULONG IRpcHelper_AddRef(IRpcHelper* This) {
5131 return This->lpVtbl->AddRef(This);
5132}
5133static FORCEINLINE ULONG IRpcHelper_Release(IRpcHelper* This) {
5134 return This->lpVtbl->Release(This);
5135}
5136/*** IRpcHelper methods ***/
5137static FORCEINLINE HRESULT IRpcHelper_GetDCOMProtocolVersion(IRpcHelper* This,DWORD *pComVersion) {
5138 return This->lpVtbl->GetDCOMProtocolVersion(This,pComVersion);
5139}
5140static FORCEINLINE HRESULT IRpcHelper_GetIIDFromOBJREF(IRpcHelper* This,void *pObjRef,IID **piid) {
5141 return This->lpVtbl->GetIIDFromOBJREF(This,pObjRef,piid);
5142}
5143#endif
5144#endif
5145
5146#endif
5147
5148
5149#endif /* __IRpcHelper_INTERFACE_DEFINED__ */
5150
5151
5152/*****************************************************************************
5153 * IReleaseMarshalBuffers interface
5154 */
5155#ifndef __IReleaseMarshalBuffers_INTERFACE_DEFINED__
5156#define __IReleaseMarshalBuffers_INTERFACE_DEFINED__
5157
5158DEFINE_GUID(IID_IReleaseMarshalBuffers, 0xeb0cb9e8, 0x7996, 0x11d2, 0x87,0x2e, 0x00,0x00,0xf8,0x08,0x08,0x59);
5159#if defined(__cplusplus) && !defined(CINTERFACE)
5160MIDL_INTERFACE("eb0cb9e8-7996-11d2-872e-0000f8080859")
5161IReleaseMarshalBuffers : public IUnknown
5162{
5163 virtual HRESULT STDMETHODCALLTYPE ReleaseMarshalBuffer(
5164 RPCOLEMESSAGE *pMsg,
5165 DWORD dwFlags,
5166 IUnknown *pChnl) = 0;
5167
5168};
5169#ifdef __CRT_UUID_DECL
5170__CRT_UUID_DECL(IReleaseMarshalBuffers, 0xeb0cb9e8, 0x7996, 0x11d2, 0x87,0x2e, 0x00,0x00,0xf8,0x08,0x08,0x59)
5171#endif
5172#else
5173typedef struct IReleaseMarshalBuffersVtbl {
5174 BEGIN_INTERFACE
5175
5176 /*** IUnknown methods ***/
5177 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5178 IReleaseMarshalBuffers *This,
5179 REFIID riid,
5180 void **ppvObject);
5181
5182 ULONG (STDMETHODCALLTYPE *AddRef)(
5183 IReleaseMarshalBuffers *This);
5184
5185 ULONG (STDMETHODCALLTYPE *Release)(
5186 IReleaseMarshalBuffers *This);
5187
5188 /*** IReleaseMarshalBuffers methods ***/
5189 HRESULT (STDMETHODCALLTYPE *ReleaseMarshalBuffer)(
5190 IReleaseMarshalBuffers *This,
5191 RPCOLEMESSAGE *pMsg,
5192 DWORD dwFlags,
5193 IUnknown *pChnl);
5194
5195 END_INTERFACE
5196} IReleaseMarshalBuffersVtbl;
5197
5198interface IReleaseMarshalBuffers {
5199 CONST_VTBL IReleaseMarshalBuffersVtbl* lpVtbl;
5200};
5201
5202#ifdef COBJMACROS
5203#ifndef WIDL_C_INLINE_WRAPPERS
5204/*** IUnknown methods ***/
5205#define IReleaseMarshalBuffers_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5206#define IReleaseMarshalBuffers_AddRef(This) (This)->lpVtbl->AddRef(This)
5207#define IReleaseMarshalBuffers_Release(This) (This)->lpVtbl->Release(This)
5208/*** IReleaseMarshalBuffers methods ***/
5209#define IReleaseMarshalBuffers_ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl) (This)->lpVtbl->ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl)
5210#else
5211/*** IUnknown methods ***/
5212static FORCEINLINE HRESULT IReleaseMarshalBuffers_QueryInterface(IReleaseMarshalBuffers* This,REFIID riid,void **ppvObject) {
5213 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5214}
5215static FORCEINLINE ULONG IReleaseMarshalBuffers_AddRef(IReleaseMarshalBuffers* This) {
5216 return This->lpVtbl->AddRef(This);
5217}
5218static FORCEINLINE ULONG IReleaseMarshalBuffers_Release(IReleaseMarshalBuffers* This) {
5219 return This->lpVtbl->Release(This);
5220}
5221/*** IReleaseMarshalBuffers methods ***/
5222static FORCEINLINE HRESULT IReleaseMarshalBuffers_ReleaseMarshalBuffer(IReleaseMarshalBuffers* This,RPCOLEMESSAGE *pMsg,DWORD dwFlags,IUnknown *pChnl) {
5223 return This->lpVtbl->ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl);
5224}
5225#endif
5226#endif
5227
5228#endif
5229
5230
5231#endif /* __IReleaseMarshalBuffers_INTERFACE_DEFINED__ */
5232
5233
5234/*****************************************************************************
5235 * IWaitMultiple interface
5236 */
5237#ifndef __IWaitMultiple_INTERFACE_DEFINED__
5238#define __IWaitMultiple_INTERFACE_DEFINED__
5239
5240DEFINE_GUID(IID_IWaitMultiple, 0x0000002b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
5241#if defined(__cplusplus) && !defined(CINTERFACE)
5242MIDL_INTERFACE("0000002b-0000-0000-c000-000000000046")
5243IWaitMultiple : public IUnknown
5244{
5245 virtual HRESULT STDMETHODCALLTYPE WaitMultiple(
5246 DWORD timeout,
5247 ISynchronize **pSync) = 0;
5248
5249 virtual HRESULT STDMETHODCALLTYPE AddSynchronize(
5250 ISynchronize *pSync) = 0;
5251
5252};
5253#ifdef __CRT_UUID_DECL
5254__CRT_UUID_DECL(IWaitMultiple, 0x0000002b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
5255#endif
5256#else
5257typedef struct IWaitMultipleVtbl {
5258 BEGIN_INTERFACE
5259
5260 /*** IUnknown methods ***/
5261 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5262 IWaitMultiple *This,
5263 REFIID riid,
5264 void **ppvObject);
5265
5266 ULONG (STDMETHODCALLTYPE *AddRef)(
5267 IWaitMultiple *This);
5268
5269 ULONG (STDMETHODCALLTYPE *Release)(
5270 IWaitMultiple *This);
5271
5272 /*** IWaitMultiple methods ***/
5273 HRESULT (STDMETHODCALLTYPE *WaitMultiple)(
5274 IWaitMultiple *This,
5275 DWORD timeout,
5276 ISynchronize **pSync);
5277
5278 HRESULT (STDMETHODCALLTYPE *AddSynchronize)(
5279 IWaitMultiple *This,
5280 ISynchronize *pSync);
5281
5282 END_INTERFACE
5283} IWaitMultipleVtbl;
5284
5285interface IWaitMultiple {
5286 CONST_VTBL IWaitMultipleVtbl* lpVtbl;
5287};
5288
5289#ifdef COBJMACROS
5290#ifndef WIDL_C_INLINE_WRAPPERS
5291/*** IUnknown methods ***/
5292#define IWaitMultiple_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5293#define IWaitMultiple_AddRef(This) (This)->lpVtbl->AddRef(This)
5294#define IWaitMultiple_Release(This) (This)->lpVtbl->Release(This)
5295/*** IWaitMultiple methods ***/
5296#define IWaitMultiple_WaitMultiple(This,timeout,pSync) (This)->lpVtbl->WaitMultiple(This,timeout,pSync)
5297#define IWaitMultiple_AddSynchronize(This,pSync) (This)->lpVtbl->AddSynchronize(This,pSync)
5298#else
5299/*** IUnknown methods ***/
5300static FORCEINLINE HRESULT IWaitMultiple_QueryInterface(IWaitMultiple* This,REFIID riid,void **ppvObject) {
5301 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5302}
5303static FORCEINLINE ULONG IWaitMultiple_AddRef(IWaitMultiple* This) {
5304 return This->lpVtbl->AddRef(This);
5305}
5306static FORCEINLINE ULONG IWaitMultiple_Release(IWaitMultiple* This) {
5307 return This->lpVtbl->Release(This);
5308}
5309/*** IWaitMultiple methods ***/
5310static FORCEINLINE HRESULT IWaitMultiple_WaitMultiple(IWaitMultiple* This,DWORD timeout,ISynchronize **pSync) {
5311 return This->lpVtbl->WaitMultiple(This,timeout,pSync);
5312}
5313static FORCEINLINE HRESULT IWaitMultiple_AddSynchronize(IWaitMultiple* This,ISynchronize *pSync) {
5314 return This->lpVtbl->AddSynchronize(This,pSync);
5315}
5316#endif
5317#endif
5318
5319#endif
5320
5321
5322#endif /* __IWaitMultiple_INTERFACE_DEFINED__ */
5323
5324
5325/*****************************************************************************
5326 * IAddrTrackingControl interface
5327 */
5328#ifndef __IAddrTrackingControl_INTERFACE_DEFINED__
5329#define __IAddrTrackingControl_INTERFACE_DEFINED__
5330
5331typedef IAddrTrackingControl *LPADDRTRACKINGCONTROL;
5332DEFINE_GUID(IID_IAddrTrackingControl, 0x00000147, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
5333#if defined(__cplusplus) && !defined(CINTERFACE)
5334MIDL_INTERFACE("00000147-0000-0000-c000-000000000046")
5335IAddrTrackingControl : public IUnknown
5336{
5337 virtual HRESULT STDMETHODCALLTYPE EnableCOMDynamicAddrTracking(
5338 ) = 0;
5339
5340 virtual HRESULT STDMETHODCALLTYPE DisableCOMDynamicAddrTracking(
5341 ) = 0;
5342
5343};
5344#ifdef __CRT_UUID_DECL
5345__CRT_UUID_DECL(IAddrTrackingControl, 0x00000147, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
5346#endif
5347#else
5348typedef struct IAddrTrackingControlVtbl {
5349 BEGIN_INTERFACE
5350
5351 /*** IUnknown methods ***/
5352 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5353 IAddrTrackingControl *This,
5354 REFIID riid,
5355 void **ppvObject);
5356
5357 ULONG (STDMETHODCALLTYPE *AddRef)(
5358 IAddrTrackingControl *This);
5359
5360 ULONG (STDMETHODCALLTYPE *Release)(
5361 IAddrTrackingControl *This);
5362
5363 /*** IAddrTrackingControl methods ***/
5364 HRESULT (STDMETHODCALLTYPE *EnableCOMDynamicAddrTracking)(
5365 IAddrTrackingControl *This);
5366
5367 HRESULT (STDMETHODCALLTYPE *DisableCOMDynamicAddrTracking)(
5368 IAddrTrackingControl *This);
5369
5370 END_INTERFACE
5371} IAddrTrackingControlVtbl;
5372
5373interface IAddrTrackingControl {
5374 CONST_VTBL IAddrTrackingControlVtbl* lpVtbl;
5375};
5376
5377#ifdef COBJMACROS
5378#ifndef WIDL_C_INLINE_WRAPPERS
5379/*** IUnknown methods ***/
5380#define IAddrTrackingControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5381#define IAddrTrackingControl_AddRef(This) (This)->lpVtbl->AddRef(This)
5382#define IAddrTrackingControl_Release(This) (This)->lpVtbl->Release(This)
5383/*** IAddrTrackingControl methods ***/
5384#define IAddrTrackingControl_EnableCOMDynamicAddrTracking(This) (This)->lpVtbl->EnableCOMDynamicAddrTracking(This)
5385#define IAddrTrackingControl_DisableCOMDynamicAddrTracking(This) (This)->lpVtbl->DisableCOMDynamicAddrTracking(This)
5386#else
5387/*** IUnknown methods ***/
5388static FORCEINLINE HRESULT IAddrTrackingControl_QueryInterface(IAddrTrackingControl* This,REFIID riid,void **ppvObject) {
5389 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5390}
5391static FORCEINLINE ULONG IAddrTrackingControl_AddRef(IAddrTrackingControl* This) {
5392 return This->lpVtbl->AddRef(This);
5393}
5394static FORCEINLINE ULONG IAddrTrackingControl_Release(IAddrTrackingControl* This) {
5395 return This->lpVtbl->Release(This);
5396}
5397/*** IAddrTrackingControl methods ***/
5398static FORCEINLINE HRESULT IAddrTrackingControl_EnableCOMDynamicAddrTracking(IAddrTrackingControl* This) {
5399 return This->lpVtbl->EnableCOMDynamicAddrTracking(This);
5400}
5401static FORCEINLINE HRESULT IAddrTrackingControl_DisableCOMDynamicAddrTracking(IAddrTrackingControl* This) {
5402 return This->lpVtbl->DisableCOMDynamicAddrTracking(This);
5403}
5404#endif
5405#endif
5406
5407#endif
5408
5409
5410#endif /* __IAddrTrackingControl_INTERFACE_DEFINED__ */
5411
5412
5413/*****************************************************************************
5414 * IAddrExclusionControl interface
5415 */
5416#ifndef __IAddrExclusionControl_INTERFACE_DEFINED__
5417#define __IAddrExclusionControl_INTERFACE_DEFINED__
5418
5419typedef IAddrExclusionControl *LPADDREXCLUSIONCONTROL;
5420DEFINE_GUID(IID_IAddrExclusionControl, 0x00000148, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
5421#if defined(__cplusplus) && !defined(CINTERFACE)
5422MIDL_INTERFACE("00000148-0000-0000-c000-000000000046")
5423IAddrExclusionControl : public IUnknown
5424{
5425 virtual HRESULT STDMETHODCALLTYPE GetCurrentAddrExclusionList(
5426 REFIID riid,
5427 void **ppEnumerator) = 0;
5428
5429 virtual HRESULT STDMETHODCALLTYPE UpdateAddrExclusionList(
5430 IUnknown *pEnumerator) = 0;
5431
5432};
5433#ifdef __CRT_UUID_DECL
5434__CRT_UUID_DECL(IAddrExclusionControl, 0x00000148, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
5435#endif
5436#else
5437typedef struct IAddrExclusionControlVtbl {
5438 BEGIN_INTERFACE
5439
5440 /*** IUnknown methods ***/
5441 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5442 IAddrExclusionControl *This,
5443 REFIID riid,
5444 void **ppvObject);
5445
5446 ULONG (STDMETHODCALLTYPE *AddRef)(
5447 IAddrExclusionControl *This);
5448
5449 ULONG (STDMETHODCALLTYPE *Release)(
5450 IAddrExclusionControl *This);
5451
5452 /*** IAddrExclusionControl methods ***/
5453 HRESULT (STDMETHODCALLTYPE *GetCurrentAddrExclusionList)(
5454 IAddrExclusionControl *This,
5455 REFIID riid,
5456 void **ppEnumerator);
5457
5458 HRESULT (STDMETHODCALLTYPE *UpdateAddrExclusionList)(
5459 IAddrExclusionControl *This,
5460 IUnknown *pEnumerator);
5461
5462 END_INTERFACE
5463} IAddrExclusionControlVtbl;
5464
5465interface IAddrExclusionControl {
5466 CONST_VTBL IAddrExclusionControlVtbl* lpVtbl;
5467};
5468
5469#ifdef COBJMACROS
5470#ifndef WIDL_C_INLINE_WRAPPERS
5471/*** IUnknown methods ***/
5472#define IAddrExclusionControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5473#define IAddrExclusionControl_AddRef(This) (This)->lpVtbl->AddRef(This)
5474#define IAddrExclusionControl_Release(This) (This)->lpVtbl->Release(This)
5475/*** IAddrExclusionControl methods ***/
5476#define IAddrExclusionControl_GetCurrentAddrExclusionList(This,riid,ppEnumerator) (This)->lpVtbl->GetCurrentAddrExclusionList(This,riid,ppEnumerator)
5477#define IAddrExclusionControl_UpdateAddrExclusionList(This,pEnumerator) (This)->lpVtbl->UpdateAddrExclusionList(This,pEnumerator)
5478#else
5479/*** IUnknown methods ***/
5480static FORCEINLINE HRESULT IAddrExclusionControl_QueryInterface(IAddrExclusionControl* This,REFIID riid,void **ppvObject) {
5481 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5482}
5483static FORCEINLINE ULONG IAddrExclusionControl_AddRef(IAddrExclusionControl* This) {
5484 return This->lpVtbl->AddRef(This);
5485}
5486static FORCEINLINE ULONG IAddrExclusionControl_Release(IAddrExclusionControl* This) {
5487 return This->lpVtbl->Release(This);
5488}
5489/*** IAddrExclusionControl methods ***/
5490static FORCEINLINE HRESULT IAddrExclusionControl_GetCurrentAddrExclusionList(IAddrExclusionControl* This,REFIID riid,void **ppEnumerator) {
5491 return This->lpVtbl->GetCurrentAddrExclusionList(This,riid,ppEnumerator);
5492}
5493static FORCEINLINE HRESULT IAddrExclusionControl_UpdateAddrExclusionList(IAddrExclusionControl* This,IUnknown *pEnumerator) {
5494 return This->lpVtbl->UpdateAddrExclusionList(This,pEnumerator);
5495}
5496#endif
5497#endif
5498
5499#endif
5500
5501
5502#endif /* __IAddrExclusionControl_INTERFACE_DEFINED__ */
5503
5504
5505/*****************************************************************************
5506 * IPipeByte interface
5507 */
5508#ifndef __IPipeByte_INTERFACE_DEFINED__
5509#define __IPipeByte_INTERFACE_DEFINED__
5510
5511DEFINE_GUID(IID_IPipeByte, 0xdb2f3aca, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a);
5512#if defined(__cplusplus) && !defined(CINTERFACE)
5513MIDL_INTERFACE("db2f3aca-2f86-11d1-8e04-00c04fb9989a")
5514IPipeByte : public IUnknown
5515{
5516 virtual HRESULT STDMETHODCALLTYPE Pull(
5517 BYTE *buf,
5518 ULONG cRequest,
5519 ULONG *pcReturned) = 0;
5520
5521 virtual HRESULT STDMETHODCALLTYPE Push(
5522 BYTE *buf,
5523 ULONG cSent) = 0;
5524
5525};
5526#ifdef __CRT_UUID_DECL
5527__CRT_UUID_DECL(IPipeByte, 0xdb2f3aca, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a)
5528#endif
5529#else
5530typedef struct IPipeByteVtbl {
5531 BEGIN_INTERFACE
5532
5533 /*** IUnknown methods ***/
5534 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5535 IPipeByte *This,
5536 REFIID riid,
5537 void **ppvObject);
5538
5539 ULONG (STDMETHODCALLTYPE *AddRef)(
5540 IPipeByte *This);
5541
5542 ULONG (STDMETHODCALLTYPE *Release)(
5543 IPipeByte *This);
5544
5545 /*** IPipeByte methods ***/
5546 HRESULT (STDMETHODCALLTYPE *Pull)(
5547 IPipeByte *This,
5548 BYTE *buf,
5549 ULONG cRequest,
5550 ULONG *pcReturned);
5551
5552 HRESULT (STDMETHODCALLTYPE *Push)(
5553 IPipeByte *This,
5554 BYTE *buf,
5555 ULONG cSent);
5556
5557 END_INTERFACE
5558} IPipeByteVtbl;
5559
5560interface IPipeByte {
5561 CONST_VTBL IPipeByteVtbl* lpVtbl;
5562};
5563
5564#ifdef COBJMACROS
5565#ifndef WIDL_C_INLINE_WRAPPERS
5566/*** IUnknown methods ***/
5567#define IPipeByte_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5568#define IPipeByte_AddRef(This) (This)->lpVtbl->AddRef(This)
5569#define IPipeByte_Release(This) (This)->lpVtbl->Release(This)
5570/*** IPipeByte methods ***/
5571#define IPipeByte_Pull(This,buf,cRequest,pcReturned) (This)->lpVtbl->Pull(This,buf,cRequest,pcReturned)
5572#define IPipeByte_Push(This,buf,cSent) (This)->lpVtbl->Push(This,buf,cSent)
5573#else
5574/*** IUnknown methods ***/
5575static FORCEINLINE HRESULT IPipeByte_QueryInterface(IPipeByte* This,REFIID riid,void **ppvObject) {
5576 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5577}
5578static FORCEINLINE ULONG IPipeByte_AddRef(IPipeByte* This) {
5579 return This->lpVtbl->AddRef(This);
5580}
5581static FORCEINLINE ULONG IPipeByte_Release(IPipeByte* This) {
5582 return This->lpVtbl->Release(This);
5583}
5584/*** IPipeByte methods ***/
5585static FORCEINLINE HRESULT IPipeByte_Pull(IPipeByte* This,BYTE *buf,ULONG cRequest,ULONG *pcReturned) {
5586 return This->lpVtbl->Pull(This,buf,cRequest,pcReturned);
5587}
5588static FORCEINLINE HRESULT IPipeByte_Push(IPipeByte* This,BYTE *buf,ULONG cSent) {
5589 return This->lpVtbl->Push(This,buf,cSent);
5590}
5591#endif
5592#endif
5593
5594#endif
5595
5596
5597#endif /* __IPipeByte_INTERFACE_DEFINED__ */
5598
5599
5600/*****************************************************************************
5601 * IPipeLong interface
5602 */
5603#ifndef __IPipeLong_INTERFACE_DEFINED__
5604#define __IPipeLong_INTERFACE_DEFINED__
5605
5606DEFINE_GUID(IID_IPipeLong, 0xdb2f3acc, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a);
5607#if defined(__cplusplus) && !defined(CINTERFACE)
5608MIDL_INTERFACE("db2f3acc-2f86-11d1-8e04-00c04fb9989a")
5609IPipeLong : public IUnknown
5610{
5611 virtual HRESULT STDMETHODCALLTYPE Pull(
5612 LONG *buf,
5613 ULONG cRequest,
5614 ULONG *pcReturned) = 0;
5615
5616 virtual HRESULT STDMETHODCALLTYPE Push(
5617 LONG *buf,
5618 ULONG cSent) = 0;
5619
5620};
5621#ifdef __CRT_UUID_DECL
5622__CRT_UUID_DECL(IPipeLong, 0xdb2f3acc, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a)
5623#endif
5624#else
5625typedef struct IPipeLongVtbl {
5626 BEGIN_INTERFACE
5627
5628 /*** IUnknown methods ***/
5629 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5630 IPipeLong *This,
5631 REFIID riid,
5632 void **ppvObject);
5633
5634 ULONG (STDMETHODCALLTYPE *AddRef)(
5635 IPipeLong *This);
5636
5637 ULONG (STDMETHODCALLTYPE *Release)(
5638 IPipeLong *This);
5639
5640 /*** IPipeLong methods ***/
5641 HRESULT (STDMETHODCALLTYPE *Pull)(
5642 IPipeLong *This,
5643 LONG *buf,
5644 ULONG cRequest,
5645 ULONG *pcReturned);
5646
5647 HRESULT (STDMETHODCALLTYPE *Push)(
5648 IPipeLong *This,
5649 LONG *buf,
5650 ULONG cSent);
5651
5652 END_INTERFACE
5653} IPipeLongVtbl;
5654
5655interface IPipeLong {
5656 CONST_VTBL IPipeLongVtbl* lpVtbl;
5657};
5658
5659#ifdef COBJMACROS
5660#ifndef WIDL_C_INLINE_WRAPPERS
5661/*** IUnknown methods ***/
5662#define IPipeLong_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5663#define IPipeLong_AddRef(This) (This)->lpVtbl->AddRef(This)
5664#define IPipeLong_Release(This) (This)->lpVtbl->Release(This)
5665/*** IPipeLong methods ***/
5666#define IPipeLong_Pull(This,buf,cRequest,pcReturned) (This)->lpVtbl->Pull(This,buf,cRequest,pcReturned)
5667#define IPipeLong_Push(This,buf,cSent) (This)->lpVtbl->Push(This,buf,cSent)
5668#else
5669/*** IUnknown methods ***/
5670static FORCEINLINE HRESULT IPipeLong_QueryInterface(IPipeLong* This,REFIID riid,void **ppvObject) {
5671 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5672}
5673static FORCEINLINE ULONG IPipeLong_AddRef(IPipeLong* This) {
5674 return This->lpVtbl->AddRef(This);
5675}
5676static FORCEINLINE ULONG IPipeLong_Release(IPipeLong* This) {
5677 return This->lpVtbl->Release(This);
5678}
5679/*** IPipeLong methods ***/
5680static FORCEINLINE HRESULT IPipeLong_Pull(IPipeLong* This,LONG *buf,ULONG cRequest,ULONG *pcReturned) {
5681 return This->lpVtbl->Pull(This,buf,cRequest,pcReturned);
5682}
5683static FORCEINLINE HRESULT IPipeLong_Push(IPipeLong* This,LONG *buf,ULONG cSent) {
5684 return This->lpVtbl->Push(This,buf,cSent);
5685}
5686#endif
5687#endif
5688
5689#endif
5690
5691
5692#endif /* __IPipeLong_INTERFACE_DEFINED__ */
5693
5694
5695/*****************************************************************************
5696 * IPipeDouble interface
5697 */
5698#ifndef __IPipeDouble_INTERFACE_DEFINED__
5699#define __IPipeDouble_INTERFACE_DEFINED__
5700
5701DEFINE_GUID(IID_IPipeDouble, 0xdb2f3ace, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a);
5702#if defined(__cplusplus) && !defined(CINTERFACE)
5703MIDL_INTERFACE("db2f3ace-2f86-11d1-8e04-00c04fb9989a")
5704IPipeDouble : public IUnknown
5705{
5706 virtual HRESULT STDMETHODCALLTYPE Pull(
5707 DOUBLE *buf,
5708 ULONG cRequest,
5709 ULONG *pcReturned) = 0;
5710
5711 virtual HRESULT STDMETHODCALLTYPE Push(
5712 DOUBLE *buf,
5713 ULONG cSent) = 0;
5714
5715};
5716#ifdef __CRT_UUID_DECL
5717__CRT_UUID_DECL(IPipeDouble, 0xdb2f3ace, 0x2f86, 0x11d1, 0x8e,0x04, 0x00,0xc0,0x4f,0xb9,0x98,0x9a)
5718#endif
5719#else
5720typedef struct IPipeDoubleVtbl {
5721 BEGIN_INTERFACE
5722
5723 /*** IUnknown methods ***/
5724 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5725 IPipeDouble *This,
5726 REFIID riid,
5727 void **ppvObject);
5728
5729 ULONG (STDMETHODCALLTYPE *AddRef)(
5730 IPipeDouble *This);
5731
5732 ULONG (STDMETHODCALLTYPE *Release)(
5733 IPipeDouble *This);
5734
5735 /*** IPipeDouble methods ***/
5736 HRESULT (STDMETHODCALLTYPE *Pull)(
5737 IPipeDouble *This,
5738 DOUBLE *buf,
5739 ULONG cRequest,
5740 ULONG *pcReturned);
5741
5742 HRESULT (STDMETHODCALLTYPE *Push)(
5743 IPipeDouble *This,
5744 DOUBLE *buf,
5745 ULONG cSent);
5746
5747 END_INTERFACE
5748} IPipeDoubleVtbl;
5749
5750interface IPipeDouble {
5751 CONST_VTBL IPipeDoubleVtbl* lpVtbl;
5752};
5753
5754#ifdef COBJMACROS
5755#ifndef WIDL_C_INLINE_WRAPPERS
5756/*** IUnknown methods ***/
5757#define IPipeDouble_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5758#define IPipeDouble_AddRef(This) (This)->lpVtbl->AddRef(This)
5759#define IPipeDouble_Release(This) (This)->lpVtbl->Release(This)
5760/*** IPipeDouble methods ***/
5761#define IPipeDouble_Pull(This,buf,cRequest,pcReturned) (This)->lpVtbl->Pull(This,buf,cRequest,pcReturned)
5762#define IPipeDouble_Push(This,buf,cSent) (This)->lpVtbl->Push(This,buf,cSent)
5763#else
5764/*** IUnknown methods ***/
5765static FORCEINLINE HRESULT IPipeDouble_QueryInterface(IPipeDouble* This,REFIID riid,void **ppvObject) {
5766 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5767}
5768static FORCEINLINE ULONG IPipeDouble_AddRef(IPipeDouble* This) {
5769 return This->lpVtbl->AddRef(This);
5770}
5771static FORCEINLINE ULONG IPipeDouble_Release(IPipeDouble* This) {
5772 return This->lpVtbl->Release(This);
5773}
5774/*** IPipeDouble methods ***/
5775static FORCEINLINE HRESULT IPipeDouble_Pull(IPipeDouble* This,DOUBLE *buf,ULONG cRequest,ULONG *pcReturned) {
5776 return This->lpVtbl->Pull(This,buf,cRequest,pcReturned);
5777}
5778static FORCEINLINE HRESULT IPipeDouble_Push(IPipeDouble* This,DOUBLE *buf,ULONG cSent) {
5779 return This->lpVtbl->Push(This,buf,cSent);
5780}
5781#endif
5782#endif
5783
5784#endif
5785
5786
5787#endif /* __IPipeDouble_INTERFACE_DEFINED__ */
5788
5789
5790#if defined USE_COM_CONTEXT_DEF || defined BUILDTYPE_COMSVCS || defined _COMBASEAPI_ || defined _OLE32_
5791
5792typedef DWORD CPFLAGS;
5793
5794typedef struct tagContextProperty {
5795 GUID policyId;
5796 CPFLAGS flags;
5797 IUnknown *pUnk;
5798} ContextProperty;
5799
5800/*****************************************************************************
5801 * IEnumContextProps interface
5802 */
5803#ifndef __IEnumContextProps_INTERFACE_DEFINED__
5804#define __IEnumContextProps_INTERFACE_DEFINED__
5805
5806typedef IEnumContextProps *LPENUMCONTEXTPROPS;
5807
5808DEFINE_GUID(IID_IEnumContextProps, 0x000001c1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
5809#if defined(__cplusplus) && !defined(CINTERFACE)
5810MIDL_INTERFACE("000001c1-0000-0000-c000-000000000046")
5811IEnumContextProps : public IUnknown
5812{
5813 virtual HRESULT STDMETHODCALLTYPE Next(
5814 ULONG celt,
5815 ContextProperty *pContextProperties,
5816 ULONG *pceltFetched) = 0;
5817
5818 virtual HRESULT STDMETHODCALLTYPE Skip(
5819 ULONG celt) = 0;
5820
5821 virtual HRESULT STDMETHODCALLTYPE Reset(
5822 ) = 0;
5823
5824 virtual HRESULT STDMETHODCALLTYPE Clone(
5825 IEnumContextProps **ppEnumContextProps) = 0;
5826
5827 virtual HRESULT STDMETHODCALLTYPE Count(
5828 ULONG *pcelt) = 0;
5829
5830};
5831#ifdef __CRT_UUID_DECL
5832__CRT_UUID_DECL(IEnumContextProps, 0x000001c1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
5833#endif
5834#else
5835typedef struct IEnumContextPropsVtbl {
5836 BEGIN_INTERFACE
5837
5838 /*** IUnknown methods ***/
5839 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5840 IEnumContextProps *This,
5841 REFIID riid,
5842 void **ppvObject);
5843
5844 ULONG (STDMETHODCALLTYPE *AddRef)(
5845 IEnumContextProps *This);
5846
5847 ULONG (STDMETHODCALLTYPE *Release)(
5848 IEnumContextProps *This);
5849
5850 /*** IEnumContextProps methods ***/
5851 HRESULT (STDMETHODCALLTYPE *Next)(
5852 IEnumContextProps *This,
5853 ULONG celt,
5854 ContextProperty *pContextProperties,
5855 ULONG *pceltFetched);
5856
5857 HRESULT (STDMETHODCALLTYPE *Skip)(
5858 IEnumContextProps *This,
5859 ULONG celt);
5860
5861 HRESULT (STDMETHODCALLTYPE *Reset)(
5862 IEnumContextProps *This);
5863
5864 HRESULT (STDMETHODCALLTYPE *Clone)(
5865 IEnumContextProps *This,
5866 IEnumContextProps **ppEnumContextProps);
5867
5868 HRESULT (STDMETHODCALLTYPE *Count)(
5869 IEnumContextProps *This,
5870 ULONG *pcelt);
5871
5872 END_INTERFACE
5873} IEnumContextPropsVtbl;
5874
5875interface IEnumContextProps {
5876 CONST_VTBL IEnumContextPropsVtbl* lpVtbl;
5877};
5878
5879#ifdef COBJMACROS
5880#ifndef WIDL_C_INLINE_WRAPPERS
5881/*** IUnknown methods ***/
5882#define IEnumContextProps_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5883#define IEnumContextProps_AddRef(This) (This)->lpVtbl->AddRef(This)
5884#define IEnumContextProps_Release(This) (This)->lpVtbl->Release(This)
5885/*** IEnumContextProps methods ***/
5886#define IEnumContextProps_Next(This,celt,pContextProperties,pceltFetched) (This)->lpVtbl->Next(This,celt,pContextProperties,pceltFetched)
5887#define IEnumContextProps_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
5888#define IEnumContextProps_Reset(This) (This)->lpVtbl->Reset(This)
5889#define IEnumContextProps_Clone(This,ppEnumContextProps) (This)->lpVtbl->Clone(This,ppEnumContextProps)
5890#define IEnumContextProps_Count(This,pcelt) (This)->lpVtbl->Count(This,pcelt)
5891#else
5892/*** IUnknown methods ***/
5893static FORCEINLINE HRESULT IEnumContextProps_QueryInterface(IEnumContextProps* This,REFIID riid,void **ppvObject) {
5894 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5895}
5896static FORCEINLINE ULONG IEnumContextProps_AddRef(IEnumContextProps* This) {
5897 return This->lpVtbl->AddRef(This);
5898}
5899static FORCEINLINE ULONG IEnumContextProps_Release(IEnumContextProps* This) {
5900 return This->lpVtbl->Release(This);
5901}
5902/*** IEnumContextProps methods ***/
5903static FORCEINLINE HRESULT IEnumContextProps_Next(IEnumContextProps* This,ULONG celt,ContextProperty *pContextProperties,ULONG *pceltFetched) {
5904 return This->lpVtbl->Next(This,celt,pContextProperties,pceltFetched);
5905}
5906static FORCEINLINE HRESULT IEnumContextProps_Skip(IEnumContextProps* This,ULONG celt) {
5907 return This->lpVtbl->Skip(This,celt);
5908}
5909static FORCEINLINE HRESULT IEnumContextProps_Reset(IEnumContextProps* This) {
5910 return This->lpVtbl->Reset(This);
5911}
5912static FORCEINLINE HRESULT IEnumContextProps_Clone(IEnumContextProps* This,IEnumContextProps **ppEnumContextProps) {
5913 return This->lpVtbl->Clone(This,ppEnumContextProps);
5914}
5915static FORCEINLINE HRESULT IEnumContextProps_Count(IEnumContextProps* This,ULONG *pcelt) {
5916 return This->lpVtbl->Count(This,pcelt);
5917}
5918#endif
5919#endif
5920
5921#endif
5922
5923
5924#endif /* __IEnumContextProps_INTERFACE_DEFINED__ */
5925
5926
5927/*****************************************************************************
5928 * IContext interface
5929 */
5930#ifndef __IContext_INTERFACE_DEFINED__
5931#define __IContext_INTERFACE_DEFINED__
5932
5933DEFINE_GUID(IID_IContext, 0x000001c0, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
5934#if defined(__cplusplus) && !defined(CINTERFACE)
5935MIDL_INTERFACE("000001c0-0000-0000-c000-000000000046")
5936IContext : public IUnknown
5937{
5938 virtual HRESULT STDMETHODCALLTYPE SetProperty(
5939 REFGUID rpolicyId,
5940 CPFLAGS flags,
5941 IUnknown *pUnk) = 0;
5942
5943 virtual HRESULT STDMETHODCALLTYPE RemoveProperty(
5944 REFGUID rPolicyId) = 0;
5945
5946 virtual HRESULT STDMETHODCALLTYPE GetProperty(
5947 REFGUID rGuid,
5948 CPFLAGS *pFlags,
5949 IUnknown **ppUnk) = 0;
5950
5951 virtual HRESULT STDMETHODCALLTYPE EnumContextProps(
5952 IEnumContextProps **ppEnumContextProps) = 0;
5953
5954};
5955#ifdef __CRT_UUID_DECL
5956__CRT_UUID_DECL(IContext, 0x000001c0, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
5957#endif
5958#else
5959typedef struct IContextVtbl {
5960 BEGIN_INTERFACE
5961
5962 /*** IUnknown methods ***/
5963 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5964 IContext *This,
5965 REFIID riid,
5966 void **ppvObject);
5967
5968 ULONG (STDMETHODCALLTYPE *AddRef)(
5969 IContext *This);
5970
5971 ULONG (STDMETHODCALLTYPE *Release)(
5972 IContext *This);
5973
5974 /*** IContext methods ***/
5975 HRESULT (STDMETHODCALLTYPE *SetProperty)(
5976 IContext *This,
5977 REFGUID rpolicyId,
5978 CPFLAGS flags,
5979 IUnknown *pUnk);
5980
5981 HRESULT (STDMETHODCALLTYPE *RemoveProperty)(
5982 IContext *This,
5983 REFGUID rPolicyId);
5984
5985 HRESULT (STDMETHODCALLTYPE *GetProperty)(
5986 IContext *This,
5987 REFGUID rGuid,
5988 CPFLAGS *pFlags,
5989 IUnknown **ppUnk);
5990
5991 HRESULT (STDMETHODCALLTYPE *EnumContextProps)(
5992 IContext *This,
5993 IEnumContextProps **ppEnumContextProps);
5994
5995 END_INTERFACE
5996} IContextVtbl;
5997
5998interface IContext {
5999 CONST_VTBL IContextVtbl* lpVtbl;
6000};
6001
6002#ifdef COBJMACROS
6003#ifndef WIDL_C_INLINE_WRAPPERS
6004/*** IUnknown methods ***/
6005#define IContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6006#define IContext_AddRef(This) (This)->lpVtbl->AddRef(This)
6007#define IContext_Release(This) (This)->lpVtbl->Release(This)
6008/*** IContext methods ***/
6009#define IContext_SetProperty(This,rpolicyId,flags,pUnk) (This)->lpVtbl->SetProperty(This,rpolicyId,flags,pUnk)
6010#define IContext_RemoveProperty(This,rPolicyId) (This)->lpVtbl->RemoveProperty(This,rPolicyId)
6011#define IContext_GetProperty(This,rGuid,pFlags,ppUnk) (This)->lpVtbl->GetProperty(This,rGuid,pFlags,ppUnk)
6012#define IContext_EnumContextProps(This,ppEnumContextProps) (This)->lpVtbl->EnumContextProps(This,ppEnumContextProps)
6013#else
6014/*** IUnknown methods ***/
6015static FORCEINLINE HRESULT IContext_QueryInterface(IContext* This,REFIID riid,void **ppvObject) {
6016 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6017}
6018static FORCEINLINE ULONG IContext_AddRef(IContext* This) {
6019 return This->lpVtbl->AddRef(This);
6020}
6021static FORCEINLINE ULONG IContext_Release(IContext* This) {
6022 return This->lpVtbl->Release(This);
6023}
6024/*** IContext methods ***/
6025static FORCEINLINE HRESULT IContext_SetProperty(IContext* This,REFGUID rpolicyId,CPFLAGS flags,IUnknown *pUnk) {
6026 return This->lpVtbl->SetProperty(This,rpolicyId,flags,pUnk);
6027}
6028static FORCEINLINE HRESULT IContext_RemoveProperty(IContext* This,REFGUID rPolicyId) {
6029 return This->lpVtbl->RemoveProperty(This,rPolicyId);
6030}
6031static FORCEINLINE HRESULT IContext_GetProperty(IContext* This,REFGUID rGuid,CPFLAGS *pFlags,IUnknown **ppUnk) {
6032 return This->lpVtbl->GetProperty(This,rGuid,pFlags,ppUnk);
6033}
6034static FORCEINLINE HRESULT IContext_EnumContextProps(IContext* This,IEnumContextProps **ppEnumContextProps) {
6035 return This->lpVtbl->EnumContextProps(This,ppEnumContextProps);
6036}
6037#endif
6038#endif
6039
6040#endif
6041
6042
6043#endif /* __IContext_INTERFACE_DEFINED__ */
6044
6045#endif
6046#endif
6047
6048#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
6049typedef enum _APTTYPEQUALIFIER {
6050 APTTYPEQUALIFIER_NONE = 0,
6051 APTTYPEQUALIFIER_IMPLICIT_MTA = 1,
6052 APTTYPEQUALIFIER_NA_ON_MTA = 2,
6053 APTTYPEQUALIFIER_NA_ON_STA = 3,
6054 APTTYPEQUALIFIER_NA_ON_IMPLICIT_MTA = 4,
6055 APTTYPEQUALIFIER_NA_ON_MAINSTA = 5,
6056 APTTYPEQUALIFIER_APPLICATION_STA = 6
6057} APTTYPEQUALIFIER;
6058
6059typedef enum _APTTYPE {
6060 APTTYPE_CURRENT = -1,
6061 APTTYPE_STA = 0,
6062 APTTYPE_MTA = 1,
6063 APTTYPE_NA = 2,
6064 APTTYPE_MAINSTA = 3
6065} APTTYPE;
6066#endif
6067
6068#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
6069typedef enum _THDTYPE {
6070 THDTYPE_BLOCKMESSAGES = 0,
6071 THDTYPE_PROCESSMESSAGES = 1
6072} THDTYPE;
6073
6074typedef DWORD APARTMENTID;
6075
6076/*****************************************************************************
6077 * IComThreadingInfo interface
6078 */
6079#ifndef __IComThreadingInfo_INTERFACE_DEFINED__
6080#define __IComThreadingInfo_INTERFACE_DEFINED__
6081
6082DEFINE_GUID(IID_IComThreadingInfo, 0x000001ce, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
6083#if defined(__cplusplus) && !defined(CINTERFACE)
6084MIDL_INTERFACE("000001ce-0000-0000-c000-000000000046")
6085IComThreadingInfo : public IUnknown
6086{
6087 virtual HRESULT STDMETHODCALLTYPE GetCurrentApartmentType(
6088 APTTYPE *pAptType) = 0;
6089
6090 virtual HRESULT STDMETHODCALLTYPE GetCurrentThreadType(
6091 THDTYPE *pThreadType) = 0;
6092
6093 virtual HRESULT STDMETHODCALLTYPE GetCurrentLogicalThreadId(
6094 GUID *pguidLogicalThreadId) = 0;
6095
6096 virtual HRESULT STDMETHODCALLTYPE SetCurrentLogicalThreadId(
6097 REFGUID rguid) = 0;
6098
6099};
6100#ifdef __CRT_UUID_DECL
6101__CRT_UUID_DECL(IComThreadingInfo, 0x000001ce, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
6102#endif
6103#else
6104typedef struct IComThreadingInfoVtbl {
6105 BEGIN_INTERFACE
6106
6107 /*** IUnknown methods ***/
6108 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6109 IComThreadingInfo *This,
6110 REFIID riid,
6111 void **ppvObject);
6112
6113 ULONG (STDMETHODCALLTYPE *AddRef)(
6114 IComThreadingInfo *This);
6115
6116 ULONG (STDMETHODCALLTYPE *Release)(
6117 IComThreadingInfo *This);
6118
6119 /*** IComThreadingInfo methods ***/
6120 HRESULT (STDMETHODCALLTYPE *GetCurrentApartmentType)(
6121 IComThreadingInfo *This,
6122 APTTYPE *pAptType);
6123
6124 HRESULT (STDMETHODCALLTYPE *GetCurrentThreadType)(
6125 IComThreadingInfo *This,
6126 THDTYPE *pThreadType);
6127
6128 HRESULT (STDMETHODCALLTYPE *GetCurrentLogicalThreadId)(
6129 IComThreadingInfo *This,
6130 GUID *pguidLogicalThreadId);
6131
6132 HRESULT (STDMETHODCALLTYPE *SetCurrentLogicalThreadId)(
6133 IComThreadingInfo *This,
6134 REFGUID rguid);
6135
6136 END_INTERFACE
6137} IComThreadingInfoVtbl;
6138
6139interface IComThreadingInfo {
6140 CONST_VTBL IComThreadingInfoVtbl* lpVtbl;
6141};
6142
6143#ifdef COBJMACROS
6144#ifndef WIDL_C_INLINE_WRAPPERS
6145/*** IUnknown methods ***/
6146#define IComThreadingInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6147#define IComThreadingInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
6148#define IComThreadingInfo_Release(This) (This)->lpVtbl->Release(This)
6149/*** IComThreadingInfo methods ***/
6150#define IComThreadingInfo_GetCurrentApartmentType(This,pAptType) (This)->lpVtbl->GetCurrentApartmentType(This,pAptType)
6151#define IComThreadingInfo_GetCurrentThreadType(This,pThreadType) (This)->lpVtbl->GetCurrentThreadType(This,pThreadType)
6152#define IComThreadingInfo_GetCurrentLogicalThreadId(This,pguidLogicalThreadId) (This)->lpVtbl->GetCurrentLogicalThreadId(This,pguidLogicalThreadId)
6153#define IComThreadingInfo_SetCurrentLogicalThreadId(This,rguid) (This)->lpVtbl->SetCurrentLogicalThreadId(This,rguid)
6154#else
6155/*** IUnknown methods ***/
6156static FORCEINLINE HRESULT IComThreadingInfo_QueryInterface(IComThreadingInfo* This,REFIID riid,void **ppvObject) {
6157 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6158}
6159static FORCEINLINE ULONG IComThreadingInfo_AddRef(IComThreadingInfo* This) {
6160 return This->lpVtbl->AddRef(This);
6161}
6162static FORCEINLINE ULONG IComThreadingInfo_Release(IComThreadingInfo* This) {
6163 return This->lpVtbl->Release(This);
6164}
6165/*** IComThreadingInfo methods ***/
6166static FORCEINLINE HRESULT IComThreadingInfo_GetCurrentApartmentType(IComThreadingInfo* This,APTTYPE *pAptType) {
6167 return This->lpVtbl->GetCurrentApartmentType(This,pAptType);
6168}
6169static FORCEINLINE HRESULT IComThreadingInfo_GetCurrentThreadType(IComThreadingInfo* This,THDTYPE *pThreadType) {
6170 return This->lpVtbl->GetCurrentThreadType(This,pThreadType);
6171}
6172static FORCEINLINE HRESULT IComThreadingInfo_GetCurrentLogicalThreadId(IComThreadingInfo* This,GUID *pguidLogicalThreadId) {
6173 return This->lpVtbl->GetCurrentLogicalThreadId(This,pguidLogicalThreadId);
6174}
6175static FORCEINLINE HRESULT IComThreadingInfo_SetCurrentLogicalThreadId(IComThreadingInfo* This,REFGUID rguid) {
6176 return This->lpVtbl->SetCurrentLogicalThreadId(This,rguid);
6177}
6178#endif
6179#endif
6180
6181#endif
6182
6183
6184#endif /* __IComThreadingInfo_INTERFACE_DEFINED__ */
6185
6186
6187/*****************************************************************************
6188 * IProcessInitControl interface
6189 */
6190#ifndef __IProcessInitControl_INTERFACE_DEFINED__
6191#define __IProcessInitControl_INTERFACE_DEFINED__
6192
6193DEFINE_GUID(IID_IProcessInitControl, 0x72380d55, 0x8d2b, 0x43a3, 0x85,0x13, 0x2b,0x6e,0xf3,0x14,0x34,0xe9);
6194#if defined(__cplusplus) && !defined(CINTERFACE)
6195MIDL_INTERFACE("72380d55-8d2b-43a3-8513-2b6ef31434e9")
6196IProcessInitControl : public IUnknown
6197{
6198 virtual HRESULT STDMETHODCALLTYPE ResetInitializerTimeout(
6199 DWORD dwSecondsRemaining) = 0;
6200
6201};
6202#ifdef __CRT_UUID_DECL
6203__CRT_UUID_DECL(IProcessInitControl, 0x72380d55, 0x8d2b, 0x43a3, 0x85,0x13, 0x2b,0x6e,0xf3,0x14,0x34,0xe9)
6204#endif
6205#else
6206typedef struct IProcessInitControlVtbl {
6207 BEGIN_INTERFACE
6208
6209 /*** IUnknown methods ***/
6210 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6211 IProcessInitControl *This,
6212 REFIID riid,
6213 void **ppvObject);
6214
6215 ULONG (STDMETHODCALLTYPE *AddRef)(
6216 IProcessInitControl *This);
6217
6218 ULONG (STDMETHODCALLTYPE *Release)(
6219 IProcessInitControl *This);
6220
6221 /*** IProcessInitControl methods ***/
6222 HRESULT (STDMETHODCALLTYPE *ResetInitializerTimeout)(
6223 IProcessInitControl *This,
6224 DWORD dwSecondsRemaining);
6225
6226 END_INTERFACE
6227} IProcessInitControlVtbl;
6228
6229interface IProcessInitControl {
6230 CONST_VTBL IProcessInitControlVtbl* lpVtbl;
6231};
6232
6233#ifdef COBJMACROS
6234#ifndef WIDL_C_INLINE_WRAPPERS
6235/*** IUnknown methods ***/
6236#define IProcessInitControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6237#define IProcessInitControl_AddRef(This) (This)->lpVtbl->AddRef(This)
6238#define IProcessInitControl_Release(This) (This)->lpVtbl->Release(This)
6239/*** IProcessInitControl methods ***/
6240#define IProcessInitControl_ResetInitializerTimeout(This,dwSecondsRemaining) (This)->lpVtbl->ResetInitializerTimeout(This,dwSecondsRemaining)
6241#else
6242/*** IUnknown methods ***/
6243static FORCEINLINE HRESULT IProcessInitControl_QueryInterface(IProcessInitControl* This,REFIID riid,void **ppvObject) {
6244 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6245}
6246static FORCEINLINE ULONG IProcessInitControl_AddRef(IProcessInitControl* This) {
6247 return This->lpVtbl->AddRef(This);
6248}
6249static FORCEINLINE ULONG IProcessInitControl_Release(IProcessInitControl* This) {
6250 return This->lpVtbl->Release(This);
6251}
6252/*** IProcessInitControl methods ***/
6253static FORCEINLINE HRESULT IProcessInitControl_ResetInitializerTimeout(IProcessInitControl* This,DWORD dwSecondsRemaining) {
6254 return This->lpVtbl->ResetInitializerTimeout(This,dwSecondsRemaining);
6255}
6256#endif
6257#endif
6258
6259#endif
6260
6261
6262#endif /* __IProcessInitControl_INTERFACE_DEFINED__ */
6263
6264
6265/*****************************************************************************
6266 * IFastRundown interface
6267 */
6268#ifndef __IFastRundown_INTERFACE_DEFINED__
6269#define __IFastRundown_INTERFACE_DEFINED__
6270
6271DEFINE_GUID(IID_IFastRundown, 0x00000040, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
6272#if defined(__cplusplus) && !defined(CINTERFACE)
6273MIDL_INTERFACE("00000040-0000-0000-c000-000000000046")
6274IFastRundown : public IUnknown
6275{
6276};
6277#ifdef __CRT_UUID_DECL
6278__CRT_UUID_DECL(IFastRundown, 0x00000040, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
6279#endif
6280#else
6281typedef struct IFastRundownVtbl {
6282 BEGIN_INTERFACE
6283
6284 /*** IUnknown methods ***/
6285 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6286 IFastRundown *This,
6287 REFIID riid,
6288 void **ppvObject);
6289
6290 ULONG (STDMETHODCALLTYPE *AddRef)(
6291 IFastRundown *This);
6292
6293 ULONG (STDMETHODCALLTYPE *Release)(
6294 IFastRundown *This);
6295
6296 END_INTERFACE
6297} IFastRundownVtbl;
6298
6299interface IFastRundown {
6300 CONST_VTBL IFastRundownVtbl* lpVtbl;
6301};
6302
6303#ifdef COBJMACROS
6304#ifndef WIDL_C_INLINE_WRAPPERS
6305/*** IUnknown methods ***/
6306#define IFastRundown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6307#define IFastRundown_AddRef(This) (This)->lpVtbl->AddRef(This)
6308#define IFastRundown_Release(This) (This)->lpVtbl->Release(This)
6309#else
6310/*** IUnknown methods ***/
6311static FORCEINLINE HRESULT IFastRundown_QueryInterface(IFastRundown* This,REFIID riid,void **ppvObject) {
6312 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6313}
6314static FORCEINLINE ULONG IFastRundown_AddRef(IFastRundown* This) {
6315 return This->lpVtbl->AddRef(This);
6316}
6317static FORCEINLINE ULONG IFastRundown_Release(IFastRundown* This) {
6318 return This->lpVtbl->Release(This);
6319}
6320#endif
6321#endif
6322
6323#endif
6324
6325
6326#endif /* __IFastRundown_INTERFACE_DEFINED__ */
6327
6328
6329typedef enum CO_MARSHALING_CONTEXT_ATTRIBUTES {
6330 CO_MARSHALING_SOURCE_IS_APP_CONTAINER = 0
6331} CO_MARSHALING_CONTEXT_ATTRIBUTES;
6332
6333/*****************************************************************************
6334 * IMarshalingStream interface
6335 */
6336#ifndef __IMarshalingStream_INTERFACE_DEFINED__
6337#define __IMarshalingStream_INTERFACE_DEFINED__
6338
6339DEFINE_GUID(IID_IMarshalingStream, 0xd8f2f5e6, 0x6102, 0x4863, 0x9f,0x26, 0x38,0x9a,0x46,0x76,0xef,0xde);
6340#if defined(__cplusplus) && !defined(CINTERFACE)
6341MIDL_INTERFACE("d8f2f5e6-6102-4863-9f26-389a4676efde")
6342IMarshalingStream : public IStream
6343{
6344 virtual HRESULT STDMETHODCALLTYPE GetMarshalingContextAttribute(
6345 CO_MARSHALING_CONTEXT_ATTRIBUTES attribute,
6346 ULONG_PTR *pAttributeValue) = 0;
6347
6348};
6349#ifdef __CRT_UUID_DECL
6350__CRT_UUID_DECL(IMarshalingStream, 0xd8f2f5e6, 0x6102, 0x4863, 0x9f,0x26, 0x38,0x9a,0x46,0x76,0xef,0xde)
6351#endif
6352#else
6353typedef struct IMarshalingStreamVtbl {
6354 BEGIN_INTERFACE
6355
6356 /*** IUnknown methods ***/
6357 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6358 IMarshalingStream *This,
6359 REFIID riid,
6360 void **ppvObject);
6361
6362 ULONG (STDMETHODCALLTYPE *AddRef)(
6363 IMarshalingStream *This);
6364
6365 ULONG (STDMETHODCALLTYPE *Release)(
6366 IMarshalingStream *This);
6367
6368 /*** ISequentialStream methods ***/
6369 HRESULT (STDMETHODCALLTYPE *Read)(
6370 IMarshalingStream *This,
6371 void *pv,
6372 ULONG cb,
6373 ULONG *pcbRead);
6374
6375 HRESULT (STDMETHODCALLTYPE *Write)(
6376 IMarshalingStream *This,
6377 const void *pv,
6378 ULONG cb,
6379 ULONG *pcbWritten);
6380
6381 /*** IStream methods ***/
6382 HRESULT (STDMETHODCALLTYPE *Seek)(
6383 IMarshalingStream *This,
6384 LARGE_INTEGER dlibMove,
6385 DWORD dwOrigin,
6386 ULARGE_INTEGER *plibNewPosition);
6387
6388 HRESULT (STDMETHODCALLTYPE *SetSize)(
6389 IMarshalingStream *This,
6390 ULARGE_INTEGER libNewSize);
6391
6392 HRESULT (STDMETHODCALLTYPE *CopyTo)(
6393 IMarshalingStream *This,
6394 IStream *pstm,
6395 ULARGE_INTEGER cb,
6396 ULARGE_INTEGER *pcbRead,
6397 ULARGE_INTEGER *pcbWritten);
6398
6399 HRESULT (STDMETHODCALLTYPE *Commit)(
6400 IMarshalingStream *This,
6401 DWORD grfCommitFlags);
6402
6403 HRESULT (STDMETHODCALLTYPE *Revert)(
6404 IMarshalingStream *This);
6405
6406 HRESULT (STDMETHODCALLTYPE *LockRegion)(
6407 IMarshalingStream *This,
6408 ULARGE_INTEGER libOffset,
6409 ULARGE_INTEGER cb,
6410 DWORD dwLockType);
6411
6412 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
6413 IMarshalingStream *This,
6414 ULARGE_INTEGER libOffset,
6415 ULARGE_INTEGER cb,
6416 DWORD dwLockType);
6417
6418 HRESULT (STDMETHODCALLTYPE *Stat)(
6419 IMarshalingStream *This,
6420 STATSTG *pstatstg,
6421 DWORD grfStatFlag);
6422
6423 HRESULT (STDMETHODCALLTYPE *Clone)(
6424 IMarshalingStream *This,
6425 IStream **ppstm);
6426
6427 /*** IMarshalingStream methods ***/
6428 HRESULT (STDMETHODCALLTYPE *GetMarshalingContextAttribute)(
6429 IMarshalingStream *This,
6430 CO_MARSHALING_CONTEXT_ATTRIBUTES attribute,
6431 ULONG_PTR *pAttributeValue);
6432
6433 END_INTERFACE
6434} IMarshalingStreamVtbl;
6435
6436interface IMarshalingStream {
6437 CONST_VTBL IMarshalingStreamVtbl* lpVtbl;
6438};
6439
6440#ifdef COBJMACROS
6441#ifndef WIDL_C_INLINE_WRAPPERS
6442/*** IUnknown methods ***/
6443#define IMarshalingStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6444#define IMarshalingStream_AddRef(This) (This)->lpVtbl->AddRef(This)
6445#define IMarshalingStream_Release(This) (This)->lpVtbl->Release(This)
6446/*** ISequentialStream methods ***/
6447#define IMarshalingStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
6448#define IMarshalingStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
6449/*** IStream methods ***/
6450#define IMarshalingStream_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
6451#define IMarshalingStream_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
6452#define IMarshalingStream_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
6453#define IMarshalingStream_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
6454#define IMarshalingStream_Revert(This) (This)->lpVtbl->Revert(This)
6455#define IMarshalingStream_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
6456#define IMarshalingStream_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
6457#define IMarshalingStream_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
6458#define IMarshalingStream_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
6459/*** IMarshalingStream methods ***/
6460#define IMarshalingStream_GetMarshalingContextAttribute(This,attribute,pAttributeValue) (This)->lpVtbl->GetMarshalingContextAttribute(This,attribute,pAttributeValue)
6461#else
6462/*** IUnknown methods ***/
6463static FORCEINLINE HRESULT IMarshalingStream_QueryInterface(IMarshalingStream* This,REFIID riid,void **ppvObject) {
6464 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6465}
6466static FORCEINLINE ULONG IMarshalingStream_AddRef(IMarshalingStream* This) {
6467 return This->lpVtbl->AddRef(This);
6468}
6469static FORCEINLINE ULONG IMarshalingStream_Release(IMarshalingStream* This) {
6470 return This->lpVtbl->Release(This);
6471}
6472/*** ISequentialStream methods ***/
6473static FORCEINLINE HRESULT IMarshalingStream_Read(IMarshalingStream* This,void *pv,ULONG cb,ULONG *pcbRead) {
6474 return This->lpVtbl->Read(This,pv,cb,pcbRead);
6475}
6476static FORCEINLINE HRESULT IMarshalingStream_Write(IMarshalingStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
6477 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
6478}
6479/*** IStream methods ***/
6480static FORCEINLINE HRESULT IMarshalingStream_Seek(IMarshalingStream* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
6481 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
6482}
6483static FORCEINLINE HRESULT IMarshalingStream_SetSize(IMarshalingStream* This,ULARGE_INTEGER libNewSize) {
6484 return This->lpVtbl->SetSize(This,libNewSize);
6485}
6486static FORCEINLINE HRESULT IMarshalingStream_CopyTo(IMarshalingStream* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
6487 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
6488}
6489static FORCEINLINE HRESULT IMarshalingStream_Commit(IMarshalingStream* This,DWORD grfCommitFlags) {
6490 return This->lpVtbl->Commit(This,grfCommitFlags);
6491}
6492static FORCEINLINE HRESULT IMarshalingStream_Revert(IMarshalingStream* This) {
6493 return This->lpVtbl->Revert(This);
6494}
6495static FORCEINLINE HRESULT IMarshalingStream_LockRegion(IMarshalingStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
6496 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
6497}
6498static FORCEINLINE HRESULT IMarshalingStream_UnlockRegion(IMarshalingStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
6499 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
6500}
6501static FORCEINLINE HRESULT IMarshalingStream_Stat(IMarshalingStream* This,STATSTG *pstatstg,DWORD grfStatFlag) {
6502 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
6503}
6504static FORCEINLINE HRESULT IMarshalingStream_Clone(IMarshalingStream* This,IStream **ppstm) {
6505 return This->lpVtbl->Clone(This,ppstm);
6506}
6507/*** IMarshalingStream methods ***/
6508static FORCEINLINE HRESULT IMarshalingStream_GetMarshalingContextAttribute(IMarshalingStream* This,CO_MARSHALING_CONTEXT_ATTRIBUTES attribute,ULONG_PTR *pAttributeValue) {
6509 return This->lpVtbl->GetMarshalingContextAttribute(This,attribute,pAttributeValue);
6510}
6511#endif
6512#endif
6513
6514#endif
6515
6516
6517#endif /* __IMarshalingStream_INTERFACE_DEFINED__ */
6518
6519#endif
6520
6521#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
6522EXTERN_C const GUID IID_ICallbackWithNoReentrancyToApplicationSTA;
6523#endif
6524#define _OBJIDLBASE_
6525#endif
6526/* Begin additional prototypes for all interfaces */
6527
6528
6529/* End additional prototypes */
6530
6531#ifdef __cplusplus
6532}
6533#endif
6534
6535#endif /* __objidlbase_h__ */
Note: See TracBrowser for help on using the repository browser.