diff options
Diffstat (limited to 'src/VBox/Devices/Graphics/shaderlib/wine/include/objidl.h')
-rw-r--r-- | src/VBox/Devices/Graphics/shaderlib/wine/include/objidl.h | 10438 |
1 files changed, 10438 insertions, 0 deletions
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/objidl.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/objidl.h new file mode 100644 index 00000000..ec9cdf64 --- /dev/null +++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/objidl.h @@ -0,0 +1,10438 @@ +/*** Autogenerated by WIDL 1.1.36 from objidl.idl - Do not edit ***/ + +#include <rpc.h> +#include <rpcndr.h> + +#ifndef __WIDL_OBJIDL_H +#define __WIDL_OBJIDL_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Headers for imported files */ + +#include <unknwn.h> + +/* Forward declarations */ + +#ifndef __IMarshal_FWD_DEFINED__ +#define __IMarshal_FWD_DEFINED__ +typedef interface IMarshal IMarshal; +#endif + +#ifndef __IMarshal2_FWD_DEFINED__ +#define __IMarshal2_FWD_DEFINED__ +typedef interface IMarshal2 IMarshal2; +#endif + +#ifndef __IStdMarshalInfo_FWD_DEFINED__ +#define __IStdMarshalInfo_FWD_DEFINED__ +typedef interface IStdMarshalInfo IStdMarshalInfo; +#endif + +#ifndef __IExternalConnection_FWD_DEFINED__ +#define __IExternalConnection_FWD_DEFINED__ +typedef interface IExternalConnection IExternalConnection; +#endif + +#ifndef __IMultiQI_FWD_DEFINED__ +#define __IMultiQI_FWD_DEFINED__ +typedef interface IMultiQI IMultiQI; +#endif + +#ifndef __IMalloc_FWD_DEFINED__ +#define __IMalloc_FWD_DEFINED__ +typedef interface IMalloc IMalloc; +#endif + +#ifndef __IMallocSpy_FWD_DEFINED__ +#define __IMallocSpy_FWD_DEFINED__ +typedef interface IMallocSpy IMallocSpy; +#endif + +#ifndef __IInternalUnknown_FWD_DEFINED__ +#define __IInternalUnknown_FWD_DEFINED__ +typedef interface IInternalUnknown IInternalUnknown; +#endif + +#ifndef __IEnumUnknown_FWD_DEFINED__ +#define __IEnumUnknown_FWD_DEFINED__ +typedef interface IEnumUnknown IEnumUnknown; +#endif + +#ifndef __ISurrogate_FWD_DEFINED__ +#define __ISurrogate_FWD_DEFINED__ +typedef interface ISurrogate ISurrogate; +#endif + +#ifndef __IGlobalInterfaceTable_FWD_DEFINED__ +#define __IGlobalInterfaceTable_FWD_DEFINED__ +typedef interface IGlobalInterfaceTable IGlobalInterfaceTable; +#endif + +#ifndef __IBindCtx_FWD_DEFINED__ +#define __IBindCtx_FWD_DEFINED__ +typedef interface IBindCtx IBindCtx; +#endif + +#ifndef __IEnumMoniker_FWD_DEFINED__ +#define __IEnumMoniker_FWD_DEFINED__ +typedef interface IEnumMoniker IEnumMoniker; +#endif + +#ifndef __IRunnableObject_FWD_DEFINED__ +#define __IRunnableObject_FWD_DEFINED__ +typedef interface IRunnableObject IRunnableObject; +#endif + +#ifndef __IRunningObjectTable_FWD_DEFINED__ +#define __IRunningObjectTable_FWD_DEFINED__ +typedef interface IRunningObjectTable IRunningObjectTable; +#endif + +#ifndef __IPersist_FWD_DEFINED__ +#define __IPersist_FWD_DEFINED__ +typedef interface IPersist IPersist; +#endif + +#ifndef __IPersistStream_FWD_DEFINED__ +#define __IPersistStream_FWD_DEFINED__ +typedef interface IPersistStream IPersistStream; +#endif + +#ifndef __IMoniker_FWD_DEFINED__ +#define __IMoniker_FWD_DEFINED__ +typedef interface IMoniker IMoniker; +#endif + +#ifndef __IROTData_FWD_DEFINED__ +#define __IROTData_FWD_DEFINED__ +typedef interface IROTData IROTData; +#endif + +#ifndef __IEnumString_FWD_DEFINED__ +#define __IEnumString_FWD_DEFINED__ +typedef interface IEnumString IEnumString; +#endif + +#ifndef __IClassActivator_FWD_DEFINED__ +#define __IClassActivator_FWD_DEFINED__ +typedef interface IClassActivator IClassActivator; +#endif + +#ifndef __ISequentialStream_FWD_DEFINED__ +#define __ISequentialStream_FWD_DEFINED__ +typedef interface ISequentialStream ISequentialStream; +#endif + +#ifndef __IStream_FWD_DEFINED__ +#define __IStream_FWD_DEFINED__ +typedef interface IStream IStream; +#endif + +#ifndef __IEnumSTATSTG_FWD_DEFINED__ +#define __IEnumSTATSTG_FWD_DEFINED__ +typedef interface IEnumSTATSTG IEnumSTATSTG; +#endif + +#ifndef __IStorage_FWD_DEFINED__ +#define __IStorage_FWD_DEFINED__ +typedef interface IStorage IStorage; +#endif + +#ifndef __IPersistFile_FWD_DEFINED__ +#define __IPersistFile_FWD_DEFINED__ +typedef interface IPersistFile IPersistFile; +#endif + +#ifndef __IPersistStorage_FWD_DEFINED__ +#define __IPersistStorage_FWD_DEFINED__ +typedef interface IPersistStorage IPersistStorage; +#endif + +#ifndef __IRootStorage_FWD_DEFINED__ +#define __IRootStorage_FWD_DEFINED__ +typedef interface IRootStorage IRootStorage; +#endif + +#ifndef __ILockBytes_FWD_DEFINED__ +#define __ILockBytes_FWD_DEFINED__ +typedef interface ILockBytes ILockBytes; +#endif + +#ifndef __IFillLockBytes_FWD_DEFINED__ +#define __IFillLockBytes_FWD_DEFINED__ +typedef interface IFillLockBytes IFillLockBytes; +#endif + +#ifndef __IProgressNotify_FWD_DEFINED__ +#define __IProgressNotify_FWD_DEFINED__ +typedef interface IProgressNotify IProgressNotify; +#endif + +#ifndef __ILayoutStorage_FWD_DEFINED__ +#define __ILayoutStorage_FWD_DEFINED__ +typedef interface ILayoutStorage ILayoutStorage; +#endif + +#ifndef __IBlockingLock_FWD_DEFINED__ +#define __IBlockingLock_FWD_DEFINED__ +typedef interface IBlockingLock IBlockingLock; +#endif + +#ifndef __ITimeAndNoticeControl_FWD_DEFINED__ +#define __ITimeAndNoticeControl_FWD_DEFINED__ +typedef interface ITimeAndNoticeControl ITimeAndNoticeControl; +#endif + +#ifndef __IOplockStorage_FWD_DEFINED__ +#define __IOplockStorage_FWD_DEFINED__ +typedef interface IOplockStorage IOplockStorage; +#endif + +#ifndef __IEnumFORMATETC_FWD_DEFINED__ +#define __IEnumFORMATETC_FWD_DEFINED__ +typedef interface IEnumFORMATETC IEnumFORMATETC; +#endif + +#ifndef __IEnumSTATDATA_FWD_DEFINED__ +#define __IEnumSTATDATA_FWD_DEFINED__ +typedef interface IEnumSTATDATA IEnumSTATDATA; +#endif + +#ifndef __IAdviseSink_FWD_DEFINED__ +#define __IAdviseSink_FWD_DEFINED__ +typedef interface IAdviseSink IAdviseSink; +#endif + +#ifndef __IAdviseSink2_FWD_DEFINED__ +#define __IAdviseSink2_FWD_DEFINED__ +typedef interface IAdviseSink2 IAdviseSink2; +#endif + +#ifndef __IDataObject_FWD_DEFINED__ +#define __IDataObject_FWD_DEFINED__ +typedef interface IDataObject IDataObject; +#endif + +#ifndef __IDataAdviseHolder_FWD_DEFINED__ +#define __IDataAdviseHolder_FWD_DEFINED__ +typedef interface IDataAdviseHolder IDataAdviseHolder; +#endif + +#ifndef __IMessageFilter_FWD_DEFINED__ +#define __IMessageFilter_FWD_DEFINED__ +typedef interface IMessageFilter IMessageFilter; +#endif + +#ifndef __IRpcChannelBuffer_FWD_DEFINED__ +#define __IRpcChannelBuffer_FWD_DEFINED__ +typedef interface IRpcChannelBuffer IRpcChannelBuffer; +#endif + +#ifndef __IRpcChannelBuffer2_FWD_DEFINED__ +#define __IRpcChannelBuffer2_FWD_DEFINED__ +typedef interface IRpcChannelBuffer2 IRpcChannelBuffer2; +#endif + +#ifndef __IRpcChannelBuffer3_FWD_DEFINED__ +#define __IRpcChannelBuffer3_FWD_DEFINED__ +typedef interface IRpcChannelBuffer3 IRpcChannelBuffer3; +#endif + +#ifndef __IAsyncRpcChannelBuffer_FWD_DEFINED__ +#define __IAsyncRpcChannelBuffer_FWD_DEFINED__ +typedef interface IAsyncRpcChannelBuffer IAsyncRpcChannelBuffer; +#endif + +#ifndef __IRpcSyntaxNegotiate_FWD_DEFINED__ +#define __IRpcSyntaxNegotiate_FWD_DEFINED__ +typedef interface IRpcSyntaxNegotiate IRpcSyntaxNegotiate; +#endif + +#ifndef __IRpcProxyBuffer_FWD_DEFINED__ +#define __IRpcProxyBuffer_FWD_DEFINED__ +typedef interface IRpcProxyBuffer IRpcProxyBuffer; +#endif + +#ifndef __IRpcStubBuffer_FWD_DEFINED__ +#define __IRpcStubBuffer_FWD_DEFINED__ +typedef interface IRpcStubBuffer IRpcStubBuffer; +#endif + +#ifndef __IPSFactoryBuffer_FWD_DEFINED__ +#define __IPSFactoryBuffer_FWD_DEFINED__ +typedef interface IPSFactoryBuffer IPSFactoryBuffer; +#endif + +#ifndef __IChannelHook_FWD_DEFINED__ +#define __IChannelHook_FWD_DEFINED__ +typedef interface IChannelHook IChannelHook; +#endif + +#ifndef __IClientSecurity_FWD_DEFINED__ +#define __IClientSecurity_FWD_DEFINED__ +typedef interface IClientSecurity IClientSecurity; +#endif + +#ifndef __IServerSecurity_FWD_DEFINED__ +#define __IServerSecurity_FWD_DEFINED__ +typedef interface IServerSecurity IServerSecurity; +#endif + +#ifndef __IAsyncSetup_FWD_DEFINED__ +#define __IAsyncSetup_FWD_DEFINED__ +typedef interface IAsyncSetup IAsyncSetup; +#endif + +#ifndef __IDirectWriterLock_FWD_DEFINED__ +#define __IDirectWriterLock_FWD_DEFINED__ +typedef interface IDirectWriterLock IDirectWriterLock; +#endif + +#ifndef __ISynchronize_FWD_DEFINED__ +#define __ISynchronize_FWD_DEFINED__ +typedef interface ISynchronize ISynchronize; +#endif + +#ifndef __ISynchronizeHandle_FWD_DEFINED__ +#define __ISynchronizeHandle_FWD_DEFINED__ +typedef interface ISynchronizeHandle ISynchronizeHandle; +#endif + +#ifndef __ISynchronizeEvent_FWD_DEFINED__ +#define __ISynchronizeEvent_FWD_DEFINED__ +typedef interface ISynchronizeEvent ISynchronizeEvent; +#endif + +#ifndef __ISynchronizeContainer_FWD_DEFINED__ +#define __ISynchronizeContainer_FWD_DEFINED__ +typedef interface ISynchronizeContainer ISynchronizeContainer; +#endif + +#ifndef __ISynchronizeMutex_FWD_DEFINED__ +#define __ISynchronizeMutex_FWD_DEFINED__ +typedef interface ISynchronizeMutex ISynchronizeMutex; +#endif + +#ifndef __ICancelMethodCalls_FWD_DEFINED__ +#define __ICancelMethodCalls_FWD_DEFINED__ +typedef interface ICancelMethodCalls ICancelMethodCalls; +#endif + +#ifndef __IAsyncManager_FWD_DEFINED__ +#define __IAsyncManager_FWD_DEFINED__ +typedef interface IAsyncManager IAsyncManager; +#endif + +#ifndef __ICallFactory_FWD_DEFINED__ +#define __ICallFactory_FWD_DEFINED__ +typedef interface ICallFactory ICallFactory; +#endif + +#ifndef __IRpcOptions_FWD_DEFINED__ +#define __IRpcOptions_FWD_DEFINED__ +typedef interface IRpcOptions IRpcOptions; +#endif + +#ifndef __IRpcHelper_FWD_DEFINED__ +#define __IRpcHelper_FWD_DEFINED__ +typedef interface IRpcHelper IRpcHelper; +#endif + +#ifndef __IReleaseMarshalBuffers_FWD_DEFINED__ +#define __IReleaseMarshalBuffers_FWD_DEFINED__ +typedef interface IReleaseMarshalBuffers IReleaseMarshalBuffers; +#endif + +#ifndef __IWaitMultiple_FWD_DEFINED__ +#define __IWaitMultiple_FWD_DEFINED__ +typedef interface IWaitMultiple IWaitMultiple; +#endif + +#ifndef __IUrlMon_FWD_DEFINED__ +#define __IUrlMon_FWD_DEFINED__ +typedef interface IUrlMon IUrlMon; +#endif + +#ifndef __IForegroundTransfer_FWD_DEFINED__ +#define __IForegroundTransfer_FWD_DEFINED__ +typedef interface IForegroundTransfer IForegroundTransfer; +#endif + +#ifndef __IAddrTrackingControl_FWD_DEFINED__ +#define __IAddrTrackingControl_FWD_DEFINED__ +typedef interface IAddrTrackingControl IAddrTrackingControl; +#endif + +#ifndef __IAddrExclusionControl_FWD_DEFINED__ +#define __IAddrExclusionControl_FWD_DEFINED__ +typedef interface IAddrExclusionControl IAddrExclusionControl; +#endif + +#ifndef __IComThreadingInfo_FWD_DEFINED__ +#define __IComThreadingInfo_FWD_DEFINED__ +typedef interface IComThreadingInfo IComThreadingInfo; +#endif + +#ifndef __IProcessInitControl_FWD_DEFINED__ +#define __IProcessInitControl_FWD_DEFINED__ +typedef interface IProcessInitControl IProcessInitControl; +#endif + +#ifndef __IInitializeSpy_FWD_DEFINED__ +#define __IInitializeSpy_FWD_DEFINED__ +typedef interface IInitializeSpy IInitializeSpy; +#endif + +#ifndef __IThumbnailExtractor_FWD_DEFINED__ +#define __IThumbnailExtractor_FWD_DEFINED__ +typedef interface IThumbnailExtractor IThumbnailExtractor; +#endif + +#ifndef __IEnumContextProps_FWD_DEFINED__ +#define __IEnumContextProps_FWD_DEFINED__ +typedef interface IEnumContextProps IEnumContextProps; +#endif + +#ifndef __IContext_FWD_DEFINED__ +#define __IContext_FWD_DEFINED__ +typedef interface IContext IContext; +#endif + +#ifndef __IObjContext_FWD_DEFINED__ +#define __IObjContext_FWD_DEFINED__ +typedef interface IObjContext IObjContext; +#endif + + +#ifndef __IStream_FWD_DEFINED__ +#define __IStream_FWD_DEFINED__ +typedef interface IStream IStream; +#endif + +#ifndef __IEnumString_FWD_DEFINED__ +#define __IEnumString_FWD_DEFINED__ +typedef interface IEnumString IEnumString; +#endif + +#ifndef __IRunningObjectTable_FWD_DEFINED__ +#define __IRunningObjectTable_FWD_DEFINED__ +typedef interface IRunningObjectTable IRunningObjectTable; +#endif + +#ifndef __IMoniker_FWD_DEFINED__ +#define __IMoniker_FWD_DEFINED__ +typedef interface IMoniker IMoniker; +#endif + +#ifndef __IAdviseSink_FWD_DEFINED__ +#define __IAdviseSink_FWD_DEFINED__ +typedef interface IAdviseSink IAdviseSink; +#endif + +#ifndef __IAsyncManager_FWD_DEFINED__ +#define __IAsyncManager_FWD_DEFINED__ +typedef interface IAsyncManager IAsyncManager; +#endif + +#ifndef __ISynchronize_FWD_DEFINED__ +#define __ISynchronize_FWD_DEFINED__ +typedef interface ISynchronize ISynchronize; +#endif + +typedef struct _COSERVERINFO { + DWORD dwReserved1; + LPWSTR pwszName; + COAUTHINFO *pAuthInfo; + DWORD dwReserved2; +} COSERVERINFO; +/***************************************************************************** + * IMarshal interface + */ +#ifndef __IMarshal_INTERFACE_DEFINED__ +#define __IMarshal_INTERFACE_DEFINED__ + +typedef IMarshal *LPMARSHAL; +DEFINE_GUID(IID_IMarshal, 0x00000003, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IMarshal : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetUnmarshalClass( + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags, + CLSID *pCid) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetMarshalSizeMax( + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags, + DWORD *pSize) = 0; + + virtual HRESULT STDMETHODCALLTYPE MarshalInterface( + IStream *pStm, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags) = 0; + + virtual HRESULT STDMETHODCALLTYPE UnmarshalInterface( + IStream *pStm, + REFIID riid, + void **ppv) = 0; + + virtual HRESULT STDMETHODCALLTYPE ReleaseMarshalData( + IStream *pStm) = 0; + + virtual HRESULT STDMETHODCALLTYPE DisconnectObject( + DWORD dwReserved) = 0; + +}; +#else +typedef struct IMarshalVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IMarshal* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IMarshal* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IMarshal* This); + + /*** IMarshal methods ***/ + HRESULT (STDMETHODCALLTYPE *GetUnmarshalClass)( + IMarshal* This, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags, + CLSID *pCid); + + HRESULT (STDMETHODCALLTYPE *GetMarshalSizeMax)( + IMarshal* This, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags, + DWORD *pSize); + + HRESULT (STDMETHODCALLTYPE *MarshalInterface)( + IMarshal* This, + IStream *pStm, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags); + + HRESULT (STDMETHODCALLTYPE *UnmarshalInterface)( + IMarshal* This, + IStream *pStm, + REFIID riid, + void **ppv); + + HRESULT (STDMETHODCALLTYPE *ReleaseMarshalData)( + IMarshal* This, + IStream *pStm); + + HRESULT (STDMETHODCALLTYPE *DisconnectObject)( + IMarshal* This, + DWORD dwReserved); + + END_INTERFACE +} IMarshalVtbl; +interface IMarshal { + CONST_VTBL IMarshalVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IMarshal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IMarshal_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IMarshal_Release(This) (This)->lpVtbl->Release(This) +/*** IMarshal methods ***/ +#define IMarshal_GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) (This)->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) +#define IMarshal_GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) (This)->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) +#define IMarshal_MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) (This)->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) +#define IMarshal_UnmarshalInterface(This,pStm,riid,ppv) (This)->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv) +#define IMarshal_ReleaseMarshalData(This,pStm) (This)->lpVtbl->ReleaseMarshalData(This,pStm) +#define IMarshal_DisconnectObject(This,dwReserved) (This)->lpVtbl->DisconnectObject(This,dwReserved) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IMarshal_GetUnmarshalClass_Proxy( + IMarshal* This, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags, + CLSID *pCid); +void __RPC_STUB IMarshal_GetUnmarshalClass_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMarshal_GetMarshalSizeMax_Proxy( + IMarshal* This, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags, + DWORD *pSize); +void __RPC_STUB IMarshal_GetMarshalSizeMax_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMarshal_MarshalInterface_Proxy( + IMarshal* This, + IStream *pStm, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags); +void __RPC_STUB IMarshal_MarshalInterface_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMarshal_UnmarshalInterface_Proxy( + IMarshal* This, + IStream *pStm, + REFIID riid, + void **ppv); +void __RPC_STUB IMarshal_UnmarshalInterface_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMarshal_ReleaseMarshalData_Proxy( + IMarshal* This, + IStream *pStm); +void __RPC_STUB IMarshal_ReleaseMarshalData_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMarshal_DisconnectObject_Proxy( + IMarshal* This, + DWORD dwReserved); +void __RPC_STUB IMarshal_DisconnectObject_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IMarshal_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IMarshal2 interface + */ +#ifndef __IMarshal2_INTERFACE_DEFINED__ +#define __IMarshal2_INTERFACE_DEFINED__ + +typedef IMarshal2 *LPMARSHAL2; +DEFINE_GUID(IID_IMarshal2, 0x000001cf, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IMarshal2 : public IMarshal +{ +}; +#else +typedef struct IMarshal2Vtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IMarshal2* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IMarshal2* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IMarshal2* This); + + /*** IMarshal methods ***/ + HRESULT (STDMETHODCALLTYPE *GetUnmarshalClass)( + IMarshal2* This, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags, + CLSID *pCid); + + HRESULT (STDMETHODCALLTYPE *GetMarshalSizeMax)( + IMarshal2* This, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags, + DWORD *pSize); + + HRESULT (STDMETHODCALLTYPE *MarshalInterface)( + IMarshal2* This, + IStream *pStm, + REFIID riid, + void *pv, + DWORD dwDestContext, + void *pvDestContext, + DWORD mshlflags); + + HRESULT (STDMETHODCALLTYPE *UnmarshalInterface)( + IMarshal2* This, + IStream *pStm, + REFIID riid, + void **ppv); + + HRESULT (STDMETHODCALLTYPE *ReleaseMarshalData)( + IMarshal2* This, + IStream *pStm); + + HRESULT (STDMETHODCALLTYPE *DisconnectObject)( + IMarshal2* This, + DWORD dwReserved); + + END_INTERFACE +} IMarshal2Vtbl; +interface IMarshal2 { + CONST_VTBL IMarshal2Vtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IMarshal2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IMarshal2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IMarshal2_Release(This) (This)->lpVtbl->Release(This) +/*** IMarshal methods ***/ +#define IMarshal2_GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) (This)->lpVtbl->GetUnmarshalClass(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pCid) +#define IMarshal2_GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) (This)->lpVtbl->GetMarshalSizeMax(This,riid,pv,dwDestContext,pvDestContext,mshlflags,pSize) +#define IMarshal2_MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) (This)->lpVtbl->MarshalInterface(This,pStm,riid,pv,dwDestContext,pvDestContext,mshlflags) +#define IMarshal2_UnmarshalInterface(This,pStm,riid,ppv) (This)->lpVtbl->UnmarshalInterface(This,pStm,riid,ppv) +#define IMarshal2_ReleaseMarshalData(This,pStm) (This)->lpVtbl->ReleaseMarshalData(This,pStm) +#define IMarshal2_DisconnectObject(This,dwReserved) (This)->lpVtbl->DisconnectObject(This,dwReserved) +#endif + +#endif + + +#endif /* __IMarshal2_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IStdMarshalInfo interface + */ +#ifndef __IStdMarshalInfo_INTERFACE_DEFINED__ +#define __IStdMarshalInfo_INTERFACE_DEFINED__ + +typedef IStdMarshalInfo *LPSTDMARSHALINFO; +DEFINE_GUID(IID_IStdMarshalInfo, 0x00000018, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IStdMarshalInfo : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetClassForHandler( + DWORD dwDestContext, + void *pvDestContext, + CLSID *pClsid) = 0; + +}; +#else +typedef struct IStdMarshalInfoVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IStdMarshalInfo* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IStdMarshalInfo* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IStdMarshalInfo* This); + + /*** IStdMarshalInfo methods ***/ + HRESULT (STDMETHODCALLTYPE *GetClassForHandler)( + IStdMarshalInfo* This, + DWORD dwDestContext, + void *pvDestContext, + CLSID *pClsid); + + END_INTERFACE +} IStdMarshalInfoVtbl; +interface IStdMarshalInfo { + CONST_VTBL IStdMarshalInfoVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IStdMarshalInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IStdMarshalInfo_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IStdMarshalInfo_Release(This) (This)->lpVtbl->Release(This) +/*** IStdMarshalInfo methods ***/ +#define IStdMarshalInfo_GetClassForHandler(This,dwDestContext,pvDestContext,pClsid) (This)->lpVtbl->GetClassForHandler(This,dwDestContext,pvDestContext,pClsid) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IStdMarshalInfo_GetClassForHandler_Proxy( + IStdMarshalInfo* This, + DWORD dwDestContext, + void *pvDestContext, + CLSID *pClsid); +void __RPC_STUB IStdMarshalInfo_GetClassForHandler_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IStdMarshalInfo_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IExternalConnection interface + */ +#ifndef __IExternalConnection_INTERFACE_DEFINED__ +#define __IExternalConnection_INTERFACE_DEFINED__ + +typedef IExternalConnection *LPEXTERNALCONNECTION; +typedef enum tagEXTCONN { + EXTCONN_STRONG = 0x1, + EXTCONN_WEAK = 0x2, + EXTCONN_CALLABLE = 0x4 +} EXTCONN; +DEFINE_GUID(IID_IExternalConnection, 0x00000019, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IExternalConnection : public IUnknown +{ + virtual DWORD STDMETHODCALLTYPE AddConnection( + DWORD extconn, + DWORD reserved) = 0; + + virtual DWORD STDMETHODCALLTYPE ReleaseConnection( + DWORD extconn, + DWORD reserved, + BOOL fLastReleaseCloses) = 0; + +}; +#else +typedef struct IExternalConnectionVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IExternalConnection* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IExternalConnection* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IExternalConnection* This); + + /*** IExternalConnection methods ***/ + DWORD (STDMETHODCALLTYPE *AddConnection)( + IExternalConnection* This, + DWORD extconn, + DWORD reserved); + + DWORD (STDMETHODCALLTYPE *ReleaseConnection)( + IExternalConnection* This, + DWORD extconn, + DWORD reserved, + BOOL fLastReleaseCloses); + + END_INTERFACE +} IExternalConnectionVtbl; +interface IExternalConnection { + CONST_VTBL IExternalConnectionVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IExternalConnection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IExternalConnection_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IExternalConnection_Release(This) (This)->lpVtbl->Release(This) +/*** IExternalConnection methods ***/ +#define IExternalConnection_AddConnection(This,extconn,reserved) (This)->lpVtbl->AddConnection(This,extconn,reserved) +#define IExternalConnection_ReleaseConnection(This,extconn,reserved,fLastReleaseCloses) (This)->lpVtbl->ReleaseConnection(This,extconn,reserved,fLastReleaseCloses) +#endif + +#endif + +DWORD STDMETHODCALLTYPE IExternalConnection_AddConnection_Proxy( + IExternalConnection* This, + DWORD extconn, + DWORD reserved); +void __RPC_STUB IExternalConnection_AddConnection_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +DWORD STDMETHODCALLTYPE IExternalConnection_ReleaseConnection_Proxy( + IExternalConnection* This, + DWORD extconn, + DWORD reserved, + BOOL fLastReleaseCloses); +void __RPC_STUB IExternalConnection_ReleaseConnection_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IExternalConnection_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IMultiQI interface + */ +#ifndef __IMultiQI_INTERFACE_DEFINED__ +#define __IMultiQI_INTERFACE_DEFINED__ + +typedef IMultiQI *LPMULTIQI; +typedef struct tagMULTI_QI { + const IID *pIID; + IUnknown *pItf; + HRESULT hr; +} MULTI_QI; +DEFINE_GUID(IID_IMultiQI, 0x00000020, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IMultiQI : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE QueryMultipleInterfaces( + ULONG cMQIs, + MULTI_QI *pMQIs) = 0; + +}; +#else +typedef struct IMultiQIVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IMultiQI* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IMultiQI* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IMultiQI* This); + + /*** IMultiQI methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryMultipleInterfaces)( + IMultiQI* This, + ULONG cMQIs, + MULTI_QI *pMQIs); + + END_INTERFACE +} IMultiQIVtbl; +interface IMultiQI { + CONST_VTBL IMultiQIVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IMultiQI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IMultiQI_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IMultiQI_Release(This) (This)->lpVtbl->Release(This) +/*** IMultiQI methods ***/ +#define IMultiQI_QueryMultipleInterfaces(This,cMQIs,pMQIs) (This)->lpVtbl->QueryMultipleInterfaces(This,cMQIs,pMQIs) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IMultiQI_QueryMultipleInterfaces_Proxy( + IMultiQI* This, + ULONG cMQIs, + MULTI_QI *pMQIs); +void __RPC_STUB IMultiQI_QueryMultipleInterfaces_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IMultiQI_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IMalloc interface + */ +#ifndef __IMalloc_INTERFACE_DEFINED__ +#define __IMalloc_INTERFACE_DEFINED__ + +typedef IMalloc *LPMALLOC; +DEFINE_GUID(IID_IMalloc, 0x00000002, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IMalloc : public IUnknown +{ + virtual LPVOID STDMETHODCALLTYPE Alloc( + ULONG cb) = 0; + + virtual LPVOID STDMETHODCALLTYPE Realloc( + LPVOID pv, + ULONG cb) = 0; + + virtual void STDMETHODCALLTYPE Free( + LPVOID pv) = 0; + + virtual ULONG STDMETHODCALLTYPE GetSize( + LPVOID pv) = 0; + + virtual int STDMETHODCALLTYPE DidAlloc( + LPVOID pv) = 0; + + virtual void STDMETHODCALLTYPE HeapMinimize( + ) = 0; + +}; +#else +typedef struct IMallocVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IMalloc* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IMalloc* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IMalloc* This); + + /*** IMalloc methods ***/ + LPVOID (STDMETHODCALLTYPE *Alloc)( + IMalloc* This, + ULONG cb); + + LPVOID (STDMETHODCALLTYPE *Realloc)( + IMalloc* This, + LPVOID pv, + ULONG cb); + + void (STDMETHODCALLTYPE *Free)( + IMalloc* This, + LPVOID pv); + + ULONG (STDMETHODCALLTYPE *GetSize)( + IMalloc* This, + LPVOID pv); + + int (STDMETHODCALLTYPE *DidAlloc)( + IMalloc* This, + LPVOID pv); + + void (STDMETHODCALLTYPE *HeapMinimize)( + IMalloc* This); + + END_INTERFACE +} IMallocVtbl; +interface IMalloc { + CONST_VTBL IMallocVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IMalloc_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IMalloc_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IMalloc_Release(This) (This)->lpVtbl->Release(This) +/*** IMalloc methods ***/ +#define IMalloc_Alloc(This,cb) (This)->lpVtbl->Alloc(This,cb) +#define IMalloc_Realloc(This,pv,cb) (This)->lpVtbl->Realloc(This,pv,cb) +#define IMalloc_Free(This,pv) (This)->lpVtbl->Free(This,pv) +#define IMalloc_GetSize(This,pv) (This)->lpVtbl->GetSize(This,pv) +#define IMalloc_DidAlloc(This,pv) (This)->lpVtbl->DidAlloc(This,pv) +#define IMalloc_HeapMinimize(This) (This)->lpVtbl->HeapMinimize(This) +#endif + +#endif + +LPVOID STDMETHODCALLTYPE IMalloc_Alloc_Proxy( + IMalloc* This, + ULONG cb); +void __RPC_STUB IMalloc_Alloc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +LPVOID STDMETHODCALLTYPE IMalloc_Realloc_Proxy( + IMalloc* This, + LPVOID pv, + ULONG cb); +void __RPC_STUB IMalloc_Realloc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IMalloc_Free_Proxy( + IMalloc* This, + LPVOID pv); +void __RPC_STUB IMalloc_Free_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +ULONG STDMETHODCALLTYPE IMalloc_GetSize_Proxy( + IMalloc* This, + LPVOID pv); +void __RPC_STUB IMalloc_GetSize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +int STDMETHODCALLTYPE IMalloc_DidAlloc_Proxy( + IMalloc* This, + LPVOID pv); +void __RPC_STUB IMalloc_DidAlloc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IMalloc_HeapMinimize_Proxy( + IMalloc* This); +void __RPC_STUB IMalloc_HeapMinimize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IMalloc_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IMallocSpy interface + */ +#ifndef __IMallocSpy_INTERFACE_DEFINED__ +#define __IMallocSpy_INTERFACE_DEFINED__ + +typedef IMallocSpy *LPMALLOCSPY; +DEFINE_GUID(IID_IMallocSpy, 0x0000001d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IMallocSpy : public IUnknown +{ + virtual ULONG STDMETHODCALLTYPE PreAlloc( + ULONG cbRequest) = 0; + + virtual LPVOID STDMETHODCALLTYPE PostAlloc( + LPVOID pActual) = 0; + + virtual LPVOID STDMETHODCALLTYPE PreFree( + LPVOID pRequest, + BOOL fSpyed) = 0; + + virtual void STDMETHODCALLTYPE PostFree( + BOOL fSpyed) = 0; + + virtual ULONG STDMETHODCALLTYPE PreRealloc( + LPVOID pRequest, + ULONG cbRequest, + LPVOID *ppNewRequest, + BOOL fSpyed) = 0; + + virtual LPVOID STDMETHODCALLTYPE PostRealloc( + LPVOID pActual, + BOOL fSpyed) = 0; + + virtual LPVOID STDMETHODCALLTYPE PreGetSize( + LPVOID pRequest, + BOOL fSpyed) = 0; + + virtual ULONG STDMETHODCALLTYPE PostGetSize( + ULONG cbActual, + BOOL fSpyed) = 0; + + virtual LPVOID STDMETHODCALLTYPE PreDidAlloc( + LPVOID pRequest, + BOOL fSpyed) = 0; + + virtual int STDMETHODCALLTYPE PostDidAlloc( + LPVOID pRequest, + BOOL fSpyed, + int fActual) = 0; + + virtual void STDMETHODCALLTYPE PreHeapMinimize( + ) = 0; + + virtual void STDMETHODCALLTYPE PostHeapMinimize( + ) = 0; + +}; +#else +typedef struct IMallocSpyVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IMallocSpy* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IMallocSpy* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IMallocSpy* This); + + /*** IMallocSpy methods ***/ + ULONG (STDMETHODCALLTYPE *PreAlloc)( + IMallocSpy* This, + ULONG cbRequest); + + LPVOID (STDMETHODCALLTYPE *PostAlloc)( + IMallocSpy* This, + LPVOID pActual); + + LPVOID (STDMETHODCALLTYPE *PreFree)( + IMallocSpy* This, + LPVOID pRequest, + BOOL fSpyed); + + void (STDMETHODCALLTYPE *PostFree)( + IMallocSpy* This, + BOOL fSpyed); + + ULONG (STDMETHODCALLTYPE *PreRealloc)( + IMallocSpy* This, + LPVOID pRequest, + ULONG cbRequest, + LPVOID *ppNewRequest, + BOOL fSpyed); + + LPVOID (STDMETHODCALLTYPE *PostRealloc)( + IMallocSpy* This, + LPVOID pActual, + BOOL fSpyed); + + LPVOID (STDMETHODCALLTYPE *PreGetSize)( + IMallocSpy* This, + LPVOID pRequest, + BOOL fSpyed); + + ULONG (STDMETHODCALLTYPE *PostGetSize)( + IMallocSpy* This, + ULONG cbActual, + BOOL fSpyed); + + LPVOID (STDMETHODCALLTYPE *PreDidAlloc)( + IMallocSpy* This, + LPVOID pRequest, + BOOL fSpyed); + + int (STDMETHODCALLTYPE *PostDidAlloc)( + IMallocSpy* This, + LPVOID pRequest, + BOOL fSpyed, + int fActual); + + void (STDMETHODCALLTYPE *PreHeapMinimize)( + IMallocSpy* This); + + void (STDMETHODCALLTYPE *PostHeapMinimize)( + IMallocSpy* This); + + END_INTERFACE +} IMallocSpyVtbl; +interface IMallocSpy { + CONST_VTBL IMallocSpyVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IMallocSpy_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IMallocSpy_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IMallocSpy_Release(This) (This)->lpVtbl->Release(This) +/*** IMallocSpy methods ***/ +#define IMallocSpy_PreAlloc(This,cbRequest) (This)->lpVtbl->PreAlloc(This,cbRequest) +#define IMallocSpy_PostAlloc(This,pActual) (This)->lpVtbl->PostAlloc(This,pActual) +#define IMallocSpy_PreFree(This,pRequest,fSpyed) (This)->lpVtbl->PreFree(This,pRequest,fSpyed) +#define IMallocSpy_PostFree(This,fSpyed) (This)->lpVtbl->PostFree(This,fSpyed) +#define IMallocSpy_PreRealloc(This,pRequest,cbRequest,ppNewRequest,fSpyed) (This)->lpVtbl->PreRealloc(This,pRequest,cbRequest,ppNewRequest,fSpyed) +#define IMallocSpy_PostRealloc(This,pActual,fSpyed) (This)->lpVtbl->PostRealloc(This,pActual,fSpyed) +#define IMallocSpy_PreGetSize(This,pRequest,fSpyed) (This)->lpVtbl->PreGetSize(This,pRequest,fSpyed) +#define IMallocSpy_PostGetSize(This,cbActual,fSpyed) (This)->lpVtbl->PostGetSize(This,cbActual,fSpyed) +#define IMallocSpy_PreDidAlloc(This,pRequest,fSpyed) (This)->lpVtbl->PreDidAlloc(This,pRequest,fSpyed) +#define IMallocSpy_PostDidAlloc(This,pRequest,fSpyed,fActual) (This)->lpVtbl->PostDidAlloc(This,pRequest,fSpyed,fActual) +#define IMallocSpy_PreHeapMinimize(This) (This)->lpVtbl->PreHeapMinimize(This) +#define IMallocSpy_PostHeapMinimize(This) (This)->lpVtbl->PostHeapMinimize(This) +#endif + +#endif + +ULONG STDMETHODCALLTYPE IMallocSpy_PreAlloc_Proxy( + IMallocSpy* This, + ULONG cbRequest); +void __RPC_STUB IMallocSpy_PreAlloc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +LPVOID STDMETHODCALLTYPE IMallocSpy_PostAlloc_Proxy( + IMallocSpy* This, + LPVOID pActual); +void __RPC_STUB IMallocSpy_PostAlloc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +LPVOID STDMETHODCALLTYPE IMallocSpy_PreFree_Proxy( + IMallocSpy* This, + LPVOID pRequest, + BOOL fSpyed); +void __RPC_STUB IMallocSpy_PreFree_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IMallocSpy_PostFree_Proxy( + IMallocSpy* This, + BOOL fSpyed); +void __RPC_STUB IMallocSpy_PostFree_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +ULONG STDMETHODCALLTYPE IMallocSpy_PreRealloc_Proxy( + IMallocSpy* This, + LPVOID pRequest, + ULONG cbRequest, + LPVOID *ppNewRequest, + BOOL fSpyed); +void __RPC_STUB IMallocSpy_PreRealloc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +LPVOID STDMETHODCALLTYPE IMallocSpy_PostRealloc_Proxy( + IMallocSpy* This, + LPVOID pActual, + BOOL fSpyed); +void __RPC_STUB IMallocSpy_PostRealloc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +LPVOID STDMETHODCALLTYPE IMallocSpy_PreGetSize_Proxy( + IMallocSpy* This, + LPVOID pRequest, + BOOL fSpyed); +void __RPC_STUB IMallocSpy_PreGetSize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +ULONG STDMETHODCALLTYPE IMallocSpy_PostGetSize_Proxy( + IMallocSpy* This, + ULONG cbActual, + BOOL fSpyed); +void __RPC_STUB IMallocSpy_PostGetSize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +LPVOID STDMETHODCALLTYPE IMallocSpy_PreDidAlloc_Proxy( + IMallocSpy* This, + LPVOID pRequest, + BOOL fSpyed); +void __RPC_STUB IMallocSpy_PreDidAlloc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +int STDMETHODCALLTYPE IMallocSpy_PostDidAlloc_Proxy( + IMallocSpy* This, + LPVOID pRequest, + BOOL fSpyed, + int fActual); +void __RPC_STUB IMallocSpy_PostDidAlloc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IMallocSpy_PreHeapMinimize_Proxy( + IMallocSpy* This); +void __RPC_STUB IMallocSpy_PreHeapMinimize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IMallocSpy_PostHeapMinimize_Proxy( + IMallocSpy* This); +void __RPC_STUB IMallocSpy_PostHeapMinimize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IMallocSpy_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IInternalUnknown interface + */ +#ifndef __IInternalUnknown_INTERFACE_DEFINED__ +#define __IInternalUnknown_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IInternalUnknown, 0x00000021, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IInternalUnknown : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE QueryInternalInterface( + REFIID riid, + void **ppv) = 0; + +}; +#else +typedef struct IInternalUnknownVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IInternalUnknown* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IInternalUnknown* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IInternalUnknown* This); + + /*** IInternalUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInternalInterface)( + IInternalUnknown* This, + REFIID riid, + void **ppv); + + END_INTERFACE +} IInternalUnknownVtbl; +interface IInternalUnknown { + CONST_VTBL IInternalUnknownVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IInternalUnknown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IInternalUnknown_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IInternalUnknown_Release(This) (This)->lpVtbl->Release(This) +/*** IInternalUnknown methods ***/ +#define IInternalUnknown_QueryInternalInterface(This,riid,ppv) (This)->lpVtbl->QueryInternalInterface(This,riid,ppv) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IInternalUnknown_QueryInternalInterface_Proxy( + IInternalUnknown* This, + REFIID riid, + void **ppv); +void __RPC_STUB IInternalUnknown_QueryInternalInterface_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IInternalUnknown_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IEnumUnknown interface + */ +#ifndef __IEnumUnknown_INTERFACE_DEFINED__ +#define __IEnumUnknown_INTERFACE_DEFINED__ + +typedef IEnumUnknown *LPENUMUNKNOWN; +DEFINE_GUID(IID_IEnumUnknown, 0x00000100, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IEnumUnknown : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Next( + ULONG celt, + IUnknown **rgelt, + ULONG *pceltFetched) = 0; + + virtual HRESULT STDMETHODCALLTYPE Skip( + ULONG celt) = 0; + + virtual HRESULT STDMETHODCALLTYPE Reset( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Clone( + IEnumUnknown **ppenum) = 0; + +}; +#else +typedef struct IEnumUnknownVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IEnumUnknown* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IEnumUnknown* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IEnumUnknown* This); + + /*** IEnumUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *Next)( + IEnumUnknown* This, + ULONG celt, + IUnknown **rgelt, + ULONG *pceltFetched); + + HRESULT (STDMETHODCALLTYPE *Skip)( + IEnumUnknown* This, + ULONG celt); + + HRESULT (STDMETHODCALLTYPE *Reset)( + IEnumUnknown* This); + + HRESULT (STDMETHODCALLTYPE *Clone)( + IEnumUnknown* This, + IEnumUnknown **ppenum); + + END_INTERFACE +} IEnumUnknownVtbl; +interface IEnumUnknown { + CONST_VTBL IEnumUnknownVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IEnumUnknown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IEnumUnknown_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IEnumUnknown_Release(This) (This)->lpVtbl->Release(This) +/*** IEnumUnknown methods ***/ +#define IEnumUnknown_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) +#define IEnumUnknown_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IEnumUnknown_Reset(This) (This)->lpVtbl->Reset(This) +#define IEnumUnknown_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IEnumUnknown_RemoteNext_Proxy( + IEnumUnknown* This, + ULONG celt, + IUnknown **rgelt, + ULONG *pceltFetched); +void __RPC_STUB IEnumUnknown_RemoteNext_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumUnknown_Skip_Proxy( + IEnumUnknown* This, + ULONG celt); +void __RPC_STUB IEnumUnknown_Skip_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumUnknown_Reset_Proxy( + IEnumUnknown* This); +void __RPC_STUB IEnumUnknown_Reset_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumUnknown_Clone_Proxy( + IEnumUnknown* This, + IEnumUnknown **ppenum); +void __RPC_STUB IEnumUnknown_Clone_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IEnumUnknown_Next_Proxy( + IEnumUnknown* This, + ULONG celt, + IUnknown **rgelt, + ULONG *pceltFetched); +HRESULT __RPC_STUB IEnumUnknown_Next_Stub( + IEnumUnknown* This, + ULONG celt, + IUnknown **rgelt, + ULONG *pceltFetched); + +#endif /* __IEnumUnknown_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ISurrogate interface + */ +#ifndef __ISurrogate_INTERFACE_DEFINED__ +#define __ISurrogate_INTERFACE_DEFINED__ + +typedef ISurrogate *LPSURROGATE; +DEFINE_GUID(IID_ISurrogate, 0x00000022, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ISurrogate : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE LoadDllServer( + REFCLSID Clsid) = 0; + + virtual HRESULT STDMETHODCALLTYPE FreeSurrogate( + ) = 0; + +}; +#else +typedef struct ISurrogateVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ISurrogate* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ISurrogate* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ISurrogate* This); + + /*** ISurrogate methods ***/ + HRESULT (STDMETHODCALLTYPE *LoadDllServer)( + ISurrogate* This, + REFCLSID Clsid); + + HRESULT (STDMETHODCALLTYPE *FreeSurrogate)( + ISurrogate* This); + + END_INTERFACE +} ISurrogateVtbl; +interface ISurrogate { + CONST_VTBL ISurrogateVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ISurrogate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ISurrogate_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ISurrogate_Release(This) (This)->lpVtbl->Release(This) +/*** ISurrogate methods ***/ +#define ISurrogate_LoadDllServer(This,Clsid) (This)->lpVtbl->LoadDllServer(This,Clsid) +#define ISurrogate_FreeSurrogate(This) (This)->lpVtbl->FreeSurrogate(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ISurrogate_LoadDllServer_Proxy( + ISurrogate* This, + REFCLSID Clsid); +void __RPC_STUB ISurrogate_LoadDllServer_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ISurrogate_FreeSurrogate_Proxy( + ISurrogate* This); +void __RPC_STUB ISurrogate_FreeSurrogate_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ISurrogate_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IGlobalInterfaceTable interface + */ +#ifndef __IGlobalInterfaceTable_INTERFACE_DEFINED__ +#define __IGlobalInterfaceTable_INTERFACE_DEFINED__ + +typedef IGlobalInterfaceTable *LPGLOBALINTERFACETABLE; +DEFINE_GUID(IID_IGlobalInterfaceTable, 0x00000146, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IGlobalInterfaceTable : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE RegisterInterfaceInGlobal( + IUnknown *pUnk, + REFIID riid, + DWORD *pdwCookie) = 0; + + virtual HRESULT STDMETHODCALLTYPE RevokeInterfaceFromGlobal( + DWORD dwCookie) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetInterfaceFromGlobal( + DWORD dwCookie, + REFIID riid, + void **ppv) = 0; + +}; +#else +typedef struct IGlobalInterfaceTableVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IGlobalInterfaceTable* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IGlobalInterfaceTable* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IGlobalInterfaceTable* This); + + /*** IGlobalInterfaceTable methods ***/ + HRESULT (STDMETHODCALLTYPE *RegisterInterfaceInGlobal)( + IGlobalInterfaceTable* This, + IUnknown *pUnk, + REFIID riid, + DWORD *pdwCookie); + + HRESULT (STDMETHODCALLTYPE *RevokeInterfaceFromGlobal)( + IGlobalInterfaceTable* This, + DWORD dwCookie); + + HRESULT (STDMETHODCALLTYPE *GetInterfaceFromGlobal)( + IGlobalInterfaceTable* This, + DWORD dwCookie, + REFIID riid, + void **ppv); + + END_INTERFACE +} IGlobalInterfaceTableVtbl; +interface IGlobalInterfaceTable { + CONST_VTBL IGlobalInterfaceTableVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IGlobalInterfaceTable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IGlobalInterfaceTable_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IGlobalInterfaceTable_Release(This) (This)->lpVtbl->Release(This) +/*** IGlobalInterfaceTable methods ***/ +#define IGlobalInterfaceTable_RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie) (This)->lpVtbl->RegisterInterfaceInGlobal(This,pUnk,riid,pdwCookie) +#define IGlobalInterfaceTable_RevokeInterfaceFromGlobal(This,dwCookie) (This)->lpVtbl->RevokeInterfaceFromGlobal(This,dwCookie) +#define IGlobalInterfaceTable_GetInterfaceFromGlobal(This,dwCookie,riid,ppv) (This)->lpVtbl->GetInterfaceFromGlobal(This,dwCookie,riid,ppv) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IGlobalInterfaceTable_RegisterInterfaceInGlobal_Proxy( + IGlobalInterfaceTable* This, + IUnknown *pUnk, + REFIID riid, + DWORD *pdwCookie); +void __RPC_STUB IGlobalInterfaceTable_RegisterInterfaceInGlobal_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IGlobalInterfaceTable_RevokeInterfaceFromGlobal_Proxy( + IGlobalInterfaceTable* This, + DWORD dwCookie); +void __RPC_STUB IGlobalInterfaceTable_RevokeInterfaceFromGlobal_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IGlobalInterfaceTable_GetInterfaceFromGlobal_Proxy( + IGlobalInterfaceTable* This, + DWORD dwCookie, + REFIID riid, + void **ppv); +void __RPC_STUB IGlobalInterfaceTable_GetInterfaceFromGlobal_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IGlobalInterfaceTable_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IBindCtx interface + */ +#ifndef __IBindCtx_INTERFACE_DEFINED__ +#define __IBindCtx_INTERFACE_DEFINED__ + +typedef IBindCtx *LPBINDCTX; +typedef IBindCtx *LPBC; +typedef struct tagBIND_OPTS { + DWORD cbStruct; + DWORD grfFlags; + DWORD grfMode; + DWORD dwTickCountDeadline; +} BIND_OPTS; +typedef struct tagBIND_OPTS *LPBIND_OPTS; +typedef struct tagBIND_OPTS2 { + DWORD cbStruct; + DWORD grfFlags; + DWORD grfMode; + DWORD dwTickCountDeadline; + DWORD dwTrackFlags; + DWORD dwClassContext; + LCID locale; + COSERVERINFO *pServerInfo; +} BIND_OPTS2; +typedef struct tagBIND_OPTS2 *LPBIND_OPTS2; +typedef enum tagBIND_FLAGS { + BIND_MAYBOTHERUSER = 1, + BIND_JUSTTESTEXISTENCE = 2 +} BIND_FLAGS; +DEFINE_GUID(IID_IBindCtx, 0x0000000e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IBindCtx : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE RegisterObjectBound( + IUnknown *punk) = 0; + + virtual HRESULT STDMETHODCALLTYPE RevokeObjectBound( + IUnknown *punk) = 0; + + virtual HRESULT STDMETHODCALLTYPE ReleaseBoundObjects( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetBindOptions( + BIND_OPTS *pbindopts) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetBindOptions( + BIND_OPTS *pbindopts) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetRunningObjectTable( + IRunningObjectTable **pprot) = 0; + + virtual HRESULT STDMETHODCALLTYPE RegisterObjectParam( + LPOLESTR pszKey, + IUnknown *punk) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetObjectParam( + LPOLESTR pszKey, + IUnknown **ppunk) = 0; + + virtual HRESULT STDMETHODCALLTYPE EnumObjectParam( + IEnumString **ppenum) = 0; + + virtual HRESULT STDMETHODCALLTYPE RevokeObjectParam( + LPOLESTR pszKey) = 0; + +}; +#else +typedef struct IBindCtxVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IBindCtx* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IBindCtx* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IBindCtx* This); + + /*** IBindCtx methods ***/ + HRESULT (STDMETHODCALLTYPE *RegisterObjectBound)( + IBindCtx* This, + IUnknown *punk); + + HRESULT (STDMETHODCALLTYPE *RevokeObjectBound)( + IBindCtx* This, + IUnknown *punk); + + HRESULT (STDMETHODCALLTYPE *ReleaseBoundObjects)( + IBindCtx* This); + + HRESULT (STDMETHODCALLTYPE *SetBindOptions)( + IBindCtx* This, + BIND_OPTS *pbindopts); + + HRESULT (STDMETHODCALLTYPE *GetBindOptions)( + IBindCtx* This, + BIND_OPTS *pbindopts); + + HRESULT (STDMETHODCALLTYPE *GetRunningObjectTable)( + IBindCtx* This, + IRunningObjectTable **pprot); + + HRESULT (STDMETHODCALLTYPE *RegisterObjectParam)( + IBindCtx* This, + LPOLESTR pszKey, + IUnknown *punk); + + HRESULT (STDMETHODCALLTYPE *GetObjectParam)( + IBindCtx* This, + LPOLESTR pszKey, + IUnknown **ppunk); + + HRESULT (STDMETHODCALLTYPE *EnumObjectParam)( + IBindCtx* This, + IEnumString **ppenum); + + HRESULT (STDMETHODCALLTYPE *RevokeObjectParam)( + IBindCtx* This, + LPOLESTR pszKey); + + END_INTERFACE +} IBindCtxVtbl; +interface IBindCtx { + CONST_VTBL IBindCtxVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IBindCtx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IBindCtx_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IBindCtx_Release(This) (This)->lpVtbl->Release(This) +/*** IBindCtx methods ***/ +#define IBindCtx_RegisterObjectBound(This,punk) (This)->lpVtbl->RegisterObjectBound(This,punk) +#define IBindCtx_RevokeObjectBound(This,punk) (This)->lpVtbl->RevokeObjectBound(This,punk) +#define IBindCtx_ReleaseBoundObjects(This) (This)->lpVtbl->ReleaseBoundObjects(This) +#define IBindCtx_SetBindOptions(This,pbindopts) (This)->lpVtbl->SetBindOptions(This,pbindopts) +#define IBindCtx_GetBindOptions(This,pbindopts) (This)->lpVtbl->GetBindOptions(This,pbindopts) +#define IBindCtx_GetRunningObjectTable(This,pprot) (This)->lpVtbl->GetRunningObjectTable(This,pprot) +#define IBindCtx_RegisterObjectParam(This,pszKey,punk) (This)->lpVtbl->RegisterObjectParam(This,pszKey,punk) +#define IBindCtx_GetObjectParam(This,pszKey,ppunk) (This)->lpVtbl->GetObjectParam(This,pszKey,ppunk) +#define IBindCtx_EnumObjectParam(This,ppenum) (This)->lpVtbl->EnumObjectParam(This,ppenum) +#define IBindCtx_RevokeObjectParam(This,pszKey) (This)->lpVtbl->RevokeObjectParam(This,pszKey) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IBindCtx_RegisterObjectBound_Proxy( + IBindCtx* This, + IUnknown *punk); +void __RPC_STUB IBindCtx_RegisterObjectBound_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBindCtx_RevokeObjectBound_Proxy( + IBindCtx* This, + IUnknown *punk); +void __RPC_STUB IBindCtx_RevokeObjectBound_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBindCtx_ReleaseBoundObjects_Proxy( + IBindCtx* This); +void __RPC_STUB IBindCtx_ReleaseBoundObjects_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBindCtx_RemoteSetBindOptions_Proxy( + IBindCtx* This, + BIND_OPTS2 *pbindopts); +void __RPC_STUB IBindCtx_RemoteSetBindOptions_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBindCtx_RemoteGetBindOptions_Proxy( + IBindCtx* This, + BIND_OPTS2 *pbindopts); +void __RPC_STUB IBindCtx_RemoteGetBindOptions_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBindCtx_GetRunningObjectTable_Proxy( + IBindCtx* This, + IRunningObjectTable **pprot); +void __RPC_STUB IBindCtx_GetRunningObjectTable_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBindCtx_RegisterObjectParam_Proxy( + IBindCtx* This, + LPOLESTR pszKey, + IUnknown *punk); +void __RPC_STUB IBindCtx_RegisterObjectParam_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBindCtx_GetObjectParam_Proxy( + IBindCtx* This, + LPOLESTR pszKey, + IUnknown **ppunk); +void __RPC_STUB IBindCtx_GetObjectParam_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBindCtx_EnumObjectParam_Proxy( + IBindCtx* This, + IEnumString **ppenum); +void __RPC_STUB IBindCtx_EnumObjectParam_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBindCtx_RevokeObjectParam_Proxy( + IBindCtx* This, + LPOLESTR pszKey); +void __RPC_STUB IBindCtx_RevokeObjectParam_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IBindCtx_SetBindOptions_Proxy( + IBindCtx* This, + BIND_OPTS *pbindopts); +HRESULT __RPC_STUB IBindCtx_SetBindOptions_Stub( + IBindCtx* This, + BIND_OPTS2 *pbindopts); +HRESULT CALLBACK IBindCtx_GetBindOptions_Proxy( + IBindCtx* This, + BIND_OPTS *pbindopts); +HRESULT __RPC_STUB IBindCtx_GetBindOptions_Stub( + IBindCtx* This, + BIND_OPTS2 *pbindopts); + +#endif /* __IBindCtx_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IEnumMoniker interface + */ +#ifndef __IEnumMoniker_INTERFACE_DEFINED__ +#define __IEnumMoniker_INTERFACE_DEFINED__ + +typedef IEnumMoniker *LPENUMMONIKER; +DEFINE_GUID(IID_IEnumMoniker, 0x00000102, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IEnumMoniker : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Next( + ULONG celt, + IMoniker **rgelt, + ULONG *pceltFetched) = 0; + + virtual HRESULT STDMETHODCALLTYPE Skip( + ULONG celt) = 0; + + virtual HRESULT STDMETHODCALLTYPE Reset( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Clone( + IEnumMoniker **ppenum) = 0; + +}; +#else +typedef struct IEnumMonikerVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IEnumMoniker* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IEnumMoniker* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IEnumMoniker* This); + + /*** IEnumMoniker methods ***/ + HRESULT (STDMETHODCALLTYPE *Next)( + IEnumMoniker* This, + ULONG celt, + IMoniker **rgelt, + ULONG *pceltFetched); + + HRESULT (STDMETHODCALLTYPE *Skip)( + IEnumMoniker* This, + ULONG celt); + + HRESULT (STDMETHODCALLTYPE *Reset)( + IEnumMoniker* This); + + HRESULT (STDMETHODCALLTYPE *Clone)( + IEnumMoniker* This, + IEnumMoniker **ppenum); + + END_INTERFACE +} IEnumMonikerVtbl; +interface IEnumMoniker { + CONST_VTBL IEnumMonikerVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IEnumMoniker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IEnumMoniker_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IEnumMoniker_Release(This) (This)->lpVtbl->Release(This) +/*** IEnumMoniker methods ***/ +#define IEnumMoniker_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) +#define IEnumMoniker_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IEnumMoniker_Reset(This) (This)->lpVtbl->Reset(This) +#define IEnumMoniker_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IEnumMoniker_RemoteNext_Proxy( + IEnumMoniker* This, + ULONG celt, + IMoniker **rgelt, + ULONG *pceltFetched); +void __RPC_STUB IEnumMoniker_RemoteNext_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumMoniker_Skip_Proxy( + IEnumMoniker* This, + ULONG celt); +void __RPC_STUB IEnumMoniker_Skip_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumMoniker_Reset_Proxy( + IEnumMoniker* This); +void __RPC_STUB IEnumMoniker_Reset_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumMoniker_Clone_Proxy( + IEnumMoniker* This, + IEnumMoniker **ppenum); +void __RPC_STUB IEnumMoniker_Clone_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IEnumMoniker_Next_Proxy( + IEnumMoniker* This, + ULONG celt, + IMoniker **rgelt, + ULONG *pceltFetched); +HRESULT __RPC_STUB IEnumMoniker_Next_Stub( + IEnumMoniker* This, + ULONG celt, + IMoniker **rgelt, + ULONG *pceltFetched); + +#endif /* __IEnumMoniker_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IRunnableObject interface + */ +#ifndef __IRunnableObject_INTERFACE_DEFINED__ +#define __IRunnableObject_INTERFACE_DEFINED__ + +typedef IRunnableObject *LPRUNNABLEOBJECT; +DEFINE_GUID(IID_IRunnableObject, 0x00000126, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRunnableObject : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetRunningClass( + LPCLSID lpClsid) = 0; + + virtual HRESULT STDMETHODCALLTYPE Run( + LPBINDCTX pbc) = 0; + + virtual BOOL STDMETHODCALLTYPE IsRunning( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE LockRunning( + BOOL fLock, + BOOL fLastUnlockCloses) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetContainedObject( + BOOL fContained) = 0; + +}; +#else +typedef struct IRunnableObjectVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRunnableObject* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRunnableObject* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRunnableObject* This); + + /*** IRunnableObject methods ***/ + HRESULT (STDMETHODCALLTYPE *GetRunningClass)( + IRunnableObject* This, + LPCLSID lpClsid); + + HRESULT (STDMETHODCALLTYPE *Run)( + IRunnableObject* This, + LPBINDCTX pbc); + + BOOL (STDMETHODCALLTYPE *IsRunning)( + IRunnableObject* This); + + HRESULT (STDMETHODCALLTYPE *LockRunning)( + IRunnableObject* This, + BOOL fLock, + BOOL fLastUnlockCloses); + + HRESULT (STDMETHODCALLTYPE *SetContainedObject)( + IRunnableObject* This, + BOOL fContained); + + END_INTERFACE +} IRunnableObjectVtbl; +interface IRunnableObject { + CONST_VTBL IRunnableObjectVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRunnableObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRunnableObject_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRunnableObject_Release(This) (This)->lpVtbl->Release(This) +/*** IRunnableObject methods ***/ +#define IRunnableObject_GetRunningClass(This,lpClsid) (This)->lpVtbl->GetRunningClass(This,lpClsid) +#define IRunnableObject_Run(This,pbc) (This)->lpVtbl->Run(This,pbc) +#define IRunnableObject_IsRunning(This) (This)->lpVtbl->IsRunning(This) +#define IRunnableObject_LockRunning(This,fLock,fLastUnlockCloses) (This)->lpVtbl->LockRunning(This,fLock,fLastUnlockCloses) +#define IRunnableObject_SetContainedObject(This,fContained) (This)->lpVtbl->SetContainedObject(This,fContained) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRunnableObject_GetRunningClass_Proxy( + IRunnableObject* This, + LPCLSID lpClsid); +void __RPC_STUB IRunnableObject_GetRunningClass_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunnableObject_Run_Proxy( + IRunnableObject* This, + LPBINDCTX pbc); +void __RPC_STUB IRunnableObject_Run_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunnableObject_RemoteIsRunning_Proxy( + IRunnableObject* This); +void __RPC_STUB IRunnableObject_RemoteIsRunning_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunnableObject_LockRunning_Proxy( + IRunnableObject* This, + BOOL fLock, + BOOL fLastUnlockCloses); +void __RPC_STUB IRunnableObject_LockRunning_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunnableObject_SetContainedObject_Proxy( + IRunnableObject* This, + BOOL fContained); +void __RPC_STUB IRunnableObject_SetContainedObject_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +BOOL CALLBACK IRunnableObject_IsRunning_Proxy( + IRunnableObject* This); +HRESULT __RPC_STUB IRunnableObject_IsRunning_Stub( + IRunnableObject* This); + +#endif /* __IRunnableObject_INTERFACE_DEFINED__ */ + +#ifdef WINE_NO_UNICODE_MACROS +#undef GetObject +#endif +/***************************************************************************** + * IRunningObjectTable interface + */ +#ifndef __IRunningObjectTable_INTERFACE_DEFINED__ +#define __IRunningObjectTable_INTERFACE_DEFINED__ + +typedef IRunningObjectTable *LPRUNNINGOBJECTTABLE; +DEFINE_GUID(IID_IRunningObjectTable, 0x00000010, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRunningObjectTable : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Register( + DWORD grfFlags, + IUnknown *punkObject, + IMoniker *pmkObjectName, + DWORD *pdwRegister) = 0; + + virtual HRESULT STDMETHODCALLTYPE Revoke( + DWORD dwRegister) = 0; + + virtual HRESULT STDMETHODCALLTYPE IsRunning( + IMoniker *pmkObjectName) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetObject( + IMoniker *pmkObjectName, + IUnknown **ppunkObject) = 0; + + virtual HRESULT STDMETHODCALLTYPE NoteChangeTime( + DWORD dwRegister, + FILETIME *pfiletime) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetTimeOfLastChange( + IMoniker *pmkObjectName, + FILETIME *pfiletime) = 0; + + virtual HRESULT STDMETHODCALLTYPE EnumRunning( + IEnumMoniker **ppenumMoniker) = 0; + +}; +#else +typedef struct IRunningObjectTableVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRunningObjectTable* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRunningObjectTable* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRunningObjectTable* This); + + /*** IRunningObjectTable methods ***/ + HRESULT (STDMETHODCALLTYPE *Register)( + IRunningObjectTable* This, + DWORD grfFlags, + IUnknown *punkObject, + IMoniker *pmkObjectName, + DWORD *pdwRegister); + + HRESULT (STDMETHODCALLTYPE *Revoke)( + IRunningObjectTable* This, + DWORD dwRegister); + + HRESULT (STDMETHODCALLTYPE *IsRunning)( + IRunningObjectTable* This, + IMoniker *pmkObjectName); + + HRESULT (STDMETHODCALLTYPE *GetObject)( + IRunningObjectTable* This, + IMoniker *pmkObjectName, + IUnknown **ppunkObject); + + HRESULT (STDMETHODCALLTYPE *NoteChangeTime)( + IRunningObjectTable* This, + DWORD dwRegister, + FILETIME *pfiletime); + + HRESULT (STDMETHODCALLTYPE *GetTimeOfLastChange)( + IRunningObjectTable* This, + IMoniker *pmkObjectName, + FILETIME *pfiletime); + + HRESULT (STDMETHODCALLTYPE *EnumRunning)( + IRunningObjectTable* This, + IEnumMoniker **ppenumMoniker); + + END_INTERFACE +} IRunningObjectTableVtbl; +interface IRunningObjectTable { + CONST_VTBL IRunningObjectTableVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRunningObjectTable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRunningObjectTable_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRunningObjectTable_Release(This) (This)->lpVtbl->Release(This) +/*** IRunningObjectTable methods ***/ +#define IRunningObjectTable_Register(This,grfFlags,punkObject,pmkObjectName,pdwRegister) (This)->lpVtbl->Register(This,grfFlags,punkObject,pmkObjectName,pdwRegister) +#define IRunningObjectTable_Revoke(This,dwRegister) (This)->lpVtbl->Revoke(This,dwRegister) +#define IRunningObjectTable_IsRunning(This,pmkObjectName) (This)->lpVtbl->IsRunning(This,pmkObjectName) +#define IRunningObjectTable_GetObject(This,pmkObjectName,ppunkObject) (This)->lpVtbl->GetObject(This,pmkObjectName,ppunkObject) +#define IRunningObjectTable_NoteChangeTime(This,dwRegister,pfiletime) (This)->lpVtbl->NoteChangeTime(This,dwRegister,pfiletime) +#define IRunningObjectTable_GetTimeOfLastChange(This,pmkObjectName,pfiletime) (This)->lpVtbl->GetTimeOfLastChange(This,pmkObjectName,pfiletime) +#define IRunningObjectTable_EnumRunning(This,ppenumMoniker) (This)->lpVtbl->EnumRunning(This,ppenumMoniker) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRunningObjectTable_Register_Proxy( + IRunningObjectTable* This, + DWORD grfFlags, + IUnknown *punkObject, + IMoniker *pmkObjectName, + DWORD *pdwRegister); +void __RPC_STUB IRunningObjectTable_Register_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunningObjectTable_Revoke_Proxy( + IRunningObjectTable* This, + DWORD dwRegister); +void __RPC_STUB IRunningObjectTable_Revoke_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunningObjectTable_IsRunning_Proxy( + IRunningObjectTable* This, + IMoniker *pmkObjectName); +void __RPC_STUB IRunningObjectTable_IsRunning_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunningObjectTable_GetObject_Proxy( + IRunningObjectTable* This, + IMoniker *pmkObjectName, + IUnknown **ppunkObject); +void __RPC_STUB IRunningObjectTable_GetObject_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunningObjectTable_NoteChangeTime_Proxy( + IRunningObjectTable* This, + DWORD dwRegister, + FILETIME *pfiletime); +void __RPC_STUB IRunningObjectTable_NoteChangeTime_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunningObjectTable_GetTimeOfLastChange_Proxy( + IRunningObjectTable* This, + IMoniker *pmkObjectName, + FILETIME *pfiletime); +void __RPC_STUB IRunningObjectTable_GetTimeOfLastChange_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRunningObjectTable_EnumRunning_Proxy( + IRunningObjectTable* This, + IEnumMoniker **ppenumMoniker); +void __RPC_STUB IRunningObjectTable_EnumRunning_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRunningObjectTable_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IPersist interface + */ +#ifndef __IPersist_INTERFACE_DEFINED__ +#define __IPersist_INTERFACE_DEFINED__ + +typedef IPersist *LPPERSIST; +DEFINE_GUID(IID_IPersist, 0x0000010c, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IPersist : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetClassID( + CLSID *pClassID) = 0; + +}; +#else +typedef struct IPersistVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IPersist* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IPersist* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IPersist* This); + + /*** IPersist methods ***/ + HRESULT (STDMETHODCALLTYPE *GetClassID)( + IPersist* This, + CLSID *pClassID); + + END_INTERFACE +} IPersistVtbl; +interface IPersist { + CONST_VTBL IPersistVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IPersist_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IPersist_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IPersist_Release(This) (This)->lpVtbl->Release(This) +/*** IPersist methods ***/ +#define IPersist_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IPersist_GetClassID_Proxy( + IPersist* This, + CLSID *pClassID); +void __RPC_STUB IPersist_GetClassID_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IPersist_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IPersistStream interface + */ +#ifndef __IPersistStream_INTERFACE_DEFINED__ +#define __IPersistStream_INTERFACE_DEFINED__ + +typedef IPersistStream *LPPERSISTSTREAM; +DEFINE_GUID(IID_IPersistStream, 0x00000109, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IPersistStream : public IPersist +{ + virtual HRESULT STDMETHODCALLTYPE IsDirty( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Load( + IStream *pStm) = 0; + + virtual HRESULT STDMETHODCALLTYPE Save( + IStream *pStm, + BOOL fClearDirty) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetSizeMax( + ULARGE_INTEGER *pcbSize) = 0; + +}; +#else +typedef struct IPersistStreamVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IPersistStream* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IPersistStream* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IPersistStream* This); + + /*** IPersist methods ***/ + HRESULT (STDMETHODCALLTYPE *GetClassID)( + IPersistStream* This, + CLSID *pClassID); + + /*** IPersistStream methods ***/ + HRESULT (STDMETHODCALLTYPE *IsDirty)( + IPersistStream* This); + + HRESULT (STDMETHODCALLTYPE *Load)( + IPersistStream* This, + IStream *pStm); + + HRESULT (STDMETHODCALLTYPE *Save)( + IPersistStream* This, + IStream *pStm, + BOOL fClearDirty); + + HRESULT (STDMETHODCALLTYPE *GetSizeMax)( + IPersistStream* This, + ULARGE_INTEGER *pcbSize); + + END_INTERFACE +} IPersistStreamVtbl; +interface IPersistStream { + CONST_VTBL IPersistStreamVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IPersistStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IPersistStream_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IPersistStream_Release(This) (This)->lpVtbl->Release(This) +/*** IPersist methods ***/ +#define IPersistStream_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) +/*** IPersistStream methods ***/ +#define IPersistStream_IsDirty(This) (This)->lpVtbl->IsDirty(This) +#define IPersistStream_Load(This,pStm) (This)->lpVtbl->Load(This,pStm) +#define IPersistStream_Save(This,pStm,fClearDirty) (This)->lpVtbl->Save(This,pStm,fClearDirty) +#define IPersistStream_GetSizeMax(This,pcbSize) (This)->lpVtbl->GetSizeMax(This,pcbSize) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IPersistStream_IsDirty_Proxy( + IPersistStream* This); +void __RPC_STUB IPersistStream_IsDirty_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistStream_Load_Proxy( + IPersistStream* This, + IStream *pStm); +void __RPC_STUB IPersistStream_Load_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistStream_Save_Proxy( + IPersistStream* This, + IStream *pStm, + BOOL fClearDirty); +void __RPC_STUB IPersistStream_Save_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistStream_GetSizeMax_Proxy( + IPersistStream* This, + ULARGE_INTEGER *pcbSize); +void __RPC_STUB IPersistStream_GetSizeMax_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IPersistStream_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IMoniker interface + */ +#ifndef __IMoniker_INTERFACE_DEFINED__ +#define __IMoniker_INTERFACE_DEFINED__ + +typedef IMoniker *LPMONIKER; +typedef enum tagMKSYS { + MKSYS_NONE = 0, + MKSYS_GENERICCOMPOSITE = 1, + MKSYS_FILEMONIKER = 2, + MKSYS_ANTIMONIKER = 3, + MKSYS_ITEMMONIKER = 4, + MKSYS_POINTERMONIKER = 5, + MKSYS_CLASSMONIKER = 7 +} MKSYS; +typedef enum tagMKREDUCE { + MKRREDUCE_ONE = 3 << 16, + MKRREDUCE_TOUSER = 2 << 16, + MKRREDUCE_THROUGHUSER = 1 << 16, + MKRREDUCE_ALL = 0 +} MKRREDUCE; +DEFINE_GUID(IID_IMoniker, 0x0000000f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IMoniker : public IPersistStream +{ + virtual HRESULT STDMETHODCALLTYPE BindToObject( + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riidResult, + void **ppvResult) = 0; + + virtual HRESULT STDMETHODCALLTYPE BindToStorage( + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riid, + void **ppvObj) = 0; + + virtual HRESULT STDMETHODCALLTYPE Reduce( + IBindCtx *pbc, + DWORD dwReduceHowFar, + IMoniker **ppmkToLeft, + IMoniker **ppmkReduced) = 0; + + virtual HRESULT STDMETHODCALLTYPE ComposeWith( + IMoniker *pmkRight, + BOOL fOnlyIfNotGeneric, + IMoniker **ppmkComposite) = 0; + + virtual HRESULT STDMETHODCALLTYPE Enum( + BOOL fForward, + IEnumMoniker **ppenumMoniker) = 0; + + virtual HRESULT STDMETHODCALLTYPE IsEqual( + IMoniker *pmkOtherMoniker) = 0; + + virtual HRESULT STDMETHODCALLTYPE Hash( + DWORD *pdwHash) = 0; + + virtual HRESULT STDMETHODCALLTYPE IsRunning( + IBindCtx *pbc, + IMoniker *pmkToLeft, + IMoniker *pmkNewlyRunning) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetTimeOfLastChange( + IBindCtx *pbc, + IMoniker *pmkToLeft, + FILETIME *pFileTime) = 0; + + virtual HRESULT STDMETHODCALLTYPE Inverse( + IMoniker **ppmk) = 0; + + virtual HRESULT STDMETHODCALLTYPE CommonPrefixWith( + IMoniker *pmkOther, + IMoniker **ppmkPrefix) = 0; + + virtual HRESULT STDMETHODCALLTYPE RelativePathTo( + IMoniker *pmkOther, + IMoniker **ppmkRelPath) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetDisplayName( + IBindCtx *pbc, + IMoniker *pmkToLeft, + LPOLESTR *ppszDisplayName) = 0; + + virtual HRESULT STDMETHODCALLTYPE ParseDisplayName( + IBindCtx *pbc, + IMoniker *pmkToLeft, + LPOLESTR pszDisplayName, + ULONG *pchEaten, + IMoniker **ppmkOut) = 0; + + virtual HRESULT STDMETHODCALLTYPE IsSystemMoniker( + DWORD *pdwMksys) = 0; + +}; +#else +typedef struct IMonikerVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IMoniker* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IMoniker* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IMoniker* This); + + /*** IPersist methods ***/ + HRESULT (STDMETHODCALLTYPE *GetClassID)( + IMoniker* This, + CLSID *pClassID); + + /*** IPersistStream methods ***/ + HRESULT (STDMETHODCALLTYPE *IsDirty)( + IMoniker* This); + + HRESULT (STDMETHODCALLTYPE *Load)( + IMoniker* This, + IStream *pStm); + + HRESULT (STDMETHODCALLTYPE *Save)( + IMoniker* This, + IStream *pStm, + BOOL fClearDirty); + + HRESULT (STDMETHODCALLTYPE *GetSizeMax)( + IMoniker* This, + ULARGE_INTEGER *pcbSize); + + /*** IMoniker methods ***/ + HRESULT (STDMETHODCALLTYPE *BindToObject)( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riidResult, + void **ppvResult); + + HRESULT (STDMETHODCALLTYPE *BindToStorage)( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riid, + void **ppvObj); + + HRESULT (STDMETHODCALLTYPE *Reduce)( + IMoniker* This, + IBindCtx *pbc, + DWORD dwReduceHowFar, + IMoniker **ppmkToLeft, + IMoniker **ppmkReduced); + + HRESULT (STDMETHODCALLTYPE *ComposeWith)( + IMoniker* This, + IMoniker *pmkRight, + BOOL fOnlyIfNotGeneric, + IMoniker **ppmkComposite); + + HRESULT (STDMETHODCALLTYPE *Enum)( + IMoniker* This, + BOOL fForward, + IEnumMoniker **ppenumMoniker); + + HRESULT (STDMETHODCALLTYPE *IsEqual)( + IMoniker* This, + IMoniker *pmkOtherMoniker); + + HRESULT (STDMETHODCALLTYPE *Hash)( + IMoniker* This, + DWORD *pdwHash); + + HRESULT (STDMETHODCALLTYPE *IsRunning)( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + IMoniker *pmkNewlyRunning); + + HRESULT (STDMETHODCALLTYPE *GetTimeOfLastChange)( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + FILETIME *pFileTime); + + HRESULT (STDMETHODCALLTYPE *Inverse)( + IMoniker* This, + IMoniker **ppmk); + + HRESULT (STDMETHODCALLTYPE *CommonPrefixWith)( + IMoniker* This, + IMoniker *pmkOther, + IMoniker **ppmkPrefix); + + HRESULT (STDMETHODCALLTYPE *RelativePathTo)( + IMoniker* This, + IMoniker *pmkOther, + IMoniker **ppmkRelPath); + + HRESULT (STDMETHODCALLTYPE *GetDisplayName)( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + LPOLESTR *ppszDisplayName); + + HRESULT (STDMETHODCALLTYPE *ParseDisplayName)( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + LPOLESTR pszDisplayName, + ULONG *pchEaten, + IMoniker **ppmkOut); + + HRESULT (STDMETHODCALLTYPE *IsSystemMoniker)( + IMoniker* This, + DWORD *pdwMksys); + + END_INTERFACE +} IMonikerVtbl; +interface IMoniker { + CONST_VTBL IMonikerVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IMoniker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IMoniker_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IMoniker_Release(This) (This)->lpVtbl->Release(This) +/*** IPersist methods ***/ +#define IMoniker_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) +/*** IPersistStream methods ***/ +#define IMoniker_IsDirty(This) (This)->lpVtbl->IsDirty(This) +#define IMoniker_Load(This,pStm) (This)->lpVtbl->Load(This,pStm) +#define IMoniker_Save(This,pStm,fClearDirty) (This)->lpVtbl->Save(This,pStm,fClearDirty) +#define IMoniker_GetSizeMax(This,pcbSize) (This)->lpVtbl->GetSizeMax(This,pcbSize) +/*** IMoniker methods ***/ +#define IMoniker_BindToObject(This,pbc,pmkToLeft,riidResult,ppvResult) (This)->lpVtbl->BindToObject(This,pbc,pmkToLeft,riidResult,ppvResult) +#define IMoniker_BindToStorage(This,pbc,pmkToLeft,riid,ppvObj) (This)->lpVtbl->BindToStorage(This,pbc,pmkToLeft,riid,ppvObj) +#define IMoniker_Reduce(This,pbc,dwReduceHowFar,ppmkToLeft,ppmkReduced) (This)->lpVtbl->Reduce(This,pbc,dwReduceHowFar,ppmkToLeft,ppmkReduced) +#define IMoniker_ComposeWith(This,pmkRight,fOnlyIfNotGeneric,ppmkComposite) (This)->lpVtbl->ComposeWith(This,pmkRight,fOnlyIfNotGeneric,ppmkComposite) +#define IMoniker_Enum(This,fForward,ppenumMoniker) (This)->lpVtbl->Enum(This,fForward,ppenumMoniker) +#define IMoniker_IsEqual(This,pmkOtherMoniker) (This)->lpVtbl->IsEqual(This,pmkOtherMoniker) +#define IMoniker_Hash(This,pdwHash) (This)->lpVtbl->Hash(This,pdwHash) +#define IMoniker_IsRunning(This,pbc,pmkToLeft,pmkNewlyRunning) (This)->lpVtbl->IsRunning(This,pbc,pmkToLeft,pmkNewlyRunning) +#define IMoniker_GetTimeOfLastChange(This,pbc,pmkToLeft,pFileTime) (This)->lpVtbl->GetTimeOfLastChange(This,pbc,pmkToLeft,pFileTime) +#define IMoniker_Inverse(This,ppmk) (This)->lpVtbl->Inverse(This,ppmk) +#define IMoniker_CommonPrefixWith(This,pmkOther,ppmkPrefix) (This)->lpVtbl->CommonPrefixWith(This,pmkOther,ppmkPrefix) +#define IMoniker_RelativePathTo(This,pmkOther,ppmkRelPath) (This)->lpVtbl->RelativePathTo(This,pmkOther,ppmkRelPath) +#define IMoniker_GetDisplayName(This,pbc,pmkToLeft,ppszDisplayName) (This)->lpVtbl->GetDisplayName(This,pbc,pmkToLeft,ppszDisplayName) +#define IMoniker_ParseDisplayName(This,pbc,pmkToLeft,pszDisplayName,pchEaten,ppmkOut) (This)->lpVtbl->ParseDisplayName(This,pbc,pmkToLeft,pszDisplayName,pchEaten,ppmkOut) +#define IMoniker_IsSystemMoniker(This,pdwMksys) (This)->lpVtbl->IsSystemMoniker(This,pdwMksys) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IMoniker_RemoteBindToObject_Proxy( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riidResult, + IUnknown **ppvResult); +void __RPC_STUB IMoniker_RemoteBindToObject_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_RemoteBindToStorage_Proxy( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riid, + IUnknown **ppvObj); +void __RPC_STUB IMoniker_RemoteBindToStorage_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_Reduce_Proxy( + IMoniker* This, + IBindCtx *pbc, + DWORD dwReduceHowFar, + IMoniker **ppmkToLeft, + IMoniker **ppmkReduced); +void __RPC_STUB IMoniker_Reduce_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_ComposeWith_Proxy( + IMoniker* This, + IMoniker *pmkRight, + BOOL fOnlyIfNotGeneric, + IMoniker **ppmkComposite); +void __RPC_STUB IMoniker_ComposeWith_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_Enum_Proxy( + IMoniker* This, + BOOL fForward, + IEnumMoniker **ppenumMoniker); +void __RPC_STUB IMoniker_Enum_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_IsEqual_Proxy( + IMoniker* This, + IMoniker *pmkOtherMoniker); +void __RPC_STUB IMoniker_IsEqual_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_Hash_Proxy( + IMoniker* This, + DWORD *pdwHash); +void __RPC_STUB IMoniker_Hash_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_IsRunning_Proxy( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + IMoniker *pmkNewlyRunning); +void __RPC_STUB IMoniker_IsRunning_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_GetTimeOfLastChange_Proxy( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + FILETIME *pFileTime); +void __RPC_STUB IMoniker_GetTimeOfLastChange_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_Inverse_Proxy( + IMoniker* This, + IMoniker **ppmk); +void __RPC_STUB IMoniker_Inverse_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_CommonPrefixWith_Proxy( + IMoniker* This, + IMoniker *pmkOther, + IMoniker **ppmkPrefix); +void __RPC_STUB IMoniker_CommonPrefixWith_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_RelativePathTo_Proxy( + IMoniker* This, + IMoniker *pmkOther, + IMoniker **ppmkRelPath); +void __RPC_STUB IMoniker_RelativePathTo_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_GetDisplayName_Proxy( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + LPOLESTR *ppszDisplayName); +void __RPC_STUB IMoniker_GetDisplayName_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_ParseDisplayName_Proxy( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + LPOLESTR pszDisplayName, + ULONG *pchEaten, + IMoniker **ppmkOut); +void __RPC_STUB IMoniker_ParseDisplayName_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IMoniker_IsSystemMoniker_Proxy( + IMoniker* This, + DWORD *pdwMksys); +void __RPC_STUB IMoniker_IsSystemMoniker_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IMoniker_BindToObject_Proxy( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riidResult, + void **ppvResult); +HRESULT __RPC_STUB IMoniker_BindToObject_Stub( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riidResult, + IUnknown **ppvResult); +HRESULT CALLBACK IMoniker_BindToStorage_Proxy( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riid, + void **ppvObj); +HRESULT __RPC_STUB IMoniker_BindToStorage_Stub( + IMoniker* This, + IBindCtx *pbc, + IMoniker *pmkToLeft, + REFIID riid, + IUnknown **ppvObj); + +#endif /* __IMoniker_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IROTData interface + */ +#ifndef __IROTData_INTERFACE_DEFINED__ +#define __IROTData_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IROTData, 0xf29f6bc0, 0x5021, 0x11ce, 0xaa,0x15, 0x00,0x00,0x69,0x01,0x29,0x3f); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IROTData : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetComparisonData( + byte *pbData, + ULONG cbMax, + ULONG *pcbData) = 0; + +}; +#else +typedef struct IROTDataVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IROTData* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IROTData* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IROTData* This); + + /*** IROTData methods ***/ + HRESULT (STDMETHODCALLTYPE *GetComparisonData)( + IROTData* This, + byte *pbData, + ULONG cbMax, + ULONG *pcbData); + + END_INTERFACE +} IROTDataVtbl; +interface IROTData { + CONST_VTBL IROTDataVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IROTData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IROTData_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IROTData_Release(This) (This)->lpVtbl->Release(This) +/*** IROTData methods ***/ +#define IROTData_GetComparisonData(This,pbData,cbMax,pcbData) (This)->lpVtbl->GetComparisonData(This,pbData,cbMax,pcbData) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IROTData_GetComparisonData_Proxy( + IROTData* This, + byte *pbData, + ULONG cbMax, + ULONG *pcbData); +void __RPC_STUB IROTData_GetComparisonData_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IROTData_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IEnumString interface + */ +#ifndef __IEnumString_INTERFACE_DEFINED__ +#define __IEnumString_INTERFACE_DEFINED__ + +typedef IEnumString *LPENUMSTRING; +DEFINE_GUID(IID_IEnumString, 0x00000101, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IEnumString : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Next( + ULONG celt, + LPOLESTR *rgelt, + ULONG *pceltFetched) = 0; + + virtual HRESULT STDMETHODCALLTYPE Skip( + ULONG celt) = 0; + + virtual HRESULT STDMETHODCALLTYPE Reset( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Clone( + IEnumString **ppenum) = 0; + +}; +#else +typedef struct IEnumStringVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IEnumString* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IEnumString* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IEnumString* This); + + /*** IEnumString methods ***/ + HRESULT (STDMETHODCALLTYPE *Next)( + IEnumString* This, + ULONG celt, + LPOLESTR *rgelt, + ULONG *pceltFetched); + + HRESULT (STDMETHODCALLTYPE *Skip)( + IEnumString* This, + ULONG celt); + + HRESULT (STDMETHODCALLTYPE *Reset)( + IEnumString* This); + + HRESULT (STDMETHODCALLTYPE *Clone)( + IEnumString* This, + IEnumString **ppenum); + + END_INTERFACE +} IEnumStringVtbl; +interface IEnumString { + CONST_VTBL IEnumStringVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IEnumString_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IEnumString_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IEnumString_Release(This) (This)->lpVtbl->Release(This) +/*** IEnumString methods ***/ +#define IEnumString_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) +#define IEnumString_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IEnumString_Reset(This) (This)->lpVtbl->Reset(This) +#define IEnumString_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IEnumString_RemoteNext_Proxy( + IEnumString* This, + ULONG celt, + LPOLESTR *rgelt, + ULONG *pceltFetched); +void __RPC_STUB IEnumString_RemoteNext_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumString_Skip_Proxy( + IEnumString* This, + ULONG celt); +void __RPC_STUB IEnumString_Skip_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumString_Reset_Proxy( + IEnumString* This); +void __RPC_STUB IEnumString_Reset_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumString_Clone_Proxy( + IEnumString* This, + IEnumString **ppenum); +void __RPC_STUB IEnumString_Clone_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IEnumString_Next_Proxy( + IEnumString* This, + ULONG celt, + LPOLESTR *rgelt, + ULONG *pceltFetched); +HRESULT __RPC_STUB IEnumString_Next_Stub( + IEnumString* This, + ULONG celt, + LPOLESTR *rgelt, + ULONG *pceltFetched); + +#endif /* __IEnumString_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IClassActivator interface + */ +#ifndef __IClassActivator_INTERFACE_DEFINED__ +#define __IClassActivator_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IClassActivator, 0x00000140, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IClassActivator : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetClassObject( + REFCLSID rclsid, + DWORD dwClassContext, + LCID locale, + REFIID riid, + void **ppv) = 0; + +}; +#else +typedef struct IClassActivatorVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IClassActivator* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IClassActivator* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IClassActivator* This); + + /*** IClassActivator methods ***/ + HRESULT (STDMETHODCALLTYPE *GetClassObject)( + IClassActivator* This, + REFCLSID rclsid, + DWORD dwClassContext, + LCID locale, + REFIID riid, + void **ppv); + + END_INTERFACE +} IClassActivatorVtbl; +interface IClassActivator { + CONST_VTBL IClassActivatorVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IClassActivator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IClassActivator_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IClassActivator_Release(This) (This)->lpVtbl->Release(This) +/*** IClassActivator methods ***/ +#define IClassActivator_GetClassObject(This,rclsid,dwClassContext,locale,riid,ppv) (This)->lpVtbl->GetClassObject(This,rclsid,dwClassContext,locale,riid,ppv) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IClassActivator_GetClassObject_Proxy( + IClassActivator* This, + REFCLSID rclsid, + DWORD dwClassContext, + LCID locale, + REFIID riid, + void **ppv); +void __RPC_STUB IClassActivator_GetClassObject_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IClassActivator_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ISequentialStream interface + */ +#ifndef __ISequentialStream_INTERFACE_DEFINED__ +#define __ISequentialStream_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_ISequentialStream, 0x0c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ISequentialStream : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Read( + void *pv, + ULONG cb, + ULONG *pcbRead) = 0; + + virtual HRESULT STDMETHODCALLTYPE Write( + const void *pv, + ULONG cb, + ULONG *pcbWritten) = 0; + +}; +#else +typedef struct ISequentialStreamVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ISequentialStream* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ISequentialStream* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ISequentialStream* This); + + /*** ISequentialStream methods ***/ + HRESULT (STDMETHODCALLTYPE *Read)( + ISequentialStream* This, + void *pv, + ULONG cb, + ULONG *pcbRead); + + HRESULT (STDMETHODCALLTYPE *Write)( + ISequentialStream* This, + const void *pv, + ULONG cb, + ULONG *pcbWritten); + + END_INTERFACE +} ISequentialStreamVtbl; +interface ISequentialStream { + CONST_VTBL ISequentialStreamVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ISequentialStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ISequentialStream_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ISequentialStream_Release(This) (This)->lpVtbl->Release(This) +/*** ISequentialStream methods ***/ +#define ISequentialStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead) +#define ISequentialStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ISequentialStream_RemoteRead_Proxy( + ISequentialStream* This, + byte *pv, + ULONG cb, + ULONG *pcbRead); +void __RPC_STUB ISequentialStream_RemoteRead_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ISequentialStream_RemoteWrite_Proxy( + ISequentialStream* This, + const byte *pv, + ULONG cb, + ULONG *pcbWritten); +void __RPC_STUB ISequentialStream_RemoteWrite_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK ISequentialStream_Read_Proxy( + ISequentialStream* This, + void *pv, + ULONG cb, + ULONG *pcbRead); +HRESULT __RPC_STUB ISequentialStream_Read_Stub( + ISequentialStream* This, + byte *pv, + ULONG cb, + ULONG *pcbRead); +HRESULT CALLBACK ISequentialStream_Write_Proxy( + ISequentialStream* This, + const void *pv, + ULONG cb, + ULONG *pcbWritten); +HRESULT __RPC_STUB ISequentialStream_Write_Stub( + ISequentialStream* This, + const byte *pv, + ULONG cb, + ULONG *pcbWritten); + +#endif /* __ISequentialStream_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IStream interface + */ +#ifndef __IStream_INTERFACE_DEFINED__ +#define __IStream_INTERFACE_DEFINED__ + +typedef IStream *LPSTREAM; +typedef struct tagSTATSTG { + LPOLESTR pwcsName; + DWORD type; + ULARGE_INTEGER cbSize; + FILETIME mtime; + FILETIME ctime; + FILETIME atime; + DWORD grfMode; + DWORD grfLocksSupported; + CLSID clsid; + DWORD grfStateBits; + DWORD reserved; +} STATSTG; +typedef enum tagSTGTY { + STGTY_STORAGE = 1, + STGTY_STREAM = 2, + STGTY_LOCKBYTES = 3, + STGTY_PROPERTY = 4 +} STGTY; +typedef enum tagSTREAM_SEEK { + STREAM_SEEK_SET = 0, + STREAM_SEEK_CUR = 1, + STREAM_SEEK_END = 2 +} STREAM_SEEK; +#undef LOCK_MAND +#undef LOCK_READ +#undef LOCK_WRITE +#undef LOCK_RW +typedef enum tagLOCKTYPE { + LOCK_WRITE = 1, + LOCK_EXCLUSIVE = 2, + LOCK_ONLYONCE = 4 +} LOCKTYPE; +DEFINE_GUID(IID_IStream, 0x0000000c, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IStream : public ISequentialStream +{ + virtual HRESULT STDMETHODCALLTYPE Seek( + LARGE_INTEGER dlibMove, + DWORD dwOrigin, + ULARGE_INTEGER *plibNewPosition) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetSize( + ULARGE_INTEGER libNewSize) = 0; + + virtual HRESULT STDMETHODCALLTYPE CopyTo( + IStream *pstm, + ULARGE_INTEGER cb, + ULARGE_INTEGER *pcbRead, + ULARGE_INTEGER *pcbWritten) = 0; + + virtual HRESULT STDMETHODCALLTYPE Commit( + DWORD grfCommitFlags) = 0; + + virtual HRESULT STDMETHODCALLTYPE Revert( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE LockRegion( + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType) = 0; + + virtual HRESULT STDMETHODCALLTYPE UnlockRegion( + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType) = 0; + + virtual HRESULT STDMETHODCALLTYPE Stat( + STATSTG *pstatstg, + DWORD grfStatFlag) = 0; + + virtual HRESULT STDMETHODCALLTYPE Clone( + IStream **ppstm) = 0; + +}; +#else +typedef struct IStreamVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IStream* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IStream* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IStream* This); + + /*** ISequentialStream methods ***/ + HRESULT (STDMETHODCALLTYPE *Read)( + IStream* This, + void *pv, + ULONG cb, + ULONG *pcbRead); + + HRESULT (STDMETHODCALLTYPE *Write)( + IStream* This, + const void *pv, + ULONG cb, + ULONG *pcbWritten); + + /*** IStream methods ***/ + HRESULT (STDMETHODCALLTYPE *Seek)( + IStream* This, + LARGE_INTEGER dlibMove, + DWORD dwOrigin, + ULARGE_INTEGER *plibNewPosition); + + HRESULT (STDMETHODCALLTYPE *SetSize)( + IStream* This, + ULARGE_INTEGER libNewSize); + + HRESULT (STDMETHODCALLTYPE *CopyTo)( + IStream* This, + IStream *pstm, + ULARGE_INTEGER cb, + ULARGE_INTEGER *pcbRead, + ULARGE_INTEGER *pcbWritten); + + HRESULT (STDMETHODCALLTYPE *Commit)( + IStream* This, + DWORD grfCommitFlags); + + HRESULT (STDMETHODCALLTYPE *Revert)( + IStream* This); + + HRESULT (STDMETHODCALLTYPE *LockRegion)( + IStream* This, + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType); + + HRESULT (STDMETHODCALLTYPE *UnlockRegion)( + IStream* This, + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType); + + HRESULT (STDMETHODCALLTYPE *Stat)( + IStream* This, + STATSTG *pstatstg, + DWORD grfStatFlag); + + HRESULT (STDMETHODCALLTYPE *Clone)( + IStream* This, + IStream **ppstm); + + END_INTERFACE +} IStreamVtbl; +interface IStream { + CONST_VTBL IStreamVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IStream_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IStream_Release(This) (This)->lpVtbl->Release(This) +/*** ISequentialStream methods ***/ +#define IStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead) +#define IStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten) +/*** IStream methods ***/ +#define IStream_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition) +#define IStream_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize) +#define IStream_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten) +#define IStream_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags) +#define IStream_Revert(This) (This)->lpVtbl->Revert(This) +#define IStream_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType) +#define IStream_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType) +#define IStream_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag) +#define IStream_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IStream_RemoteSeek_Proxy( + IStream* This, + LARGE_INTEGER dlibMove, + DWORD dwOrigin, + ULARGE_INTEGER *plibNewPosition); +void __RPC_STUB IStream_RemoteSeek_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStream_SetSize_Proxy( + IStream* This, + ULARGE_INTEGER libNewSize); +void __RPC_STUB IStream_SetSize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStream_RemoteCopyTo_Proxy( + IStream* This, + IStream *pstm, + ULARGE_INTEGER cb, + ULARGE_INTEGER *pcbRead, + ULARGE_INTEGER *pcbWritten); +void __RPC_STUB IStream_RemoteCopyTo_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStream_Commit_Proxy( + IStream* This, + DWORD grfCommitFlags); +void __RPC_STUB IStream_Commit_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStream_Revert_Proxy( + IStream* This); +void __RPC_STUB IStream_Revert_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStream_LockRegion_Proxy( + IStream* This, + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType); +void __RPC_STUB IStream_LockRegion_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStream_UnlockRegion_Proxy( + IStream* This, + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType); +void __RPC_STUB IStream_UnlockRegion_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStream_Stat_Proxy( + IStream* This, + STATSTG *pstatstg, + DWORD grfStatFlag); +void __RPC_STUB IStream_Stat_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStream_Clone_Proxy( + IStream* This, + IStream **ppstm); +void __RPC_STUB IStream_Clone_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IStream_Seek_Proxy( + IStream* This, + LARGE_INTEGER dlibMove, + DWORD dwOrigin, + ULARGE_INTEGER *plibNewPosition); +HRESULT __RPC_STUB IStream_Seek_Stub( + IStream* This, + LARGE_INTEGER dlibMove, + DWORD dwOrigin, + ULARGE_INTEGER *plibNewPosition); +HRESULT CALLBACK IStream_CopyTo_Proxy( + IStream* This, + IStream *pstm, + ULARGE_INTEGER cb, + ULARGE_INTEGER *pcbRead, + ULARGE_INTEGER *pcbWritten); +HRESULT __RPC_STUB IStream_CopyTo_Stub( + IStream* This, + IStream *pstm, + ULARGE_INTEGER cb, + ULARGE_INTEGER *pcbRead, + ULARGE_INTEGER *pcbWritten); + +#endif /* __IStream_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IEnumSTATSTG interface + */ +#ifndef __IEnumSTATSTG_INTERFACE_DEFINED__ +#define __IEnumSTATSTG_INTERFACE_DEFINED__ + +typedef IEnumSTATSTG *LPENUMSTATSTG; +DEFINE_GUID(IID_IEnumSTATSTG, 0x0000000d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IEnumSTATSTG : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Next( + ULONG celt, + STATSTG *rgelt, + ULONG *pceltFetched) = 0; + + virtual HRESULT STDMETHODCALLTYPE Skip( + ULONG celt) = 0; + + virtual HRESULT STDMETHODCALLTYPE Reset( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Clone( + IEnumSTATSTG **ppenum) = 0; + +}; +#else +typedef struct IEnumSTATSTGVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IEnumSTATSTG* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IEnumSTATSTG* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IEnumSTATSTG* This); + + /*** IEnumSTATSTG methods ***/ + HRESULT (STDMETHODCALLTYPE *Next)( + IEnumSTATSTG* This, + ULONG celt, + STATSTG *rgelt, + ULONG *pceltFetched); + + HRESULT (STDMETHODCALLTYPE *Skip)( + IEnumSTATSTG* This, + ULONG celt); + + HRESULT (STDMETHODCALLTYPE *Reset)( + IEnumSTATSTG* This); + + HRESULT (STDMETHODCALLTYPE *Clone)( + IEnumSTATSTG* This, + IEnumSTATSTG **ppenum); + + END_INTERFACE +} IEnumSTATSTGVtbl; +interface IEnumSTATSTG { + CONST_VTBL IEnumSTATSTGVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IEnumSTATSTG_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IEnumSTATSTG_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IEnumSTATSTG_Release(This) (This)->lpVtbl->Release(This) +/*** IEnumSTATSTG methods ***/ +#define IEnumSTATSTG_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) +#define IEnumSTATSTG_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IEnumSTATSTG_Reset(This) (This)->lpVtbl->Reset(This) +#define IEnumSTATSTG_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IEnumSTATSTG_RemoteNext_Proxy( + IEnumSTATSTG* This, + ULONG celt, + STATSTG *rgelt, + ULONG *pceltFetched); +void __RPC_STUB IEnumSTATSTG_RemoteNext_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumSTATSTG_Skip_Proxy( + IEnumSTATSTG* This, + ULONG celt); +void __RPC_STUB IEnumSTATSTG_Skip_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumSTATSTG_Reset_Proxy( + IEnumSTATSTG* This); +void __RPC_STUB IEnumSTATSTG_Reset_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumSTATSTG_Clone_Proxy( + IEnumSTATSTG* This, + IEnumSTATSTG **ppenum); +void __RPC_STUB IEnumSTATSTG_Clone_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IEnumSTATSTG_Next_Proxy( + IEnumSTATSTG* This, + ULONG celt, + STATSTG *rgelt, + ULONG *pceltFetched); +HRESULT __RPC_STUB IEnumSTATSTG_Next_Stub( + IEnumSTATSTG* This, + ULONG celt, + STATSTG *rgelt, + ULONG *pceltFetched); + +#endif /* __IEnumSTATSTG_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IStorage interface + */ +#ifndef __IStorage_INTERFACE_DEFINED__ +#define __IStorage_INTERFACE_DEFINED__ + +typedef IStorage *LPSTORAGE; +typedef struct tagRemSNB { + ULONG ulCntStr; + ULONG ulCntChar; + OLECHAR rgString[1]; +} RemSNB; +typedef RemSNB *wireSNB; +typedef OLECHAR **SNB; +DEFINE_GUID(IID_IStorage, 0x0000000b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IStorage : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE CreateStream( + LPCOLESTR pwcsName, + DWORD grfMode, + DWORD reserved1, + DWORD reserved2, + IStream **ppstm) = 0; + + virtual HRESULT STDMETHODCALLTYPE OpenStream( + LPCOLESTR pwcsName, + void *reserved1, + DWORD grfMode, + DWORD reserved2, + IStream **ppstm) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateStorage( + LPCOLESTR pwcsName, + DWORD grfMode, + DWORD dwStgFmt, + DWORD reserved2, + IStorage **ppstg) = 0; + + virtual HRESULT STDMETHODCALLTYPE OpenStorage( + LPCOLESTR pwcsName, + IStorage *pstgPriority, + DWORD grfMode, + SNB snbExclude, + DWORD reserved, + IStorage **ppstg) = 0; + + virtual HRESULT STDMETHODCALLTYPE CopyTo( + DWORD ciidExclude, + const IID *rgiidExclude, + SNB snbExclude, + IStorage *pstgDest) = 0; + + virtual HRESULT STDMETHODCALLTYPE MoveElementTo( + LPCOLESTR pwcsName, + IStorage *pstgDest, + LPCOLESTR pwcsNewName, + DWORD grfFlags) = 0; + + virtual HRESULT STDMETHODCALLTYPE Commit( + DWORD grfCommitFlags) = 0; + + virtual HRESULT STDMETHODCALLTYPE Revert( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE EnumElements( + DWORD reserved1, + void *reserved2, + DWORD reserved3, + IEnumSTATSTG **ppenum) = 0; + + virtual HRESULT STDMETHODCALLTYPE DestroyElement( + LPCOLESTR pwcsName) = 0; + + virtual HRESULT STDMETHODCALLTYPE RenameElement( + LPCOLESTR pwcsOldName, + LPCOLESTR pwcsNewName) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetElementTimes( + LPCOLESTR pwcsName, + const FILETIME *pctime, + const FILETIME *patime, + const FILETIME *pmtime) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetClass( + REFCLSID clsid) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetStateBits( + DWORD grfStateBits, + DWORD grfMask) = 0; + + virtual HRESULT STDMETHODCALLTYPE Stat( + STATSTG *pstatstg, + DWORD grfStatFlag) = 0; + +}; +#else +typedef struct IStorageVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IStorage* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IStorage* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IStorage* This); + + /*** IStorage methods ***/ + HRESULT (STDMETHODCALLTYPE *CreateStream)( + IStorage* This, + LPCOLESTR pwcsName, + DWORD grfMode, + DWORD reserved1, + DWORD reserved2, + IStream **ppstm); + + HRESULT (STDMETHODCALLTYPE *OpenStream)( + IStorage* This, + LPCOLESTR pwcsName, + void *reserved1, + DWORD grfMode, + DWORD reserved2, + IStream **ppstm); + + HRESULT (STDMETHODCALLTYPE *CreateStorage)( + IStorage* This, + LPCOLESTR pwcsName, + DWORD grfMode, + DWORD dwStgFmt, + DWORD reserved2, + IStorage **ppstg); + + HRESULT (STDMETHODCALLTYPE *OpenStorage)( + IStorage* This, + LPCOLESTR pwcsName, + IStorage *pstgPriority, + DWORD grfMode, + SNB snbExclude, + DWORD reserved, + IStorage **ppstg); + + HRESULT (STDMETHODCALLTYPE *CopyTo)( + IStorage* This, + DWORD ciidExclude, + const IID *rgiidExclude, + SNB snbExclude, + IStorage *pstgDest); + + HRESULT (STDMETHODCALLTYPE *MoveElementTo)( + IStorage* This, + LPCOLESTR pwcsName, + IStorage *pstgDest, + LPCOLESTR pwcsNewName, + DWORD grfFlags); + + HRESULT (STDMETHODCALLTYPE *Commit)( + IStorage* This, + DWORD grfCommitFlags); + + HRESULT (STDMETHODCALLTYPE *Revert)( + IStorage* This); + + HRESULT (STDMETHODCALLTYPE *EnumElements)( + IStorage* This, + DWORD reserved1, + void *reserved2, + DWORD reserved3, + IEnumSTATSTG **ppenum); + + HRESULT (STDMETHODCALLTYPE *DestroyElement)( + IStorage* This, + LPCOLESTR pwcsName); + + HRESULT (STDMETHODCALLTYPE *RenameElement)( + IStorage* This, + LPCOLESTR pwcsOldName, + LPCOLESTR pwcsNewName); + + HRESULT (STDMETHODCALLTYPE *SetElementTimes)( + IStorage* This, + LPCOLESTR pwcsName, + const FILETIME *pctime, + const FILETIME *patime, + const FILETIME *pmtime); + + HRESULT (STDMETHODCALLTYPE *SetClass)( + IStorage* This, + REFCLSID clsid); + + HRESULT (STDMETHODCALLTYPE *SetStateBits)( + IStorage* This, + DWORD grfStateBits, + DWORD grfMask); + + HRESULT (STDMETHODCALLTYPE *Stat)( + IStorage* This, + STATSTG *pstatstg, + DWORD grfStatFlag); + + END_INTERFACE +} IStorageVtbl; +interface IStorage { + CONST_VTBL IStorageVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IStorage_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IStorage_Release(This) (This)->lpVtbl->Release(This) +/*** IStorage methods ***/ +#define IStorage_CreateStream(This,pwcsName,grfMode,reserved1,reserved2,ppstm) (This)->lpVtbl->CreateStream(This,pwcsName,grfMode,reserved1,reserved2,ppstm) +#define IStorage_OpenStream(This,pwcsName,reserved1,grfMode,reserved2,ppstm) (This)->lpVtbl->OpenStream(This,pwcsName,reserved1,grfMode,reserved2,ppstm) +#define IStorage_CreateStorage(This,pwcsName,grfMode,dwStgFmt,reserved2,ppstg) (This)->lpVtbl->CreateStorage(This,pwcsName,grfMode,dwStgFmt,reserved2,ppstg) +#define IStorage_OpenStorage(This,pwcsName,pstgPriority,grfMode,snbExclude,reserved,ppstg) (This)->lpVtbl->OpenStorage(This,pwcsName,pstgPriority,grfMode,snbExclude,reserved,ppstg) +#define IStorage_CopyTo(This,ciidExclude,rgiidExclude,snbExclude,pstgDest) (This)->lpVtbl->CopyTo(This,ciidExclude,rgiidExclude,snbExclude,pstgDest) +#define IStorage_MoveElementTo(This,pwcsName,pstgDest,pwcsNewName,grfFlags) (This)->lpVtbl->MoveElementTo(This,pwcsName,pstgDest,pwcsNewName,grfFlags) +#define IStorage_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags) +#define IStorage_Revert(This) (This)->lpVtbl->Revert(This) +#define IStorage_EnumElements(This,reserved1,reserved2,reserved3,ppenum) (This)->lpVtbl->EnumElements(This,reserved1,reserved2,reserved3,ppenum) +#define IStorage_DestroyElement(This,pwcsName) (This)->lpVtbl->DestroyElement(This,pwcsName) +#define IStorage_RenameElement(This,pwcsOldName,pwcsNewName) (This)->lpVtbl->RenameElement(This,pwcsOldName,pwcsNewName) +#define IStorage_SetElementTimes(This,pwcsName,pctime,patime,pmtime) (This)->lpVtbl->SetElementTimes(This,pwcsName,pctime,patime,pmtime) +#define IStorage_SetClass(This,clsid) (This)->lpVtbl->SetClass(This,clsid) +#define IStorage_SetStateBits(This,grfStateBits,grfMask) (This)->lpVtbl->SetStateBits(This,grfStateBits,grfMask) +#define IStorage_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IStorage_CreateStream_Proxy( + IStorage* This, + LPCOLESTR pwcsName, + DWORD grfMode, + DWORD reserved1, + DWORD reserved2, + IStream **ppstm); +void __RPC_STUB IStorage_CreateStream_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_RemoteOpenStream_Proxy( + IStorage* This, + LPCOLESTR pwcsName, + ULONG cbReserved1, + byte *reserved1, + DWORD grfMode, + DWORD reserved2, + IStream **ppstm); +void __RPC_STUB IStorage_RemoteOpenStream_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_CreateStorage_Proxy( + IStorage* This, + LPCOLESTR pwcsName, + DWORD grfMode, + DWORD dwStgFmt, + DWORD reserved2, + IStorage **ppstg); +void __RPC_STUB IStorage_CreateStorage_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_OpenStorage_Proxy( + IStorage* This, + LPCOLESTR pwcsName, + IStorage *pstgPriority, + DWORD grfMode, + SNB snbExclude, + DWORD reserved, + IStorage **ppstg); +void __RPC_STUB IStorage_OpenStorage_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_CopyTo_Proxy( + IStorage* This, + DWORD ciidExclude, + const IID *rgiidExclude, + SNB snbExclude, + IStorage *pstgDest); +void __RPC_STUB IStorage_CopyTo_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_MoveElementTo_Proxy( + IStorage* This, + LPCOLESTR pwcsName, + IStorage *pstgDest, + LPCOLESTR pwcsNewName, + DWORD grfFlags); +void __RPC_STUB IStorage_MoveElementTo_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_Commit_Proxy( + IStorage* This, + DWORD grfCommitFlags); +void __RPC_STUB IStorage_Commit_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_Revert_Proxy( + IStorage* This); +void __RPC_STUB IStorage_Revert_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_RemoteEnumElements_Proxy( + IStorage* This, + DWORD reserved1, + ULONG cbReserved2, + byte *reserved2, + DWORD reserved3, + IEnumSTATSTG **ppenum); +void __RPC_STUB IStorage_RemoteEnumElements_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_DestroyElement_Proxy( + IStorage* This, + LPCOLESTR pwcsName); +void __RPC_STUB IStorage_DestroyElement_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_RenameElement_Proxy( + IStorage* This, + LPCOLESTR pwcsOldName, + LPCOLESTR pwcsNewName); +void __RPC_STUB IStorage_RenameElement_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_SetElementTimes_Proxy( + IStorage* This, + LPCOLESTR pwcsName, + const FILETIME *pctime, + const FILETIME *patime, + const FILETIME *pmtime); +void __RPC_STUB IStorage_SetElementTimes_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_SetClass_Proxy( + IStorage* This, + REFCLSID clsid); +void __RPC_STUB IStorage_SetClass_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_SetStateBits_Proxy( + IStorage* This, + DWORD grfStateBits, + DWORD grfMask); +void __RPC_STUB IStorage_SetStateBits_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IStorage_Stat_Proxy( + IStorage* This, + STATSTG *pstatstg, + DWORD grfStatFlag); +void __RPC_STUB IStorage_Stat_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IStorage_OpenStream_Proxy( + IStorage* This, + LPCOLESTR pwcsName, + void *reserved1, + DWORD grfMode, + DWORD reserved2, + IStream **ppstm); +HRESULT __RPC_STUB IStorage_OpenStream_Stub( + IStorage* This, + LPCOLESTR pwcsName, + ULONG cbReserved1, + byte *reserved1, + DWORD grfMode, + DWORD reserved2, + IStream **ppstm); +HRESULT CALLBACK IStorage_EnumElements_Proxy( + IStorage* This, + DWORD reserved1, + void *reserved2, + DWORD reserved3, + IEnumSTATSTG **ppenum); +HRESULT __RPC_STUB IStorage_EnumElements_Stub( + IStorage* This, + DWORD reserved1, + ULONG cbReserved2, + byte *reserved2, + DWORD reserved3, + IEnumSTATSTG **ppenum); + +#endif /* __IStorage_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IPersistFile interface + */ +#ifndef __IPersistFile_INTERFACE_DEFINED__ +#define __IPersistFile_INTERFACE_DEFINED__ + +typedef IPersistFile *LPPERSISTFILE; +DEFINE_GUID(IID_IPersistFile, 0x0000010b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IPersistFile : public IPersist +{ + virtual HRESULT STDMETHODCALLTYPE IsDirty( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Load( + LPCOLESTR pszFileName, + DWORD dwMode) = 0; + + virtual HRESULT STDMETHODCALLTYPE Save( + LPCOLESTR pszFileName, + BOOL fRemember) = 0; + + virtual HRESULT STDMETHODCALLTYPE SaveCompleted( + LPCOLESTR pszFileName) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCurFile( + LPOLESTR *ppszFileName) = 0; + +}; +#else +typedef struct IPersistFileVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IPersistFile* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IPersistFile* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IPersistFile* This); + + /*** IPersist methods ***/ + HRESULT (STDMETHODCALLTYPE *GetClassID)( + IPersistFile* This, + CLSID *pClassID); + + /*** IPersistFile methods ***/ + HRESULT (STDMETHODCALLTYPE *IsDirty)( + IPersistFile* This); + + HRESULT (STDMETHODCALLTYPE *Load)( + IPersistFile* This, + LPCOLESTR pszFileName, + DWORD dwMode); + + HRESULT (STDMETHODCALLTYPE *Save)( + IPersistFile* This, + LPCOLESTR pszFileName, + BOOL fRemember); + + HRESULT (STDMETHODCALLTYPE *SaveCompleted)( + IPersistFile* This, + LPCOLESTR pszFileName); + + HRESULT (STDMETHODCALLTYPE *GetCurFile)( + IPersistFile* This, + LPOLESTR *ppszFileName); + + END_INTERFACE +} IPersistFileVtbl; +interface IPersistFile { + CONST_VTBL IPersistFileVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IPersistFile_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IPersistFile_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IPersistFile_Release(This) (This)->lpVtbl->Release(This) +/*** IPersist methods ***/ +#define IPersistFile_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) +/*** IPersistFile methods ***/ +#define IPersistFile_IsDirty(This) (This)->lpVtbl->IsDirty(This) +#define IPersistFile_Load(This,pszFileName,dwMode) (This)->lpVtbl->Load(This,pszFileName,dwMode) +#define IPersistFile_Save(This,pszFileName,fRemember) (This)->lpVtbl->Save(This,pszFileName,fRemember) +#define IPersistFile_SaveCompleted(This,pszFileName) (This)->lpVtbl->SaveCompleted(This,pszFileName) +#define IPersistFile_GetCurFile(This,ppszFileName) (This)->lpVtbl->GetCurFile(This,ppszFileName) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IPersistFile_IsDirty_Proxy( + IPersistFile* This); +void __RPC_STUB IPersistFile_IsDirty_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistFile_Load_Proxy( + IPersistFile* This, + LPCOLESTR pszFileName, + DWORD dwMode); +void __RPC_STUB IPersistFile_Load_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistFile_Save_Proxy( + IPersistFile* This, + LPCOLESTR pszFileName, + BOOL fRemember); +void __RPC_STUB IPersistFile_Save_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistFile_SaveCompleted_Proxy( + IPersistFile* This, + LPCOLESTR pszFileName); +void __RPC_STUB IPersistFile_SaveCompleted_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistFile_GetCurFile_Proxy( + IPersistFile* This, + LPOLESTR *ppszFileName); +void __RPC_STUB IPersistFile_GetCurFile_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IPersistFile_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IPersistStorage interface + */ +#ifndef __IPersistStorage_INTERFACE_DEFINED__ +#define __IPersistStorage_INTERFACE_DEFINED__ + +typedef IPersistStorage *LPPERSISTSTORAGE; +DEFINE_GUID(IID_IPersistStorage, 0x0000010a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IPersistStorage : public IPersist +{ + virtual HRESULT STDMETHODCALLTYPE IsDirty( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE InitNew( + IStorage *pStg) = 0; + + virtual HRESULT STDMETHODCALLTYPE Load( + IStorage *pStg) = 0; + + virtual HRESULT STDMETHODCALLTYPE Save( + IStorage *pStgSave, + BOOL fSameAsLoad) = 0; + + virtual HRESULT STDMETHODCALLTYPE SaveCompleted( + IStorage *pStgNew) = 0; + + virtual HRESULT STDMETHODCALLTYPE HandsOffStorage( + ) = 0; + +}; +#else +typedef struct IPersistStorageVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IPersistStorage* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IPersistStorage* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IPersistStorage* This); + + /*** IPersist methods ***/ + HRESULT (STDMETHODCALLTYPE *GetClassID)( + IPersistStorage* This, + CLSID *pClassID); + + /*** IPersistStorage methods ***/ + HRESULT (STDMETHODCALLTYPE *IsDirty)( + IPersistStorage* This); + + HRESULT (STDMETHODCALLTYPE *InitNew)( + IPersistStorage* This, + IStorage *pStg); + + HRESULT (STDMETHODCALLTYPE *Load)( + IPersistStorage* This, + IStorage *pStg); + + HRESULT (STDMETHODCALLTYPE *Save)( + IPersistStorage* This, + IStorage *pStgSave, + BOOL fSameAsLoad); + + HRESULT (STDMETHODCALLTYPE *SaveCompleted)( + IPersistStorage* This, + IStorage *pStgNew); + + HRESULT (STDMETHODCALLTYPE *HandsOffStorage)( + IPersistStorage* This); + + END_INTERFACE +} IPersistStorageVtbl; +interface IPersistStorage { + CONST_VTBL IPersistStorageVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IPersistStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IPersistStorage_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IPersistStorage_Release(This) (This)->lpVtbl->Release(This) +/*** IPersist methods ***/ +#define IPersistStorage_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) +/*** IPersistStorage methods ***/ +#define IPersistStorage_IsDirty(This) (This)->lpVtbl->IsDirty(This) +#define IPersistStorage_InitNew(This,pStg) (This)->lpVtbl->InitNew(This,pStg) +#define IPersistStorage_Load(This,pStg) (This)->lpVtbl->Load(This,pStg) +#define IPersistStorage_Save(This,pStgSave,fSameAsLoad) (This)->lpVtbl->Save(This,pStgSave,fSameAsLoad) +#define IPersistStorage_SaveCompleted(This,pStgNew) (This)->lpVtbl->SaveCompleted(This,pStgNew) +#define IPersistStorage_HandsOffStorage(This) (This)->lpVtbl->HandsOffStorage(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IPersistStorage_IsDirty_Proxy( + IPersistStorage* This); +void __RPC_STUB IPersistStorage_IsDirty_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistStorage_InitNew_Proxy( + IPersistStorage* This, + IStorage *pStg); +void __RPC_STUB IPersistStorage_InitNew_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistStorage_Load_Proxy( + IPersistStorage* This, + IStorage *pStg); +void __RPC_STUB IPersistStorage_Load_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistStorage_Save_Proxy( + IPersistStorage* This, + IStorage *pStgSave, + BOOL fSameAsLoad); +void __RPC_STUB IPersistStorage_Save_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistStorage_SaveCompleted_Proxy( + IPersistStorage* This, + IStorage *pStgNew); +void __RPC_STUB IPersistStorage_SaveCompleted_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPersistStorage_HandsOffStorage_Proxy( + IPersistStorage* This); +void __RPC_STUB IPersistStorage_HandsOffStorage_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IPersistStorage_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IRootStorage interface + */ +#ifndef __IRootStorage_INTERFACE_DEFINED__ +#define __IRootStorage_INTERFACE_DEFINED__ + +typedef IRootStorage *LPROOTSTORAGE; +DEFINE_GUID(IID_IRootStorage, 0x00000012, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRootStorage : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE SwitchToFile( + LPOLESTR pszFile) = 0; + +}; +#else +typedef struct IRootStorageVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRootStorage* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRootStorage* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRootStorage* This); + + /*** IRootStorage methods ***/ + HRESULT (STDMETHODCALLTYPE *SwitchToFile)( + IRootStorage* This, + LPOLESTR pszFile); + + END_INTERFACE +} IRootStorageVtbl; +interface IRootStorage { + CONST_VTBL IRootStorageVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRootStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRootStorage_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRootStorage_Release(This) (This)->lpVtbl->Release(This) +/*** IRootStorage methods ***/ +#define IRootStorage_SwitchToFile(This,pszFile) (This)->lpVtbl->SwitchToFile(This,pszFile) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRootStorage_SwitchToFile_Proxy( + IRootStorage* This, + LPOLESTR pszFile); +void __RPC_STUB IRootStorage_SwitchToFile_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRootStorage_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ILockBytes interface + */ +#ifndef __ILockBytes_INTERFACE_DEFINED__ +#define __ILockBytes_INTERFACE_DEFINED__ + +typedef ILockBytes *LPLOCKBYTES; +DEFINE_GUID(IID_ILockBytes, 0x0000000a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ILockBytes : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE ReadAt( + ULARGE_INTEGER ulOffset, + void *pv, + ULONG cb, + ULONG *pcbRead) = 0; + + virtual HRESULT STDMETHODCALLTYPE WriteAt( + ULARGE_INTEGER ulOffset, + const void *pv, + ULONG cb, + ULONG *pcbWritten) = 0; + + virtual HRESULT STDMETHODCALLTYPE Flush( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetSize( + ULARGE_INTEGER cb) = 0; + + virtual HRESULT STDMETHODCALLTYPE LockRegion( + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType) = 0; + + virtual HRESULT STDMETHODCALLTYPE UnlockRegion( + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType) = 0; + + virtual HRESULT STDMETHODCALLTYPE Stat( + STATSTG *pstatstg, + DWORD grfStatFlag) = 0; + +}; +#else +typedef struct ILockBytesVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ILockBytes* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ILockBytes* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ILockBytes* This); + + /*** ILockBytes methods ***/ + HRESULT (STDMETHODCALLTYPE *ReadAt)( + ILockBytes* This, + ULARGE_INTEGER ulOffset, + void *pv, + ULONG cb, + ULONG *pcbRead); + + HRESULT (STDMETHODCALLTYPE *WriteAt)( + ILockBytes* This, + ULARGE_INTEGER ulOffset, + const void *pv, + ULONG cb, + ULONG *pcbWritten); + + HRESULT (STDMETHODCALLTYPE *Flush)( + ILockBytes* This); + + HRESULT (STDMETHODCALLTYPE *SetSize)( + ILockBytes* This, + ULARGE_INTEGER cb); + + HRESULT (STDMETHODCALLTYPE *LockRegion)( + ILockBytes* This, + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType); + + HRESULT (STDMETHODCALLTYPE *UnlockRegion)( + ILockBytes* This, + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType); + + HRESULT (STDMETHODCALLTYPE *Stat)( + ILockBytes* This, + STATSTG *pstatstg, + DWORD grfStatFlag); + + END_INTERFACE +} ILockBytesVtbl; +interface ILockBytes { + CONST_VTBL ILockBytesVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ILockBytes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ILockBytes_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ILockBytes_Release(This) (This)->lpVtbl->Release(This) +/*** ILockBytes methods ***/ +#define ILockBytes_ReadAt(This,ulOffset,pv,cb,pcbRead) (This)->lpVtbl->ReadAt(This,ulOffset,pv,cb,pcbRead) +#define ILockBytes_WriteAt(This,ulOffset,pv,cb,pcbWritten) (This)->lpVtbl->WriteAt(This,ulOffset,pv,cb,pcbWritten) +#define ILockBytes_Flush(This) (This)->lpVtbl->Flush(This) +#define ILockBytes_SetSize(This,cb) (This)->lpVtbl->SetSize(This,cb) +#define ILockBytes_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType) +#define ILockBytes_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType) +#define ILockBytes_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ILockBytes_RemoteReadAt_Proxy( + ILockBytes* This, + ULARGE_INTEGER ulOffset, + byte *pv, + ULONG cb, + ULONG *pcbRead); +void __RPC_STUB ILockBytes_RemoteReadAt_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILockBytes_RemoteWriteAt_Proxy( + ILockBytes* This, + ULARGE_INTEGER ulOffset, + const byte *pv, + ULONG cb, + ULONG *pcbWritten); +void __RPC_STUB ILockBytes_RemoteWriteAt_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILockBytes_Flush_Proxy( + ILockBytes* This); +void __RPC_STUB ILockBytes_Flush_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILockBytes_SetSize_Proxy( + ILockBytes* This, + ULARGE_INTEGER cb); +void __RPC_STUB ILockBytes_SetSize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILockBytes_LockRegion_Proxy( + ILockBytes* This, + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType); +void __RPC_STUB ILockBytes_LockRegion_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILockBytes_UnlockRegion_Proxy( + ILockBytes* This, + ULARGE_INTEGER libOffset, + ULARGE_INTEGER cb, + DWORD dwLockType); +void __RPC_STUB ILockBytes_UnlockRegion_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILockBytes_Stat_Proxy( + ILockBytes* This, + STATSTG *pstatstg, + DWORD grfStatFlag); +void __RPC_STUB ILockBytes_Stat_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK ILockBytes_ReadAt_Proxy( + ILockBytes* This, + ULARGE_INTEGER ulOffset, + void *pv, + ULONG cb, + ULONG *pcbRead); +HRESULT __RPC_STUB ILockBytes_ReadAt_Stub( + ILockBytes* This, + ULARGE_INTEGER ulOffset, + byte *pv, + ULONG cb, + ULONG *pcbRead); +HRESULT CALLBACK ILockBytes_WriteAt_Proxy( + ILockBytes* This, + ULARGE_INTEGER ulOffset, + const void *pv, + ULONG cb, + ULONG *pcbWritten); +HRESULT __RPC_STUB ILockBytes_WriteAt_Stub( + ILockBytes* This, + ULARGE_INTEGER ulOffset, + const byte *pv, + ULONG cb, + ULONG *pcbWritten); + +#endif /* __ILockBytes_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IFillLockBytes interface + */ +#ifndef __IFillLockBytes_INTERFACE_DEFINED__ +#define __IFillLockBytes_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IFillLockBytes, 0x99caf010, 0x415e, 0x11cf, 0x88,0x14, 0x00,0xaa,0x00,0xb5,0x69,0xf5); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IFillLockBytes : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE FillAppend( + const void *pv, + ULONG cb, + ULONG *pcbWritten) = 0; + + virtual HRESULT STDMETHODCALLTYPE FillAt( + ULARGE_INTEGER ulOffset, + const void *pv, + ULONG cb, + ULONG *pcbWritten) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetFillSize( + ULARGE_INTEGER ulSize) = 0; + + virtual HRESULT STDMETHODCALLTYPE Terminate( + BOOL bCanceled) = 0; + +}; +#else +typedef struct IFillLockBytesVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IFillLockBytes* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IFillLockBytes* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IFillLockBytes* This); + + /*** IFillLockBytes methods ***/ + HRESULT (STDMETHODCALLTYPE *FillAppend)( + IFillLockBytes* This, + const void *pv, + ULONG cb, + ULONG *pcbWritten); + + HRESULT (STDMETHODCALLTYPE *FillAt)( + IFillLockBytes* This, + ULARGE_INTEGER ulOffset, + const void *pv, + ULONG cb, + ULONG *pcbWritten); + + HRESULT (STDMETHODCALLTYPE *SetFillSize)( + IFillLockBytes* This, + ULARGE_INTEGER ulSize); + + HRESULT (STDMETHODCALLTYPE *Terminate)( + IFillLockBytes* This, + BOOL bCanceled); + + END_INTERFACE +} IFillLockBytesVtbl; +interface IFillLockBytes { + CONST_VTBL IFillLockBytesVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IFillLockBytes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IFillLockBytes_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IFillLockBytes_Release(This) (This)->lpVtbl->Release(This) +/*** IFillLockBytes methods ***/ +#define IFillLockBytes_FillAppend(This,pv,cb,pcbWritten) (This)->lpVtbl->FillAppend(This,pv,cb,pcbWritten) +#define IFillLockBytes_FillAt(This,ulOffset,pv,cb,pcbWritten) (This)->lpVtbl->FillAt(This,ulOffset,pv,cb,pcbWritten) +#define IFillLockBytes_SetFillSize(This,ulSize) (This)->lpVtbl->SetFillSize(This,ulSize) +#define IFillLockBytes_Terminate(This,bCanceled) (This)->lpVtbl->Terminate(This,bCanceled) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IFillLockBytes_RemoteFillAppend_Proxy( + IFillLockBytes* This, + const byte *pv, + ULONG cb, + ULONG *pcbWritten); +void __RPC_STUB IFillLockBytes_RemoteFillAppend_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IFillLockBytes_RemoteFillAt_Proxy( + IFillLockBytes* This, + ULARGE_INTEGER ulOffset, + const byte *pv, + ULONG cb, + ULONG *pcbWritten); +void __RPC_STUB IFillLockBytes_RemoteFillAt_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IFillLockBytes_SetFillSize_Proxy( + IFillLockBytes* This, + ULARGE_INTEGER ulSize); +void __RPC_STUB IFillLockBytes_SetFillSize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IFillLockBytes_Terminate_Proxy( + IFillLockBytes* This, + BOOL bCanceled); +void __RPC_STUB IFillLockBytes_Terminate_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IFillLockBytes_FillAppend_Proxy( + IFillLockBytes* This, + const void *pv, + ULONG cb, + ULONG *pcbWritten); +HRESULT __RPC_STUB IFillLockBytes_FillAppend_Stub( + IFillLockBytes* This, + const byte *pv, + ULONG cb, + ULONG *pcbWritten); +HRESULT CALLBACK IFillLockBytes_FillAt_Proxy( + IFillLockBytes* This, + ULARGE_INTEGER ulOffset, + const void *pv, + ULONG cb, + ULONG *pcbWritten); +HRESULT __RPC_STUB IFillLockBytes_FillAt_Stub( + IFillLockBytes* This, + ULARGE_INTEGER ulOffset, + const byte *pv, + ULONG cb, + ULONG *pcbWritten); + +#endif /* __IFillLockBytes_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IProgressNotify interface + */ +#ifndef __IProgressNotify_INTERFACE_DEFINED__ +#define __IProgressNotify_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IProgressNotify, 0xa9d758a0, 0x4617, 0x11cf, 0x95,0xfc, 0x00,0xaa,0x00,0x68,0x0d,0xb4); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IProgressNotify : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE OnProgress( + DWORD dwProgressCurrent, + DWORD dwProgressMaximum, + BOOL fAccurate, + BOOL fOwner) = 0; + +}; +#else +typedef struct IProgressNotifyVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IProgressNotify* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IProgressNotify* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IProgressNotify* This); + + /*** IProgressNotify methods ***/ + HRESULT (STDMETHODCALLTYPE *OnProgress)( + IProgressNotify* This, + DWORD dwProgressCurrent, + DWORD dwProgressMaximum, + BOOL fAccurate, + BOOL fOwner); + + END_INTERFACE +} IProgressNotifyVtbl; +interface IProgressNotify { + CONST_VTBL IProgressNotifyVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IProgressNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IProgressNotify_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IProgressNotify_Release(This) (This)->lpVtbl->Release(This) +/*** IProgressNotify methods ***/ +#define IProgressNotify_OnProgress(This,dwProgressCurrent,dwProgressMaximum,fAccurate,fOwner) (This)->lpVtbl->OnProgress(This,dwProgressCurrent,dwProgressMaximum,fAccurate,fOwner) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IProgressNotify_OnProgress_Proxy( + IProgressNotify* This, + DWORD dwProgressCurrent, + DWORD dwProgressMaximum, + BOOL fAccurate, + BOOL fOwner); +void __RPC_STUB IProgressNotify_OnProgress_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IProgressNotify_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ILayoutStorage interface + */ +#ifndef __ILayoutStorage_INTERFACE_DEFINED__ +#define __ILayoutStorage_INTERFACE_DEFINED__ + +typedef struct tagStorageLayout { + DWORD LayoutType; + OLECHAR *pwcsElementName; + LARGE_INTEGER cOffset; + LARGE_INTEGER cBytes; +} StorageLayout; +DEFINE_GUID(IID_ILayoutStorage, 0x0e6d4d90, 0x6738, 0x11cf, 0x96,0x08, 0x00,0xaa,0x00,0x68,0x0d,0xb4); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ILayoutStorage : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE LayoutScript( + StorageLayout *pStorageLayout, + DWORD nEntries, + DWORD glfInterleavedFlag) = 0; + + virtual HRESULT STDMETHODCALLTYPE BeginMonitor( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE EndMonitor( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE ReLayoutDocfile( + OLECHAR *pwcsNewDfName) = 0; + + virtual HRESULT STDMETHODCALLTYPE ReLayoutDocfileOnILockBytes( + ILockBytes *pILockBytes) = 0; + +}; +#else +typedef struct ILayoutStorageVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ILayoutStorage* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ILayoutStorage* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ILayoutStorage* This); + + /*** ILayoutStorage methods ***/ + HRESULT (STDMETHODCALLTYPE *LayoutScript)( + ILayoutStorage* This, + StorageLayout *pStorageLayout, + DWORD nEntries, + DWORD glfInterleavedFlag); + + HRESULT (STDMETHODCALLTYPE *BeginMonitor)( + ILayoutStorage* This); + + HRESULT (STDMETHODCALLTYPE *EndMonitor)( + ILayoutStorage* This); + + HRESULT (STDMETHODCALLTYPE *ReLayoutDocfile)( + ILayoutStorage* This, + OLECHAR *pwcsNewDfName); + + HRESULT (STDMETHODCALLTYPE *ReLayoutDocfileOnILockBytes)( + ILayoutStorage* This, + ILockBytes *pILockBytes); + + END_INTERFACE +} ILayoutStorageVtbl; +interface ILayoutStorage { + CONST_VTBL ILayoutStorageVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ILayoutStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ILayoutStorage_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ILayoutStorage_Release(This) (This)->lpVtbl->Release(This) +/*** ILayoutStorage methods ***/ +#define ILayoutStorage_LayoutScript(This,pStorageLayout,nEntries,glfInterleavedFlag) (This)->lpVtbl->LayoutScript(This,pStorageLayout,nEntries,glfInterleavedFlag) +#define ILayoutStorage_BeginMonitor(This) (This)->lpVtbl->BeginMonitor(This) +#define ILayoutStorage_EndMonitor(This) (This)->lpVtbl->EndMonitor(This) +#define ILayoutStorage_ReLayoutDocfile(This,pwcsNewDfName) (This)->lpVtbl->ReLayoutDocfile(This,pwcsNewDfName) +#define ILayoutStorage_ReLayoutDocfileOnILockBytes(This,pILockBytes) (This)->lpVtbl->ReLayoutDocfileOnILockBytes(This,pILockBytes) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ILayoutStorage_LayoutScript_Proxy( + ILayoutStorage* This, + StorageLayout *pStorageLayout, + DWORD nEntries, + DWORD glfInterleavedFlag); +void __RPC_STUB ILayoutStorage_LayoutScript_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILayoutStorage_BeginMonitor_Proxy( + ILayoutStorage* This); +void __RPC_STUB ILayoutStorage_BeginMonitor_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILayoutStorage_EndMonitor_Proxy( + ILayoutStorage* This); +void __RPC_STUB ILayoutStorage_EndMonitor_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILayoutStorage_ReLayoutDocfile_Proxy( + ILayoutStorage* This, + OLECHAR *pwcsNewDfName); +void __RPC_STUB ILayoutStorage_ReLayoutDocfile_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ILayoutStorage_ReLayoutDocfileOnILockBytes_Proxy( + ILayoutStorage* This, + ILockBytes *pILockBytes); +void __RPC_STUB ILayoutStorage_ReLayoutDocfileOnILockBytes_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ILayoutStorage_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IBlockingLock interface + */ +#ifndef __IBlockingLock_INTERFACE_DEFINED__ +#define __IBlockingLock_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IBlockingLock, 0x30f3d47a, 0x6447, 0x11d1, 0x8e,0x3c, 0x00,0xc0,0x4f,0xb9,0x38,0x6d); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IBlockingLock : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Lock( + DWORD dwTimeout) = 0; + + virtual HRESULT STDMETHODCALLTYPE Unlock( + ) = 0; + +}; +#else +typedef struct IBlockingLockVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IBlockingLock* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IBlockingLock* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IBlockingLock* This); + + /*** IBlockingLock methods ***/ + HRESULT (STDMETHODCALLTYPE *Lock)( + IBlockingLock* This, + DWORD dwTimeout); + + HRESULT (STDMETHODCALLTYPE *Unlock)( + IBlockingLock* This); + + END_INTERFACE +} IBlockingLockVtbl; +interface IBlockingLock { + CONST_VTBL IBlockingLockVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IBlockingLock_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IBlockingLock_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IBlockingLock_Release(This) (This)->lpVtbl->Release(This) +/*** IBlockingLock methods ***/ +#define IBlockingLock_Lock(This,dwTimeout) (This)->lpVtbl->Lock(This,dwTimeout) +#define IBlockingLock_Unlock(This) (This)->lpVtbl->Unlock(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IBlockingLock_Lock_Proxy( + IBlockingLock* This, + DWORD dwTimeout); +void __RPC_STUB IBlockingLock_Lock_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IBlockingLock_Unlock_Proxy( + IBlockingLock* This); +void __RPC_STUB IBlockingLock_Unlock_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IBlockingLock_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ITimeAndNoticeControl interface + */ +#ifndef __ITimeAndNoticeControl_INTERFACE_DEFINED__ +#define __ITimeAndNoticeControl_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_ITimeAndNoticeControl, 0xbc0bf6ae, 0x8878, 0x11d1, 0x83,0xe9, 0x00,0xc0,0x4f,0xc2,0xc6,0xd4); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ITimeAndNoticeControl : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE SuppressChanges( + DWORD res1, + DWORD res2) = 0; + +}; +#else +typedef struct ITimeAndNoticeControlVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ITimeAndNoticeControl* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ITimeAndNoticeControl* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ITimeAndNoticeControl* This); + + /*** ITimeAndNoticeControl methods ***/ + HRESULT (STDMETHODCALLTYPE *SuppressChanges)( + ITimeAndNoticeControl* This, + DWORD res1, + DWORD res2); + + END_INTERFACE +} ITimeAndNoticeControlVtbl; +interface ITimeAndNoticeControl { + CONST_VTBL ITimeAndNoticeControlVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ITimeAndNoticeControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ITimeAndNoticeControl_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ITimeAndNoticeControl_Release(This) (This)->lpVtbl->Release(This) +/*** ITimeAndNoticeControl methods ***/ +#define ITimeAndNoticeControl_SuppressChanges(This,res1,res2) (This)->lpVtbl->SuppressChanges(This,res1,res2) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ITimeAndNoticeControl_SuppressChanges_Proxy( + ITimeAndNoticeControl* This, + DWORD res1, + DWORD res2); +void __RPC_STUB ITimeAndNoticeControl_SuppressChanges_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ITimeAndNoticeControl_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IOplockStorage interface + */ +#ifndef __IOplockStorage_INTERFACE_DEFINED__ +#define __IOplockStorage_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IOplockStorage, 0x8d19c834, 0x8879, 0x11d1, 0x83,0xe9, 0x00,0xc0,0x4f,0xc2,0xc6,0xd4); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IOplockStorage : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE CreateStorageEx( + LPCWSTR pwcsName, + DWORD grfMode, + DWORD stgfmt, + DWORD grfAttrs, + REFIID riid, + void **ppstgOpen) = 0; + + virtual HRESULT STDMETHODCALLTYPE OpenStorageEx( + LPCWSTR pwcsName, + DWORD grfMode, + DWORD stgfmt, + DWORD grfAttrs, + REFIID riid, + void **ppstgOpen) = 0; + +}; +#else +typedef struct IOplockStorageVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IOplockStorage* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IOplockStorage* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IOplockStorage* This); + + /*** IOplockStorage methods ***/ + HRESULT (STDMETHODCALLTYPE *CreateStorageEx)( + IOplockStorage* This, + LPCWSTR pwcsName, + DWORD grfMode, + DWORD stgfmt, + DWORD grfAttrs, + REFIID riid, + void **ppstgOpen); + + HRESULT (STDMETHODCALLTYPE *OpenStorageEx)( + IOplockStorage* This, + LPCWSTR pwcsName, + DWORD grfMode, + DWORD stgfmt, + DWORD grfAttrs, + REFIID riid, + void **ppstgOpen); + + END_INTERFACE +} IOplockStorageVtbl; +interface IOplockStorage { + CONST_VTBL IOplockStorageVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IOplockStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IOplockStorage_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IOplockStorage_Release(This) (This)->lpVtbl->Release(This) +/*** IOplockStorage methods ***/ +#define IOplockStorage_CreateStorageEx(This,pwcsName,grfMode,stgfmt,grfAttrs,riid,ppstgOpen) (This)->lpVtbl->CreateStorageEx(This,pwcsName,grfMode,stgfmt,grfAttrs,riid,ppstgOpen) +#define IOplockStorage_OpenStorageEx(This,pwcsName,grfMode,stgfmt,grfAttrs,riid,ppstgOpen) (This)->lpVtbl->OpenStorageEx(This,pwcsName,grfMode,stgfmt,grfAttrs,riid,ppstgOpen) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IOplockStorage_CreateStorageEx_Proxy( + IOplockStorage* This, + LPCWSTR pwcsName, + DWORD grfMode, + DWORD stgfmt, + DWORD grfAttrs, + REFIID riid, + void **ppstgOpen); +void __RPC_STUB IOplockStorage_CreateStorageEx_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IOplockStorage_OpenStorageEx_Proxy( + IOplockStorage* This, + LPCWSTR pwcsName, + DWORD grfMode, + DWORD stgfmt, + DWORD grfAttrs, + REFIID riid, + void **ppstgOpen); +void __RPC_STUB IOplockStorage_OpenStorageEx_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IOplockStorage_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IEnumFORMATETC interface + */ +#ifndef __IEnumFORMATETC_INTERFACE_DEFINED__ +#define __IEnumFORMATETC_INTERFACE_DEFINED__ + +typedef IEnumFORMATETC *LPENUMFORMATETC; +typedef struct tagDVTARGETDEVICE { + DWORD tdSize; + WORD tdDriverNameOffset; + WORD tdDeviceNameOffset; + WORD tdPortNameOffset; + WORD tdExtDevmodeOffset; + BYTE tdData[1]; +} DVTARGETDEVICE; +typedef CLIPFORMAT *LPCLIPFORMAT; +typedef struct tagFORMATETC { + CLIPFORMAT cfFormat; + DVTARGETDEVICE *ptd; + DWORD dwAspect; + LONG lindex; + DWORD tymed; +} FORMATETC; +typedef struct tagFORMATETC *LPFORMATETC; +DEFINE_GUID(IID_IEnumFORMATETC, 0x00000103, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IEnumFORMATETC : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Next( + ULONG celt, + FORMATETC *rgelt, + ULONG *pceltFetched) = 0; + + virtual HRESULT STDMETHODCALLTYPE Skip( + ULONG celt) = 0; + + virtual HRESULT STDMETHODCALLTYPE Reset( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Clone( + IEnumFORMATETC **ppenum) = 0; + +}; +#else +typedef struct IEnumFORMATETCVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IEnumFORMATETC* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IEnumFORMATETC* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IEnumFORMATETC* This); + + /*** IEnumFORMATETC methods ***/ + HRESULT (STDMETHODCALLTYPE *Next)( + IEnumFORMATETC* This, + ULONG celt, + FORMATETC *rgelt, + ULONG *pceltFetched); + + HRESULT (STDMETHODCALLTYPE *Skip)( + IEnumFORMATETC* This, + ULONG celt); + + HRESULT (STDMETHODCALLTYPE *Reset)( + IEnumFORMATETC* This); + + HRESULT (STDMETHODCALLTYPE *Clone)( + IEnumFORMATETC* This, + IEnumFORMATETC **ppenum); + + END_INTERFACE +} IEnumFORMATETCVtbl; +interface IEnumFORMATETC { + CONST_VTBL IEnumFORMATETCVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IEnumFORMATETC_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IEnumFORMATETC_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IEnumFORMATETC_Release(This) (This)->lpVtbl->Release(This) +/*** IEnumFORMATETC methods ***/ +#define IEnumFORMATETC_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) +#define IEnumFORMATETC_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IEnumFORMATETC_Reset(This) (This)->lpVtbl->Reset(This) +#define IEnumFORMATETC_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IEnumFORMATETC_RemoteNext_Proxy( + IEnumFORMATETC* This, + ULONG celt, + FORMATETC *rgelt, + ULONG *pceltFetched); +void __RPC_STUB IEnumFORMATETC_RemoteNext_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumFORMATETC_Skip_Proxy( + IEnumFORMATETC* This, + ULONG celt); +void __RPC_STUB IEnumFORMATETC_Skip_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumFORMATETC_Reset_Proxy( + IEnumFORMATETC* This); +void __RPC_STUB IEnumFORMATETC_Reset_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumFORMATETC_Clone_Proxy( + IEnumFORMATETC* This, + IEnumFORMATETC **ppenum); +void __RPC_STUB IEnumFORMATETC_Clone_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IEnumFORMATETC_Next_Proxy( + IEnumFORMATETC* This, + ULONG celt, + FORMATETC *rgelt, + ULONG *pceltFetched); +HRESULT __RPC_STUB IEnumFORMATETC_Next_Stub( + IEnumFORMATETC* This, + ULONG celt, + FORMATETC *rgelt, + ULONG *pceltFetched); + +#endif /* __IEnumFORMATETC_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IEnumSTATDATA interface + */ +#ifndef __IEnumSTATDATA_INTERFACE_DEFINED__ +#define __IEnumSTATDATA_INTERFACE_DEFINED__ + +typedef IEnumSTATDATA *LPENUMSTATDATA; +typedef enum tagADVF { + ADVF_NODATA = 1, + ADVF_PRIMEFIRST = 2, + ADVF_ONLYONCE = 4, + ADVF_DATAONSTOP = 64, + ADVFCACHE_NOHANDLER = 8, + ADVFCACHE_FORCEBUILTIN = 16, + ADVFCACHE_ONSAVE = 32 +} ADVF; +typedef struct tagSTATDATA { + FORMATETC formatetc; + DWORD advf; + IAdviseSink *pAdvSink; + DWORD dwConnection; +} STATDATA; +typedef struct tagSTATDATA *LPSTATDATA; +DEFINE_GUID(IID_IEnumSTATDATA, 0x00000105, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IEnumSTATDATA : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Next( + ULONG celt, + STATDATA *rgelt, + ULONG *pceltFetched) = 0; + + virtual HRESULT STDMETHODCALLTYPE Skip( + ULONG celt) = 0; + + virtual HRESULT STDMETHODCALLTYPE Reset( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Clone( + IEnumSTATDATA **ppenum) = 0; + +}; +#else +typedef struct IEnumSTATDATAVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IEnumSTATDATA* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IEnumSTATDATA* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IEnumSTATDATA* This); + + /*** IEnumSTATDATA methods ***/ + HRESULT (STDMETHODCALLTYPE *Next)( + IEnumSTATDATA* This, + ULONG celt, + STATDATA *rgelt, + ULONG *pceltFetched); + + HRESULT (STDMETHODCALLTYPE *Skip)( + IEnumSTATDATA* This, + ULONG celt); + + HRESULT (STDMETHODCALLTYPE *Reset)( + IEnumSTATDATA* This); + + HRESULT (STDMETHODCALLTYPE *Clone)( + IEnumSTATDATA* This, + IEnumSTATDATA **ppenum); + + END_INTERFACE +} IEnumSTATDATAVtbl; +interface IEnumSTATDATA { + CONST_VTBL IEnumSTATDATAVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IEnumSTATDATA_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IEnumSTATDATA_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IEnumSTATDATA_Release(This) (This)->lpVtbl->Release(This) +/*** IEnumSTATDATA methods ***/ +#define IEnumSTATDATA_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) +#define IEnumSTATDATA_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IEnumSTATDATA_Reset(This) (This)->lpVtbl->Reset(This) +#define IEnumSTATDATA_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IEnumSTATDATA_RemoteNext_Proxy( + IEnumSTATDATA* This, + ULONG celt, + STATDATA *rgelt, + ULONG *pceltFetched); +void __RPC_STUB IEnumSTATDATA_RemoteNext_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumSTATDATA_Skip_Proxy( + IEnumSTATDATA* This, + ULONG celt); +void __RPC_STUB IEnumSTATDATA_Skip_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumSTATDATA_Reset_Proxy( + IEnumSTATDATA* This); +void __RPC_STUB IEnumSTATDATA_Reset_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumSTATDATA_Clone_Proxy( + IEnumSTATDATA* This, + IEnumSTATDATA **ppenum); +void __RPC_STUB IEnumSTATDATA_Clone_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IEnumSTATDATA_Next_Proxy( + IEnumSTATDATA* This, + ULONG celt, + STATDATA *rgelt, + ULONG *pceltFetched); +HRESULT __RPC_STUB IEnumSTATDATA_Next_Stub( + IEnumSTATDATA* This, + ULONG celt, + STATDATA *rgelt, + ULONG *pceltFetched); + +#endif /* __IEnumSTATDATA_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IAdviseSink interface + */ +#ifndef __IAdviseSink_INTERFACE_DEFINED__ +#define __IAdviseSink_INTERFACE_DEFINED__ + +typedef IAdviseSink *LPADVISESINK; +typedef enum tagTYMED { + TYMED_HGLOBAL = 1, + TYMED_FILE = 2, + TYMED_ISTREAM = 4, + TYMED_ISTORAGE = 8, + TYMED_GDI = 16, + TYMED_MFPICT = 32, + TYMED_ENHMF = 64, + TYMED_NULL = 0 +} TYMED; +typedef struct tagRemSTGMEDIUM { + DWORD tymed; + DWORD dwHandleType; + ULONG pData; + ULONG pUnkForRelease; + ULONG cbData; + byte data[1]; +} RemSTGMEDIUM; +typedef struct tagSTGMEDIUM { + DWORD tymed; + union { + HBITMAP hBitmap; + HMETAFILEPICT hMetaFilePict; + HENHMETAFILE hEnhMetaFile; + HGLOBAL hGlobal; + LPOLESTR lpszFileName; + IStream *pstm; + IStorage *pstg; + } DUMMYUNIONNAME; + IUnknown *pUnkForRelease; +} uSTGMEDIUM; +typedef struct _GDI_OBJECT { + DWORD ObjectType; + union { + wireHBITMAP hBitmap; + wireHPALETTE hPalette; + wireHGLOBAL hGeneric; + } u; +} GDI_OBJECT; +typedef struct _userSTGMEDIUM { + struct { + DWORD tymed; + union { + wireHMETAFILEPICT hMetaFilePict; + wireHENHMETAFILE hHEnhMetaFile; + GDI_OBJECT *hGdiHandle; + wireHGLOBAL hGlobal; + LPOLESTR lpszFileName; + BYTE_BLOB *pstm; + BYTE_BLOB *pstg; + } u; + } DUMMYUNIONNAME; + IUnknown *pUnkForRelease; +} userSTGMEDIUM; +typedef userSTGMEDIUM *wireSTGMEDIUM; +typedef uSTGMEDIUM STGMEDIUM; +typedef userSTGMEDIUM *wireASYNC_STGMEDIUM; +typedef STGMEDIUM ASYNC_STGMEDIUM; +typedef STGMEDIUM *LPSTGMEDIUM; +typedef struct _userFLAG_STGMEDIUM { + LONG ContextFlags; + LONG fPassOwnership; + userSTGMEDIUM Stgmed; +} userFLAG_STGMEDIUM; +typedef userFLAG_STGMEDIUM *wireFLAG_STGMEDIUM; +typedef struct _FLAG_STGMEDIUM { + LONG ContextFlags; + LONG fPassOwnership; + STGMEDIUM Stgmed; +} FLAG_STGMEDIUM; +DEFINE_GUID(IID_IAdviseSink, 0x0000010f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IAdviseSink : public IUnknown +{ + virtual void STDMETHODCALLTYPE OnDataChange( + FORMATETC *pFormatetc, + STGMEDIUM *pStgmed) = 0; + + virtual void STDMETHODCALLTYPE OnViewChange( + DWORD dwAspect, + LONG lindex) = 0; + + virtual void STDMETHODCALLTYPE OnRename( + IMoniker *pmk) = 0; + + virtual void STDMETHODCALLTYPE OnSave( + ) = 0; + + virtual void STDMETHODCALLTYPE OnClose( + ) = 0; + +}; +#else +typedef struct IAdviseSinkVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IAdviseSink* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IAdviseSink* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IAdviseSink* This); + + /*** IAdviseSink methods ***/ + void (STDMETHODCALLTYPE *OnDataChange)( + IAdviseSink* This, + FORMATETC *pFormatetc, + STGMEDIUM *pStgmed); + + void (STDMETHODCALLTYPE *OnViewChange)( + IAdviseSink* This, + DWORD dwAspect, + LONG lindex); + + void (STDMETHODCALLTYPE *OnRename)( + IAdviseSink* This, + IMoniker *pmk); + + void (STDMETHODCALLTYPE *OnSave)( + IAdviseSink* This); + + void (STDMETHODCALLTYPE *OnClose)( + IAdviseSink* This); + + END_INTERFACE +} IAdviseSinkVtbl; +interface IAdviseSink { + CONST_VTBL IAdviseSinkVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IAdviseSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IAdviseSink_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IAdviseSink_Release(This) (This)->lpVtbl->Release(This) +/*** IAdviseSink methods ***/ +#define IAdviseSink_OnDataChange(This,pFormatetc,pStgmed) (This)->lpVtbl->OnDataChange(This,pFormatetc,pStgmed) +#define IAdviseSink_OnViewChange(This,dwAspect,lindex) (This)->lpVtbl->OnViewChange(This,dwAspect,lindex) +#define IAdviseSink_OnRename(This,pmk) (This)->lpVtbl->OnRename(This,pmk) +#define IAdviseSink_OnSave(This) (This)->lpVtbl->OnSave(This) +#define IAdviseSink_OnClose(This) (This)->lpVtbl->OnClose(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnDataChange_Proxy( + IAdviseSink* This, + FORMATETC *pFormatetc, + ASYNC_STGMEDIUM *pStgmed); +void __RPC_STUB IAdviseSink_RemoteOnDataChange_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnViewChange_Proxy( + IAdviseSink* This, + DWORD dwAspect, + LONG lindex); +void __RPC_STUB IAdviseSink_RemoteOnViewChange_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnRename_Proxy( + IAdviseSink* This, + IMoniker *pmk); +void __RPC_STUB IAdviseSink_RemoteOnRename_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnSave_Proxy( + IAdviseSink* This); +void __RPC_STUB IAdviseSink_RemoteOnSave_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAdviseSink_RemoteOnClose_Proxy( + IAdviseSink* This); +void __RPC_STUB IAdviseSink_RemoteOnClose_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void CALLBACK IAdviseSink_OnDataChange_Proxy( + IAdviseSink* This, + FORMATETC *pFormatetc, + STGMEDIUM *pStgmed); +HRESULT __RPC_STUB IAdviseSink_OnDataChange_Stub( + IAdviseSink* This, + FORMATETC *pFormatetc, + ASYNC_STGMEDIUM *pStgmed); +void CALLBACK IAdviseSink_OnViewChange_Proxy( + IAdviseSink* This, + DWORD dwAspect, + LONG lindex); +HRESULT __RPC_STUB IAdviseSink_OnViewChange_Stub( + IAdviseSink* This, + DWORD dwAspect, + LONG lindex); +void CALLBACK IAdviseSink_OnRename_Proxy( + IAdviseSink* This, + IMoniker *pmk); +HRESULT __RPC_STUB IAdviseSink_OnRename_Stub( + IAdviseSink* This, + IMoniker *pmk); +void CALLBACK IAdviseSink_OnSave_Proxy( + IAdviseSink* This); +HRESULT __RPC_STUB IAdviseSink_OnSave_Stub( + IAdviseSink* This); +void CALLBACK IAdviseSink_OnClose_Proxy( + IAdviseSink* This); +HRESULT __RPC_STUB IAdviseSink_OnClose_Stub( + IAdviseSink* This); + +#endif /* __IAdviseSink_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IAdviseSink2 interface + */ +#ifndef __IAdviseSink2_INTERFACE_DEFINED__ +#define __IAdviseSink2_INTERFACE_DEFINED__ + +typedef IAdviseSink2 *LPADVISESINK2; +DEFINE_GUID(IID_IAdviseSink2, 0x00000125, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IAdviseSink2 : public IAdviseSink +{ + virtual void STDMETHODCALLTYPE OnLinkSrcChange( + IMoniker *pmk) = 0; + +}; +#else +typedef struct IAdviseSink2Vtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IAdviseSink2* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IAdviseSink2* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IAdviseSink2* This); + + /*** IAdviseSink methods ***/ + void (STDMETHODCALLTYPE *OnDataChange)( + IAdviseSink2* This, + FORMATETC *pFormatetc, + STGMEDIUM *pStgmed); + + void (STDMETHODCALLTYPE *OnViewChange)( + IAdviseSink2* This, + DWORD dwAspect, + LONG lindex); + + void (STDMETHODCALLTYPE *OnRename)( + IAdviseSink2* This, + IMoniker *pmk); + + void (STDMETHODCALLTYPE *OnSave)( + IAdviseSink2* This); + + void (STDMETHODCALLTYPE *OnClose)( + IAdviseSink2* This); + + /*** IAdviseSink2 methods ***/ + void (STDMETHODCALLTYPE *OnLinkSrcChange)( + IAdviseSink2* This, + IMoniker *pmk); + + END_INTERFACE +} IAdviseSink2Vtbl; +interface IAdviseSink2 { + CONST_VTBL IAdviseSink2Vtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IAdviseSink2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IAdviseSink2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IAdviseSink2_Release(This) (This)->lpVtbl->Release(This) +/*** IAdviseSink methods ***/ +#define IAdviseSink2_OnDataChange(This,pFormatetc,pStgmed) (This)->lpVtbl->OnDataChange(This,pFormatetc,pStgmed) +#define IAdviseSink2_OnViewChange(This,dwAspect,lindex) (This)->lpVtbl->OnViewChange(This,dwAspect,lindex) +#define IAdviseSink2_OnRename(This,pmk) (This)->lpVtbl->OnRename(This,pmk) +#define IAdviseSink2_OnSave(This) (This)->lpVtbl->OnSave(This) +#define IAdviseSink2_OnClose(This) (This)->lpVtbl->OnClose(This) +/*** IAdviseSink2 methods ***/ +#define IAdviseSink2_OnLinkSrcChange(This,pmk) (This)->lpVtbl->OnLinkSrcChange(This,pmk) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IAdviseSink2_RemoteOnLinkSrcChange_Proxy( + IAdviseSink2* This, + IMoniker *pmk); +void __RPC_STUB IAdviseSink2_RemoteOnLinkSrcChange_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void CALLBACK IAdviseSink2_OnLinkSrcChange_Proxy( + IAdviseSink2* This, + IMoniker *pmk); +HRESULT __RPC_STUB IAdviseSink2_OnLinkSrcChange_Stub( + IAdviseSink2* This, + IMoniker *pmk); + +#endif /* __IAdviseSink2_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IDataObject interface + */ +#ifndef __IDataObject_INTERFACE_DEFINED__ +#define __IDataObject_INTERFACE_DEFINED__ + +typedef IDataObject *LPDATAOBJECT; +typedef enum tagDATADIR { + DATADIR_GET = 1, + DATADIR_SET = 2 +} DATADIR; +DEFINE_GUID(IID_IDataObject, 0x0000010e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IDataObject : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetData( + FORMATETC *pformatetcIn, + STGMEDIUM *pmedium) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetDataHere( + FORMATETC *pformatetc, + STGMEDIUM *pmedium) = 0; + + virtual HRESULT STDMETHODCALLTYPE QueryGetData( + FORMATETC *pformatetc) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCanonicalFormatEtc( + FORMATETC *pformatectIn, + FORMATETC *pformatetcOut) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetData( + FORMATETC *pformatetc, + STGMEDIUM *pmedium, + BOOL fRelease) = 0; + + virtual HRESULT STDMETHODCALLTYPE EnumFormatEtc( + DWORD dwDirection, + IEnumFORMATETC **ppenumFormatEtc) = 0; + + virtual HRESULT STDMETHODCALLTYPE DAdvise( + FORMATETC *pformatetc, + DWORD advf, + IAdviseSink *pAdvSink, + DWORD *pdwConnection) = 0; + + virtual HRESULT STDMETHODCALLTYPE DUnadvise( + DWORD dwConnection) = 0; + + virtual HRESULT STDMETHODCALLTYPE EnumDAdvise( + IEnumSTATDATA **ppenumAdvise) = 0; + +}; +#else +typedef struct IDataObjectVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IDataObject* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IDataObject* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IDataObject* This); + + /*** IDataObject methods ***/ + HRESULT (STDMETHODCALLTYPE *GetData)( + IDataObject* This, + FORMATETC *pformatetcIn, + STGMEDIUM *pmedium); + + HRESULT (STDMETHODCALLTYPE *GetDataHere)( + IDataObject* This, + FORMATETC *pformatetc, + STGMEDIUM *pmedium); + + HRESULT (STDMETHODCALLTYPE *QueryGetData)( + IDataObject* This, + FORMATETC *pformatetc); + + HRESULT (STDMETHODCALLTYPE *GetCanonicalFormatEtc)( + IDataObject* This, + FORMATETC *pformatectIn, + FORMATETC *pformatetcOut); + + HRESULT (STDMETHODCALLTYPE *SetData)( + IDataObject* This, + FORMATETC *pformatetc, + STGMEDIUM *pmedium, + BOOL fRelease); + + HRESULT (STDMETHODCALLTYPE *EnumFormatEtc)( + IDataObject* This, + DWORD dwDirection, + IEnumFORMATETC **ppenumFormatEtc); + + HRESULT (STDMETHODCALLTYPE *DAdvise)( + IDataObject* This, + FORMATETC *pformatetc, + DWORD advf, + IAdviseSink *pAdvSink, + DWORD *pdwConnection); + + HRESULT (STDMETHODCALLTYPE *DUnadvise)( + IDataObject* This, + DWORD dwConnection); + + HRESULT (STDMETHODCALLTYPE *EnumDAdvise)( + IDataObject* This, + IEnumSTATDATA **ppenumAdvise); + + END_INTERFACE +} IDataObjectVtbl; +interface IDataObject { + CONST_VTBL IDataObjectVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IDataObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IDataObject_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IDataObject_Release(This) (This)->lpVtbl->Release(This) +/*** IDataObject methods ***/ +#define IDataObject_GetData(This,pformatetcIn,pmedium) (This)->lpVtbl->GetData(This,pformatetcIn,pmedium) +#define IDataObject_GetDataHere(This,pformatetc,pmedium) (This)->lpVtbl->GetDataHere(This,pformatetc,pmedium) +#define IDataObject_QueryGetData(This,pformatetc) (This)->lpVtbl->QueryGetData(This,pformatetc) +#define IDataObject_GetCanonicalFormatEtc(This,pformatectIn,pformatetcOut) (This)->lpVtbl->GetCanonicalFormatEtc(This,pformatectIn,pformatetcOut) +#define IDataObject_SetData(This,pformatetc,pmedium,fRelease) (This)->lpVtbl->SetData(This,pformatetc,pmedium,fRelease) +#define IDataObject_EnumFormatEtc(This,dwDirection,ppenumFormatEtc) (This)->lpVtbl->EnumFormatEtc(This,dwDirection,ppenumFormatEtc) +#define IDataObject_DAdvise(This,pformatetc,advf,pAdvSink,pdwConnection) (This)->lpVtbl->DAdvise(This,pformatetc,advf,pAdvSink,pdwConnection) +#define IDataObject_DUnadvise(This,dwConnection) (This)->lpVtbl->DUnadvise(This,dwConnection) +#define IDataObject_EnumDAdvise(This,ppenumAdvise) (This)->lpVtbl->EnumDAdvise(This,ppenumAdvise) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IDataObject_RemoteGetData_Proxy( + IDataObject* This, + FORMATETC *pformatetcIn, + STGMEDIUM *pRemoteMedium); +void __RPC_STUB IDataObject_RemoteGetData_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataObject_RemoteGetDataHere_Proxy( + IDataObject* This, + FORMATETC *pformatetc, + STGMEDIUM *pRemoteMedium); +void __RPC_STUB IDataObject_RemoteGetDataHere_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataObject_QueryGetData_Proxy( + IDataObject* This, + FORMATETC *pformatetc); +void __RPC_STUB IDataObject_QueryGetData_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataObject_GetCanonicalFormatEtc_Proxy( + IDataObject* This, + FORMATETC *pformatectIn, + FORMATETC *pformatetcOut); +void __RPC_STUB IDataObject_GetCanonicalFormatEtc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataObject_RemoteSetData_Proxy( + IDataObject* This, + FORMATETC *pformatetc, + FLAG_STGMEDIUM *pmedium, + BOOL fRelease); +void __RPC_STUB IDataObject_RemoteSetData_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataObject_EnumFormatEtc_Proxy( + IDataObject* This, + DWORD dwDirection, + IEnumFORMATETC **ppenumFormatEtc); +void __RPC_STUB IDataObject_EnumFormatEtc_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataObject_DAdvise_Proxy( + IDataObject* This, + FORMATETC *pformatetc, + DWORD advf, + IAdviseSink *pAdvSink, + DWORD *pdwConnection); +void __RPC_STUB IDataObject_DAdvise_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataObject_DUnadvise_Proxy( + IDataObject* This, + DWORD dwConnection); +void __RPC_STUB IDataObject_DUnadvise_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataObject_EnumDAdvise_Proxy( + IDataObject* This, + IEnumSTATDATA **ppenumAdvise); +void __RPC_STUB IDataObject_EnumDAdvise_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT CALLBACK IDataObject_GetData_Proxy( + IDataObject* This, + FORMATETC *pformatetcIn, + STGMEDIUM *pmedium); +HRESULT __RPC_STUB IDataObject_GetData_Stub( + IDataObject* This, + FORMATETC *pformatetcIn, + STGMEDIUM *pRemoteMedium); +HRESULT CALLBACK IDataObject_GetDataHere_Proxy( + IDataObject* This, + FORMATETC *pformatetc, + STGMEDIUM *pmedium); +HRESULT __RPC_STUB IDataObject_GetDataHere_Stub( + IDataObject* This, + FORMATETC *pformatetc, + STGMEDIUM *pRemoteMedium); +HRESULT CALLBACK IDataObject_SetData_Proxy( + IDataObject* This, + FORMATETC *pformatetc, + STGMEDIUM *pmedium, + BOOL fRelease); +HRESULT __RPC_STUB IDataObject_SetData_Stub( + IDataObject* This, + FORMATETC *pformatetc, + FLAG_STGMEDIUM *pmedium, + BOOL fRelease); + +#endif /* __IDataObject_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IDataAdviseHolder interface + */ +#ifndef __IDataAdviseHolder_INTERFACE_DEFINED__ +#define __IDataAdviseHolder_INTERFACE_DEFINED__ + +typedef IDataAdviseHolder *LPDATAADVISEHOLDER; +DEFINE_GUID(IID_IDataAdviseHolder, 0x00000110, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IDataAdviseHolder : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Advise( + IDataObject *pDataObject, + FORMATETC *pFetc, + DWORD advf, + IAdviseSink *pAdvise, + DWORD *pdwConnection) = 0; + + virtual HRESULT STDMETHODCALLTYPE Unadvise( + DWORD dwConnection) = 0; + + virtual HRESULT STDMETHODCALLTYPE EnumAdvise( + IEnumSTATDATA **ppenumAdvise) = 0; + + virtual HRESULT STDMETHODCALLTYPE SendOnDataChange( + IDataObject *pDataObject, + DWORD dwReserved, + DWORD advf) = 0; + +}; +#else +typedef struct IDataAdviseHolderVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IDataAdviseHolder* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IDataAdviseHolder* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IDataAdviseHolder* This); + + /*** IDataAdviseHolder methods ***/ + HRESULT (STDMETHODCALLTYPE *Advise)( + IDataAdviseHolder* This, + IDataObject *pDataObject, + FORMATETC *pFetc, + DWORD advf, + IAdviseSink *pAdvise, + DWORD *pdwConnection); + + HRESULT (STDMETHODCALLTYPE *Unadvise)( + IDataAdviseHolder* This, + DWORD dwConnection); + + HRESULT (STDMETHODCALLTYPE *EnumAdvise)( + IDataAdviseHolder* This, + IEnumSTATDATA **ppenumAdvise); + + HRESULT (STDMETHODCALLTYPE *SendOnDataChange)( + IDataAdviseHolder* This, + IDataObject *pDataObject, + DWORD dwReserved, + DWORD advf); + + END_INTERFACE +} IDataAdviseHolderVtbl; +interface IDataAdviseHolder { + CONST_VTBL IDataAdviseHolderVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IDataAdviseHolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IDataAdviseHolder_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IDataAdviseHolder_Release(This) (This)->lpVtbl->Release(This) +/*** IDataAdviseHolder methods ***/ +#define IDataAdviseHolder_Advise(This,pDataObject,pFetc,advf,pAdvise,pdwConnection) (This)->lpVtbl->Advise(This,pDataObject,pFetc,advf,pAdvise,pdwConnection) +#define IDataAdviseHolder_Unadvise(This,dwConnection) (This)->lpVtbl->Unadvise(This,dwConnection) +#define IDataAdviseHolder_EnumAdvise(This,ppenumAdvise) (This)->lpVtbl->EnumAdvise(This,ppenumAdvise) +#define IDataAdviseHolder_SendOnDataChange(This,pDataObject,dwReserved,advf) (This)->lpVtbl->SendOnDataChange(This,pDataObject,dwReserved,advf) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IDataAdviseHolder_Advise_Proxy( + IDataAdviseHolder* This, + IDataObject *pDataObject, + FORMATETC *pFetc, + DWORD advf, + IAdviseSink *pAdvise, + DWORD *pdwConnection); +void __RPC_STUB IDataAdviseHolder_Advise_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataAdviseHolder_Unadvise_Proxy( + IDataAdviseHolder* This, + DWORD dwConnection); +void __RPC_STUB IDataAdviseHolder_Unadvise_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataAdviseHolder_EnumAdvise_Proxy( + IDataAdviseHolder* This, + IEnumSTATDATA **ppenumAdvise); +void __RPC_STUB IDataAdviseHolder_EnumAdvise_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDataAdviseHolder_SendOnDataChange_Proxy( + IDataAdviseHolder* This, + IDataObject *pDataObject, + DWORD dwReserved, + DWORD advf); +void __RPC_STUB IDataAdviseHolder_SendOnDataChange_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IDataAdviseHolder_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IMessageFilter interface + */ +#ifndef __IMessageFilter_INTERFACE_DEFINED__ +#define __IMessageFilter_INTERFACE_DEFINED__ + +typedef IMessageFilter *LPMESSAGEFILTER; +typedef enum tagCALLTYPE { + CALLTYPE_TOPLEVEL = 1, + CALLTYPE_NESTED = 2, + CALLTYPE_ASYNC = 3, + CALLTYPE_TOPLEVEL_CALLPENDING = 4, + CALLTYPE_ASYNC_CALLPENDING = 5 +} CALLTYPE; +typedef enum tagSERVERCALL { + SERVERCALL_ISHANDLED = 0, + SERVERCALL_REJECTED = 1, + SERVERCALL_RETRYLATER = 2 +} SERVERCALL; +typedef enum tagPENDINGTYPE { + PENDINGTYPE_TOPLEVEL = 1, + PENDINGTYPE_NESTED = 2 +} PENDINGTYPE; +typedef enum tagPENDINGMSG { + PENDINGMSG_CANCELCALL = 0, + PENDINGMSG_WAITNOPROCESS = 1, + PENDINGMSG_WAITDEFPROCESS = 2 +} PENDINGMSG; +typedef struct tagINTERFACEINFO { + IUnknown *pUnk; + IID iid; + WORD wMethod; +} INTERFACEINFO; +typedef struct tagINTERFACEINFO *LPINTERFACEINFO; +DEFINE_GUID(IID_IMessageFilter, 0x00000016, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IMessageFilter : public IUnknown +{ + virtual DWORD STDMETHODCALLTYPE HandleInComingCall( + DWORD dwCallType, + HTASK htaskCaller, + DWORD dwTickCount, + LPINTERFACEINFO lpInterfaceInfo) = 0; + + virtual DWORD STDMETHODCALLTYPE RetryRejectedCall( + HTASK htaskCallee, + DWORD dwTickCount, + DWORD dwRejectType) = 0; + + virtual DWORD STDMETHODCALLTYPE MessagePending( + HTASK htaskCallee, + DWORD dwTickCount, + DWORD dwPendingType) = 0; + +}; +#else +typedef struct IMessageFilterVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IMessageFilter* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IMessageFilter* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IMessageFilter* This); + + /*** IMessageFilter methods ***/ + DWORD (STDMETHODCALLTYPE *HandleInComingCall)( + IMessageFilter* This, + DWORD dwCallType, + HTASK htaskCaller, + DWORD dwTickCount, + LPINTERFACEINFO lpInterfaceInfo); + + DWORD (STDMETHODCALLTYPE *RetryRejectedCall)( + IMessageFilter* This, + HTASK htaskCallee, + DWORD dwTickCount, + DWORD dwRejectType); + + DWORD (STDMETHODCALLTYPE *MessagePending)( + IMessageFilter* This, + HTASK htaskCallee, + DWORD dwTickCount, + DWORD dwPendingType); + + END_INTERFACE +} IMessageFilterVtbl; +interface IMessageFilter { + CONST_VTBL IMessageFilterVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IMessageFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IMessageFilter_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IMessageFilter_Release(This) (This)->lpVtbl->Release(This) +/*** IMessageFilter methods ***/ +#define IMessageFilter_HandleInComingCall(This,dwCallType,htaskCaller,dwTickCount,lpInterfaceInfo) (This)->lpVtbl->HandleInComingCall(This,dwCallType,htaskCaller,dwTickCount,lpInterfaceInfo) +#define IMessageFilter_RetryRejectedCall(This,htaskCallee,dwTickCount,dwRejectType) (This)->lpVtbl->RetryRejectedCall(This,htaskCallee,dwTickCount,dwRejectType) +#define IMessageFilter_MessagePending(This,htaskCallee,dwTickCount,dwPendingType) (This)->lpVtbl->MessagePending(This,htaskCallee,dwTickCount,dwPendingType) +#endif + +#endif + +DWORD STDMETHODCALLTYPE IMessageFilter_HandleInComingCall_Proxy( + IMessageFilter* This, + DWORD dwCallType, + HTASK htaskCaller, + DWORD dwTickCount, + LPINTERFACEINFO lpInterfaceInfo); +void __RPC_STUB IMessageFilter_HandleInComingCall_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +DWORD STDMETHODCALLTYPE IMessageFilter_RetryRejectedCall_Proxy( + IMessageFilter* This, + HTASK htaskCallee, + DWORD dwTickCount, + DWORD dwRejectType); +void __RPC_STUB IMessageFilter_RetryRejectedCall_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +DWORD STDMETHODCALLTYPE IMessageFilter_MessagePending_Proxy( + IMessageFilter* This, + HTASK htaskCallee, + DWORD dwTickCount, + DWORD dwPendingType); +void __RPC_STUB IMessageFilter_MessagePending_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IMessageFilter_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IRpcChannelBuffer interface + */ +#ifndef __IRpcChannelBuffer_INTERFACE_DEFINED__ +#define __IRpcChannelBuffer_INTERFACE_DEFINED__ + +typedef IRpcChannelBuffer *LPRPCCHANNELBUFFER; +typedef ULONG RPCOLEDATAREP; +typedef struct tagRPCOLEMESSAGE { + void *reserved1; + RPCOLEDATAREP dataRepresentation; + void *Buffer; + ULONG cbBuffer; + ULONG iMethod; + void * reserved2[5]; + ULONG rpcFlags; +} RPCOLEMESSAGE; +typedef RPCOLEMESSAGE *PRPCOLEMESSAGE; +DEFINE_GUID(IID_IRpcChannelBuffer, 0xd5f56b60, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRpcChannelBuffer : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetBuffer( + RPCOLEMESSAGE *pMessage, + REFIID riid) = 0; + + virtual HRESULT STDMETHODCALLTYPE SendReceive( + RPCOLEMESSAGE *pMessage, + ULONG *pStatus) = 0; + + virtual HRESULT STDMETHODCALLTYPE FreeBuffer( + RPCOLEMESSAGE *pMessage) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetDestCtx( + DWORD *pdwDestContext, + void **ppvDestContext) = 0; + + virtual HRESULT STDMETHODCALLTYPE IsConnected( + ) = 0; + +}; +#else +typedef struct IRpcChannelBufferVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRpcChannelBuffer* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRpcChannelBuffer* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRpcChannelBuffer* This); + + /*** IRpcChannelBuffer methods ***/ + HRESULT (STDMETHODCALLTYPE *GetBuffer)( + IRpcChannelBuffer* This, + RPCOLEMESSAGE *pMessage, + REFIID riid); + + HRESULT (STDMETHODCALLTYPE *SendReceive)( + IRpcChannelBuffer* This, + RPCOLEMESSAGE *pMessage, + ULONG *pStatus); + + HRESULT (STDMETHODCALLTYPE *FreeBuffer)( + IRpcChannelBuffer* This, + RPCOLEMESSAGE *pMessage); + + HRESULT (STDMETHODCALLTYPE *GetDestCtx)( + IRpcChannelBuffer* This, + DWORD *pdwDestContext, + void **ppvDestContext); + + HRESULT (STDMETHODCALLTYPE *IsConnected)( + IRpcChannelBuffer* This); + + END_INTERFACE +} IRpcChannelBufferVtbl; +interface IRpcChannelBuffer { + CONST_VTBL IRpcChannelBufferVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRpcChannelBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRpcChannelBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRpcChannelBuffer_Release(This) (This)->lpVtbl->Release(This) +/*** IRpcChannelBuffer methods ***/ +#define IRpcChannelBuffer_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid) +#define IRpcChannelBuffer_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus) +#define IRpcChannelBuffer_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage) +#define IRpcChannelBuffer_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext) +#define IRpcChannelBuffer_IsConnected(This) (This)->lpVtbl->IsConnected(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_GetBuffer_Proxy( + IRpcChannelBuffer* This, + RPCOLEMESSAGE *pMessage, + REFIID riid); +void __RPC_STUB IRpcChannelBuffer_GetBuffer_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_SendReceive_Proxy( + IRpcChannelBuffer* This, + RPCOLEMESSAGE *pMessage, + ULONG *pStatus); +void __RPC_STUB IRpcChannelBuffer_SendReceive_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_FreeBuffer_Proxy( + IRpcChannelBuffer* This, + RPCOLEMESSAGE *pMessage); +void __RPC_STUB IRpcChannelBuffer_FreeBuffer_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_GetDestCtx_Proxy( + IRpcChannelBuffer* This, + DWORD *pdwDestContext, + void **ppvDestContext); +void __RPC_STUB IRpcChannelBuffer_GetDestCtx_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer_IsConnected_Proxy( + IRpcChannelBuffer* This); +void __RPC_STUB IRpcChannelBuffer_IsConnected_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRpcChannelBuffer_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IRpcChannelBuffer2 interface + */ +#ifndef __IRpcChannelBuffer2_INTERFACE_DEFINED__ +#define __IRpcChannelBuffer2_INTERFACE_DEFINED__ + +typedef IRpcChannelBuffer2 *LPRPCCHANNELBUFFER2; +DEFINE_GUID(IID_IRpcChannelBuffer2, 0x594f31d0, 0x7f19, 0x11d0, 0xb1,0x94, 0x00,0xa0,0xc9,0x0d,0xc8,0xbf); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRpcChannelBuffer2 : public IRpcChannelBuffer +{ + virtual HRESULT STDMETHODCALLTYPE GetProtocolVersion( + DWORD *pdwVersion) = 0; + +}; +#else +typedef struct IRpcChannelBuffer2Vtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRpcChannelBuffer2* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRpcChannelBuffer2* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRpcChannelBuffer2* This); + + /*** IRpcChannelBuffer methods ***/ + HRESULT (STDMETHODCALLTYPE *GetBuffer)( + IRpcChannelBuffer2* This, + RPCOLEMESSAGE *pMessage, + REFIID riid); + + HRESULT (STDMETHODCALLTYPE *SendReceive)( + IRpcChannelBuffer2* This, + RPCOLEMESSAGE *pMessage, + ULONG *pStatus); + + HRESULT (STDMETHODCALLTYPE *FreeBuffer)( + IRpcChannelBuffer2* This, + RPCOLEMESSAGE *pMessage); + + HRESULT (STDMETHODCALLTYPE *GetDestCtx)( + IRpcChannelBuffer2* This, + DWORD *pdwDestContext, + void **ppvDestContext); + + HRESULT (STDMETHODCALLTYPE *IsConnected)( + IRpcChannelBuffer2* This); + + /*** IRpcChannelBuffer2 methods ***/ + HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)( + IRpcChannelBuffer2* This, + DWORD *pdwVersion); + + END_INTERFACE +} IRpcChannelBuffer2Vtbl; +interface IRpcChannelBuffer2 { + CONST_VTBL IRpcChannelBuffer2Vtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRpcChannelBuffer2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRpcChannelBuffer2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRpcChannelBuffer2_Release(This) (This)->lpVtbl->Release(This) +/*** IRpcChannelBuffer methods ***/ +#define IRpcChannelBuffer2_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid) +#define IRpcChannelBuffer2_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus) +#define IRpcChannelBuffer2_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage) +#define IRpcChannelBuffer2_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext) +#define IRpcChannelBuffer2_IsConnected(This) (This)->lpVtbl->IsConnected(This) +/*** IRpcChannelBuffer2 methods ***/ +#define IRpcChannelBuffer2_GetProtocolVersion(This,pdwVersion) (This)->lpVtbl->GetProtocolVersion(This,pdwVersion) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer2_GetProtocolVersion_Proxy( + IRpcChannelBuffer2* This, + DWORD *pdwVersion); +void __RPC_STUB IRpcChannelBuffer2_GetProtocolVersion_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRpcChannelBuffer2_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IRpcChannelBuffer3 interface + */ +#ifndef __IRpcChannelBuffer3_INTERFACE_DEFINED__ +#define __IRpcChannelBuffer3_INTERFACE_DEFINED__ + +typedef IRpcChannelBuffer3 *LPRPCCHANNELBUFFER3; +DEFINE_GUID(IID_IRpcChannelBuffer3, 0x25b15600, 0x0115, 0x11d0, 0xbf,0x0d, 0x00,0xaa,0x00,0xb8,0xdf,0xd2); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRpcChannelBuffer3 : public IRpcChannelBuffer2 +{ + virtual HRESULT STDMETHODCALLTYPE Send( + RPCOLEMESSAGE *pMsg, + ULONG *pulStatus) = 0; + + virtual HRESULT STDMETHODCALLTYPE Receive( + RPCOLEMESSAGE *pMsg, + ULONG ulSize, + ULONG *pulStatus) = 0; + + virtual HRESULT STDMETHODCALLTYPE Cancel( + RPCOLEMESSAGE *pMsg) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCallContext( + RPCOLEMESSAGE *pMsg, + REFIID riid, + void **pInterface) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetDestCtxEx( + RPCOLEMESSAGE *pMsg, + DWORD *pdwDestContext, + void **ppvDestContext) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetState( + RPCOLEMESSAGE *pMsg, + DWORD *pState) = 0; + + virtual HRESULT STDMETHODCALLTYPE RegisterAsync( + RPCOLEMESSAGE *pMsg, + IAsyncManager *pAsyncMgr) = 0; + +}; +#else +typedef struct IRpcChannelBuffer3Vtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRpcChannelBuffer3* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRpcChannelBuffer3* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRpcChannelBuffer3* This); + + /*** IRpcChannelBuffer methods ***/ + HRESULT (STDMETHODCALLTYPE *GetBuffer)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMessage, + REFIID riid); + + HRESULT (STDMETHODCALLTYPE *SendReceive)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMessage, + ULONG *pStatus); + + HRESULT (STDMETHODCALLTYPE *FreeBuffer)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMessage); + + HRESULT (STDMETHODCALLTYPE *GetDestCtx)( + IRpcChannelBuffer3* This, + DWORD *pdwDestContext, + void **ppvDestContext); + + HRESULT (STDMETHODCALLTYPE *IsConnected)( + IRpcChannelBuffer3* This); + + /*** IRpcChannelBuffer2 methods ***/ + HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)( + IRpcChannelBuffer3* This, + DWORD *pdwVersion); + + /*** IRpcChannelBuffer3 methods ***/ + HRESULT (STDMETHODCALLTYPE *Send)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + ULONG *pulStatus); + + HRESULT (STDMETHODCALLTYPE *Receive)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + ULONG ulSize, + ULONG *pulStatus); + + HRESULT (STDMETHODCALLTYPE *Cancel)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg); + + HRESULT (STDMETHODCALLTYPE *GetCallContext)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + REFIID riid, + void **pInterface); + + HRESULT (STDMETHODCALLTYPE *GetDestCtxEx)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + DWORD *pdwDestContext, + void **ppvDestContext); + + HRESULT (STDMETHODCALLTYPE *GetState)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + DWORD *pState); + + HRESULT (STDMETHODCALLTYPE *RegisterAsync)( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + IAsyncManager *pAsyncMgr); + + END_INTERFACE +} IRpcChannelBuffer3Vtbl; +interface IRpcChannelBuffer3 { + CONST_VTBL IRpcChannelBuffer3Vtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRpcChannelBuffer3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRpcChannelBuffer3_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRpcChannelBuffer3_Release(This) (This)->lpVtbl->Release(This) +/*** IRpcChannelBuffer methods ***/ +#define IRpcChannelBuffer3_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid) +#define IRpcChannelBuffer3_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus) +#define IRpcChannelBuffer3_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage) +#define IRpcChannelBuffer3_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext) +#define IRpcChannelBuffer3_IsConnected(This) (This)->lpVtbl->IsConnected(This) +/*** IRpcChannelBuffer2 methods ***/ +#define IRpcChannelBuffer3_GetProtocolVersion(This,pdwVersion) (This)->lpVtbl->GetProtocolVersion(This,pdwVersion) +/*** IRpcChannelBuffer3 methods ***/ +#define IRpcChannelBuffer3_Send(This,pMsg,pulStatus) (This)->lpVtbl->Send(This,pMsg,pulStatus) +#define IRpcChannelBuffer3_Receive(This,pMsg,ulSize,pulStatus) (This)->lpVtbl->Receive(This,pMsg,ulSize,pulStatus) +#define IRpcChannelBuffer3_Cancel(This,pMsg) (This)->lpVtbl->Cancel(This,pMsg) +#define IRpcChannelBuffer3_GetCallContext(This,pMsg,riid,pInterface) (This)->lpVtbl->GetCallContext(This,pMsg,riid,pInterface) +#define IRpcChannelBuffer3_GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) +#define IRpcChannelBuffer3_GetState(This,pMsg,pState) (This)->lpVtbl->GetState(This,pMsg,pState) +#define IRpcChannelBuffer3_RegisterAsync(This,pMsg,pAsyncMgr) (This)->lpVtbl->RegisterAsync(This,pMsg,pAsyncMgr) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_Send_Proxy( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + ULONG *pulStatus); +void __RPC_STUB IRpcChannelBuffer3_Send_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_Receive_Proxy( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + ULONG ulSize, + ULONG *pulStatus); +void __RPC_STUB IRpcChannelBuffer3_Receive_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_Cancel_Proxy( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg); +void __RPC_STUB IRpcChannelBuffer3_Cancel_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_GetCallContext_Proxy( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + REFIID riid, + void **pInterface); +void __RPC_STUB IRpcChannelBuffer3_GetCallContext_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_GetDestCtxEx_Proxy( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + DWORD *pdwDestContext, + void **ppvDestContext); +void __RPC_STUB IRpcChannelBuffer3_GetDestCtxEx_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_GetState_Proxy( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + DWORD *pState); +void __RPC_STUB IRpcChannelBuffer3_GetState_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcChannelBuffer3_RegisterAsync_Proxy( + IRpcChannelBuffer3* This, + RPCOLEMESSAGE *pMsg, + IAsyncManager *pAsyncMgr); +void __RPC_STUB IRpcChannelBuffer3_RegisterAsync_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRpcChannelBuffer3_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IAsyncRpcChannelBuffer interface + */ +#ifndef __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__ +#define __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IAsyncRpcChannelBuffer, 0xa5029fb6, 0x3c34, 0x11d1, 0x9c,0x99, 0x00,0xc0,0x4f,0xb9,0x98,0xaa); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IAsyncRpcChannelBuffer : public IRpcChannelBuffer2 +{ + virtual HRESULT STDMETHODCALLTYPE Send( + RPCOLEMESSAGE *pMsg, + ISynchronize *pSync, + ULONG *pulStatus) = 0; + + virtual HRESULT STDMETHODCALLTYPE Receive( + RPCOLEMESSAGE *pMsg, + ULONG *pulStatus) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetDestCtxEx( + RPCOLEMESSAGE *pMsg, + DWORD *pdwDestContext, + void **ppvDestContext) = 0; + +}; +#else +typedef struct IAsyncRpcChannelBufferVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IAsyncRpcChannelBuffer* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IAsyncRpcChannelBuffer* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IAsyncRpcChannelBuffer* This); + + /*** IRpcChannelBuffer methods ***/ + HRESULT (STDMETHODCALLTYPE *GetBuffer)( + IAsyncRpcChannelBuffer* This, + RPCOLEMESSAGE *pMessage, + REFIID riid); + + HRESULT (STDMETHODCALLTYPE *SendReceive)( + IAsyncRpcChannelBuffer* This, + RPCOLEMESSAGE *pMessage, + ULONG *pStatus); + + HRESULT (STDMETHODCALLTYPE *FreeBuffer)( + IAsyncRpcChannelBuffer* This, + RPCOLEMESSAGE *pMessage); + + HRESULT (STDMETHODCALLTYPE *GetDestCtx)( + IAsyncRpcChannelBuffer* This, + DWORD *pdwDestContext, + void **ppvDestContext); + + HRESULT (STDMETHODCALLTYPE *IsConnected)( + IAsyncRpcChannelBuffer* This); + + /*** IRpcChannelBuffer2 methods ***/ + HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)( + IAsyncRpcChannelBuffer* This, + DWORD *pdwVersion); + + /*** IAsyncRpcChannelBuffer methods ***/ + HRESULT (STDMETHODCALLTYPE *Send)( + IAsyncRpcChannelBuffer* This, + RPCOLEMESSAGE *pMsg, + ISynchronize *pSync, + ULONG *pulStatus); + + HRESULT (STDMETHODCALLTYPE *Receive)( + IAsyncRpcChannelBuffer* This, + RPCOLEMESSAGE *pMsg, + ULONG *pulStatus); + + HRESULT (STDMETHODCALLTYPE *GetDestCtxEx)( + IAsyncRpcChannelBuffer* This, + RPCOLEMESSAGE *pMsg, + DWORD *pdwDestContext, + void **ppvDestContext); + + END_INTERFACE +} IAsyncRpcChannelBufferVtbl; +interface IAsyncRpcChannelBuffer { + CONST_VTBL IAsyncRpcChannelBufferVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IAsyncRpcChannelBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IAsyncRpcChannelBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IAsyncRpcChannelBuffer_Release(This) (This)->lpVtbl->Release(This) +/*** IRpcChannelBuffer methods ***/ +#define IAsyncRpcChannelBuffer_GetBuffer(This,pMessage,riid) (This)->lpVtbl->GetBuffer(This,pMessage,riid) +#define IAsyncRpcChannelBuffer_SendReceive(This,pMessage,pStatus) (This)->lpVtbl->SendReceive(This,pMessage,pStatus) +#define IAsyncRpcChannelBuffer_FreeBuffer(This,pMessage) (This)->lpVtbl->FreeBuffer(This,pMessage) +#define IAsyncRpcChannelBuffer_GetDestCtx(This,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtx(This,pdwDestContext,ppvDestContext) +#define IAsyncRpcChannelBuffer_IsConnected(This) (This)->lpVtbl->IsConnected(This) +/*** IRpcChannelBuffer2 methods ***/ +#define IAsyncRpcChannelBuffer_GetProtocolVersion(This,pdwVersion) (This)->lpVtbl->GetProtocolVersion(This,pdwVersion) +/*** IAsyncRpcChannelBuffer methods ***/ +#define IAsyncRpcChannelBuffer_Send(This,pMsg,pSync,pulStatus) (This)->lpVtbl->Send(This,pMsg,pSync,pulStatus) +#define IAsyncRpcChannelBuffer_Receive(This,pMsg,pulStatus) (This)->lpVtbl->Receive(This,pMsg,pulStatus) +#define IAsyncRpcChannelBuffer_GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) (This)->lpVtbl->GetDestCtxEx(This,pMsg,pdwDestContext,ppvDestContext) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IAsyncRpcChannelBuffer_Send_Proxy( + IAsyncRpcChannelBuffer* This, + RPCOLEMESSAGE *pMsg, + ISynchronize *pSync, + ULONG *pulStatus); +void __RPC_STUB IAsyncRpcChannelBuffer_Send_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAsyncRpcChannelBuffer_Receive_Proxy( + IAsyncRpcChannelBuffer* This, + RPCOLEMESSAGE *pMsg, + ULONG *pulStatus); +void __RPC_STUB IAsyncRpcChannelBuffer_Receive_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAsyncRpcChannelBuffer_GetDestCtxEx_Proxy( + IAsyncRpcChannelBuffer* This, + RPCOLEMESSAGE *pMsg, + DWORD *pdwDestContext, + void **ppvDestContext); +void __RPC_STUB IAsyncRpcChannelBuffer_GetDestCtxEx_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IAsyncRpcChannelBuffer_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IRpcSyntaxNegotiate interface + */ +#ifndef __IRpcSyntaxNegotiate_INTERFACE_DEFINED__ +#define __IRpcSyntaxNegotiate_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IRpcSyntaxNegotiate, 0x58a08519, 0x24c8, 0x4935, 0xb4,0x82, 0x3f,0xd8,0x23,0x33,0x3a,0x4f); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRpcSyntaxNegotiate : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE NegotiateSyntax( + RPCOLEMESSAGE *pMsg) = 0; + +}; +#else +typedef struct IRpcSyntaxNegotiateVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRpcSyntaxNegotiate* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRpcSyntaxNegotiate* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRpcSyntaxNegotiate* This); + + /*** IRpcSyntaxNegotiate methods ***/ + HRESULT (STDMETHODCALLTYPE *NegotiateSyntax)( + IRpcSyntaxNegotiate* This, + RPCOLEMESSAGE *pMsg); + + END_INTERFACE +} IRpcSyntaxNegotiateVtbl; +interface IRpcSyntaxNegotiate { + CONST_VTBL IRpcSyntaxNegotiateVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRpcSyntaxNegotiate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRpcSyntaxNegotiate_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRpcSyntaxNegotiate_Release(This) (This)->lpVtbl->Release(This) +/*** IRpcSyntaxNegotiate methods ***/ +#define IRpcSyntaxNegotiate_NegotiateSyntax(This,pMsg) (This)->lpVtbl->NegotiateSyntax(This,pMsg) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRpcSyntaxNegotiate_NegotiateSyntax_Proxy( + IRpcSyntaxNegotiate* This, + RPCOLEMESSAGE *pMsg); +void __RPC_STUB IRpcSyntaxNegotiate_NegotiateSyntax_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRpcSyntaxNegotiate_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IRpcProxyBuffer interface + */ +#ifndef __IRpcProxyBuffer_INTERFACE_DEFINED__ +#define __IRpcProxyBuffer_INTERFACE_DEFINED__ + +typedef IRpcProxyBuffer *LPRPCPROXYBUFFER; +DEFINE_GUID(IID_IRpcProxyBuffer, 0xd5f56a34, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRpcProxyBuffer : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Connect( + IRpcChannelBuffer *pRpcChannelBuffer) = 0; + + virtual void STDMETHODCALLTYPE Disconnect( + ) = 0; + +}; +#else +typedef struct IRpcProxyBufferVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRpcProxyBuffer* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRpcProxyBuffer* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRpcProxyBuffer* This); + + /*** IRpcProxyBuffer methods ***/ + HRESULT (STDMETHODCALLTYPE *Connect)( + IRpcProxyBuffer* This, + IRpcChannelBuffer *pRpcChannelBuffer); + + void (STDMETHODCALLTYPE *Disconnect)( + IRpcProxyBuffer* This); + + END_INTERFACE +} IRpcProxyBufferVtbl; +interface IRpcProxyBuffer { + CONST_VTBL IRpcProxyBufferVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRpcProxyBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRpcProxyBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRpcProxyBuffer_Release(This) (This)->lpVtbl->Release(This) +/*** IRpcProxyBuffer methods ***/ +#define IRpcProxyBuffer_Connect(This,pRpcChannelBuffer) (This)->lpVtbl->Connect(This,pRpcChannelBuffer) +#define IRpcProxyBuffer_Disconnect(This) (This)->lpVtbl->Disconnect(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRpcProxyBuffer_Connect_Proxy( + IRpcProxyBuffer* This, + IRpcChannelBuffer *pRpcChannelBuffer); +void __RPC_STUB IRpcProxyBuffer_Connect_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IRpcProxyBuffer_Disconnect_Proxy( + IRpcProxyBuffer* This); +void __RPC_STUB IRpcProxyBuffer_Disconnect_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRpcProxyBuffer_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IRpcStubBuffer interface + */ +#ifndef __IRpcStubBuffer_INTERFACE_DEFINED__ +#define __IRpcStubBuffer_INTERFACE_DEFINED__ + +typedef IRpcStubBuffer *LPRPCSTUBBUFFER; +DEFINE_GUID(IID_IRpcStubBuffer, 0xd5f56afc, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRpcStubBuffer : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Connect( + IUnknown *pUnkServer) = 0; + + virtual void STDMETHODCALLTYPE Disconnect( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Invoke( + RPCOLEMESSAGE *_prpcmsg, + IRpcChannelBuffer *_pRpcChannelBuffer) = 0; + + virtual IRpcStubBuffer * STDMETHODCALLTYPE IsIIDSupported( + REFIID riid) = 0; + + virtual ULONG STDMETHODCALLTYPE CountRefs( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE DebugServerQueryInterface( + void **ppv) = 0; + + virtual void STDMETHODCALLTYPE DebugServerRelease( + void *pv) = 0; + +}; +#else +typedef struct IRpcStubBufferVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRpcStubBuffer* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRpcStubBuffer* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRpcStubBuffer* This); + + /*** IRpcStubBuffer methods ***/ + HRESULT (STDMETHODCALLTYPE *Connect)( + IRpcStubBuffer* This, + IUnknown *pUnkServer); + + void (STDMETHODCALLTYPE *Disconnect)( + IRpcStubBuffer* This); + + HRESULT (STDMETHODCALLTYPE *Invoke)( + IRpcStubBuffer* This, + RPCOLEMESSAGE *_prpcmsg, + IRpcChannelBuffer *_pRpcChannelBuffer); + + IRpcStubBuffer * (STDMETHODCALLTYPE *IsIIDSupported)( + IRpcStubBuffer* This, + REFIID riid); + + ULONG (STDMETHODCALLTYPE *CountRefs)( + IRpcStubBuffer* This); + + HRESULT (STDMETHODCALLTYPE *DebugServerQueryInterface)( + IRpcStubBuffer* This, + void **ppv); + + void (STDMETHODCALLTYPE *DebugServerRelease)( + IRpcStubBuffer* This, + void *pv); + + END_INTERFACE +} IRpcStubBufferVtbl; +interface IRpcStubBuffer { + CONST_VTBL IRpcStubBufferVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRpcStubBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRpcStubBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRpcStubBuffer_Release(This) (This)->lpVtbl->Release(This) +/*** IRpcStubBuffer methods ***/ +#define IRpcStubBuffer_Connect(This,pUnkServer) (This)->lpVtbl->Connect(This,pUnkServer) +#define IRpcStubBuffer_Disconnect(This) (This)->lpVtbl->Disconnect(This) +#define IRpcStubBuffer_Invoke(This,_prpcmsg,_pRpcChannelBuffer) (This)->lpVtbl->Invoke(This,_prpcmsg,_pRpcChannelBuffer) +#define IRpcStubBuffer_IsIIDSupported(This,riid) (This)->lpVtbl->IsIIDSupported(This,riid) +#define IRpcStubBuffer_CountRefs(This) (This)->lpVtbl->CountRefs(This) +#define IRpcStubBuffer_DebugServerQueryInterface(This,ppv) (This)->lpVtbl->DebugServerQueryInterface(This,ppv) +#define IRpcStubBuffer_DebugServerRelease(This,pv) (This)->lpVtbl->DebugServerRelease(This,pv) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRpcStubBuffer_Connect_Proxy( + IRpcStubBuffer* This, + IUnknown *pUnkServer); +void __RPC_STUB IRpcStubBuffer_Connect_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IRpcStubBuffer_Disconnect_Proxy( + IRpcStubBuffer* This); +void __RPC_STUB IRpcStubBuffer_Disconnect_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcStubBuffer_Invoke_Proxy( + IRpcStubBuffer* This, + RPCOLEMESSAGE *_prpcmsg, + IRpcChannelBuffer *_pRpcChannelBuffer); +void __RPC_STUB IRpcStubBuffer_Invoke_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +IRpcStubBuffer * STDMETHODCALLTYPE IRpcStubBuffer_IsIIDSupported_Proxy( + IRpcStubBuffer* This, + REFIID riid); +void __RPC_STUB IRpcStubBuffer_IsIIDSupported_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +ULONG STDMETHODCALLTYPE IRpcStubBuffer_CountRefs_Proxy( + IRpcStubBuffer* This); +void __RPC_STUB IRpcStubBuffer_CountRefs_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcStubBuffer_DebugServerQueryInterface_Proxy( + IRpcStubBuffer* This, + void **ppv); +void __RPC_STUB IRpcStubBuffer_DebugServerQueryInterface_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IRpcStubBuffer_DebugServerRelease_Proxy( + IRpcStubBuffer* This, + void *pv); +void __RPC_STUB IRpcStubBuffer_DebugServerRelease_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRpcStubBuffer_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IPSFactoryBuffer interface + */ +#ifndef __IPSFactoryBuffer_INTERFACE_DEFINED__ +#define __IPSFactoryBuffer_INTERFACE_DEFINED__ + +typedef IPSFactoryBuffer *LPPSFACTORYBUFFER; +DEFINE_GUID(IID_IPSFactoryBuffer, 0xd5f569d0, 0x593b, 0x101a, 0xb5,0x69, 0x08,0x00,0x2b,0x2d,0xbf,0x7a); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IPSFactoryBuffer : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE CreateProxy( + IUnknown *pUnkOuter, + REFIID riid, + IRpcProxyBuffer **ppProxy, + void **ppv) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateStub( + REFIID riid, + IUnknown *pUnkServer, + IRpcStubBuffer **ppStub) = 0; + +}; +#else +typedef struct IPSFactoryBufferVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IPSFactoryBuffer* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IPSFactoryBuffer* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IPSFactoryBuffer* This); + + /*** IPSFactoryBuffer methods ***/ + HRESULT (STDMETHODCALLTYPE *CreateProxy)( + IPSFactoryBuffer* This, + IUnknown *pUnkOuter, + REFIID riid, + IRpcProxyBuffer **ppProxy, + void **ppv); + + HRESULT (STDMETHODCALLTYPE *CreateStub)( + IPSFactoryBuffer* This, + REFIID riid, + IUnknown *pUnkServer, + IRpcStubBuffer **ppStub); + + END_INTERFACE +} IPSFactoryBufferVtbl; +interface IPSFactoryBuffer { + CONST_VTBL IPSFactoryBufferVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IPSFactoryBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IPSFactoryBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IPSFactoryBuffer_Release(This) (This)->lpVtbl->Release(This) +/*** IPSFactoryBuffer methods ***/ +#define IPSFactoryBuffer_CreateProxy(This,pUnkOuter,riid,ppProxy,ppv) (This)->lpVtbl->CreateProxy(This,pUnkOuter,riid,ppProxy,ppv) +#define IPSFactoryBuffer_CreateStub(This,riid,pUnkServer,ppStub) (This)->lpVtbl->CreateStub(This,riid,pUnkServer,ppStub) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IPSFactoryBuffer_CreateProxy_Proxy( + IPSFactoryBuffer* This, + IUnknown *pUnkOuter, + REFIID riid, + IRpcProxyBuffer **ppProxy, + void **ppv); +void __RPC_STUB IPSFactoryBuffer_CreateProxy_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IPSFactoryBuffer_CreateStub_Proxy( + IPSFactoryBuffer* This, + REFIID riid, + IUnknown *pUnkServer, + IRpcStubBuffer **ppStub); +void __RPC_STUB IPSFactoryBuffer_CreateStub_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IPSFactoryBuffer_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IChannelHook interface + */ +#ifndef __IChannelHook_INTERFACE_DEFINED__ +#define __IChannelHook_INTERFACE_DEFINED__ + +typedef IChannelHook *LPCHANNELHOOK; +typedef struct SChannelHookCallInfo { + IID iid; + DWORD cbSize; + GUID uCausality; + DWORD dwServerPid; + DWORD iMethod; + void *pObject; +} SChannelHookCallInfo; +DEFINE_GUID(IID_IChannelHook, 0x1008c4a0, 0x7613, 0x11cf, 0x9a,0xf1, 0x00,0x20,0xaf,0x6e,0x72,0xf4); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IChannelHook : public IUnknown +{ + virtual void STDMETHODCALLTYPE ClientGetSize( + REFGUID uExtent, + REFIID riid, + ULONG *pDataSize) = 0; + + virtual void STDMETHODCALLTYPE ClientFillBuffer( + REFGUID uExtent, + REFIID riid, + ULONG *pDataSize, + void *pDataBuffer) = 0; + + virtual void STDMETHODCALLTYPE ClientNotify( + REFGUID uExtent, + REFIID riid, + ULONG cbDataSize, + void *pDataBuffer, + DWORD lDataRep, + HRESULT hrFault) = 0; + + virtual void STDMETHODCALLTYPE ServerNotify( + REFGUID uExtent, + REFIID riid, + ULONG cbDataSize, + void *pDataBuffer, + DWORD lDataRep) = 0; + + virtual void STDMETHODCALLTYPE ServerGetSize( + REFGUID uExtent, + REFIID riid, + HRESULT hrFault, + ULONG *pDataSize) = 0; + + virtual void STDMETHODCALLTYPE ServerFillBuffer( + REFGUID uExtent, + REFIID riid, + ULONG *pDataSize, + void *pDataBuffer, + HRESULT hrFault) = 0; + +}; +#else +typedef struct IChannelHookVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IChannelHook* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IChannelHook* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IChannelHook* This); + + /*** IChannelHook methods ***/ + void (STDMETHODCALLTYPE *ClientGetSize)( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG *pDataSize); + + void (STDMETHODCALLTYPE *ClientFillBuffer)( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG *pDataSize, + void *pDataBuffer); + + void (STDMETHODCALLTYPE *ClientNotify)( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG cbDataSize, + void *pDataBuffer, + DWORD lDataRep, + HRESULT hrFault); + + void (STDMETHODCALLTYPE *ServerNotify)( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG cbDataSize, + void *pDataBuffer, + DWORD lDataRep); + + void (STDMETHODCALLTYPE *ServerGetSize)( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + HRESULT hrFault, + ULONG *pDataSize); + + void (STDMETHODCALLTYPE *ServerFillBuffer)( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG *pDataSize, + void *pDataBuffer, + HRESULT hrFault); + + END_INTERFACE +} IChannelHookVtbl; +interface IChannelHook { + CONST_VTBL IChannelHookVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IChannelHook_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IChannelHook_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IChannelHook_Release(This) (This)->lpVtbl->Release(This) +/*** IChannelHook methods ***/ +#define IChannelHook_ClientGetSize(This,uExtent,riid,pDataSize) (This)->lpVtbl->ClientGetSize(This,uExtent,riid,pDataSize) +#define IChannelHook_ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer) (This)->lpVtbl->ClientFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer) +#define IChannelHook_ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault) (This)->lpVtbl->ClientNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep,hrFault) +#define IChannelHook_ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep) (This)->lpVtbl->ServerNotify(This,uExtent,riid,cbDataSize,pDataBuffer,lDataRep) +#define IChannelHook_ServerGetSize(This,uExtent,riid,hrFault,pDataSize) (This)->lpVtbl->ServerGetSize(This,uExtent,riid,hrFault,pDataSize) +#define IChannelHook_ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault) (This)->lpVtbl->ServerFillBuffer(This,uExtent,riid,pDataSize,pDataBuffer,hrFault) +#endif + +#endif + +void STDMETHODCALLTYPE IChannelHook_ClientGetSize_Proxy( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG *pDataSize); +void __RPC_STUB IChannelHook_ClientGetSize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IChannelHook_ClientFillBuffer_Proxy( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG *pDataSize, + void *pDataBuffer); +void __RPC_STUB IChannelHook_ClientFillBuffer_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IChannelHook_ClientNotify_Proxy( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG cbDataSize, + void *pDataBuffer, + DWORD lDataRep, + HRESULT hrFault); +void __RPC_STUB IChannelHook_ClientNotify_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IChannelHook_ServerNotify_Proxy( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG cbDataSize, + void *pDataBuffer, + DWORD lDataRep); +void __RPC_STUB IChannelHook_ServerNotify_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IChannelHook_ServerGetSize_Proxy( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + HRESULT hrFault, + ULONG *pDataSize); +void __RPC_STUB IChannelHook_ServerGetSize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IChannelHook_ServerFillBuffer_Proxy( + IChannelHook* This, + REFGUID uExtent, + REFIID riid, + ULONG *pDataSize, + void *pDataBuffer, + HRESULT hrFault); +void __RPC_STUB IChannelHook_ServerFillBuffer_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IChannelHook_INTERFACE_DEFINED__ */ + +extern const FMTID FMTID_SummaryInformation; + +extern const FMTID FMTID_DocSummaryInformation; + +extern const FMTID FMTID_UserDefinedProperties; + +/***************************************************************************** + * IClientSecurity interface + */ +#ifndef __IClientSecurity_INTERFACE_DEFINED__ +#define __IClientSecurity_INTERFACE_DEFINED__ + +typedef struct tagSOLE_AUTHENTICATION_SERVICE { + DWORD dwAuthnSvc; + DWORD dwAuthzSvc; + OLECHAR *pPrincipalName; + HRESULT hr; +} SOLE_AUTHENTICATION_SERVICE; +typedef SOLE_AUTHENTICATION_SERVICE *PSOLE_AUTHENTICATION_SERVICE; +typedef struct tagSOLE_AUTHENTICATION_INFO { + DWORD dwAuthnSvc; + DWORD dwAuthzSvc; + void *pAuthInfo; +} SOLE_AUTHENTICATION_INFO; +#define COLE_DEFAULT_PRINCIPAL ((OLECHAR *)-1) + +#define COLE_DEFAULT_AUTHINFO ((void *)-1) + +typedef struct tagSOLE_AUTHENTICATION_LIST { + DWORD cAuthInfo; + SOLE_AUTHENTICATION_INFO *aAuthInfo; +} SOLE_AUTHENTICATION_LIST; +typedef enum tagEOLE_AUTHENTICATION_CAPABILITIES { + EOAC_NONE = 0x0, + EOAC_MUTUAL_AUTH = 0x1, + EOAC_SECURE_REFS = 0x2, + EOAC_ACCESS_CONTROL = 0x4, + EOAC_APPID = 0x8, + EOAC_DYNAMIC = 0x10, + EOAC_STATIC_CLOAKING = 0x20, + EOAC_DYNAMIC_CLOAKING = 0x40, + EOAC_ANY_AUTHORITY = 0x80, + EOAC_MAKE_FULLSIC = 0x100, + EOAC_REQUIRE_FULLSIC = 0x200, + EOAC_AUTO_IMPERSONATE = 0x400, + EOAC_DEFAULT = 0x800, + EOAC_DISABLE_AAA = 0x1000, + EOAC_NO_CUSTOM_MARSHAL = 0x2000 +} EOLE_AUTHENTICATION_CAPABILITIES; +DEFINE_GUID(IID_IClientSecurity, 0x0000013d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IClientSecurity : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE QueryBlanket( + IUnknown *pProxy, + DWORD *pAuthnSvc, + DWORD *pAuthzSvc, + OLECHAR **pServerPrincName, + DWORD *pAuthnLevel, + DWORD *pImpLevel, + void **pAuthInfo, + DWORD *pCapabilities) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetBlanket( + IUnknown *pProxy, + DWORD AuthnSvc, + DWORD AuthzSvc, + OLECHAR *pServerPrincName, + DWORD AuthnLevel, + DWORD ImpLevel, + void *pAuthInfo, + DWORD Capabilities) = 0; + + virtual HRESULT STDMETHODCALLTYPE CopyProxy( + IUnknown *pProxy, + IUnknown **ppCopy) = 0; + +}; +#else +typedef struct IClientSecurityVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IClientSecurity* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IClientSecurity* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IClientSecurity* This); + + /*** IClientSecurity methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryBlanket)( + IClientSecurity* This, + IUnknown *pProxy, + DWORD *pAuthnSvc, + DWORD *pAuthzSvc, + OLECHAR **pServerPrincName, + DWORD *pAuthnLevel, + DWORD *pImpLevel, + void **pAuthInfo, + DWORD *pCapabilities); + + HRESULT (STDMETHODCALLTYPE *SetBlanket)( + IClientSecurity* This, + IUnknown *pProxy, + DWORD AuthnSvc, + DWORD AuthzSvc, + OLECHAR *pServerPrincName, + DWORD AuthnLevel, + DWORD ImpLevel, + void *pAuthInfo, + DWORD Capabilities); + + HRESULT (STDMETHODCALLTYPE *CopyProxy)( + IClientSecurity* This, + IUnknown *pProxy, + IUnknown **ppCopy); + + END_INTERFACE +} IClientSecurityVtbl; +interface IClientSecurity { + CONST_VTBL IClientSecurityVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IClientSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IClientSecurity_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IClientSecurity_Release(This) (This)->lpVtbl->Release(This) +/*** IClientSecurity methods ***/ +#define IClientSecurity_QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilities) (This)->lpVtbl->QueryBlanket(This,pProxy,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pAuthInfo,pCapabilities) +#define IClientSecurity_SetBlanket(This,pProxy,AuthnSvc,AuthzSvc,pServerPrincName,AuthnLevel,ImpLevel,pAuthInfo,Capabilities) (This)->lpVtbl->SetBlanket(This,pProxy,AuthnSvc,AuthzSvc,pServerPrincName,AuthnLevel,ImpLevel,pAuthInfo,Capabilities) +#define IClientSecurity_CopyProxy(This,pProxy,ppCopy) (This)->lpVtbl->CopyProxy(This,pProxy,ppCopy) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IClientSecurity_QueryBlanket_Proxy( + IClientSecurity* This, + IUnknown *pProxy, + DWORD *pAuthnSvc, + DWORD *pAuthzSvc, + OLECHAR **pServerPrincName, + DWORD *pAuthnLevel, + DWORD *pImpLevel, + void **pAuthInfo, + DWORD *pCapabilities); +void __RPC_STUB IClientSecurity_QueryBlanket_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IClientSecurity_SetBlanket_Proxy( + IClientSecurity* This, + IUnknown *pProxy, + DWORD AuthnSvc, + DWORD AuthzSvc, + OLECHAR *pServerPrincName, + DWORD AuthnLevel, + DWORD ImpLevel, + void *pAuthInfo, + DWORD Capabilities); +void __RPC_STUB IClientSecurity_SetBlanket_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IClientSecurity_CopyProxy_Proxy( + IClientSecurity* This, + IUnknown *pProxy, + IUnknown **ppCopy); +void __RPC_STUB IClientSecurity_CopyProxy_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IClientSecurity_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IServerSecurity interface + */ +#ifndef __IServerSecurity_INTERFACE_DEFINED__ +#define __IServerSecurity_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IServerSecurity, 0x0000013e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IServerSecurity : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE QueryBlanket( + DWORD *pAuthnSvc, + DWORD *pAuthzSvc, + OLECHAR **pServerPrincName, + DWORD *pAuthnLevel, + DWORD *pImpLevel, + void **pPrivs, + DWORD *pCapabilities) = 0; + + virtual HRESULT STDMETHODCALLTYPE ImpersonateClient( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE RevertToSelf( + ) = 0; + + virtual BOOL STDMETHODCALLTYPE IsImpersonating( + ) = 0; + +}; +#else +typedef struct IServerSecurityVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IServerSecurity* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IServerSecurity* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IServerSecurity* This); + + /*** IServerSecurity methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryBlanket)( + IServerSecurity* This, + DWORD *pAuthnSvc, + DWORD *pAuthzSvc, + OLECHAR **pServerPrincName, + DWORD *pAuthnLevel, + DWORD *pImpLevel, + void **pPrivs, + DWORD *pCapabilities); + + HRESULT (STDMETHODCALLTYPE *ImpersonateClient)( + IServerSecurity* This); + + HRESULT (STDMETHODCALLTYPE *RevertToSelf)( + IServerSecurity* This); + + BOOL (STDMETHODCALLTYPE *IsImpersonating)( + IServerSecurity* This); + + END_INTERFACE +} IServerSecurityVtbl; +interface IServerSecurity { + CONST_VTBL IServerSecurityVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IServerSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IServerSecurity_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IServerSecurity_Release(This) (This)->lpVtbl->Release(This) +/*** IServerSecurity methods ***/ +#define IServerSecurity_QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities) (This)->lpVtbl->QueryBlanket(This,pAuthnSvc,pAuthzSvc,pServerPrincName,pAuthnLevel,pImpLevel,pPrivs,pCapabilities) +#define IServerSecurity_ImpersonateClient(This) (This)->lpVtbl->ImpersonateClient(This) +#define IServerSecurity_RevertToSelf(This) (This)->lpVtbl->RevertToSelf(This) +#define IServerSecurity_IsImpersonating(This) (This)->lpVtbl->IsImpersonating(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IServerSecurity_QueryBlanket_Proxy( + IServerSecurity* This, + DWORD *pAuthnSvc, + DWORD *pAuthzSvc, + OLECHAR **pServerPrincName, + DWORD *pAuthnLevel, + DWORD *pImpLevel, + void **pPrivs, + DWORD *pCapabilities); +void __RPC_STUB IServerSecurity_QueryBlanket_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IServerSecurity_ImpersonateClient_Proxy( + IServerSecurity* This); +void __RPC_STUB IServerSecurity_ImpersonateClient_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IServerSecurity_RevertToSelf_Proxy( + IServerSecurity* This); +void __RPC_STUB IServerSecurity_RevertToSelf_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +BOOL STDMETHODCALLTYPE IServerSecurity_IsImpersonating_Proxy( + IServerSecurity* This); +void __RPC_STUB IServerSecurity_IsImpersonating_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IServerSecurity_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IAsyncSetup interface + */ +#ifndef __IAsyncSetup_INTERFACE_DEFINED__ +#define __IAsyncSetup_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IAsyncSetup, 0x00000024, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IAsyncSetup : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetAsyncManager( + REFIID riid, + IUnknown *pOuter, + DWORD dwFlags, + IUnknown **ppInner, + IAsyncManager **ppAsyncMgr) = 0; + +}; +#else +typedef struct IAsyncSetupVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IAsyncSetup* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IAsyncSetup* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IAsyncSetup* This); + + /*** IAsyncSetup methods ***/ + HRESULT (STDMETHODCALLTYPE *GetAsyncManager)( + IAsyncSetup* This, + REFIID riid, + IUnknown *pOuter, + DWORD dwFlags, + IUnknown **ppInner, + IAsyncManager **ppAsyncMgr); + + END_INTERFACE +} IAsyncSetupVtbl; +interface IAsyncSetup { + CONST_VTBL IAsyncSetupVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IAsyncSetup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IAsyncSetup_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IAsyncSetup_Release(This) (This)->lpVtbl->Release(This) +/*** IAsyncSetup methods ***/ +#define IAsyncSetup_GetAsyncManager(This,riid,pOuter,dwFlags,ppInner,ppAsyncMgr) (This)->lpVtbl->GetAsyncManager(This,riid,pOuter,dwFlags,ppInner,ppAsyncMgr) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IAsyncSetup_GetAsyncManager_Proxy( + IAsyncSetup* This, + REFIID riid, + IUnknown *pOuter, + DWORD dwFlags, + IUnknown **ppInner, + IAsyncManager **ppAsyncMgr); +void __RPC_STUB IAsyncSetup_GetAsyncManager_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IAsyncSetup_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IDirectWriterLock interface + */ +#ifndef __IDirectWriterLock_INTERFACE_DEFINED__ +#define __IDirectWriterLock_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IDirectWriterLock, 0x0e6d4d92, 0x6738, 0x11cf, 0x96,0x08, 0x00,0xaa,0x00,0x68,0x0d,0xb4); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IDirectWriterLock : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE WaitForWriteAccess( + DWORD dwTimeout) = 0; + + virtual HRESULT STDMETHODCALLTYPE ReleaseWriteAccess( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE HaveWriteAccess( + ) = 0; + +}; +#else +typedef struct IDirectWriterLockVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IDirectWriterLock* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IDirectWriterLock* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IDirectWriterLock* This); + + /*** IDirectWriterLock methods ***/ + HRESULT (STDMETHODCALLTYPE *WaitForWriteAccess)( + IDirectWriterLock* This, + DWORD dwTimeout); + + HRESULT (STDMETHODCALLTYPE *ReleaseWriteAccess)( + IDirectWriterLock* This); + + HRESULT (STDMETHODCALLTYPE *HaveWriteAccess)( + IDirectWriterLock* This); + + END_INTERFACE +} IDirectWriterLockVtbl; +interface IDirectWriterLock { + CONST_VTBL IDirectWriterLockVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IDirectWriterLock_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IDirectWriterLock_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IDirectWriterLock_Release(This) (This)->lpVtbl->Release(This) +/*** IDirectWriterLock methods ***/ +#define IDirectWriterLock_WaitForWriteAccess(This,dwTimeout) (This)->lpVtbl->WaitForWriteAccess(This,dwTimeout) +#define IDirectWriterLock_ReleaseWriteAccess(This) (This)->lpVtbl->ReleaseWriteAccess(This) +#define IDirectWriterLock_HaveWriteAccess(This) (This)->lpVtbl->HaveWriteAccess(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IDirectWriterLock_WaitForWriteAccess_Proxy( + IDirectWriterLock* This, + DWORD dwTimeout); +void __RPC_STUB IDirectWriterLock_WaitForWriteAccess_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDirectWriterLock_ReleaseWriteAccess_Proxy( + IDirectWriterLock* This); +void __RPC_STUB IDirectWriterLock_ReleaseWriteAccess_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IDirectWriterLock_HaveWriteAccess_Proxy( + IDirectWriterLock* This); +void __RPC_STUB IDirectWriterLock_HaveWriteAccess_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IDirectWriterLock_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ISynchronize interface + */ +#ifndef __ISynchronize_INTERFACE_DEFINED__ +#define __ISynchronize_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_ISynchronize, 0x00000030, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ISynchronize : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Wait( + DWORD dwFlags, + DWORD dwMilliseconds) = 0; + + virtual HRESULT STDMETHODCALLTYPE Signal( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Reset( + ) = 0; + +}; +#else +typedef struct ISynchronizeVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ISynchronize* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ISynchronize* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ISynchronize* This); + + /*** ISynchronize methods ***/ + HRESULT (STDMETHODCALLTYPE *Wait)( + ISynchronize* This, + DWORD dwFlags, + DWORD dwMilliseconds); + + HRESULT (STDMETHODCALLTYPE *Signal)( + ISynchronize* This); + + HRESULT (STDMETHODCALLTYPE *Reset)( + ISynchronize* This); + + END_INTERFACE +} ISynchronizeVtbl; +interface ISynchronize { + CONST_VTBL ISynchronizeVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ISynchronize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ISynchronize_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ISynchronize_Release(This) (This)->lpVtbl->Release(This) +/*** ISynchronize methods ***/ +#define ISynchronize_Wait(This,dwFlags,dwMilliseconds) (This)->lpVtbl->Wait(This,dwFlags,dwMilliseconds) +#define ISynchronize_Signal(This) (This)->lpVtbl->Signal(This) +#define ISynchronize_Reset(This) (This)->lpVtbl->Reset(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ISynchronize_Wait_Proxy( + ISynchronize* This, + DWORD dwFlags, + DWORD dwMilliseconds); +void __RPC_STUB ISynchronize_Wait_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ISynchronize_Signal_Proxy( + ISynchronize* This); +void __RPC_STUB ISynchronize_Signal_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ISynchronize_Reset_Proxy( + ISynchronize* This); +void __RPC_STUB ISynchronize_Reset_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ISynchronize_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ISynchronizeHandle interface + */ +#ifndef __ISynchronizeHandle_INTERFACE_DEFINED__ +#define __ISynchronizeHandle_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_ISynchronizeHandle, 0x00000031, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ISynchronizeHandle : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetHandle( + HANDLE *ph) = 0; + +}; +#else +typedef struct ISynchronizeHandleVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ISynchronizeHandle* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ISynchronizeHandle* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ISynchronizeHandle* This); + + /*** ISynchronizeHandle methods ***/ + HRESULT (STDMETHODCALLTYPE *GetHandle)( + ISynchronizeHandle* This, + HANDLE *ph); + + END_INTERFACE +} ISynchronizeHandleVtbl; +interface ISynchronizeHandle { + CONST_VTBL ISynchronizeHandleVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ISynchronizeHandle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ISynchronizeHandle_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ISynchronizeHandle_Release(This) (This)->lpVtbl->Release(This) +/*** ISynchronizeHandle methods ***/ +#define ISynchronizeHandle_GetHandle(This,ph) (This)->lpVtbl->GetHandle(This,ph) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ISynchronizeHandle_GetHandle_Proxy( + ISynchronizeHandle* This, + HANDLE *ph); +void __RPC_STUB ISynchronizeHandle_GetHandle_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ISynchronizeHandle_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ISynchronizeEvent interface + */ +#ifndef __ISynchronizeEvent_INTERFACE_DEFINED__ +#define __ISynchronizeEvent_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_ISynchronizeEvent, 0x00000032, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ISynchronizeEvent : public ISynchronizeHandle +{ + virtual HRESULT STDMETHODCALLTYPE SetEventHandle( + HANDLE *ph) = 0; + +}; +#else +typedef struct ISynchronizeEventVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ISynchronizeEvent* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ISynchronizeEvent* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ISynchronizeEvent* This); + + /*** ISynchronizeHandle methods ***/ + HRESULT (STDMETHODCALLTYPE *GetHandle)( + ISynchronizeEvent* This, + HANDLE *ph); + + /*** ISynchronizeEvent methods ***/ + HRESULT (STDMETHODCALLTYPE *SetEventHandle)( + ISynchronizeEvent* This, + HANDLE *ph); + + END_INTERFACE +} ISynchronizeEventVtbl; +interface ISynchronizeEvent { + CONST_VTBL ISynchronizeEventVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ISynchronizeEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ISynchronizeEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ISynchronizeEvent_Release(This) (This)->lpVtbl->Release(This) +/*** ISynchronizeHandle methods ***/ +#define ISynchronizeEvent_GetHandle(This,ph) (This)->lpVtbl->GetHandle(This,ph) +/*** ISynchronizeEvent methods ***/ +#define ISynchronizeEvent_SetEventHandle(This,ph) (This)->lpVtbl->SetEventHandle(This,ph) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ISynchronizeEvent_SetEventHandle_Proxy( + ISynchronizeEvent* This, + HANDLE *ph); +void __RPC_STUB ISynchronizeEvent_SetEventHandle_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ISynchronizeEvent_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ISynchronizeContainer interface + */ +#ifndef __ISynchronizeContainer_INTERFACE_DEFINED__ +#define __ISynchronizeContainer_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_ISynchronizeContainer, 0x00000033, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ISynchronizeContainer : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE AddSynchronize( + ISynchronize *pSync) = 0; + + virtual HRESULT STDMETHODCALLTYPE WaitMultiple( + DWORD dwFlags, + DWORD dwTimeOut, + ISynchronize **ppSync) = 0; + +}; +#else +typedef struct ISynchronizeContainerVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ISynchronizeContainer* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ISynchronizeContainer* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ISynchronizeContainer* This); + + /*** ISynchronizeContainer methods ***/ + HRESULT (STDMETHODCALLTYPE *AddSynchronize)( + ISynchronizeContainer* This, + ISynchronize *pSync); + + HRESULT (STDMETHODCALLTYPE *WaitMultiple)( + ISynchronizeContainer* This, + DWORD dwFlags, + DWORD dwTimeOut, + ISynchronize **ppSync); + + END_INTERFACE +} ISynchronizeContainerVtbl; +interface ISynchronizeContainer { + CONST_VTBL ISynchronizeContainerVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ISynchronizeContainer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ISynchronizeContainer_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ISynchronizeContainer_Release(This) (This)->lpVtbl->Release(This) +/*** ISynchronizeContainer methods ***/ +#define ISynchronizeContainer_AddSynchronize(This,pSync) (This)->lpVtbl->AddSynchronize(This,pSync) +#define ISynchronizeContainer_WaitMultiple(This,dwFlags,dwTimeOut,ppSync) (This)->lpVtbl->WaitMultiple(This,dwFlags,dwTimeOut,ppSync) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ISynchronizeContainer_AddSynchronize_Proxy( + ISynchronizeContainer* This, + ISynchronize *pSync); +void __RPC_STUB ISynchronizeContainer_AddSynchronize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ISynchronizeContainer_WaitMultiple_Proxy( + ISynchronizeContainer* This, + DWORD dwFlags, + DWORD dwTimeOut, + ISynchronize **ppSync); +void __RPC_STUB ISynchronizeContainer_WaitMultiple_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ISynchronizeContainer_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ISynchronizeMutex interface + */ +#ifndef __ISynchronizeMutex_INTERFACE_DEFINED__ +#define __ISynchronizeMutex_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_ISynchronizeMutex, 0x00000025, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ISynchronizeMutex : public ISynchronize +{ + virtual HRESULT STDMETHODCALLTYPE ReleaseMutex( + ) = 0; + +}; +#else +typedef struct ISynchronizeMutexVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ISynchronizeMutex* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ISynchronizeMutex* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ISynchronizeMutex* This); + + /*** ISynchronize methods ***/ + HRESULT (STDMETHODCALLTYPE *Wait)( + ISynchronizeMutex* This, + DWORD dwFlags, + DWORD dwMilliseconds); + + HRESULT (STDMETHODCALLTYPE *Signal)( + ISynchronizeMutex* This); + + HRESULT (STDMETHODCALLTYPE *Reset)( + ISynchronizeMutex* This); + + /*** ISynchronizeMutex methods ***/ + HRESULT (STDMETHODCALLTYPE *ReleaseMutex)( + ISynchronizeMutex* This); + + END_INTERFACE +} ISynchronizeMutexVtbl; +interface ISynchronizeMutex { + CONST_VTBL ISynchronizeMutexVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ISynchronizeMutex_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ISynchronizeMutex_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ISynchronizeMutex_Release(This) (This)->lpVtbl->Release(This) +/*** ISynchronize methods ***/ +#define ISynchronizeMutex_Wait(This,dwFlags,dwMilliseconds) (This)->lpVtbl->Wait(This,dwFlags,dwMilliseconds) +#define ISynchronizeMutex_Signal(This) (This)->lpVtbl->Signal(This) +#define ISynchronizeMutex_Reset(This) (This)->lpVtbl->Reset(This) +/*** ISynchronizeMutex methods ***/ +#define ISynchronizeMutex_ReleaseMutex(This) (This)->lpVtbl->ReleaseMutex(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ISynchronizeMutex_ReleaseMutex_Proxy( + ISynchronizeMutex* This); +void __RPC_STUB ISynchronizeMutex_ReleaseMutex_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ISynchronizeMutex_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ICancelMethodCalls interface + */ +#ifndef __ICancelMethodCalls_INTERFACE_DEFINED__ +#define __ICancelMethodCalls_INTERFACE_DEFINED__ + +typedef ICancelMethodCalls *LPCANCELMETHODCALLS; +DEFINE_GUID(IID_ICancelMethodCalls, 0x00000029, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ICancelMethodCalls : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Cancel( + ULONG ulSeconds) = 0; + + virtual HRESULT STDMETHODCALLTYPE TestCancel( + ) = 0; + +}; +#else +typedef struct ICancelMethodCallsVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ICancelMethodCalls* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ICancelMethodCalls* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ICancelMethodCalls* This); + + /*** ICancelMethodCalls methods ***/ + HRESULT (STDMETHODCALLTYPE *Cancel)( + ICancelMethodCalls* This, + ULONG ulSeconds); + + HRESULT (STDMETHODCALLTYPE *TestCancel)( + ICancelMethodCalls* This); + + END_INTERFACE +} ICancelMethodCallsVtbl; +interface ICancelMethodCalls { + CONST_VTBL ICancelMethodCallsVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ICancelMethodCalls_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ICancelMethodCalls_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ICancelMethodCalls_Release(This) (This)->lpVtbl->Release(This) +/*** ICancelMethodCalls methods ***/ +#define ICancelMethodCalls_Cancel(This,ulSeconds) (This)->lpVtbl->Cancel(This,ulSeconds) +#define ICancelMethodCalls_TestCancel(This) (This)->lpVtbl->TestCancel(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ICancelMethodCalls_Cancel_Proxy( + ICancelMethodCalls* This, + ULONG ulSeconds); +void __RPC_STUB ICancelMethodCalls_Cancel_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE ICancelMethodCalls_TestCancel_Proxy( + ICancelMethodCalls* This); +void __RPC_STUB ICancelMethodCalls_TestCancel_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ICancelMethodCalls_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IAsyncManager interface + */ +#ifndef __IAsyncManager_INTERFACE_DEFINED__ +#define __IAsyncManager_INTERFACE_DEFINED__ + +typedef enum tagDCOM_CALL_STATE { + DCOM_NONE = 0, + DCOM_CALL_COMPLETE = 1, + DCOM_CALL_CANCELED = 2 +} DCOM_CALL_STATE; +DEFINE_GUID(IID_IAsyncManager, 0x0000002a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IAsyncManager : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE CompleteCall( + HRESULT Result) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCallContext( + REFIID riid, + void **pInterface) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetState( + ULONG *pulStateFlags) = 0; + +}; +#else +typedef struct IAsyncManagerVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IAsyncManager* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IAsyncManager* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IAsyncManager* This); + + /*** IAsyncManager methods ***/ + HRESULT (STDMETHODCALLTYPE *CompleteCall)( + IAsyncManager* This, + HRESULT Result); + + HRESULT (STDMETHODCALLTYPE *GetCallContext)( + IAsyncManager* This, + REFIID riid, + void **pInterface); + + HRESULT (STDMETHODCALLTYPE *GetState)( + IAsyncManager* This, + ULONG *pulStateFlags); + + END_INTERFACE +} IAsyncManagerVtbl; +interface IAsyncManager { + CONST_VTBL IAsyncManagerVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IAsyncManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IAsyncManager_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IAsyncManager_Release(This) (This)->lpVtbl->Release(This) +/*** IAsyncManager methods ***/ +#define IAsyncManager_CompleteCall(This,Result) (This)->lpVtbl->CompleteCall(This,Result) +#define IAsyncManager_GetCallContext(This,riid,pInterface) (This)->lpVtbl->GetCallContext(This,riid,pInterface) +#define IAsyncManager_GetState(This,pulStateFlags) (This)->lpVtbl->GetState(This,pulStateFlags) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IAsyncManager_CompleteCall_Proxy( + IAsyncManager* This, + HRESULT Result); +void __RPC_STUB IAsyncManager_CompleteCall_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAsyncManager_GetCallContext_Proxy( + IAsyncManager* This, + REFIID riid, + void **pInterface); +void __RPC_STUB IAsyncManager_GetCallContext_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAsyncManager_GetState_Proxy( + IAsyncManager* This, + ULONG *pulStateFlags); +void __RPC_STUB IAsyncManager_GetState_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IAsyncManager_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ICallFactory interface + */ +#ifndef __ICallFactory_INTERFACE_DEFINED__ +#define __ICallFactory_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_ICallFactory, 0x1c733a30, 0x2a1c, 0x11ce, 0xad,0xe5, 0x00,0xaa,0x00,0x44,0x77,0x3d); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface ICallFactory : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE CreateCall( + REFIID riid, + IUnknown *pCtrlUnk, + REFIID riid2, + IUnknown **ppv) = 0; + +}; +#else +typedef struct ICallFactoryVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + ICallFactory* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + ICallFactory* This); + + ULONG (STDMETHODCALLTYPE *Release)( + ICallFactory* This); + + /*** ICallFactory methods ***/ + HRESULT (STDMETHODCALLTYPE *CreateCall)( + ICallFactory* This, + REFIID riid, + IUnknown *pCtrlUnk, + REFIID riid2, + IUnknown **ppv); + + END_INTERFACE +} ICallFactoryVtbl; +interface ICallFactory { + CONST_VTBL ICallFactoryVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define ICallFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ICallFactory_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ICallFactory_Release(This) (This)->lpVtbl->Release(This) +/*** ICallFactory methods ***/ +#define ICallFactory_CreateCall(This,riid,pCtrlUnk,riid2,ppv) (This)->lpVtbl->CreateCall(This,riid,pCtrlUnk,riid2,ppv) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE ICallFactory_CreateCall_Proxy( + ICallFactory* This, + REFIID riid, + IUnknown *pCtrlUnk, + REFIID riid2, + IUnknown **ppv); +void __RPC_STUB ICallFactory_CreateCall_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __ICallFactory_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IRpcOptions interface + */ +#ifndef __IRpcOptions_INTERFACE_DEFINED__ +#define __IRpcOptions_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IRpcOptions, 0x00000144, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRpcOptions : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Set( + IUnknown *pPrx, + DWORD dwProperty, + ULONG_PTR dwValue) = 0; + + virtual HRESULT STDMETHODCALLTYPE Query( + IUnknown *pPrx, + DWORD dwProperty, + ULONG_PTR *pdwValue) = 0; + +}; +#else +typedef struct IRpcOptionsVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRpcOptions* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRpcOptions* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRpcOptions* This); + + /*** IRpcOptions methods ***/ + HRESULT (STDMETHODCALLTYPE *Set)( + IRpcOptions* This, + IUnknown *pPrx, + DWORD dwProperty, + ULONG_PTR dwValue); + + HRESULT (STDMETHODCALLTYPE *Query)( + IRpcOptions* This, + IUnknown *pPrx, + DWORD dwProperty, + ULONG_PTR *pdwValue); + + END_INTERFACE +} IRpcOptionsVtbl; +interface IRpcOptions { + CONST_VTBL IRpcOptionsVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRpcOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRpcOptions_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRpcOptions_Release(This) (This)->lpVtbl->Release(This) +/*** IRpcOptions methods ***/ +#define IRpcOptions_Set(This,pPrx,dwProperty,dwValue) (This)->lpVtbl->Set(This,pPrx,dwProperty,dwValue) +#define IRpcOptions_Query(This,pPrx,dwProperty,pdwValue) (This)->lpVtbl->Query(This,pPrx,dwProperty,pdwValue) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRpcOptions_Set_Proxy( + IRpcOptions* This, + IUnknown *pPrx, + DWORD dwProperty, + ULONG_PTR dwValue); +void __RPC_STUB IRpcOptions_Set_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcOptions_Query_Proxy( + IRpcOptions* This, + IUnknown *pPrx, + DWORD dwProperty, + ULONG_PTR *pdwValue); +void __RPC_STUB IRpcOptions_Query_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRpcOptions_INTERFACE_DEFINED__ */ + +enum { + COMBND_RPCTIMEOUT = 1, + COMBND_SERVER_LOCALITY = 2 +}; + +enum { + SERVER_LOCALITY_PROCESS_LOCAL = 0, + SERVER_LOCALITY_MACHINE_LOCAL = 1, + SERVER_LOCALITY_REMOTE = 2 +}; + +/***************************************************************************** + * IRpcHelper interface + */ +#ifndef __IRpcHelper_INTERFACE_DEFINED__ +#define __IRpcHelper_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IRpcHelper, 0x00000149, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IRpcHelper : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetDCOMProtocolVersion( + DWORD *pComVersion) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetIIDFromOBJREF( + void *pObjRef, + IID **piid) = 0; + +}; +#else +typedef struct IRpcHelperVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IRpcHelper* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IRpcHelper* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IRpcHelper* This); + + /*** IRpcHelper methods ***/ + HRESULT (STDMETHODCALLTYPE *GetDCOMProtocolVersion)( + IRpcHelper* This, + DWORD *pComVersion); + + HRESULT (STDMETHODCALLTYPE *GetIIDFromOBJREF)( + IRpcHelper* This, + void *pObjRef, + IID **piid); + + END_INTERFACE +} IRpcHelperVtbl; +interface IRpcHelper { + CONST_VTBL IRpcHelperVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IRpcHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRpcHelper_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRpcHelper_Release(This) (This)->lpVtbl->Release(This) +/*** IRpcHelper methods ***/ +#define IRpcHelper_GetDCOMProtocolVersion(This,pComVersion) (This)->lpVtbl->GetDCOMProtocolVersion(This,pComVersion) +#define IRpcHelper_GetIIDFromOBJREF(This,pObjRef,piid) (This)->lpVtbl->GetIIDFromOBJREF(This,pObjRef,piid) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IRpcHelper_GetDCOMProtocolVersion_Proxy( + IRpcHelper* This, + DWORD *pComVersion); +void __RPC_STUB IRpcHelper_GetDCOMProtocolVersion_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IRpcHelper_GetIIDFromOBJREF_Proxy( + IRpcHelper* This, + void *pObjRef, + IID **piid); +void __RPC_STUB IRpcHelper_GetIIDFromOBJREF_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IRpcHelper_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IReleaseMarshalBuffers interface + */ +#ifndef __IReleaseMarshalBuffers_INTERFACE_DEFINED__ +#define __IReleaseMarshalBuffers_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IReleaseMarshalBuffers, 0xeb0cb9e8, 0x7996, 0x11d2, 0x87,0x2e, 0x00,0x00,0xf8,0x08,0x08,0x59); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IReleaseMarshalBuffers : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE ReleaseMarshalBuffer( + RPCOLEMESSAGE *pMsg, + DWORD dwFlags, + IUnknown *pChnl) = 0; + +}; +#else +typedef struct IReleaseMarshalBuffersVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IReleaseMarshalBuffers* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IReleaseMarshalBuffers* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IReleaseMarshalBuffers* This); + + /*** IReleaseMarshalBuffers methods ***/ + HRESULT (STDMETHODCALLTYPE *ReleaseMarshalBuffer)( + IReleaseMarshalBuffers* This, + RPCOLEMESSAGE *pMsg, + DWORD dwFlags, + IUnknown *pChnl); + + END_INTERFACE +} IReleaseMarshalBuffersVtbl; +interface IReleaseMarshalBuffers { + CONST_VTBL IReleaseMarshalBuffersVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IReleaseMarshalBuffers_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IReleaseMarshalBuffers_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IReleaseMarshalBuffers_Release(This) (This)->lpVtbl->Release(This) +/*** IReleaseMarshalBuffers methods ***/ +#define IReleaseMarshalBuffers_ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl) (This)->lpVtbl->ReleaseMarshalBuffer(This,pMsg,dwFlags,pChnl) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IReleaseMarshalBuffers_ReleaseMarshalBuffer_Proxy( + IReleaseMarshalBuffers* This, + RPCOLEMESSAGE *pMsg, + DWORD dwFlags, + IUnknown *pChnl); +void __RPC_STUB IReleaseMarshalBuffers_ReleaseMarshalBuffer_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IReleaseMarshalBuffers_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IWaitMultiple interface + */ +#ifndef __IWaitMultiple_INTERFACE_DEFINED__ +#define __IWaitMultiple_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IWaitMultiple, 0x0000002b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IWaitMultiple : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE WaitMultiple( + DWORD timeout, + ISynchronize **pSync) = 0; + + virtual HRESULT STDMETHODCALLTYPE AddSynchronize( + ISynchronize *pSync) = 0; + +}; +#else +typedef struct IWaitMultipleVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IWaitMultiple* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IWaitMultiple* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IWaitMultiple* This); + + /*** IWaitMultiple methods ***/ + HRESULT (STDMETHODCALLTYPE *WaitMultiple)( + IWaitMultiple* This, + DWORD timeout, + ISynchronize **pSync); + + HRESULT (STDMETHODCALLTYPE *AddSynchronize)( + IWaitMultiple* This, + ISynchronize *pSync); + + END_INTERFACE +} IWaitMultipleVtbl; +interface IWaitMultiple { + CONST_VTBL IWaitMultipleVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IWaitMultiple_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IWaitMultiple_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IWaitMultiple_Release(This) (This)->lpVtbl->Release(This) +/*** IWaitMultiple methods ***/ +#define IWaitMultiple_WaitMultiple(This,timeout,pSync) (This)->lpVtbl->WaitMultiple(This,timeout,pSync) +#define IWaitMultiple_AddSynchronize(This,pSync) (This)->lpVtbl->AddSynchronize(This,pSync) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IWaitMultiple_WaitMultiple_Proxy( + IWaitMultiple* This, + DWORD timeout, + ISynchronize **pSync); +void __RPC_STUB IWaitMultiple_WaitMultiple_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IWaitMultiple_AddSynchronize_Proxy( + IWaitMultiple* This, + ISynchronize *pSync); +void __RPC_STUB IWaitMultiple_AddSynchronize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IWaitMultiple_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IUrlMon interface + */ +#ifndef __IUrlMon_INTERFACE_DEFINED__ +#define __IUrlMon_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IUrlMon, 0x00000026, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IUrlMon : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE AsyncGetClassBits( + REFCLSID rclsid, + LPCWSTR pszTYPE, + LPCWSTR pszExt, + DWORD dwFileVersionMS, + DWORD dwFileVersionLS, + LPCWSTR pszCodeBase, + IBindCtx *pbc, + DWORD dwClassContext, + REFIID riid, + DWORD flags) = 0; + +}; +#else +typedef struct IUrlMonVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IUrlMon* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IUrlMon* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IUrlMon* This); + + /*** IUrlMon methods ***/ + HRESULT (STDMETHODCALLTYPE *AsyncGetClassBits)( + IUrlMon* This, + REFCLSID rclsid, + LPCWSTR pszTYPE, + LPCWSTR pszExt, + DWORD dwFileVersionMS, + DWORD dwFileVersionLS, + LPCWSTR pszCodeBase, + IBindCtx *pbc, + DWORD dwClassContext, + REFIID riid, + DWORD flags); + + END_INTERFACE +} IUrlMonVtbl; +interface IUrlMon { + CONST_VTBL IUrlMonVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IUrlMon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IUrlMon_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IUrlMon_Release(This) (This)->lpVtbl->Release(This) +/*** IUrlMon methods ***/ +#define IUrlMon_AsyncGetClassBits(This,rclsid,pszTYPE,pszExt,dwFileVersionMS,dwFileVersionLS,pszCodeBase,pbc,dwClassContext,riid,flags) (This)->lpVtbl->AsyncGetClassBits(This,rclsid,pszTYPE,pszExt,dwFileVersionMS,dwFileVersionLS,pszCodeBase,pbc,dwClassContext,riid,flags) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IUrlMon_AsyncGetClassBits_Proxy( + IUrlMon* This, + REFCLSID rclsid, + LPCWSTR pszTYPE, + LPCWSTR pszExt, + DWORD dwFileVersionMS, + DWORD dwFileVersionLS, + LPCWSTR pszCodeBase, + IBindCtx *pbc, + DWORD dwClassContext, + REFIID riid, + DWORD flags); +void __RPC_STUB IUrlMon_AsyncGetClassBits_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IUrlMon_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IForegroundTransfer interface + */ +#ifndef __IForegroundTransfer_INTERFACE_DEFINED__ +#define __IForegroundTransfer_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IForegroundTransfer, 0x00000145, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IForegroundTransfer : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE AllowForegroundTransfer( + void *lpvReserved) = 0; + +}; +#else +typedef struct IForegroundTransferVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IForegroundTransfer* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IForegroundTransfer* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IForegroundTransfer* This); + + /*** IForegroundTransfer methods ***/ + HRESULT (STDMETHODCALLTYPE *AllowForegroundTransfer)( + IForegroundTransfer* This, + void *lpvReserved); + + END_INTERFACE +} IForegroundTransferVtbl; +interface IForegroundTransfer { + CONST_VTBL IForegroundTransferVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IForegroundTransfer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IForegroundTransfer_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IForegroundTransfer_Release(This) (This)->lpVtbl->Release(This) +/*** IForegroundTransfer methods ***/ +#define IForegroundTransfer_AllowForegroundTransfer(This,lpvReserved) (This)->lpVtbl->AllowForegroundTransfer(This,lpvReserved) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IForegroundTransfer_AllowForegroundTransfer_Proxy( + IForegroundTransfer* This, + void *lpvReserved); +void __RPC_STUB IForegroundTransfer_AllowForegroundTransfer_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IForegroundTransfer_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IAddrTrackingControl interface + */ +#ifndef __IAddrTrackingControl_INTERFACE_DEFINED__ +#define __IAddrTrackingControl_INTERFACE_DEFINED__ + +typedef IAddrTrackingControl *LPADDRTRACKINGCONTROL; +DEFINE_GUID(IID_IAddrTrackingControl, 0x00000147, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IAddrTrackingControl : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE EnableCOMDynamicAddrTracking( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE DisableCOMDynamicAddrTracking( + ) = 0; + +}; +#else +typedef struct IAddrTrackingControlVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IAddrTrackingControl* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IAddrTrackingControl* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IAddrTrackingControl* This); + + /*** IAddrTrackingControl methods ***/ + HRESULT (STDMETHODCALLTYPE *EnableCOMDynamicAddrTracking)( + IAddrTrackingControl* This); + + HRESULT (STDMETHODCALLTYPE *DisableCOMDynamicAddrTracking)( + IAddrTrackingControl* This); + + END_INTERFACE +} IAddrTrackingControlVtbl; +interface IAddrTrackingControl { + CONST_VTBL IAddrTrackingControlVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IAddrTrackingControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IAddrTrackingControl_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IAddrTrackingControl_Release(This) (This)->lpVtbl->Release(This) +/*** IAddrTrackingControl methods ***/ +#define IAddrTrackingControl_EnableCOMDynamicAddrTracking(This) (This)->lpVtbl->EnableCOMDynamicAddrTracking(This) +#define IAddrTrackingControl_DisableCOMDynamicAddrTracking(This) (This)->lpVtbl->DisableCOMDynamicAddrTracking(This) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IAddrTrackingControl_EnableCOMDynamicAddrTracking_Proxy( + IAddrTrackingControl* This); +void __RPC_STUB IAddrTrackingControl_EnableCOMDynamicAddrTracking_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAddrTrackingControl_DisableCOMDynamicAddrTracking_Proxy( + IAddrTrackingControl* This); +void __RPC_STUB IAddrTrackingControl_DisableCOMDynamicAddrTracking_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IAddrTrackingControl_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IAddrExclusionControl interface + */ +#ifndef __IAddrExclusionControl_INTERFACE_DEFINED__ +#define __IAddrExclusionControl_INTERFACE_DEFINED__ + +typedef IAddrExclusionControl *LPADDREXCLUSIONCONTROL; +DEFINE_GUID(IID_IAddrExclusionControl, 0x00000148, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IAddrExclusionControl : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetCurrentAddrExclusionList( + REFIID riid, + void **ppEnumerator) = 0; + + virtual HRESULT STDMETHODCALLTYPE UpdateAddrExclusionList( + IUnknown *pEnumerator) = 0; + +}; +#else +typedef struct IAddrExclusionControlVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IAddrExclusionControl* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IAddrExclusionControl* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IAddrExclusionControl* This); + + /*** IAddrExclusionControl methods ***/ + HRESULT (STDMETHODCALLTYPE *GetCurrentAddrExclusionList)( + IAddrExclusionControl* This, + REFIID riid, + void **ppEnumerator); + + HRESULT (STDMETHODCALLTYPE *UpdateAddrExclusionList)( + IAddrExclusionControl* This, + IUnknown *pEnumerator); + + END_INTERFACE +} IAddrExclusionControlVtbl; +interface IAddrExclusionControl { + CONST_VTBL IAddrExclusionControlVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IAddrExclusionControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IAddrExclusionControl_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IAddrExclusionControl_Release(This) (This)->lpVtbl->Release(This) +/*** IAddrExclusionControl methods ***/ +#define IAddrExclusionControl_GetCurrentAddrExclusionList(This,riid,ppEnumerator) (This)->lpVtbl->GetCurrentAddrExclusionList(This,riid,ppEnumerator) +#define IAddrExclusionControl_UpdateAddrExclusionList(This,pEnumerator) (This)->lpVtbl->UpdateAddrExclusionList(This,pEnumerator) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IAddrExclusionControl_GetCurrentAddrExclusionList_Proxy( + IAddrExclusionControl* This, + REFIID riid, + void **ppEnumerator); +void __RPC_STUB IAddrExclusionControl_GetCurrentAddrExclusionList_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IAddrExclusionControl_UpdateAddrExclusionList_Proxy( + IAddrExclusionControl* This, + IUnknown *pEnumerator); +void __RPC_STUB IAddrExclusionControl_UpdateAddrExclusionList_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IAddrExclusionControl_INTERFACE_DEFINED__ */ + +typedef enum _APTTYPE { + APTTYPE_CURRENT = -1, + APTTYPE_STA = 0, + APTTYPE_MTA = 1, + APTTYPE_NA = 2, + APTTYPE_MAINSTA = 3 +} APTTYPE; +typedef enum _THDTYPE { + THDTYPE_BLOCKMESSAGES = 0, + THDTYPE_PROCESSMESSAGES = 1 +} THDTYPE; +/***************************************************************************** + * IComThreadingInfo interface + */ +#ifndef __IComThreadingInfo_INTERFACE_DEFINED__ +#define __IComThreadingInfo_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IComThreadingInfo, 0x000001ce, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IComThreadingInfo : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE GetCurrentApartmentType( + APTTYPE *pAptType) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCurrentThreadType( + THDTYPE *pThreadType) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetCurrentLogicalThreadId( + GUID *pguidLogicalThreadId) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetCurrentLogicalThreadId( + REFGUID rguid) = 0; + +}; +#else +typedef struct IComThreadingInfoVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IComThreadingInfo* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IComThreadingInfo* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IComThreadingInfo* This); + + /*** IComThreadingInfo methods ***/ + HRESULT (STDMETHODCALLTYPE *GetCurrentApartmentType)( + IComThreadingInfo* This, + APTTYPE *pAptType); + + HRESULT (STDMETHODCALLTYPE *GetCurrentThreadType)( + IComThreadingInfo* This, + THDTYPE *pThreadType); + + HRESULT (STDMETHODCALLTYPE *GetCurrentLogicalThreadId)( + IComThreadingInfo* This, + GUID *pguidLogicalThreadId); + + HRESULT (STDMETHODCALLTYPE *SetCurrentLogicalThreadId)( + IComThreadingInfo* This, + REFGUID rguid); + + END_INTERFACE +} IComThreadingInfoVtbl; +interface IComThreadingInfo { + CONST_VTBL IComThreadingInfoVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IComThreadingInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IComThreadingInfo_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IComThreadingInfo_Release(This) (This)->lpVtbl->Release(This) +/*** IComThreadingInfo methods ***/ +#define IComThreadingInfo_GetCurrentApartmentType(This,pAptType) (This)->lpVtbl->GetCurrentApartmentType(This,pAptType) +#define IComThreadingInfo_GetCurrentThreadType(This,pThreadType) (This)->lpVtbl->GetCurrentThreadType(This,pThreadType) +#define IComThreadingInfo_GetCurrentLogicalThreadId(This,pguidLogicalThreadId) (This)->lpVtbl->GetCurrentLogicalThreadId(This,pguidLogicalThreadId) +#define IComThreadingInfo_SetCurrentLogicalThreadId(This,rguid) (This)->lpVtbl->SetCurrentLogicalThreadId(This,rguid) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IComThreadingInfo_GetCurrentApartmentType_Proxy( + IComThreadingInfo* This, + APTTYPE *pAptType); +void __RPC_STUB IComThreadingInfo_GetCurrentApartmentType_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IComThreadingInfo_GetCurrentThreadType_Proxy( + IComThreadingInfo* This, + THDTYPE *pThreadType); +void __RPC_STUB IComThreadingInfo_GetCurrentThreadType_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IComThreadingInfo_GetCurrentLogicalThreadId_Proxy( + IComThreadingInfo* This, + GUID *pguidLogicalThreadId); +void __RPC_STUB IComThreadingInfo_GetCurrentLogicalThreadId_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IComThreadingInfo_SetCurrentLogicalThreadId_Proxy( + IComThreadingInfo* This, + REFGUID rguid); +void __RPC_STUB IComThreadingInfo_SetCurrentLogicalThreadId_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IComThreadingInfo_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IProcessInitControl interface + */ +#ifndef __IProcessInitControl_INTERFACE_DEFINED__ +#define __IProcessInitControl_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IProcessInitControl, 0x72380d55, 0x8d2b, 0x43a3, 0x85,0x13, 0x2b,0x6e,0xf3,0x14,0x34,0xe9); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IProcessInitControl : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE ResetInitializerTimeout( + DWORD dwSecondsRemaining) = 0; + +}; +#else +typedef struct IProcessInitControlVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IProcessInitControl* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IProcessInitControl* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IProcessInitControl* This); + + /*** IProcessInitControl methods ***/ + HRESULT (STDMETHODCALLTYPE *ResetInitializerTimeout)( + IProcessInitControl* This, + DWORD dwSecondsRemaining); + + END_INTERFACE +} IProcessInitControlVtbl; +interface IProcessInitControl { + CONST_VTBL IProcessInitControlVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IProcessInitControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IProcessInitControl_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IProcessInitControl_Release(This) (This)->lpVtbl->Release(This) +/*** IProcessInitControl methods ***/ +#define IProcessInitControl_ResetInitializerTimeout(This,dwSecondsRemaining) (This)->lpVtbl->ResetInitializerTimeout(This,dwSecondsRemaining) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IProcessInitControl_ResetInitializerTimeout_Proxy( + IProcessInitControl* This, + DWORD dwSecondsRemaining); +void __RPC_STUB IProcessInitControl_ResetInitializerTimeout_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IProcessInitControl_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IInitializeSpy interface + */ +#ifndef __IInitializeSpy_INTERFACE_DEFINED__ +#define __IInitializeSpy_INTERFACE_DEFINED__ + +typedef IInitializeSpy *LPINITIALIZESPY; +DEFINE_GUID(IID_IInitializeSpy, 0x00000034, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IInitializeSpy : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE PreInitialize( + DWORD dwCoInit, + DWORD dwCurThreadAptRefs) = 0; + + virtual HRESULT STDMETHODCALLTYPE PostInitialize( + HRESULT hrCoInit, + DWORD dwCoInit, + DWORD dwNewThreadAptRefs) = 0; + + virtual HRESULT STDMETHODCALLTYPE PreUninitialize( + DWORD dwCurThreadAptRefs) = 0; + + virtual HRESULT STDMETHODCALLTYPE PostUninitialize( + DWORD dwNewThreadAptRefs) = 0; + +}; +#else +typedef struct IInitializeSpyVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IInitializeSpy* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IInitializeSpy* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IInitializeSpy* This); + + /*** IInitializeSpy methods ***/ + HRESULT (STDMETHODCALLTYPE *PreInitialize)( + IInitializeSpy* This, + DWORD dwCoInit, + DWORD dwCurThreadAptRefs); + + HRESULT (STDMETHODCALLTYPE *PostInitialize)( + IInitializeSpy* This, + HRESULT hrCoInit, + DWORD dwCoInit, + DWORD dwNewThreadAptRefs); + + HRESULT (STDMETHODCALLTYPE *PreUninitialize)( + IInitializeSpy* This, + DWORD dwCurThreadAptRefs); + + HRESULT (STDMETHODCALLTYPE *PostUninitialize)( + IInitializeSpy* This, + DWORD dwNewThreadAptRefs); + + END_INTERFACE +} IInitializeSpyVtbl; +interface IInitializeSpy { + CONST_VTBL IInitializeSpyVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IInitializeSpy_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IInitializeSpy_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IInitializeSpy_Release(This) (This)->lpVtbl->Release(This) +/*** IInitializeSpy methods ***/ +#define IInitializeSpy_PreInitialize(This,dwCoInit,dwCurThreadAptRefs) (This)->lpVtbl->PreInitialize(This,dwCoInit,dwCurThreadAptRefs) +#define IInitializeSpy_PostInitialize(This,hrCoInit,dwCoInit,dwNewThreadAptRefs) (This)->lpVtbl->PostInitialize(This,hrCoInit,dwCoInit,dwNewThreadAptRefs) +#define IInitializeSpy_PreUninitialize(This,dwCurThreadAptRefs) (This)->lpVtbl->PreUninitialize(This,dwCurThreadAptRefs) +#define IInitializeSpy_PostUninitialize(This,dwNewThreadAptRefs) (This)->lpVtbl->PostUninitialize(This,dwNewThreadAptRefs) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IInitializeSpy_PreInitialize_Proxy( + IInitializeSpy* This, + DWORD dwCoInit, + DWORD dwCurThreadAptRefs); +void __RPC_STUB IInitializeSpy_PreInitialize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IInitializeSpy_PostInitialize_Proxy( + IInitializeSpy* This, + HRESULT hrCoInit, + DWORD dwCoInit, + DWORD dwNewThreadAptRefs); +void __RPC_STUB IInitializeSpy_PostInitialize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IInitializeSpy_PreUninitialize_Proxy( + IInitializeSpy* This, + DWORD dwCurThreadAptRefs); +void __RPC_STUB IInitializeSpy_PreUninitialize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IInitializeSpy_PostUninitialize_Proxy( + IInitializeSpy* This, + DWORD dwNewThreadAptRefs); +void __RPC_STUB IInitializeSpy_PostUninitialize_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IInitializeSpy_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IThumbnailExtractor interface + */ +#ifndef __IThumbnailExtractor_INTERFACE_DEFINED__ +#define __IThumbnailExtractor_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IThumbnailExtractor, 0x969dc708, 0x5c76, 0x11d1, 0x8d,0x86, 0x00,0x00,0xf8,0x04,0xb0,0x57); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IThumbnailExtractor : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE ExtractThumbnail( + IStorage *pStg, + ULONG ulLength, + ULONG ulHeight, + ULONG *pulOutputLength, + ULONG *pulOutputHeight, + HBITMAP *phOutputBitmap) = 0; + + virtual HRESULT STDMETHODCALLTYPE OnFileUpdated( + IStorage *pStg) = 0; + +}; +#else +typedef struct IThumbnailExtractorVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IThumbnailExtractor* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IThumbnailExtractor* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IThumbnailExtractor* This); + + /*** IThumbnailExtractor methods ***/ + HRESULT (STDMETHODCALLTYPE *ExtractThumbnail)( + IThumbnailExtractor* This, + IStorage *pStg, + ULONG ulLength, + ULONG ulHeight, + ULONG *pulOutputLength, + ULONG *pulOutputHeight, + HBITMAP *phOutputBitmap); + + HRESULT (STDMETHODCALLTYPE *OnFileUpdated)( + IThumbnailExtractor* This, + IStorage *pStg); + + END_INTERFACE +} IThumbnailExtractorVtbl; +interface IThumbnailExtractor { + CONST_VTBL IThumbnailExtractorVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IThumbnailExtractor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IThumbnailExtractor_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IThumbnailExtractor_Release(This) (This)->lpVtbl->Release(This) +/*** IThumbnailExtractor methods ***/ +#define IThumbnailExtractor_ExtractThumbnail(This,pStg,ulLength,ulHeight,pulOutputLength,pulOutputHeight,phOutputBitmap) (This)->lpVtbl->ExtractThumbnail(This,pStg,ulLength,ulHeight,pulOutputLength,pulOutputHeight,phOutputBitmap) +#define IThumbnailExtractor_OnFileUpdated(This,pStg) (This)->lpVtbl->OnFileUpdated(This,pStg) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IThumbnailExtractor_ExtractThumbnail_Proxy( + IThumbnailExtractor* This, + IStorage *pStg, + ULONG ulLength, + ULONG ulHeight, + ULONG *pulOutputLength, + ULONG *pulOutputHeight, + HBITMAP *phOutputBitmap); +void __RPC_STUB IThumbnailExtractor_ExtractThumbnail_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IThumbnailExtractor_OnFileUpdated_Proxy( + IThumbnailExtractor* This, + IStorage *pStg); +void __RPC_STUB IThumbnailExtractor_OnFileUpdated_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IThumbnailExtractor_INTERFACE_DEFINED__ */ + +#ifdef USE_COM_CONTEXT_DEF +typedef DWORD CPFLAGS; +typedef struct tagContextProperty { + GUID policyId; + CPFLAGS flags; + IUnknown *pUnk; +} ContextProperty; +/***************************************************************************** + * IEnumContextProps interface + */ +#ifndef __IEnumContextProps_INTERFACE_DEFINED__ +#define __IEnumContextProps_INTERFACE_DEFINED__ + +typedef IEnumContextProps *LPENUMCONTEXTPROPS; +DEFINE_GUID(IID_IEnumContextProps, 0x000001c1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IEnumContextProps : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE Next( + ULONG celt, + ContextProperty *pContextProperties, + ULONG *pceltFetched) = 0; + + virtual HRESULT STDMETHODCALLTYPE Skip( + ULONG celt) = 0; + + virtual HRESULT STDMETHODCALLTYPE Reset( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE Clone( + IEnumContextProps **ppEnumContextProps) = 0; + + virtual HRESULT STDMETHODCALLTYPE Count( + ULONG *pcelt) = 0; + +}; +#else +typedef struct IEnumContextPropsVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IEnumContextProps* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IEnumContextProps* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IEnumContextProps* This); + + /*** IEnumContextProps methods ***/ + HRESULT (STDMETHODCALLTYPE *Next)( + IEnumContextProps* This, + ULONG celt, + ContextProperty *pContextProperties, + ULONG *pceltFetched); + + HRESULT (STDMETHODCALLTYPE *Skip)( + IEnumContextProps* This, + ULONG celt); + + HRESULT (STDMETHODCALLTYPE *Reset)( + IEnumContextProps* This); + + HRESULT (STDMETHODCALLTYPE *Clone)( + IEnumContextProps* This, + IEnumContextProps **ppEnumContextProps); + + HRESULT (STDMETHODCALLTYPE *Count)( + IEnumContextProps* This, + ULONG *pcelt); + + END_INTERFACE +} IEnumContextPropsVtbl; +interface IEnumContextProps { + CONST_VTBL IEnumContextPropsVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IEnumContextProps_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IEnumContextProps_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IEnumContextProps_Release(This) (This)->lpVtbl->Release(This) +/*** IEnumContextProps methods ***/ +#define IEnumContextProps_Next(This,celt,pContextProperties,pceltFetched) (This)->lpVtbl->Next(This,celt,pContextProperties,pceltFetched) +#define IEnumContextProps_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IEnumContextProps_Reset(This) (This)->lpVtbl->Reset(This) +#define IEnumContextProps_Clone(This,ppEnumContextProps) (This)->lpVtbl->Clone(This,ppEnumContextProps) +#define IEnumContextProps_Count(This,pcelt) (This)->lpVtbl->Count(This,pcelt) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IEnumContextProps_Next_Proxy( + IEnumContextProps* This, + ULONG celt, + ContextProperty *pContextProperties, + ULONG *pceltFetched); +void __RPC_STUB IEnumContextProps_Next_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumContextProps_Skip_Proxy( + IEnumContextProps* This, + ULONG celt); +void __RPC_STUB IEnumContextProps_Skip_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumContextProps_Reset_Proxy( + IEnumContextProps* This); +void __RPC_STUB IEnumContextProps_Reset_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumContextProps_Clone_Proxy( + IEnumContextProps* This, + IEnumContextProps **ppEnumContextProps); +void __RPC_STUB IEnumContextProps_Clone_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IEnumContextProps_Count_Proxy( + IEnumContextProps* This, + ULONG *pcelt); +void __RPC_STUB IEnumContextProps_Count_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IEnumContextProps_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IContext interface + */ +#ifndef __IContext_INTERFACE_DEFINED__ +#define __IContext_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IContext, 0x000001c0, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IContext : public IUnknown +{ + virtual HRESULT STDMETHODCALLTYPE SetProperty( + REFGUID policyId, + CPFLAGS flags, + IUnknown *pUnk) = 0; + + virtual HRESULT STDMETHODCALLTYPE RemoveProperty( + REFGUID policyId) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetProperty( + REFGUID guid, + CPFLAGS *pFlags, + IUnknown **ppUnk) = 0; + + virtual HRESULT STDMETHODCALLTYPE EnumContextProps( + IEnumContextProps **ppEnumContextProps) = 0; + +}; +#else +typedef struct IContextVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IContext* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IContext* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IContext* This); + + /*** IContext methods ***/ + HRESULT (STDMETHODCALLTYPE *SetProperty)( + IContext* This, + REFGUID policyId, + CPFLAGS flags, + IUnknown *pUnk); + + HRESULT (STDMETHODCALLTYPE *RemoveProperty)( + IContext* This, + REFGUID policyId); + + HRESULT (STDMETHODCALLTYPE *GetProperty)( + IContext* This, + REFGUID guid, + CPFLAGS *pFlags, + IUnknown **ppUnk); + + HRESULT (STDMETHODCALLTYPE *EnumContextProps)( + IContext* This, + IEnumContextProps **ppEnumContextProps); + + END_INTERFACE +} IContextVtbl; +interface IContext { + CONST_VTBL IContextVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IContext_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IContext_Release(This) (This)->lpVtbl->Release(This) +/*** IContext methods ***/ +#define IContext_SetProperty(This,policyId,flags,pUnk) (This)->lpVtbl->SetProperty(This,policyId,flags,pUnk) +#define IContext_RemoveProperty(This,policyId) (This)->lpVtbl->RemoveProperty(This,policyId) +#define IContext_GetProperty(This,guid,pFlags,ppUnk) (This)->lpVtbl->GetProperty(This,guid,pFlags,ppUnk) +#define IContext_EnumContextProps(This,ppEnumContextProps) (This)->lpVtbl->EnumContextProps(This,ppEnumContextProps) +#endif + +#endif + +HRESULT STDMETHODCALLTYPE IContext_SetProperty_Proxy( + IContext* This, + REFGUID policyId, + CPFLAGS flags, + IUnknown *pUnk); +void __RPC_STUB IContext_SetProperty_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IContext_RemoveProperty_Proxy( + IContext* This, + REFGUID policyId); +void __RPC_STUB IContext_RemoveProperty_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IContext_GetProperty_Proxy( + IContext* This, + REFGUID guid, + CPFLAGS *pFlags, + IUnknown **ppUnk); +void __RPC_STUB IContext_GetProperty_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +HRESULT STDMETHODCALLTYPE IContext_EnumContextProps_Proxy( + IContext* This, + IEnumContextProps **ppEnumContextProps); +void __RPC_STUB IContext_EnumContextProps_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IContext_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IObjContext interface + */ +#ifndef __IObjContext_INTERFACE_DEFINED__ +#define __IObjContext_INTERFACE_DEFINED__ + +DEFINE_GUID(IID_IObjContext, 0x000001c6, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); +#if defined(__cplusplus) && !defined(CINTERFACE) +interface IObjContext : public IContext +{ + virtual void STDMETHODCALLTYPE Reserved1( + ) = 0; + + virtual void STDMETHODCALLTYPE Reserved2( + ) = 0; + + virtual void STDMETHODCALLTYPE Reserved3( + ) = 0; + + virtual void STDMETHODCALLTYPE Reserved4( + ) = 0; + + virtual void STDMETHODCALLTYPE Reserved5( + ) = 0; + + virtual void STDMETHODCALLTYPE Reserved6( + ) = 0; + + virtual void STDMETHODCALLTYPE Reserved7( + ) = 0; + +}; +#else +typedef struct IObjContextVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + IObjContext* This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + IObjContext* This); + + ULONG (STDMETHODCALLTYPE *Release)( + IObjContext* This); + + /*** IContext methods ***/ + HRESULT (STDMETHODCALLTYPE *SetProperty)( + IObjContext* This, + REFGUID policyId, + CPFLAGS flags, + IUnknown *pUnk); + + HRESULT (STDMETHODCALLTYPE *RemoveProperty)( + IObjContext* This, + REFGUID policyId); + + HRESULT (STDMETHODCALLTYPE *GetProperty)( + IObjContext* This, + REFGUID guid, + CPFLAGS *pFlags, + IUnknown **ppUnk); + + HRESULT (STDMETHODCALLTYPE *EnumContextProps)( + IObjContext* This, + IEnumContextProps **ppEnumContextProps); + + /*** IObjContext methods ***/ + void (STDMETHODCALLTYPE *Reserved1)( + IObjContext* This); + + void (STDMETHODCALLTYPE *Reserved2)( + IObjContext* This); + + void (STDMETHODCALLTYPE *Reserved3)( + IObjContext* This); + + void (STDMETHODCALLTYPE *Reserved4)( + IObjContext* This); + + void (STDMETHODCALLTYPE *Reserved5)( + IObjContext* This); + + void (STDMETHODCALLTYPE *Reserved6)( + IObjContext* This); + + void (STDMETHODCALLTYPE *Reserved7)( + IObjContext* This); + + END_INTERFACE +} IObjContextVtbl; +interface IObjContext { + CONST_VTBL IObjContextVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +/*** IUnknown methods ***/ +#define IObjContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IObjContext_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IObjContext_Release(This) (This)->lpVtbl->Release(This) +/*** IContext methods ***/ +#define IObjContext_SetProperty(This,policyId,flags,pUnk) (This)->lpVtbl->SetProperty(This,policyId,flags,pUnk) +#define IObjContext_RemoveProperty(This,policyId) (This)->lpVtbl->RemoveProperty(This,policyId) +#define IObjContext_GetProperty(This,guid,pFlags,ppUnk) (This)->lpVtbl->GetProperty(This,guid,pFlags,ppUnk) +#define IObjContext_EnumContextProps(This,ppEnumContextProps) (This)->lpVtbl->EnumContextProps(This,ppEnumContextProps) +/*** IObjContext methods ***/ +#define IObjContext_Reserved1(This) (This)->lpVtbl->Reserved1(This) +#define IObjContext_Reserved2(This) (This)->lpVtbl->Reserved2(This) +#define IObjContext_Reserved3(This) (This)->lpVtbl->Reserved3(This) +#define IObjContext_Reserved4(This) (This)->lpVtbl->Reserved4(This) +#define IObjContext_Reserved5(This) (This)->lpVtbl->Reserved5(This) +#define IObjContext_Reserved6(This) (This)->lpVtbl->Reserved6(This) +#define IObjContext_Reserved7(This) (This)->lpVtbl->Reserved7(This) +#endif + +#endif + +void STDMETHODCALLTYPE IObjContext_Reserved1_Proxy( + IObjContext* This); +void __RPC_STUB IObjContext_Reserved1_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IObjContext_Reserved2_Proxy( + IObjContext* This); +void __RPC_STUB IObjContext_Reserved2_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IObjContext_Reserved3_Proxy( + IObjContext* This); +void __RPC_STUB IObjContext_Reserved3_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IObjContext_Reserved4_Proxy( + IObjContext* This); +void __RPC_STUB IObjContext_Reserved4_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IObjContext_Reserved5_Proxy( + IObjContext* This); +void __RPC_STUB IObjContext_Reserved5_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IObjContext_Reserved6_Proxy( + IObjContext* This); +void __RPC_STUB IObjContext_Reserved6_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); +void STDMETHODCALLTYPE IObjContext_Reserved7_Proxy( + IObjContext* This); +void __RPC_STUB IObjContext_Reserved7_Stub( + IRpcStubBuffer* This, + IRpcChannelBuffer* pRpcChannelBuffer, + PRPC_MESSAGE pRpcMessage, + DWORD* pdwStubPhase); + +#endif /* __IObjContext_INTERFACE_DEFINED__ */ + +#endif /* defined USE_COM_CONTEXT_DEF */ +/* Begin additional prototypes for all interfaces */ + +ULONG __RPC_USER SNB_UserSize (ULONG *, ULONG, SNB *); +unsigned char * __RPC_USER SNB_UserMarshal (ULONG *, unsigned char *, SNB *); +unsigned char * __RPC_USER SNB_UserUnmarshal(ULONG *, unsigned char *, SNB *); +void __RPC_USER SNB_UserFree (ULONG *, SNB *); +ULONG __RPC_USER CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *); +unsigned char * __RPC_USER CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *); +unsigned char * __RPC_USER CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *); +void __RPC_USER CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *); +ULONG __RPC_USER STGMEDIUM_UserSize (ULONG *, ULONG, STGMEDIUM *); +unsigned char * __RPC_USER STGMEDIUM_UserMarshal (ULONG *, unsigned char *, STGMEDIUM *); +unsigned char * __RPC_USER STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *); +void __RPC_USER STGMEDIUM_UserFree (ULONG *, STGMEDIUM *); +ULONG __RPC_USER ASYNC_STGMEDIUM_UserSize (ULONG *, ULONG, ASYNC_STGMEDIUM *); +unsigned char * __RPC_USER ASYNC_STGMEDIUM_UserMarshal (ULONG *, unsigned char *, ASYNC_STGMEDIUM *); +unsigned char * __RPC_USER ASYNC_STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, ASYNC_STGMEDIUM *); +void __RPC_USER ASYNC_STGMEDIUM_UserFree (ULONG *, ASYNC_STGMEDIUM *); +ULONG __RPC_USER FLAG_STGMEDIUM_UserSize (ULONG *, ULONG, FLAG_STGMEDIUM *); +unsigned char * __RPC_USER FLAG_STGMEDIUM_UserMarshal (ULONG *, unsigned char *, FLAG_STGMEDIUM *); +unsigned char * __RPC_USER FLAG_STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, FLAG_STGMEDIUM *); +void __RPC_USER FLAG_STGMEDIUM_UserFree (ULONG *, FLAG_STGMEDIUM *); +ULONG __RPC_USER HBITMAP_UserSize (ULONG *, ULONG, HBITMAP *); +unsigned char * __RPC_USER HBITMAP_UserMarshal (ULONG *, unsigned char *, HBITMAP *); +unsigned char * __RPC_USER HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *); +void __RPC_USER HBITMAP_UserFree (ULONG *, HBITMAP *); + +/* End additional prototypes */ + +#ifdef __cplusplus +} +#endif + +#endif /* __WIDL_OBJIDL_H */ |