OleIdl.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:143k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for oleidl.idl:
  5.     Oicf, W1, Zp8, env=Win32 (32b run)
  6.     protocol : dce , ms_ext, c_ext, robust
  7.     error checks: allocation ref bounds_check enum stub_data 
  8.     VC __declspec() decoration level: 
  9.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10.          DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING(  )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __oleidl_h__
  27. #define __oleidl_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */ 
  32. #ifndef __IOleAdviseHolder_FWD_DEFINED__
  33. #define __IOleAdviseHolder_FWD_DEFINED__
  34. typedef interface IOleAdviseHolder IOleAdviseHolder;
  35. #endif  /* __IOleAdviseHolder_FWD_DEFINED__ */
  36. #ifndef __IOleCache_FWD_DEFINED__
  37. #define __IOleCache_FWD_DEFINED__
  38. typedef interface IOleCache IOleCache;
  39. #endif  /* __IOleCache_FWD_DEFINED__ */
  40. #ifndef __IOleCache2_FWD_DEFINED__
  41. #define __IOleCache2_FWD_DEFINED__
  42. typedef interface IOleCache2 IOleCache2;
  43. #endif  /* __IOleCache2_FWD_DEFINED__ */
  44. #ifndef __IOleCacheControl_FWD_DEFINED__
  45. #define __IOleCacheControl_FWD_DEFINED__
  46. typedef interface IOleCacheControl IOleCacheControl;
  47. #endif  /* __IOleCacheControl_FWD_DEFINED__ */
  48. #ifndef __IParseDisplayName_FWD_DEFINED__
  49. #define __IParseDisplayName_FWD_DEFINED__
  50. typedef interface IParseDisplayName IParseDisplayName;
  51. #endif  /* __IParseDisplayName_FWD_DEFINED__ */
  52. #ifndef __IOleContainer_FWD_DEFINED__
  53. #define __IOleContainer_FWD_DEFINED__
  54. typedef interface IOleContainer IOleContainer;
  55. #endif  /* __IOleContainer_FWD_DEFINED__ */
  56. #ifndef __IOleClientSite_FWD_DEFINED__
  57. #define __IOleClientSite_FWD_DEFINED__
  58. typedef interface IOleClientSite IOleClientSite;
  59. #endif  /* __IOleClientSite_FWD_DEFINED__ */
  60. #ifndef __IOleObject_FWD_DEFINED__
  61. #define __IOleObject_FWD_DEFINED__
  62. typedef interface IOleObject IOleObject;
  63. #endif  /* __IOleObject_FWD_DEFINED__ */
  64. #ifndef __IOleWindow_FWD_DEFINED__
  65. #define __IOleWindow_FWD_DEFINED__
  66. typedef interface IOleWindow IOleWindow;
  67. #endif  /* __IOleWindow_FWD_DEFINED__ */
  68. #ifndef __IOleLink_FWD_DEFINED__
  69. #define __IOleLink_FWD_DEFINED__
  70. typedef interface IOleLink IOleLink;
  71. #endif  /* __IOleLink_FWD_DEFINED__ */
  72. #ifndef __IOleItemContainer_FWD_DEFINED__
  73. #define __IOleItemContainer_FWD_DEFINED__
  74. typedef interface IOleItemContainer IOleItemContainer;
  75. #endif  /* __IOleItemContainer_FWD_DEFINED__ */
  76. #ifndef __IOleInPlaceUIWindow_FWD_DEFINED__
  77. #define __IOleInPlaceUIWindow_FWD_DEFINED__
  78. typedef interface IOleInPlaceUIWindow IOleInPlaceUIWindow;
  79. #endif  /* __IOleInPlaceUIWindow_FWD_DEFINED__ */
  80. #ifndef __IOleInPlaceActiveObject_FWD_DEFINED__
  81. #define __IOleInPlaceActiveObject_FWD_DEFINED__
  82. typedef interface IOleInPlaceActiveObject IOleInPlaceActiveObject;
  83. #endif  /* __IOleInPlaceActiveObject_FWD_DEFINED__ */
  84. #ifndef __IOleInPlaceFrame_FWD_DEFINED__
  85. #define __IOleInPlaceFrame_FWD_DEFINED__
  86. typedef interface IOleInPlaceFrame IOleInPlaceFrame;
  87. #endif  /* __IOleInPlaceFrame_FWD_DEFINED__ */
  88. #ifndef __IOleInPlaceObject_FWD_DEFINED__
  89. #define __IOleInPlaceObject_FWD_DEFINED__
  90. typedef interface IOleInPlaceObject IOleInPlaceObject;
  91. #endif  /* __IOleInPlaceObject_FWD_DEFINED__ */
  92. #ifndef __IOleInPlaceSite_FWD_DEFINED__
  93. #define __IOleInPlaceSite_FWD_DEFINED__
  94. typedef interface IOleInPlaceSite IOleInPlaceSite;
  95. #endif  /* __IOleInPlaceSite_FWD_DEFINED__ */
  96. #ifndef __IContinue_FWD_DEFINED__
  97. #define __IContinue_FWD_DEFINED__
  98. typedef interface IContinue IContinue;
  99. #endif  /* __IContinue_FWD_DEFINED__ */
  100. #ifndef __IViewObject_FWD_DEFINED__
  101. #define __IViewObject_FWD_DEFINED__
  102. typedef interface IViewObject IViewObject;
  103. #endif  /* __IViewObject_FWD_DEFINED__ */
  104. #ifndef __IViewObject2_FWD_DEFINED__
  105. #define __IViewObject2_FWD_DEFINED__
  106. typedef interface IViewObject2 IViewObject2;
  107. #endif  /* __IViewObject2_FWD_DEFINED__ */
  108. #ifndef __IDropSource_FWD_DEFINED__
  109. #define __IDropSource_FWD_DEFINED__
  110. typedef interface IDropSource IDropSource;
  111. #endif  /* __IDropSource_FWD_DEFINED__ */
  112. #ifndef __IDropTarget_FWD_DEFINED__
  113. #define __IDropTarget_FWD_DEFINED__
  114. typedef interface IDropTarget IDropTarget;
  115. #endif  /* __IDropTarget_FWD_DEFINED__ */
  116. #ifndef __IEnumOLEVERB_FWD_DEFINED__
  117. #define __IEnumOLEVERB_FWD_DEFINED__
  118. typedef interface IEnumOLEVERB IEnumOLEVERB;
  119. #endif  /* __IEnumOLEVERB_FWD_DEFINED__ */
  120. /* header files for imported files */
  121. #include "objidl.h"
  122. #ifdef __cplusplus
  123. extern "C"{
  124. #endif 
  125. void * __RPC_USER MIDL_user_allocate(size_t);
  126. void __RPC_USER MIDL_user_free( void * ); 
  127. /* interface __MIDL_itf_oleidl_0000 */
  128. /* [local] */ 
  129. //+-------------------------------------------------------------------------
  130. //
  131. //  Microsoft Windows
  132. //  Copyright (c) Microsoft Corporation. All rights reserved.
  133. //
  134. //--------------------------------------------------------------------------
  135. #if ( _MSC_VER >= 1020 )
  136. #pragma once
  137. #endif
  138. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_v0_0_c_ifspec;
  139. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_v0_0_s_ifspec;
  140. #ifndef __IOleAdviseHolder_INTERFACE_DEFINED__
  141. #define __IOleAdviseHolder_INTERFACE_DEFINED__
  142. /* interface IOleAdviseHolder */
  143. /* [uuid][object][local] */ 
  144. typedef /* [unique] */ IOleAdviseHolder *LPOLEADVISEHOLDER;
  145. EXTERN_C const IID IID_IOleAdviseHolder;
  146. #if defined(__cplusplus) && !defined(CINTERFACE)
  147.     
  148.     MIDL_INTERFACE("00000111-0000-0000-C000-000000000046")
  149.     IOleAdviseHolder : public IUnknown
  150.     {
  151.     public:
  152.         virtual HRESULT STDMETHODCALLTYPE Advise( 
  153.             /* [unique][in] */ IAdviseSink *pAdvise,
  154.             /* [out] */ DWORD *pdwConnection) = 0;
  155.         
  156.         virtual HRESULT STDMETHODCALLTYPE Unadvise( 
  157.             /* [in] */ DWORD dwConnection) = 0;
  158.         
  159.         virtual HRESULT STDMETHODCALLTYPE EnumAdvise( 
  160.             /* [out] */ IEnumSTATDATA **ppenumAdvise) = 0;
  161.         
  162.         virtual HRESULT STDMETHODCALLTYPE SendOnRename( 
  163.             /* [unique][in] */ IMoniker *pmk) = 0;
  164.         
  165.         virtual HRESULT STDMETHODCALLTYPE SendOnSave( void) = 0;
  166.         
  167.         virtual HRESULT STDMETHODCALLTYPE SendOnClose( void) = 0;
  168.         
  169.     };
  170.     
  171. #else  /* C style interface */
  172.     typedef struct IOleAdviseHolderVtbl
  173.     {
  174.         BEGIN_INTERFACE
  175.         
  176.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  177.             IOleAdviseHolder * This,
  178.             /* [in] */ REFIID riid,
  179.             /* [iid_is][out] */ void **ppvObject);
  180.         
  181.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  182.             IOleAdviseHolder * This);
  183.         
  184.         ULONG ( STDMETHODCALLTYPE *Release )( 
  185.             IOleAdviseHolder * This);
  186.         
  187.         HRESULT ( STDMETHODCALLTYPE *Advise )( 
  188.             IOleAdviseHolder * This,
  189.             /* [unique][in] */ IAdviseSink *pAdvise,
  190.             /* [out] */ DWORD *pdwConnection);
  191.         
  192.         HRESULT ( STDMETHODCALLTYPE *Unadvise )( 
  193.             IOleAdviseHolder * This,
  194.             /* [in] */ DWORD dwConnection);
  195.         
  196.         HRESULT ( STDMETHODCALLTYPE *EnumAdvise )( 
  197.             IOleAdviseHolder * This,
  198.             /* [out] */ IEnumSTATDATA **ppenumAdvise);
  199.         
  200.         HRESULT ( STDMETHODCALLTYPE *SendOnRename )( 
  201.             IOleAdviseHolder * This,
  202.             /* [unique][in] */ IMoniker *pmk);
  203.         
  204.         HRESULT ( STDMETHODCALLTYPE *SendOnSave )( 
  205.             IOleAdviseHolder * This);
  206.         
  207.         HRESULT ( STDMETHODCALLTYPE *SendOnClose )( 
  208.             IOleAdviseHolder * This);
  209.         
  210.         END_INTERFACE
  211.     } IOleAdviseHolderVtbl;
  212.     interface IOleAdviseHolder
  213.     {
  214.         CONST_VTBL struct IOleAdviseHolderVtbl *lpVtbl;
  215.     };
  216.     
  217. #ifdef COBJMACROS
  218. #define IOleAdviseHolder_QueryInterface(This,riid,ppvObject)
  219.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  220. #define IOleAdviseHolder_AddRef(This)
  221.     (This)->lpVtbl -> AddRef(This)
  222. #define IOleAdviseHolder_Release(This)
  223.     (This)->lpVtbl -> Release(This)
  224. #define IOleAdviseHolder_Advise(This,pAdvise,pdwConnection)
  225.     (This)->lpVtbl -> Advise(This,pAdvise,pdwConnection)
  226. #define IOleAdviseHolder_Unadvise(This,dwConnection)
  227.     (This)->lpVtbl -> Unadvise(This,dwConnection)
  228. #define IOleAdviseHolder_EnumAdvise(This,ppenumAdvise)
  229.     (This)->lpVtbl -> EnumAdvise(This,ppenumAdvise)
  230. #define IOleAdviseHolder_SendOnRename(This,pmk)
  231.     (This)->lpVtbl -> SendOnRename(This,pmk)
  232. #define IOleAdviseHolder_SendOnSave(This)
  233.     (This)->lpVtbl -> SendOnSave(This)
  234. #define IOleAdviseHolder_SendOnClose(This)
  235.     (This)->lpVtbl -> SendOnClose(This)
  236. #endif /* COBJMACROS */
  237. #endif  /* C style interface */
  238. HRESULT STDMETHODCALLTYPE IOleAdviseHolder_Advise_Proxy( 
  239.     IOleAdviseHolder * This,
  240.     /* [unique][in] */ IAdviseSink *pAdvise,
  241.     /* [out] */ DWORD *pdwConnection);
  242. void __RPC_STUB IOleAdviseHolder_Advise_Stub(
  243.     IRpcStubBuffer *This,
  244.     IRpcChannelBuffer *_pRpcChannelBuffer,
  245.     PRPC_MESSAGE _pRpcMessage,
  246.     DWORD *_pdwStubPhase);
  247. HRESULT STDMETHODCALLTYPE IOleAdviseHolder_Unadvise_Proxy( 
  248.     IOleAdviseHolder * This,
  249.     /* [in] */ DWORD dwConnection);
  250. void __RPC_STUB IOleAdviseHolder_Unadvise_Stub(
  251.     IRpcStubBuffer *This,
  252.     IRpcChannelBuffer *_pRpcChannelBuffer,
  253.     PRPC_MESSAGE _pRpcMessage,
  254.     DWORD *_pdwStubPhase);
  255. HRESULT STDMETHODCALLTYPE IOleAdviseHolder_EnumAdvise_Proxy( 
  256.     IOleAdviseHolder * This,
  257.     /* [out] */ IEnumSTATDATA **ppenumAdvise);
  258. void __RPC_STUB IOleAdviseHolder_EnumAdvise_Stub(
  259.     IRpcStubBuffer *This,
  260.     IRpcChannelBuffer *_pRpcChannelBuffer,
  261.     PRPC_MESSAGE _pRpcMessage,
  262.     DWORD *_pdwStubPhase);
  263. HRESULT STDMETHODCALLTYPE IOleAdviseHolder_SendOnRename_Proxy( 
  264.     IOleAdviseHolder * This,
  265.     /* [unique][in] */ IMoniker *pmk);
  266. void __RPC_STUB IOleAdviseHolder_SendOnRename_Stub(
  267.     IRpcStubBuffer *This,
  268.     IRpcChannelBuffer *_pRpcChannelBuffer,
  269.     PRPC_MESSAGE _pRpcMessage,
  270.     DWORD *_pdwStubPhase);
  271. HRESULT STDMETHODCALLTYPE IOleAdviseHolder_SendOnSave_Proxy( 
  272.     IOleAdviseHolder * This);
  273. void __RPC_STUB IOleAdviseHolder_SendOnSave_Stub(
  274.     IRpcStubBuffer *This,
  275.     IRpcChannelBuffer *_pRpcChannelBuffer,
  276.     PRPC_MESSAGE _pRpcMessage,
  277.     DWORD *_pdwStubPhase);
  278. HRESULT STDMETHODCALLTYPE IOleAdviseHolder_SendOnClose_Proxy( 
  279.     IOleAdviseHolder * This);
  280. void __RPC_STUB IOleAdviseHolder_SendOnClose_Stub(
  281.     IRpcStubBuffer *This,
  282.     IRpcChannelBuffer *_pRpcChannelBuffer,
  283.     PRPC_MESSAGE _pRpcMessage,
  284.     DWORD *_pdwStubPhase);
  285. #endif  /* __IOleAdviseHolder_INTERFACE_DEFINED__ */
  286. #ifndef __IOleCache_INTERFACE_DEFINED__
  287. #define __IOleCache_INTERFACE_DEFINED__
  288. /* interface IOleCache */
  289. /* [unique][uuid][object] */ 
  290. typedef /* [unique] */ IOleCache *LPOLECACHE;
  291. EXTERN_C const IID IID_IOleCache;
  292. #if defined(__cplusplus) && !defined(CINTERFACE)
  293.     
  294.     MIDL_INTERFACE("0000011e-0000-0000-C000-000000000046")
  295.     IOleCache : public IUnknown
  296.     {
  297.     public:
  298.         virtual HRESULT STDMETHODCALLTYPE Cache( 
  299.             /* [unique][in] */ FORMATETC *pformatetc,
  300.             /* [in] */ DWORD advf,
  301.             /* [out] */ DWORD *pdwConnection) = 0;
  302.         
  303.         virtual HRESULT STDMETHODCALLTYPE Uncache( 
  304.             /* [in] */ DWORD dwConnection) = 0;
  305.         
  306.         virtual HRESULT STDMETHODCALLTYPE EnumCache( 
  307.             /* [out] */ IEnumSTATDATA **ppenumSTATDATA) = 0;
  308.         
  309.         virtual HRESULT STDMETHODCALLTYPE InitCache( 
  310.             /* [unique][in] */ IDataObject *pDataObject) = 0;
  311.         
  312.         virtual HRESULT STDMETHODCALLTYPE SetData( 
  313.             /* [unique][in] */ FORMATETC *pformatetc,
  314.             /* [unique][in] */ STGMEDIUM *pmedium,
  315.             /* [in] */ BOOL fRelease) = 0;
  316.         
  317.     };
  318.     
  319. #else  /* C style interface */
  320.     typedef struct IOleCacheVtbl
  321.     {
  322.         BEGIN_INTERFACE
  323.         
  324.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  325.             IOleCache * This,
  326.             /* [in] */ REFIID riid,
  327.             /* [iid_is][out] */ void **ppvObject);
  328.         
  329.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  330.             IOleCache * This);
  331.         
  332.         ULONG ( STDMETHODCALLTYPE *Release )( 
  333.             IOleCache * This);
  334.         
  335.         HRESULT ( STDMETHODCALLTYPE *Cache )( 
  336.             IOleCache * This,
  337.             /* [unique][in] */ FORMATETC *pformatetc,
  338.             /* [in] */ DWORD advf,
  339.             /* [out] */ DWORD *pdwConnection);
  340.         
  341.         HRESULT ( STDMETHODCALLTYPE *Uncache )( 
  342.             IOleCache * This,
  343.             /* [in] */ DWORD dwConnection);
  344.         
  345.         HRESULT ( STDMETHODCALLTYPE *EnumCache )( 
  346.             IOleCache * This,
  347.             /* [out] */ IEnumSTATDATA **ppenumSTATDATA);
  348.         
  349.         HRESULT ( STDMETHODCALLTYPE *InitCache )( 
  350.             IOleCache * This,
  351.             /* [unique][in] */ IDataObject *pDataObject);
  352.         
  353.         HRESULT ( STDMETHODCALLTYPE *SetData )( 
  354.             IOleCache * This,
  355.             /* [unique][in] */ FORMATETC *pformatetc,
  356.             /* [unique][in] */ STGMEDIUM *pmedium,
  357.             /* [in] */ BOOL fRelease);
  358.         
  359.         END_INTERFACE
  360.     } IOleCacheVtbl;
  361.     interface IOleCache
  362.     {
  363.         CONST_VTBL struct IOleCacheVtbl *lpVtbl;
  364.     };
  365.     
  366. #ifdef COBJMACROS
  367. #define IOleCache_QueryInterface(This,riid,ppvObject)
  368.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  369. #define IOleCache_AddRef(This)
  370.     (This)->lpVtbl -> AddRef(This)
  371. #define IOleCache_Release(This)
  372.     (This)->lpVtbl -> Release(This)
  373. #define IOleCache_Cache(This,pformatetc,advf,pdwConnection)
  374.     (This)->lpVtbl -> Cache(This,pformatetc,advf,pdwConnection)
  375. #define IOleCache_Uncache(This,dwConnection)
  376.     (This)->lpVtbl -> Uncache(This,dwConnection)
  377. #define IOleCache_EnumCache(This,ppenumSTATDATA)
  378.     (This)->lpVtbl -> EnumCache(This,ppenumSTATDATA)
  379. #define IOleCache_InitCache(This,pDataObject)
  380.     (This)->lpVtbl -> InitCache(This,pDataObject)
  381. #define IOleCache_SetData(This,pformatetc,pmedium,fRelease)
  382.     (This)->lpVtbl -> SetData(This,pformatetc,pmedium,fRelease)
  383. #endif /* COBJMACROS */
  384. #endif  /* C style interface */
  385. HRESULT STDMETHODCALLTYPE IOleCache_Cache_Proxy( 
  386.     IOleCache * This,
  387.     /* [unique][in] */ FORMATETC *pformatetc,
  388.     /* [in] */ DWORD advf,
  389.     /* [out] */ DWORD *pdwConnection);
  390. void __RPC_STUB IOleCache_Cache_Stub(
  391.     IRpcStubBuffer *This,
  392.     IRpcChannelBuffer *_pRpcChannelBuffer,
  393.     PRPC_MESSAGE _pRpcMessage,
  394.     DWORD *_pdwStubPhase);
  395. HRESULT STDMETHODCALLTYPE IOleCache_Uncache_Proxy( 
  396.     IOleCache * This,
  397.     /* [in] */ DWORD dwConnection);
  398. void __RPC_STUB IOleCache_Uncache_Stub(
  399.     IRpcStubBuffer *This,
  400.     IRpcChannelBuffer *_pRpcChannelBuffer,
  401.     PRPC_MESSAGE _pRpcMessage,
  402.     DWORD *_pdwStubPhase);
  403. HRESULT STDMETHODCALLTYPE IOleCache_EnumCache_Proxy( 
  404.     IOleCache * This,
  405.     /* [out] */ IEnumSTATDATA **ppenumSTATDATA);
  406. void __RPC_STUB IOleCache_EnumCache_Stub(
  407.     IRpcStubBuffer *This,
  408.     IRpcChannelBuffer *_pRpcChannelBuffer,
  409.     PRPC_MESSAGE _pRpcMessage,
  410.     DWORD *_pdwStubPhase);
  411. HRESULT STDMETHODCALLTYPE IOleCache_InitCache_Proxy( 
  412.     IOleCache * This,
  413.     /* [unique][in] */ IDataObject *pDataObject);
  414. void __RPC_STUB IOleCache_InitCache_Stub(
  415.     IRpcStubBuffer *This,
  416.     IRpcChannelBuffer *_pRpcChannelBuffer,
  417.     PRPC_MESSAGE _pRpcMessage,
  418.     DWORD *_pdwStubPhase);
  419. HRESULT STDMETHODCALLTYPE IOleCache_SetData_Proxy( 
  420.     IOleCache * This,
  421.     /* [unique][in] */ FORMATETC *pformatetc,
  422.     /* [unique][in] */ STGMEDIUM *pmedium,
  423.     /* [in] */ BOOL fRelease);
  424. void __RPC_STUB IOleCache_SetData_Stub(
  425.     IRpcStubBuffer *This,
  426.     IRpcChannelBuffer *_pRpcChannelBuffer,
  427.     PRPC_MESSAGE _pRpcMessage,
  428.     DWORD *_pdwStubPhase);
  429. #endif  /* __IOleCache_INTERFACE_DEFINED__ */
  430. #ifndef __IOleCache2_INTERFACE_DEFINED__
  431. #define __IOleCache2_INTERFACE_DEFINED__
  432. /* interface IOleCache2 */
  433. /* [unique][uuid][object] */ 
  434. typedef /* [unique] */ IOleCache2 *LPOLECACHE2;
  435. #define UPDFCACHE_NODATACACHE ( 0x1 )
  436. #define UPDFCACHE_ONSAVECACHE ( 0x2 )
  437. #define UPDFCACHE_ONSTOPCACHE ( 0x4 )
  438. #define UPDFCACHE_NORMALCACHE ( 0x8 )
  439. #define UPDFCACHE_IFBLANK ( 0x10 )
  440. #define UPDFCACHE_ONLYIFBLANK ( 0x80000000 )
  441. #define UPDFCACHE_IFBLANKORONSAVECACHE ( UPDFCACHE_IFBLANK | UPDFCACHE_ONSAVECACHE )
  442. #define UPDFCACHE_ALL ( ( DWORD  )~UPDFCACHE_ONLYIFBLANK )
  443. #define UPDFCACHE_ALLBUTNODATACACHE ( UPDFCACHE_ALL & ( DWORD  )~UPDFCACHE_NODATACACHE )
  444. typedef /* [v1_enum] */ 
  445. enum tagDISCARDCACHE
  446.     { DISCARDCACHE_SAVEIFDIRTY = 0,
  447. DISCARDCACHE_NOSAVE = 1
  448.     }  DISCARDCACHE;
  449. EXTERN_C const IID IID_IOleCache2;
  450. #if defined(__cplusplus) && !defined(CINTERFACE)
  451.     
  452.     MIDL_INTERFACE("00000128-0000-0000-C000-000000000046")
  453.     IOleCache2 : public IOleCache
  454.     {
  455.     public:
  456.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE UpdateCache( 
  457.             /* [in] */ LPDATAOBJECT pDataObject,
  458.             /* [in] */ DWORD grfUpdf,
  459.             /* [in] */ LPVOID pReserved) = 0;
  460.         
  461.         virtual HRESULT STDMETHODCALLTYPE DiscardCache( 
  462.             /* [in] */ DWORD dwDiscardOptions) = 0;
  463.         
  464.     };
  465.     
  466. #else  /* C style interface */
  467.     typedef struct IOleCache2Vtbl
  468.     {
  469.         BEGIN_INTERFACE
  470.         
  471.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  472.             IOleCache2 * This,
  473.             /* [in] */ REFIID riid,
  474.             /* [iid_is][out] */ void **ppvObject);
  475.         
  476.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  477.             IOleCache2 * This);
  478.         
  479.         ULONG ( STDMETHODCALLTYPE *Release )( 
  480.             IOleCache2 * This);
  481.         
  482.         HRESULT ( STDMETHODCALLTYPE *Cache )( 
  483.             IOleCache2 * This,
  484.             /* [unique][in] */ FORMATETC *pformatetc,
  485.             /* [in] */ DWORD advf,
  486.             /* [out] */ DWORD *pdwConnection);
  487.         
  488.         HRESULT ( STDMETHODCALLTYPE *Uncache )( 
  489.             IOleCache2 * This,
  490.             /* [in] */ DWORD dwConnection);
  491.         
  492.         HRESULT ( STDMETHODCALLTYPE *EnumCache )( 
  493.             IOleCache2 * This,
  494.             /* [out] */ IEnumSTATDATA **ppenumSTATDATA);
  495.         
  496.         HRESULT ( STDMETHODCALLTYPE *InitCache )( 
  497.             IOleCache2 * This,
  498.             /* [unique][in] */ IDataObject *pDataObject);
  499.         
  500.         HRESULT ( STDMETHODCALLTYPE *SetData )( 
  501.             IOleCache2 * This,
  502.             /* [unique][in] */ FORMATETC *pformatetc,
  503.             /* [unique][in] */ STGMEDIUM *pmedium,
  504.             /* [in] */ BOOL fRelease);
  505.         
  506.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *UpdateCache )( 
  507.             IOleCache2 * This,
  508.             /* [in] */ LPDATAOBJECT pDataObject,
  509.             /* [in] */ DWORD grfUpdf,
  510.             /* [in] */ LPVOID pReserved);
  511.         
  512.         HRESULT ( STDMETHODCALLTYPE *DiscardCache )( 
  513.             IOleCache2 * This,
  514.             /* [in] */ DWORD dwDiscardOptions);
  515.         
  516.         END_INTERFACE
  517.     } IOleCache2Vtbl;
  518.     interface IOleCache2
  519.     {
  520.         CONST_VTBL struct IOleCache2Vtbl *lpVtbl;
  521.     };
  522.     
  523. #ifdef COBJMACROS
  524. #define IOleCache2_QueryInterface(This,riid,ppvObject)
  525.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  526. #define IOleCache2_AddRef(This)
  527.     (This)->lpVtbl -> AddRef(This)
  528. #define IOleCache2_Release(This)
  529.     (This)->lpVtbl -> Release(This)
  530. #define IOleCache2_Cache(This,pformatetc,advf,pdwConnection)
  531.     (This)->lpVtbl -> Cache(This,pformatetc,advf,pdwConnection)
  532. #define IOleCache2_Uncache(This,dwConnection)
  533.     (This)->lpVtbl -> Uncache(This,dwConnection)
  534. #define IOleCache2_EnumCache(This,ppenumSTATDATA)
  535.     (This)->lpVtbl -> EnumCache(This,ppenumSTATDATA)
  536. #define IOleCache2_InitCache(This,pDataObject)
  537.     (This)->lpVtbl -> InitCache(This,pDataObject)
  538. #define IOleCache2_SetData(This,pformatetc,pmedium,fRelease)
  539.     (This)->lpVtbl -> SetData(This,pformatetc,pmedium,fRelease)
  540. #define IOleCache2_UpdateCache(This,pDataObject,grfUpdf,pReserved)
  541.     (This)->lpVtbl -> UpdateCache(This,pDataObject,grfUpdf,pReserved)
  542. #define IOleCache2_DiscardCache(This,dwDiscardOptions)
  543.     (This)->lpVtbl -> DiscardCache(This,dwDiscardOptions)
  544. #endif /* COBJMACROS */
  545. #endif  /* C style interface */
  546. /* [call_as] */ HRESULT STDMETHODCALLTYPE IOleCache2_RemoteUpdateCache_Proxy( 
  547.     IOleCache2 * This,
  548.     /* [in] */ LPDATAOBJECT pDataObject,
  549.     /* [in] */ DWORD grfUpdf,
  550.     /* [in] */ LONG_PTR pReserved);
  551. void __RPC_STUB IOleCache2_RemoteUpdateCache_Stub(
  552.     IRpcStubBuffer *This,
  553.     IRpcChannelBuffer *_pRpcChannelBuffer,
  554.     PRPC_MESSAGE _pRpcMessage,
  555.     DWORD *_pdwStubPhase);
  556. HRESULT STDMETHODCALLTYPE IOleCache2_DiscardCache_Proxy( 
  557.     IOleCache2 * This,
  558.     /* [in] */ DWORD dwDiscardOptions);
  559. void __RPC_STUB IOleCache2_DiscardCache_Stub(
  560.     IRpcStubBuffer *This,
  561.     IRpcChannelBuffer *_pRpcChannelBuffer,
  562.     PRPC_MESSAGE _pRpcMessage,
  563.     DWORD *_pdwStubPhase);
  564. #endif  /* __IOleCache2_INTERFACE_DEFINED__ */
  565. #ifndef __IOleCacheControl_INTERFACE_DEFINED__
  566. #define __IOleCacheControl_INTERFACE_DEFINED__
  567. /* interface IOleCacheControl */
  568. /* [uuid][object] */ 
  569. typedef /* [unique] */ IOleCacheControl *LPOLECACHECONTROL;
  570. EXTERN_C const IID IID_IOleCacheControl;
  571. #if defined(__cplusplus) && !defined(CINTERFACE)
  572.     
  573.     MIDL_INTERFACE("00000129-0000-0000-C000-000000000046")
  574.     IOleCacheControl : public IUnknown
  575.     {
  576.     public:
  577.         virtual HRESULT STDMETHODCALLTYPE OnRun( 
  578.             LPDATAOBJECT pDataObject) = 0;
  579.         
  580.         virtual HRESULT STDMETHODCALLTYPE OnStop( void) = 0;
  581.         
  582.     };
  583.     
  584. #else  /* C style interface */
  585.     typedef struct IOleCacheControlVtbl
  586.     {
  587.         BEGIN_INTERFACE
  588.         
  589.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  590.             IOleCacheControl * This,
  591.             /* [in] */ REFIID riid,
  592.             /* [iid_is][out] */ void **ppvObject);
  593.         
  594.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  595.             IOleCacheControl * This);
  596.         
  597.         ULONG ( STDMETHODCALLTYPE *Release )( 
  598.             IOleCacheControl * This);
  599.         
  600.         HRESULT ( STDMETHODCALLTYPE *OnRun )( 
  601.             IOleCacheControl * This,
  602.             LPDATAOBJECT pDataObject);
  603.         
  604.         HRESULT ( STDMETHODCALLTYPE *OnStop )( 
  605.             IOleCacheControl * This);
  606.         
  607.         END_INTERFACE
  608.     } IOleCacheControlVtbl;
  609.     interface IOleCacheControl
  610.     {
  611.         CONST_VTBL struct IOleCacheControlVtbl *lpVtbl;
  612.     };
  613.     
  614. #ifdef COBJMACROS
  615. #define IOleCacheControl_QueryInterface(This,riid,ppvObject)
  616.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  617. #define IOleCacheControl_AddRef(This)
  618.     (This)->lpVtbl -> AddRef(This)
  619. #define IOleCacheControl_Release(This)
  620.     (This)->lpVtbl -> Release(This)
  621. #define IOleCacheControl_OnRun(This,pDataObject)
  622.     (This)->lpVtbl -> OnRun(This,pDataObject)
  623. #define IOleCacheControl_OnStop(This)
  624.     (This)->lpVtbl -> OnStop(This)
  625. #endif /* COBJMACROS */
  626. #endif  /* C style interface */
  627. HRESULT STDMETHODCALLTYPE IOleCacheControl_OnRun_Proxy( 
  628.     IOleCacheControl * This,
  629.     LPDATAOBJECT pDataObject);
  630. void __RPC_STUB IOleCacheControl_OnRun_Stub(
  631.     IRpcStubBuffer *This,
  632.     IRpcChannelBuffer *_pRpcChannelBuffer,
  633.     PRPC_MESSAGE _pRpcMessage,
  634.     DWORD *_pdwStubPhase);
  635. HRESULT STDMETHODCALLTYPE IOleCacheControl_OnStop_Proxy( 
  636.     IOleCacheControl * This);
  637. void __RPC_STUB IOleCacheControl_OnStop_Stub(
  638.     IRpcStubBuffer *This,
  639.     IRpcChannelBuffer *_pRpcChannelBuffer,
  640.     PRPC_MESSAGE _pRpcMessage,
  641.     DWORD *_pdwStubPhase);
  642. #endif  /* __IOleCacheControl_INTERFACE_DEFINED__ */
  643. #ifndef __IParseDisplayName_INTERFACE_DEFINED__
  644. #define __IParseDisplayName_INTERFACE_DEFINED__
  645. /* interface IParseDisplayName */
  646. /* [unique][uuid][object] */ 
  647. typedef /* [unique] */ IParseDisplayName *LPPARSEDISPLAYNAME;
  648. EXTERN_C const IID IID_IParseDisplayName;
  649. #if defined(__cplusplus) && !defined(CINTERFACE)
  650.     
  651.     MIDL_INTERFACE("0000011a-0000-0000-C000-000000000046")
  652.     IParseDisplayName : public IUnknown
  653.     {
  654.     public:
  655.         virtual HRESULT STDMETHODCALLTYPE ParseDisplayName( 
  656.             /* [unique][in] */ IBindCtx *pbc,
  657.             /* [in] */ LPOLESTR pszDisplayName,
  658.             /* [out] */ ULONG *pchEaten,
  659.             /* [out] */ IMoniker **ppmkOut) = 0;
  660.         
  661.     };
  662.     
  663. #else  /* C style interface */
  664.     typedef struct IParseDisplayNameVtbl
  665.     {
  666.         BEGIN_INTERFACE
  667.         
  668.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  669.             IParseDisplayName * This,
  670.             /* [in] */ REFIID riid,
  671.             /* [iid_is][out] */ void **ppvObject);
  672.         
  673.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  674.             IParseDisplayName * This);
  675.         
  676.         ULONG ( STDMETHODCALLTYPE *Release )( 
  677.             IParseDisplayName * This);
  678.         
  679.         HRESULT ( STDMETHODCALLTYPE *ParseDisplayName )( 
  680.             IParseDisplayName * This,
  681.             /* [unique][in] */ IBindCtx *pbc,
  682.             /* [in] */ LPOLESTR pszDisplayName,
  683.             /* [out] */ ULONG *pchEaten,
  684.             /* [out] */ IMoniker **ppmkOut);
  685.         
  686.         END_INTERFACE
  687.     } IParseDisplayNameVtbl;
  688.     interface IParseDisplayName
  689.     {
  690.         CONST_VTBL struct IParseDisplayNameVtbl *lpVtbl;
  691.     };
  692.     
  693. #ifdef COBJMACROS
  694. #define IParseDisplayName_QueryInterface(This,riid,ppvObject)
  695.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  696. #define IParseDisplayName_AddRef(This)
  697.     (This)->lpVtbl -> AddRef(This)
  698. #define IParseDisplayName_Release(This)
  699.     (This)->lpVtbl -> Release(This)
  700. #define IParseDisplayName_ParseDisplayName(This,pbc,pszDisplayName,pchEaten,ppmkOut)
  701.     (This)->lpVtbl -> ParseDisplayName(This,pbc,pszDisplayName,pchEaten,ppmkOut)
  702. #endif /* COBJMACROS */
  703. #endif  /* C style interface */
  704. HRESULT STDMETHODCALLTYPE IParseDisplayName_ParseDisplayName_Proxy( 
  705.     IParseDisplayName * This,
  706.     /* [unique][in] */ IBindCtx *pbc,
  707.     /* [in] */ LPOLESTR pszDisplayName,
  708.     /* [out] */ ULONG *pchEaten,
  709.     /* [out] */ IMoniker **ppmkOut);
  710. void __RPC_STUB IParseDisplayName_ParseDisplayName_Stub(
  711.     IRpcStubBuffer *This,
  712.     IRpcChannelBuffer *_pRpcChannelBuffer,
  713.     PRPC_MESSAGE _pRpcMessage,
  714.     DWORD *_pdwStubPhase);
  715. #endif  /* __IParseDisplayName_INTERFACE_DEFINED__ */
  716. #ifndef __IOleContainer_INTERFACE_DEFINED__
  717. #define __IOleContainer_INTERFACE_DEFINED__
  718. /* interface IOleContainer */
  719. /* [unique][uuid][object] */ 
  720. typedef /* [unique] */ IOleContainer *LPOLECONTAINER;
  721. EXTERN_C const IID IID_IOleContainer;
  722. #if defined(__cplusplus) && !defined(CINTERFACE)
  723.     
  724.     MIDL_INTERFACE("0000011b-0000-0000-C000-000000000046")
  725.     IOleContainer : public IParseDisplayName
  726.     {
  727.     public:
  728.         virtual HRESULT STDMETHODCALLTYPE EnumObjects( 
  729.             /* [in] */ DWORD grfFlags,
  730.             /* [out] */ IEnumUnknown **ppenum) = 0;
  731.         
  732.         virtual HRESULT STDMETHODCALLTYPE LockContainer( 
  733.             /* [in] */ BOOL fLock) = 0;
  734.         
  735.     };
  736.     
  737. #else  /* C style interface */
  738.     typedef struct IOleContainerVtbl
  739.     {
  740.         BEGIN_INTERFACE
  741.         
  742.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  743.             IOleContainer * This,
  744.             /* [in] */ REFIID riid,
  745.             /* [iid_is][out] */ void **ppvObject);
  746.         
  747.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  748.             IOleContainer * This);
  749.         
  750.         ULONG ( STDMETHODCALLTYPE *Release )( 
  751.             IOleContainer * This);
  752.         
  753.         HRESULT ( STDMETHODCALLTYPE *ParseDisplayName )( 
  754.             IOleContainer * This,
  755.             /* [unique][in] */ IBindCtx *pbc,
  756.             /* [in] */ LPOLESTR pszDisplayName,
  757.             /* [out] */ ULONG *pchEaten,
  758.             /* [out] */ IMoniker **ppmkOut);
  759.         
  760.         HRESULT ( STDMETHODCALLTYPE *EnumObjects )( 
  761.             IOleContainer * This,
  762.             /* [in] */ DWORD grfFlags,
  763.             /* [out] */ IEnumUnknown **ppenum);
  764.         
  765.         HRESULT ( STDMETHODCALLTYPE *LockContainer )( 
  766.             IOleContainer * This,
  767.             /* [in] */ BOOL fLock);
  768.         
  769.         END_INTERFACE
  770.     } IOleContainerVtbl;
  771.     interface IOleContainer
  772.     {
  773.         CONST_VTBL struct IOleContainerVtbl *lpVtbl;
  774.     };
  775.     
  776. #ifdef COBJMACROS
  777. #define IOleContainer_QueryInterface(This,riid,ppvObject)
  778.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  779. #define IOleContainer_AddRef(This)
  780.     (This)->lpVtbl -> AddRef(This)
  781. #define IOleContainer_Release(This)
  782.     (This)->lpVtbl -> Release(This)
  783. #define IOleContainer_ParseDisplayName(This,pbc,pszDisplayName,pchEaten,ppmkOut)
  784.     (This)->lpVtbl -> ParseDisplayName(This,pbc,pszDisplayName,pchEaten,ppmkOut)
  785. #define IOleContainer_EnumObjects(This,grfFlags,ppenum)
  786.     (This)->lpVtbl -> EnumObjects(This,grfFlags,ppenum)
  787. #define IOleContainer_LockContainer(This,fLock)
  788.     (This)->lpVtbl -> LockContainer(This,fLock)
  789. #endif /* COBJMACROS */
  790. #endif  /* C style interface */
  791. HRESULT STDMETHODCALLTYPE IOleContainer_EnumObjects_Proxy( 
  792.     IOleContainer * This,
  793.     /* [in] */ DWORD grfFlags,
  794.     /* [out] */ IEnumUnknown **ppenum);
  795. void __RPC_STUB IOleContainer_EnumObjects_Stub(
  796.     IRpcStubBuffer *This,
  797.     IRpcChannelBuffer *_pRpcChannelBuffer,
  798.     PRPC_MESSAGE _pRpcMessage,
  799.     DWORD *_pdwStubPhase);
  800. HRESULT STDMETHODCALLTYPE IOleContainer_LockContainer_Proxy( 
  801.     IOleContainer * This,
  802.     /* [in] */ BOOL fLock);
  803. void __RPC_STUB IOleContainer_LockContainer_Stub(
  804.     IRpcStubBuffer *This,
  805.     IRpcChannelBuffer *_pRpcChannelBuffer,
  806.     PRPC_MESSAGE _pRpcMessage,
  807.     DWORD *_pdwStubPhase);
  808. #endif  /* __IOleContainer_INTERFACE_DEFINED__ */
  809. #ifndef __IOleClientSite_INTERFACE_DEFINED__
  810. #define __IOleClientSite_INTERFACE_DEFINED__
  811. /* interface IOleClientSite */
  812. /* [unique][uuid][object] */ 
  813. typedef /* [unique] */ IOleClientSite *LPOLECLIENTSITE;
  814. EXTERN_C const IID IID_IOleClientSite;
  815. #if defined(__cplusplus) && !defined(CINTERFACE)
  816.     
  817.     MIDL_INTERFACE("00000118-0000-0000-C000-000000000046")
  818.     IOleClientSite : public IUnknown
  819.     {
  820.     public:
  821.         virtual HRESULT STDMETHODCALLTYPE SaveObject( void) = 0;
  822.         
  823.         virtual HRESULT STDMETHODCALLTYPE GetMoniker( 
  824.             /* [in] */ DWORD dwAssign,
  825.             /* [in] */ DWORD dwWhichMoniker,
  826.             /* [out] */ IMoniker **ppmk) = 0;
  827.         
  828.         virtual HRESULT STDMETHODCALLTYPE GetContainer( 
  829.             /* [out] */ IOleContainer **ppContainer) = 0;
  830.         
  831.         virtual HRESULT STDMETHODCALLTYPE ShowObject( void) = 0;
  832.         
  833.         virtual HRESULT STDMETHODCALLTYPE OnShowWindow( 
  834.             /* [in] */ BOOL fShow) = 0;
  835.         
  836.         virtual HRESULT STDMETHODCALLTYPE RequestNewObjectLayout( void) = 0;
  837.         
  838.     };
  839.     
  840. #else  /* C style interface */
  841.     typedef struct IOleClientSiteVtbl
  842.     {
  843.         BEGIN_INTERFACE
  844.         
  845.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  846.             IOleClientSite * This,
  847.             /* [in] */ REFIID riid,
  848.             /* [iid_is][out] */ void **ppvObject);
  849.         
  850.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  851.             IOleClientSite * This);
  852.         
  853.         ULONG ( STDMETHODCALLTYPE *Release )( 
  854.             IOleClientSite * This);
  855.         
  856.         HRESULT ( STDMETHODCALLTYPE *SaveObject )( 
  857.             IOleClientSite * This);
  858.         
  859.         HRESULT ( STDMETHODCALLTYPE *GetMoniker )( 
  860.             IOleClientSite * This,
  861.             /* [in] */ DWORD dwAssign,
  862.             /* [in] */ DWORD dwWhichMoniker,
  863.             /* [out] */ IMoniker **ppmk);
  864.         
  865.         HRESULT ( STDMETHODCALLTYPE *GetContainer )( 
  866.             IOleClientSite * This,
  867.             /* [out] */ IOleContainer **ppContainer);
  868.         
  869.         HRESULT ( STDMETHODCALLTYPE *ShowObject )( 
  870.             IOleClientSite * This);
  871.         
  872.         HRESULT ( STDMETHODCALLTYPE *OnShowWindow )( 
  873.             IOleClientSite * This,
  874.             /* [in] */ BOOL fShow);
  875.         
  876.         HRESULT ( STDMETHODCALLTYPE *RequestNewObjectLayout )( 
  877.             IOleClientSite * This);
  878.         
  879.         END_INTERFACE
  880.     } IOleClientSiteVtbl;
  881.     interface IOleClientSite
  882.     {
  883.         CONST_VTBL struct IOleClientSiteVtbl *lpVtbl;
  884.     };
  885.     
  886. #ifdef COBJMACROS
  887. #define IOleClientSite_QueryInterface(This,riid,ppvObject)
  888.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  889. #define IOleClientSite_AddRef(This)
  890.     (This)->lpVtbl -> AddRef(This)
  891. #define IOleClientSite_Release(This)
  892.     (This)->lpVtbl -> Release(This)
  893. #define IOleClientSite_SaveObject(This)
  894.     (This)->lpVtbl -> SaveObject(This)
  895. #define IOleClientSite_GetMoniker(This,dwAssign,dwWhichMoniker,ppmk)
  896.     (This)->lpVtbl -> GetMoniker(This,dwAssign,dwWhichMoniker,ppmk)
  897. #define IOleClientSite_GetContainer(This,ppContainer)
  898.     (This)->lpVtbl -> GetContainer(This,ppContainer)
  899. #define IOleClientSite_ShowObject(This)
  900.     (This)->lpVtbl -> ShowObject(This)
  901. #define IOleClientSite_OnShowWindow(This,fShow)
  902.     (This)->lpVtbl -> OnShowWindow(This,fShow)
  903. #define IOleClientSite_RequestNewObjectLayout(This)
  904.     (This)->lpVtbl -> RequestNewObjectLayout(This)
  905. #endif /* COBJMACROS */
  906. #endif  /* C style interface */
  907. HRESULT STDMETHODCALLTYPE IOleClientSite_SaveObject_Proxy( 
  908.     IOleClientSite * This);
  909. void __RPC_STUB IOleClientSite_SaveObject_Stub(
  910.     IRpcStubBuffer *This,
  911.     IRpcChannelBuffer *_pRpcChannelBuffer,
  912.     PRPC_MESSAGE _pRpcMessage,
  913.     DWORD *_pdwStubPhase);
  914. HRESULT STDMETHODCALLTYPE IOleClientSite_GetMoniker_Proxy( 
  915.     IOleClientSite * This,
  916.     /* [in] */ DWORD dwAssign,
  917.     /* [in] */ DWORD dwWhichMoniker,
  918.     /* [out] */ IMoniker **ppmk);
  919. void __RPC_STUB IOleClientSite_GetMoniker_Stub(
  920.     IRpcStubBuffer *This,
  921.     IRpcChannelBuffer *_pRpcChannelBuffer,
  922.     PRPC_MESSAGE _pRpcMessage,
  923.     DWORD *_pdwStubPhase);
  924. HRESULT STDMETHODCALLTYPE IOleClientSite_GetContainer_Proxy( 
  925.     IOleClientSite * This,
  926.     /* [out] */ IOleContainer **ppContainer);
  927. void __RPC_STUB IOleClientSite_GetContainer_Stub(
  928.     IRpcStubBuffer *This,
  929.     IRpcChannelBuffer *_pRpcChannelBuffer,
  930.     PRPC_MESSAGE _pRpcMessage,
  931.     DWORD *_pdwStubPhase);
  932. HRESULT STDMETHODCALLTYPE IOleClientSite_ShowObject_Proxy( 
  933.     IOleClientSite * This);
  934. void __RPC_STUB IOleClientSite_ShowObject_Stub(
  935.     IRpcStubBuffer *This,
  936.     IRpcChannelBuffer *_pRpcChannelBuffer,
  937.     PRPC_MESSAGE _pRpcMessage,
  938.     DWORD *_pdwStubPhase);
  939. HRESULT STDMETHODCALLTYPE IOleClientSite_OnShowWindow_Proxy( 
  940.     IOleClientSite * This,
  941.     /* [in] */ BOOL fShow);
  942. void __RPC_STUB IOleClientSite_OnShowWindow_Stub(
  943.     IRpcStubBuffer *This,
  944.     IRpcChannelBuffer *_pRpcChannelBuffer,
  945.     PRPC_MESSAGE _pRpcMessage,
  946.     DWORD *_pdwStubPhase);
  947. HRESULT STDMETHODCALLTYPE IOleClientSite_RequestNewObjectLayout_Proxy( 
  948.     IOleClientSite * This);
  949. void __RPC_STUB IOleClientSite_RequestNewObjectLayout_Stub(
  950.     IRpcStubBuffer *This,
  951.     IRpcChannelBuffer *_pRpcChannelBuffer,
  952.     PRPC_MESSAGE _pRpcMessage,
  953.     DWORD *_pdwStubPhase);
  954. #endif  /* __IOleClientSite_INTERFACE_DEFINED__ */
  955. #ifndef __IOleObject_INTERFACE_DEFINED__
  956. #define __IOleObject_INTERFACE_DEFINED__
  957. /* interface IOleObject */
  958. /* [unique][uuid][object] */ 
  959. typedef /* [unique] */ IOleObject *LPOLEOBJECT;
  960. typedef 
  961. enum tagOLEGETMONIKER
  962.     { OLEGETMONIKER_ONLYIFTHERE = 1,
  963. OLEGETMONIKER_FORCEASSIGN = 2,
  964. OLEGETMONIKER_UNASSIGN = 3,
  965. OLEGETMONIKER_TEMPFORUSER = 4
  966.     }  OLEGETMONIKER;
  967. typedef 
  968. enum tagOLEWHICHMK
  969.     { OLEWHICHMK_CONTAINER = 1,
  970. OLEWHICHMK_OBJREL = 2,
  971. OLEWHICHMK_OBJFULL = 3
  972.     }  OLEWHICHMK;
  973. typedef 
  974. enum tagUSERCLASSTYPE
  975.     { USERCLASSTYPE_FULL = 1,
  976. USERCLASSTYPE_SHORT = 2,
  977. USERCLASSTYPE_APPNAME = 3
  978.     }  USERCLASSTYPE;
  979. typedef 
  980. enum tagOLEMISC
  981.     { OLEMISC_RECOMPOSEONRESIZE = 0x1,
  982. OLEMISC_ONLYICONIC = 0x2,
  983. OLEMISC_INSERTNOTREPLACE = 0x4,
  984. OLEMISC_STATIC = 0x8,
  985. OLEMISC_CANTLINKINSIDE = 0x10,
  986. OLEMISC_CANLINKBYOLE1 = 0x20,
  987. OLEMISC_ISLINKOBJECT = 0x40,
  988. OLEMISC_INSIDEOUT = 0x80,
  989. OLEMISC_ACTIVATEWHENVISIBLE = 0x100,
  990. OLEMISC_RENDERINGISDEVICEINDEPENDENT = 0x200,
  991. OLEMISC_INVISIBLEATRUNTIME = 0x400,
  992. OLEMISC_ALWAYSRUN = 0x800,
  993. OLEMISC_ACTSLIKEBUTTON = 0x1000,
  994. OLEMISC_ACTSLIKELABEL = 0x2000,
  995. OLEMISC_NOUIACTIVATE = 0x4000,
  996. OLEMISC_ALIGNABLE = 0x8000,
  997. OLEMISC_SIMPLEFRAME = 0x10000,
  998. OLEMISC_SETCLIENTSITEFIRST = 0x20000,
  999. OLEMISC_IMEMODE = 0x40000,
  1000. OLEMISC_IGNOREACTIVATEWHENVISIBLE = 0x80000,
  1001. OLEMISC_WANTSTOMENUMERGE = 0x100000,
  1002. OLEMISC_SUPPORTSMULTILEVELUNDO = 0x200000
  1003.     }  OLEMISC;
  1004. typedef 
  1005. enum tagOLECLOSE
  1006.     { OLECLOSE_SAVEIFDIRTY = 0,
  1007. OLECLOSE_NOSAVE = 1,
  1008. OLECLOSE_PROMPTSAVE = 2
  1009.     }  OLECLOSE;
  1010. EXTERN_C const IID IID_IOleObject;
  1011. #if defined(__cplusplus) && !defined(CINTERFACE)
  1012.     
  1013.     MIDL_INTERFACE("00000112-0000-0000-C000-000000000046")
  1014.     IOleObject : public IUnknown
  1015.     {
  1016.     public:
  1017.         virtual HRESULT STDMETHODCALLTYPE SetClientSite( 
  1018.             /* [unique][in] */ IOleClientSite *pClientSite) = 0;
  1019.         
  1020.         virtual HRESULT STDMETHODCALLTYPE GetClientSite( 
  1021.             /* [out] */ IOleClientSite **ppClientSite) = 0;
  1022.         
  1023.         virtual HRESULT STDMETHODCALLTYPE SetHostNames( 
  1024.             /* [in] */ LPCOLESTR szContainerApp,
  1025.             /* [unique][in] */ LPCOLESTR szContainerObj) = 0;
  1026.         
  1027.         virtual HRESULT STDMETHODCALLTYPE Close( 
  1028.             /* [in] */ DWORD dwSaveOption) = 0;
  1029.         
  1030.         virtual HRESULT STDMETHODCALLTYPE SetMoniker( 
  1031.             /* [in] */ DWORD dwWhichMoniker,
  1032.             /* [unique][in] */ IMoniker *pmk) = 0;
  1033.         
  1034.         virtual HRESULT STDMETHODCALLTYPE GetMoniker( 
  1035.             /* [in] */ DWORD dwAssign,
  1036.             /* [in] */ DWORD dwWhichMoniker,
  1037.             /* [out] */ IMoniker **ppmk) = 0;
  1038.         
  1039.         virtual HRESULT STDMETHODCALLTYPE InitFromData( 
  1040.             /* [unique][in] */ IDataObject *pDataObject,
  1041.             /* [in] */ BOOL fCreation,
  1042.             /* [in] */ DWORD dwReserved) = 0;
  1043.         
  1044.         virtual HRESULT STDMETHODCALLTYPE GetClipboardData( 
  1045.             /* [in] */ DWORD dwReserved,
  1046.             /* [out] */ IDataObject **ppDataObject) = 0;
  1047.         
  1048.         virtual HRESULT STDMETHODCALLTYPE DoVerb( 
  1049.             /* [in] */ LONG iVerb,
  1050.             /* [unique][in] */ LPMSG lpmsg,
  1051.             /* [unique][in] */ IOleClientSite *pActiveSite,
  1052.             /* [in] */ LONG lindex,
  1053.             /* [in] */ HWND hwndParent,
  1054.             /* [unique][in] */ LPCRECT lprcPosRect) = 0;
  1055.         
  1056.         virtual HRESULT STDMETHODCALLTYPE EnumVerbs( 
  1057.             /* [out] */ IEnumOLEVERB **ppEnumOleVerb) = 0;
  1058.         
  1059.         virtual HRESULT STDMETHODCALLTYPE Update( void) = 0;
  1060.         
  1061.         virtual HRESULT STDMETHODCALLTYPE IsUpToDate( void) = 0;
  1062.         
  1063.         virtual HRESULT STDMETHODCALLTYPE GetUserClassID( 
  1064.             /* [out] */ CLSID *pClsid) = 0;
  1065.         
  1066.         virtual HRESULT STDMETHODCALLTYPE GetUserType( 
  1067.             /* [in] */ DWORD dwFormOfType,
  1068.             /* [out] */ LPOLESTR *pszUserType) = 0;
  1069.         
  1070.         virtual HRESULT STDMETHODCALLTYPE SetExtent( 
  1071.             /* [in] */ DWORD dwDrawAspect,
  1072.             /* [in] */ SIZEL *psizel) = 0;
  1073.         
  1074.         virtual HRESULT STDMETHODCALLTYPE GetExtent( 
  1075.             /* [in] */ DWORD dwDrawAspect,
  1076.             /* [out] */ SIZEL *psizel) = 0;
  1077.         
  1078.         virtual HRESULT STDMETHODCALLTYPE Advise( 
  1079.             /* [unique][in] */ IAdviseSink *pAdvSink,
  1080.             /* [out] */ DWORD *pdwConnection) = 0;
  1081.         
  1082.         virtual HRESULT STDMETHODCALLTYPE Unadvise( 
  1083.             /* [in] */ DWORD dwConnection) = 0;
  1084.         
  1085.         virtual HRESULT STDMETHODCALLTYPE EnumAdvise( 
  1086.             /* [out] */ IEnumSTATDATA **ppenumAdvise) = 0;
  1087.         
  1088.         virtual HRESULT STDMETHODCALLTYPE GetMiscStatus( 
  1089.             /* [in] */ DWORD dwAspect,
  1090.             /* [out] */ DWORD *pdwStatus) = 0;
  1091.         
  1092.         virtual HRESULT STDMETHODCALLTYPE SetColorScheme( 
  1093.             /* [in] */ LOGPALETTE *pLogpal) = 0;
  1094.         
  1095.     };
  1096.     
  1097. #else  /* C style interface */
  1098.     typedef struct IOleObjectVtbl
  1099.     {
  1100.         BEGIN_INTERFACE
  1101.         
  1102.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1103.             IOleObject * This,
  1104.             /* [in] */ REFIID riid,
  1105.             /* [iid_is][out] */ void **ppvObject);
  1106.         
  1107.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1108.             IOleObject * This);
  1109.         
  1110.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1111.             IOleObject * This);
  1112.         
  1113.         HRESULT ( STDMETHODCALLTYPE *SetClientSite )( 
  1114.             IOleObject * This,
  1115.             /* [unique][in] */ IOleClientSite *pClientSite);
  1116.         
  1117.         HRESULT ( STDMETHODCALLTYPE *GetClientSite )( 
  1118.             IOleObject * This,
  1119.             /* [out] */ IOleClientSite **ppClientSite);
  1120.         
  1121.         HRESULT ( STDMETHODCALLTYPE *SetHostNames )( 
  1122.             IOleObject * This,
  1123.             /* [in] */ LPCOLESTR szContainerApp,
  1124.             /* [unique][in] */ LPCOLESTR szContainerObj);
  1125.         
  1126.         HRESULT ( STDMETHODCALLTYPE *Close )( 
  1127.             IOleObject * This,
  1128.             /* [in] */ DWORD dwSaveOption);
  1129.         
  1130.         HRESULT ( STDMETHODCALLTYPE *SetMoniker )( 
  1131.             IOleObject * This,
  1132.             /* [in] */ DWORD dwWhichMoniker,
  1133.             /* [unique][in] */ IMoniker *pmk);
  1134.         
  1135.         HRESULT ( STDMETHODCALLTYPE *GetMoniker )( 
  1136.             IOleObject * This,
  1137.             /* [in] */ DWORD dwAssign,
  1138.             /* [in] */ DWORD dwWhichMoniker,
  1139.             /* [out] */ IMoniker **ppmk);
  1140.         
  1141.         HRESULT ( STDMETHODCALLTYPE *InitFromData )( 
  1142.             IOleObject * This,
  1143.             /* [unique][in] */ IDataObject *pDataObject,
  1144.             /* [in] */ BOOL fCreation,
  1145.             /* [in] */ DWORD dwReserved);
  1146.         
  1147.         HRESULT ( STDMETHODCALLTYPE *GetClipboardData )( 
  1148.             IOleObject * This,
  1149.             /* [in] */ DWORD dwReserved,
  1150.             /* [out] */ IDataObject **ppDataObject);
  1151.         
  1152.         HRESULT ( STDMETHODCALLTYPE *DoVerb )( 
  1153.             IOleObject * This,
  1154.             /* [in] */ LONG iVerb,
  1155.             /* [unique][in] */ LPMSG lpmsg,
  1156.             /* [unique][in] */ IOleClientSite *pActiveSite,
  1157.             /* [in] */ LONG lindex,
  1158.             /* [in] */ HWND hwndParent,
  1159.             /* [unique][in] */ LPCRECT lprcPosRect);
  1160.         
  1161.         HRESULT ( STDMETHODCALLTYPE *EnumVerbs )( 
  1162.             IOleObject * This,
  1163.             /* [out] */ IEnumOLEVERB **ppEnumOleVerb);
  1164.         
  1165.         HRESULT ( STDMETHODCALLTYPE *Update )( 
  1166.             IOleObject * This);
  1167.         
  1168.         HRESULT ( STDMETHODCALLTYPE *IsUpToDate )( 
  1169.             IOleObject * This);
  1170.         
  1171.         HRESULT ( STDMETHODCALLTYPE *GetUserClassID )( 
  1172.             IOleObject * This,
  1173.             /* [out] */ CLSID *pClsid);
  1174.         
  1175.         HRESULT ( STDMETHODCALLTYPE *GetUserType )( 
  1176.             IOleObject * This,
  1177.             /* [in] */ DWORD dwFormOfType,
  1178.             /* [out] */ LPOLESTR *pszUserType);
  1179.         
  1180.         HRESULT ( STDMETHODCALLTYPE *SetExtent )( 
  1181.             IOleObject * This,
  1182.             /* [in] */ DWORD dwDrawAspect,
  1183.             /* [in] */ SIZEL *psizel);
  1184.         
  1185.         HRESULT ( STDMETHODCALLTYPE *GetExtent )( 
  1186.             IOleObject * This,
  1187.             /* [in] */ DWORD dwDrawAspect,
  1188.             /* [out] */ SIZEL *psizel);
  1189.         
  1190.         HRESULT ( STDMETHODCALLTYPE *Advise )( 
  1191.             IOleObject * This,
  1192.             /* [unique][in] */ IAdviseSink *pAdvSink,
  1193.             /* [out] */ DWORD *pdwConnection);
  1194.         
  1195.         HRESULT ( STDMETHODCALLTYPE *Unadvise )( 
  1196.             IOleObject * This,
  1197.             /* [in] */ DWORD dwConnection);
  1198.         
  1199.         HRESULT ( STDMETHODCALLTYPE *EnumAdvise )( 
  1200.             IOleObject * This,
  1201.             /* [out] */ IEnumSTATDATA **ppenumAdvise);
  1202.         
  1203.         HRESULT ( STDMETHODCALLTYPE *GetMiscStatus )( 
  1204.             IOleObject * This,
  1205.             /* [in] */ DWORD dwAspect,
  1206.             /* [out] */ DWORD *pdwStatus);
  1207.         
  1208.         HRESULT ( STDMETHODCALLTYPE *SetColorScheme )( 
  1209.             IOleObject * This,
  1210.             /* [in] */ LOGPALETTE *pLogpal);
  1211.         
  1212.         END_INTERFACE
  1213.     } IOleObjectVtbl;
  1214.     interface IOleObject
  1215.     {
  1216.         CONST_VTBL struct IOleObjectVtbl *lpVtbl;
  1217.     };
  1218.     
  1219. #ifdef COBJMACROS
  1220. #define IOleObject_QueryInterface(This,riid,ppvObject)
  1221.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1222. #define IOleObject_AddRef(This)
  1223.     (This)->lpVtbl -> AddRef(This)
  1224. #define IOleObject_Release(This)
  1225.     (This)->lpVtbl -> Release(This)
  1226. #define IOleObject_SetClientSite(This,pClientSite)
  1227.     (This)->lpVtbl -> SetClientSite(This,pClientSite)
  1228. #define IOleObject_GetClientSite(This,ppClientSite)
  1229.     (This)->lpVtbl -> GetClientSite(This,ppClientSite)
  1230. #define IOleObject_SetHostNames(This,szContainerApp,szContainerObj)
  1231.     (This)->lpVtbl -> SetHostNames(This,szContainerApp,szContainerObj)
  1232. #define IOleObject_Close(This,dwSaveOption)
  1233.     (This)->lpVtbl -> Close(This,dwSaveOption)
  1234. #define IOleObject_SetMoniker(This,dwWhichMoniker,pmk)
  1235.     (This)->lpVtbl -> SetMoniker(This,dwWhichMoniker,pmk)
  1236. #define IOleObject_GetMoniker(This,dwAssign,dwWhichMoniker,ppmk)
  1237.     (This)->lpVtbl -> GetMoniker(This,dwAssign,dwWhichMoniker,ppmk)
  1238. #define IOleObject_InitFromData(This,pDataObject,fCreation,dwReserved)
  1239.     (This)->lpVtbl -> InitFromData(This,pDataObject,fCreation,dwReserved)
  1240. #define IOleObject_GetClipboardData(This,dwReserved,ppDataObject)
  1241.     (This)->lpVtbl -> GetClipboardData(This,dwReserved,ppDataObject)
  1242. #define IOleObject_DoVerb(This,iVerb,lpmsg,pActiveSite,lindex,hwndParent,lprcPosRect)
  1243.     (This)->lpVtbl -> DoVerb(This,iVerb,lpmsg,pActiveSite,lindex,hwndParent,lprcPosRect)
  1244. #define IOleObject_EnumVerbs(This,ppEnumOleVerb)
  1245.     (This)->lpVtbl -> EnumVerbs(This,ppEnumOleVerb)
  1246. #define IOleObject_Update(This)
  1247.     (This)->lpVtbl -> Update(This)
  1248. #define IOleObject_IsUpToDate(This)
  1249.     (This)->lpVtbl -> IsUpToDate(This)
  1250. #define IOleObject_GetUserClassID(This,pClsid)
  1251.     (This)->lpVtbl -> GetUserClassID(This,pClsid)
  1252. #define IOleObject_GetUserType(This,dwFormOfType,pszUserType)
  1253.     (This)->lpVtbl -> GetUserType(This,dwFormOfType,pszUserType)
  1254. #define IOleObject_SetExtent(This,dwDrawAspect,psizel)
  1255.     (This)->lpVtbl -> SetExtent(This,dwDrawAspect,psizel)
  1256. #define IOleObject_GetExtent(This,dwDrawAspect,psizel)
  1257.     (This)->lpVtbl -> GetExtent(This,dwDrawAspect,psizel)
  1258. #define IOleObject_Advise(This,pAdvSink,pdwConnection)
  1259.     (This)->lpVtbl -> Advise(This,pAdvSink,pdwConnection)
  1260. #define IOleObject_Unadvise(This,dwConnection)
  1261.     (This)->lpVtbl -> Unadvise(This,dwConnection)
  1262. #define IOleObject_EnumAdvise(This,ppenumAdvise)
  1263.     (This)->lpVtbl -> EnumAdvise(This,ppenumAdvise)
  1264. #define IOleObject_GetMiscStatus(This,dwAspect,pdwStatus)
  1265.     (This)->lpVtbl -> GetMiscStatus(This,dwAspect,pdwStatus)
  1266. #define IOleObject_SetColorScheme(This,pLogpal)
  1267.     (This)->lpVtbl -> SetColorScheme(This,pLogpal)
  1268. #endif /* COBJMACROS */
  1269. #endif  /* C style interface */
  1270. HRESULT STDMETHODCALLTYPE IOleObject_SetClientSite_Proxy( 
  1271.     IOleObject * This,
  1272.     /* [unique][in] */ IOleClientSite *pClientSite);
  1273. void __RPC_STUB IOleObject_SetClientSite_Stub(
  1274.     IRpcStubBuffer *This,
  1275.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1276.     PRPC_MESSAGE _pRpcMessage,
  1277.     DWORD *_pdwStubPhase);
  1278. HRESULT STDMETHODCALLTYPE IOleObject_GetClientSite_Proxy( 
  1279.     IOleObject * This,
  1280.     /* [out] */ IOleClientSite **ppClientSite);
  1281. void __RPC_STUB IOleObject_GetClientSite_Stub(
  1282.     IRpcStubBuffer *This,
  1283.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1284.     PRPC_MESSAGE _pRpcMessage,
  1285.     DWORD *_pdwStubPhase);
  1286. HRESULT STDMETHODCALLTYPE IOleObject_SetHostNames_Proxy( 
  1287.     IOleObject * This,
  1288.     /* [in] */ LPCOLESTR szContainerApp,
  1289.     /* [unique][in] */ LPCOLESTR szContainerObj);
  1290. void __RPC_STUB IOleObject_SetHostNames_Stub(
  1291.     IRpcStubBuffer *This,
  1292.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1293.     PRPC_MESSAGE _pRpcMessage,
  1294.     DWORD *_pdwStubPhase);
  1295. HRESULT STDMETHODCALLTYPE IOleObject_Close_Proxy( 
  1296.     IOleObject * This,
  1297.     /* [in] */ DWORD dwSaveOption);
  1298. void __RPC_STUB IOleObject_Close_Stub(
  1299.     IRpcStubBuffer *This,
  1300.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1301.     PRPC_MESSAGE _pRpcMessage,
  1302.     DWORD *_pdwStubPhase);
  1303. HRESULT STDMETHODCALLTYPE IOleObject_SetMoniker_Proxy( 
  1304.     IOleObject * This,
  1305.     /* [in] */ DWORD dwWhichMoniker,
  1306.     /* [unique][in] */ IMoniker *pmk);
  1307. void __RPC_STUB IOleObject_SetMoniker_Stub(
  1308.     IRpcStubBuffer *This,
  1309.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1310.     PRPC_MESSAGE _pRpcMessage,
  1311.     DWORD *_pdwStubPhase);
  1312. HRESULT STDMETHODCALLTYPE IOleObject_GetMoniker_Proxy( 
  1313.     IOleObject * This,
  1314.     /* [in] */ DWORD dwAssign,
  1315.     /* [in] */ DWORD dwWhichMoniker,
  1316.     /* [out] */ IMoniker **ppmk);
  1317. void __RPC_STUB IOleObject_GetMoniker_Stub(
  1318.     IRpcStubBuffer *This,
  1319.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1320.     PRPC_MESSAGE _pRpcMessage,
  1321.     DWORD *_pdwStubPhase);
  1322. HRESULT STDMETHODCALLTYPE IOleObject_InitFromData_Proxy( 
  1323.     IOleObject * This,
  1324.     /* [unique][in] */ IDataObject *pDataObject,
  1325.     /* [in] */ BOOL fCreation,
  1326.     /* [in] */ DWORD dwReserved);
  1327. void __RPC_STUB IOleObject_InitFromData_Stub(
  1328.     IRpcStubBuffer *This,
  1329.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1330.     PRPC_MESSAGE _pRpcMessage,
  1331.     DWORD *_pdwStubPhase);
  1332. HRESULT STDMETHODCALLTYPE IOleObject_GetClipboardData_Proxy( 
  1333.     IOleObject * This,
  1334.     /* [in] */ DWORD dwReserved,
  1335.     /* [out] */ IDataObject **ppDataObject);
  1336. void __RPC_STUB IOleObject_GetClipboardData_Stub(
  1337.     IRpcStubBuffer *This,
  1338.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1339.     PRPC_MESSAGE _pRpcMessage,
  1340.     DWORD *_pdwStubPhase);
  1341. HRESULT STDMETHODCALLTYPE IOleObject_DoVerb_Proxy( 
  1342.     IOleObject * This,
  1343.     /* [in] */ LONG iVerb,
  1344.     /* [unique][in] */ LPMSG lpmsg,
  1345.     /* [unique][in] */ IOleClientSite *pActiveSite,
  1346.     /* [in] */ LONG lindex,
  1347.     /* [in] */ HWND hwndParent,
  1348.     /* [unique][in] */ LPCRECT lprcPosRect);
  1349. void __RPC_STUB IOleObject_DoVerb_Stub(
  1350.     IRpcStubBuffer *This,
  1351.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1352.     PRPC_MESSAGE _pRpcMessage,
  1353.     DWORD *_pdwStubPhase);
  1354. HRESULT STDMETHODCALLTYPE IOleObject_EnumVerbs_Proxy( 
  1355.     IOleObject * This,
  1356.     /* [out] */ IEnumOLEVERB **ppEnumOleVerb);
  1357. void __RPC_STUB IOleObject_EnumVerbs_Stub(
  1358.     IRpcStubBuffer *This,
  1359.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1360.     PRPC_MESSAGE _pRpcMessage,
  1361.     DWORD *_pdwStubPhase);
  1362. HRESULT STDMETHODCALLTYPE IOleObject_Update_Proxy( 
  1363.     IOleObject * This);
  1364. void __RPC_STUB IOleObject_Update_Stub(
  1365.     IRpcStubBuffer *This,
  1366.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1367.     PRPC_MESSAGE _pRpcMessage,
  1368.     DWORD *_pdwStubPhase);
  1369. HRESULT STDMETHODCALLTYPE IOleObject_IsUpToDate_Proxy( 
  1370.     IOleObject * This);
  1371. void __RPC_STUB IOleObject_IsUpToDate_Stub(
  1372.     IRpcStubBuffer *This,
  1373.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1374.     PRPC_MESSAGE _pRpcMessage,
  1375.     DWORD *_pdwStubPhase);
  1376. HRESULT STDMETHODCALLTYPE IOleObject_GetUserClassID_Proxy( 
  1377.     IOleObject * This,
  1378.     /* [out] */ CLSID *pClsid);
  1379. void __RPC_STUB IOleObject_GetUserClassID_Stub(
  1380.     IRpcStubBuffer *This,
  1381.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1382.     PRPC_MESSAGE _pRpcMessage,
  1383.     DWORD *_pdwStubPhase);
  1384. HRESULT STDMETHODCALLTYPE IOleObject_GetUserType_Proxy( 
  1385.     IOleObject * This,
  1386.     /* [in] */ DWORD dwFormOfType,
  1387.     /* [out] */ LPOLESTR *pszUserType);
  1388. void __RPC_STUB IOleObject_GetUserType_Stub(
  1389.     IRpcStubBuffer *This,
  1390.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1391.     PRPC_MESSAGE _pRpcMessage,
  1392.     DWORD *_pdwStubPhase);
  1393. HRESULT STDMETHODCALLTYPE IOleObject_SetExtent_Proxy( 
  1394.     IOleObject * This,
  1395.     /* [in] */ DWORD dwDrawAspect,
  1396.     /* [in] */ SIZEL *psizel);
  1397. void __RPC_STUB IOleObject_SetExtent_Stub(
  1398.     IRpcStubBuffer *This,
  1399.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1400.     PRPC_MESSAGE _pRpcMessage,
  1401.     DWORD *_pdwStubPhase);
  1402. HRESULT STDMETHODCALLTYPE IOleObject_GetExtent_Proxy( 
  1403.     IOleObject * This,
  1404.     /* [in] */ DWORD dwDrawAspect,
  1405.     /* [out] */ SIZEL *psizel);
  1406. void __RPC_STUB IOleObject_GetExtent_Stub(
  1407.     IRpcStubBuffer *This,
  1408.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1409.     PRPC_MESSAGE _pRpcMessage,
  1410.     DWORD *_pdwStubPhase);
  1411. HRESULT STDMETHODCALLTYPE IOleObject_Advise_Proxy( 
  1412.     IOleObject * This,
  1413.     /* [unique][in] */ IAdviseSink *pAdvSink,
  1414.     /* [out] */ DWORD *pdwConnection);
  1415. void __RPC_STUB IOleObject_Advise_Stub(
  1416.     IRpcStubBuffer *This,
  1417.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1418.     PRPC_MESSAGE _pRpcMessage,
  1419.     DWORD *_pdwStubPhase);
  1420. HRESULT STDMETHODCALLTYPE IOleObject_Unadvise_Proxy( 
  1421.     IOleObject * This,
  1422.     /* [in] */ DWORD dwConnection);
  1423. void __RPC_STUB IOleObject_Unadvise_Stub(
  1424.     IRpcStubBuffer *This,
  1425.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1426.     PRPC_MESSAGE _pRpcMessage,
  1427.     DWORD *_pdwStubPhase);
  1428. HRESULT STDMETHODCALLTYPE IOleObject_EnumAdvise_Proxy( 
  1429.     IOleObject * This,
  1430.     /* [out] */ IEnumSTATDATA **ppenumAdvise);
  1431. void __RPC_STUB IOleObject_EnumAdvise_Stub(
  1432.     IRpcStubBuffer *This,
  1433.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1434.     PRPC_MESSAGE _pRpcMessage,
  1435.     DWORD *_pdwStubPhase);
  1436. HRESULT STDMETHODCALLTYPE IOleObject_GetMiscStatus_Proxy( 
  1437.     IOleObject * This,
  1438.     /* [in] */ DWORD dwAspect,
  1439.     /* [out] */ DWORD *pdwStatus);
  1440. void __RPC_STUB IOleObject_GetMiscStatus_Stub(
  1441.     IRpcStubBuffer *This,
  1442.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1443.     PRPC_MESSAGE _pRpcMessage,
  1444.     DWORD *_pdwStubPhase);
  1445. HRESULT STDMETHODCALLTYPE IOleObject_SetColorScheme_Proxy( 
  1446.     IOleObject * This,
  1447.     /* [in] */ LOGPALETTE *pLogpal);
  1448. void __RPC_STUB IOleObject_SetColorScheme_Stub(
  1449.     IRpcStubBuffer *This,
  1450.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1451.     PRPC_MESSAGE _pRpcMessage,
  1452.     DWORD *_pdwStubPhase);
  1453. #endif  /* __IOleObject_INTERFACE_DEFINED__ */
  1454. #ifndef __IOLETypes_INTERFACE_DEFINED__
  1455. #define __IOLETypes_INTERFACE_DEFINED__
  1456. /* interface IOLETypes */
  1457. /* [auto_handle][uuid] */ 
  1458. typedef 
  1459. enum tagOLERENDER
  1460.     { OLERENDER_NONE = 0,
  1461. OLERENDER_DRAW = 1,
  1462. OLERENDER_FORMAT = 2,
  1463. OLERENDER_ASIS = 3
  1464.     }  OLERENDER;
  1465. typedef OLERENDER *LPOLERENDER;
  1466. typedef struct tagOBJECTDESCRIPTOR
  1467.     {
  1468.     ULONG cbSize;
  1469.     CLSID clsid;
  1470.     DWORD dwDrawAspect;
  1471.     SIZEL sizel;
  1472.     POINTL pointl;
  1473.     DWORD dwStatus;
  1474.     DWORD dwFullUserTypeName;
  1475.     DWORD dwSrcOfCopy;
  1476.     }  OBJECTDESCRIPTOR;
  1477. typedef struct tagOBJECTDESCRIPTOR *POBJECTDESCRIPTOR;
  1478. typedef struct tagOBJECTDESCRIPTOR *LPOBJECTDESCRIPTOR;
  1479. typedef struct tagOBJECTDESCRIPTOR LINKSRCDESCRIPTOR;
  1480. typedef struct tagOBJECTDESCRIPTOR *PLINKSRCDESCRIPTOR;
  1481. typedef struct tagOBJECTDESCRIPTOR *LPLINKSRCDESCRIPTOR;
  1482. extern RPC_IF_HANDLE IOLETypes_v0_0_c_ifspec;
  1483. extern RPC_IF_HANDLE IOLETypes_v0_0_s_ifspec;
  1484. #endif /* __IOLETypes_INTERFACE_DEFINED__ */
  1485. #ifndef __IOleWindow_INTERFACE_DEFINED__
  1486. #define __IOleWindow_INTERFACE_DEFINED__
  1487. /* interface IOleWindow */
  1488. /* [unique][uuid][object] */ 
  1489. typedef /* [unique] */ IOleWindow *LPOLEWINDOW;
  1490. EXTERN_C const IID IID_IOleWindow;
  1491. #if defined(__cplusplus) && !defined(CINTERFACE)
  1492.     
  1493.     MIDL_INTERFACE("00000114-0000-0000-C000-000000000046")
  1494.     IOleWindow : public IUnknown
  1495.     {
  1496.     public:
  1497.         virtual /* [input_sync] */ HRESULT STDMETHODCALLTYPE GetWindow( 
  1498.             /* [out] */ HWND *phwnd) = 0;
  1499.         
  1500.         virtual HRESULT STDMETHODCALLTYPE ContextSensitiveHelp( 
  1501.             /* [in] */ BOOL fEnterMode) = 0;
  1502.         
  1503.     };
  1504.     
  1505. #else  /* C style interface */
  1506.     typedef struct IOleWindowVtbl
  1507.     {
  1508.         BEGIN_INTERFACE
  1509.         
  1510.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1511.             IOleWindow * This,
  1512.             /* [in] */ REFIID riid,
  1513.             /* [iid_is][out] */ void **ppvObject);
  1514.         
  1515.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1516.             IOleWindow * This);
  1517.         
  1518.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1519.             IOleWindow * This);
  1520.         
  1521.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetWindow )( 
  1522.             IOleWindow * This,
  1523.             /* [out] */ HWND *phwnd);
  1524.         
  1525.         HRESULT ( STDMETHODCALLTYPE *ContextSensitiveHelp )( 
  1526.             IOleWindow * This,
  1527.             /* [in] */ BOOL fEnterMode);
  1528.         
  1529.         END_INTERFACE
  1530.     } IOleWindowVtbl;
  1531.     interface IOleWindow
  1532.     {
  1533.         CONST_VTBL struct IOleWindowVtbl *lpVtbl;
  1534.     };
  1535.     
  1536. #ifdef COBJMACROS
  1537. #define IOleWindow_QueryInterface(This,riid,ppvObject)
  1538.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1539. #define IOleWindow_AddRef(This)
  1540.     (This)->lpVtbl -> AddRef(This)
  1541. #define IOleWindow_Release(This)
  1542.     (This)->lpVtbl -> Release(This)
  1543. #define IOleWindow_GetWindow(This,phwnd)
  1544.     (This)->lpVtbl -> GetWindow(This,phwnd)
  1545. #define IOleWindow_ContextSensitiveHelp(This,fEnterMode)
  1546.     (This)->lpVtbl -> ContextSensitiveHelp(This,fEnterMode)
  1547. #endif /* COBJMACROS */
  1548. #endif  /* C style interface */
  1549. /* [input_sync] */ HRESULT STDMETHODCALLTYPE IOleWindow_GetWindow_Proxy( 
  1550.     IOleWindow * This,
  1551.     /* [out] */ HWND *phwnd);
  1552. void __RPC_STUB IOleWindow_GetWindow_Stub(
  1553.     IRpcStubBuffer *This,
  1554.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1555.     PRPC_MESSAGE _pRpcMessage,
  1556.     DWORD *_pdwStubPhase);
  1557. HRESULT STDMETHODCALLTYPE IOleWindow_ContextSensitiveHelp_Proxy( 
  1558.     IOleWindow * This,
  1559.     /* [in] */ BOOL fEnterMode);
  1560. void __RPC_STUB IOleWindow_ContextSensitiveHelp_Stub(
  1561.     IRpcStubBuffer *This,
  1562.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1563.     PRPC_MESSAGE _pRpcMessage,
  1564.     DWORD *_pdwStubPhase);
  1565. #endif  /* __IOleWindow_INTERFACE_DEFINED__ */
  1566. #ifndef __IOleLink_INTERFACE_DEFINED__
  1567. #define __IOleLink_INTERFACE_DEFINED__
  1568. /* interface IOleLink */
  1569. /* [uuid][object] */ 
  1570. typedef /* [unique] */ IOleLink *LPOLELINK;
  1571. typedef 
  1572. enum tagOLEUPDATE
  1573.     { OLEUPDATE_ALWAYS = 1,
  1574. OLEUPDATE_ONCALL = 3
  1575.     }  OLEUPDATE;
  1576. typedef OLEUPDATE *LPOLEUPDATE;
  1577. typedef OLEUPDATE *POLEUPDATE;
  1578. typedef 
  1579. enum tagOLELINKBIND
  1580.     { OLELINKBIND_EVENIFCLASSDIFF = 1
  1581.     }  OLELINKBIND;
  1582. EXTERN_C const IID IID_IOleLink;
  1583. #if defined(__cplusplus) && !defined(CINTERFACE)
  1584.     
  1585.     MIDL_INTERFACE("0000011d-0000-0000-C000-000000000046")
  1586.     IOleLink : public IUnknown
  1587.     {
  1588.     public:
  1589.         virtual HRESULT STDMETHODCALLTYPE SetUpdateOptions( 
  1590.             /* [in] */ DWORD dwUpdateOpt) = 0;
  1591.         
  1592.         virtual HRESULT STDMETHODCALLTYPE GetUpdateOptions( 
  1593.             /* [out] */ DWORD *pdwUpdateOpt) = 0;
  1594.         
  1595.         virtual HRESULT STDMETHODCALLTYPE SetSourceMoniker( 
  1596.             /* [unique][in] */ IMoniker *pmk,
  1597.             /* [in] */ REFCLSID rclsid) = 0;
  1598.         
  1599.         virtual HRESULT STDMETHODCALLTYPE GetSourceMoniker( 
  1600.             /* [out] */ IMoniker **ppmk) = 0;
  1601.         
  1602.         virtual HRESULT STDMETHODCALLTYPE SetSourceDisplayName( 
  1603.             /* [in] */ LPCOLESTR pszStatusText) = 0;
  1604.         
  1605.         virtual HRESULT STDMETHODCALLTYPE GetSourceDisplayName( 
  1606.             /* [out] */ LPOLESTR *ppszDisplayName) = 0;
  1607.         
  1608.         virtual HRESULT STDMETHODCALLTYPE BindToSource( 
  1609.             /* [in] */ DWORD bindflags,
  1610.             /* [unique][in] */ IBindCtx *pbc) = 0;
  1611.         
  1612.         virtual HRESULT STDMETHODCALLTYPE BindIfRunning( void) = 0;
  1613.         
  1614.         virtual HRESULT STDMETHODCALLTYPE GetBoundSource( 
  1615.             /* [out] */ IUnknown **ppunk) = 0;
  1616.         
  1617.         virtual HRESULT STDMETHODCALLTYPE UnbindSource( void) = 0;
  1618.         
  1619.         virtual HRESULT STDMETHODCALLTYPE Update( 
  1620.             /* [unique][in] */ IBindCtx *pbc) = 0;
  1621.         
  1622.     };
  1623.     
  1624. #else  /* C style interface */
  1625.     typedef struct IOleLinkVtbl
  1626.     {
  1627.         BEGIN_INTERFACE
  1628.         
  1629.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1630.             IOleLink * This,
  1631.             /* [in] */ REFIID riid,
  1632.             /* [iid_is][out] */ void **ppvObject);
  1633.         
  1634.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1635.             IOleLink * This);
  1636.         
  1637.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1638.             IOleLink * This);
  1639.         
  1640.         HRESULT ( STDMETHODCALLTYPE *SetUpdateOptions )( 
  1641.             IOleLink * This,
  1642.             /* [in] */ DWORD dwUpdateOpt);
  1643.         
  1644.         HRESULT ( STDMETHODCALLTYPE *GetUpdateOptions )( 
  1645.             IOleLink * This,
  1646.             /* [out] */ DWORD *pdwUpdateOpt);
  1647.         
  1648.         HRESULT ( STDMETHODCALLTYPE *SetSourceMoniker )( 
  1649.             IOleLink * This,
  1650.             /* [unique][in] */ IMoniker *pmk,
  1651.             /* [in] */ REFCLSID rclsid);
  1652.         
  1653.         HRESULT ( STDMETHODCALLTYPE *GetSourceMoniker )( 
  1654.             IOleLink * This,
  1655.             /* [out] */ IMoniker **ppmk);
  1656.         
  1657.         HRESULT ( STDMETHODCALLTYPE *SetSourceDisplayName )( 
  1658.             IOleLink * This,
  1659.             /* [in] */ LPCOLESTR pszStatusText);
  1660.         
  1661.         HRESULT ( STDMETHODCALLTYPE *GetSourceDisplayName )( 
  1662.             IOleLink * This,
  1663.             /* [out] */ LPOLESTR *ppszDisplayName);
  1664.         
  1665.         HRESULT ( STDMETHODCALLTYPE *BindToSource )( 
  1666.             IOleLink * This,
  1667.             /* [in] */ DWORD bindflags,
  1668.             /* [unique][in] */ IBindCtx *pbc);
  1669.         
  1670.         HRESULT ( STDMETHODCALLTYPE *BindIfRunning )( 
  1671.             IOleLink * This);
  1672.         
  1673.         HRESULT ( STDMETHODCALLTYPE *GetBoundSource )( 
  1674.             IOleLink * This,
  1675.             /* [out] */ IUnknown **ppunk);
  1676.         
  1677.         HRESULT ( STDMETHODCALLTYPE *UnbindSource )( 
  1678.             IOleLink * This);
  1679.         
  1680.         HRESULT ( STDMETHODCALLTYPE *Update )( 
  1681.             IOleLink * This,
  1682.             /* [unique][in] */ IBindCtx *pbc);
  1683.         
  1684.         END_INTERFACE
  1685.     } IOleLinkVtbl;
  1686.     interface IOleLink
  1687.     {
  1688.         CONST_VTBL struct IOleLinkVtbl *lpVtbl;
  1689.     };
  1690.     
  1691. #ifdef COBJMACROS
  1692. #define IOleLink_QueryInterface(This,riid,ppvObject)
  1693.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1694. #define IOleLink_AddRef(This)
  1695.     (This)->lpVtbl -> AddRef(This)
  1696. #define IOleLink_Release(This)
  1697.     (This)->lpVtbl -> Release(This)
  1698. #define IOleLink_SetUpdateOptions(This,dwUpdateOpt)
  1699.     (This)->lpVtbl -> SetUpdateOptions(This,dwUpdateOpt)
  1700. #define IOleLink_GetUpdateOptions(This,pdwUpdateOpt)
  1701.     (This)->lpVtbl -> GetUpdateOptions(This,pdwUpdateOpt)
  1702. #define IOleLink_SetSourceMoniker(This,pmk,rclsid)
  1703.     (This)->lpVtbl -> SetSourceMoniker(This,pmk,rclsid)
  1704. #define IOleLink_GetSourceMoniker(This,ppmk)
  1705.     (This)->lpVtbl -> GetSourceMoniker(This,ppmk)
  1706. #define IOleLink_SetSourceDisplayName(This,pszStatusText)
  1707.     (This)->lpVtbl -> SetSourceDisplayName(This,pszStatusText)
  1708. #define IOleLink_GetSourceDisplayName(This,ppszDisplayName)
  1709.     (This)->lpVtbl -> GetSourceDisplayName(This,ppszDisplayName)
  1710. #define IOleLink_BindToSource(This,bindflags,pbc)
  1711.     (This)->lpVtbl -> BindToSource(This,bindflags,pbc)
  1712. #define IOleLink_BindIfRunning(This)
  1713.     (This)->lpVtbl -> BindIfRunning(This)
  1714. #define IOleLink_GetBoundSource(This,ppunk)
  1715.     (This)->lpVtbl -> GetBoundSource(This,ppunk)
  1716. #define IOleLink_UnbindSource(This)
  1717.     (This)->lpVtbl -> UnbindSource(This)
  1718. #define IOleLink_Update(This,pbc)
  1719.     (This)->lpVtbl -> Update(This,pbc)
  1720. #endif /* COBJMACROS */
  1721. #endif  /* C style interface */
  1722. HRESULT STDMETHODCALLTYPE IOleLink_SetUpdateOptions_Proxy( 
  1723.     IOleLink * This,
  1724.     /* [in] */ DWORD dwUpdateOpt);
  1725. void __RPC_STUB IOleLink_SetUpdateOptions_Stub(
  1726.     IRpcStubBuffer *This,
  1727.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1728.     PRPC_MESSAGE _pRpcMessage,
  1729.     DWORD *_pdwStubPhase);
  1730. HRESULT STDMETHODCALLTYPE IOleLink_GetUpdateOptions_Proxy( 
  1731.     IOleLink * This,
  1732.     /* [out] */ DWORD *pdwUpdateOpt);
  1733. void __RPC_STUB IOleLink_GetUpdateOptions_Stub(
  1734.     IRpcStubBuffer *This,
  1735.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1736.     PRPC_MESSAGE _pRpcMessage,
  1737.     DWORD *_pdwStubPhase);
  1738. HRESULT STDMETHODCALLTYPE IOleLink_SetSourceMoniker_Proxy( 
  1739.     IOleLink * This,
  1740.     /* [unique][in] */ IMoniker *pmk,
  1741.     /* [in] */ REFCLSID rclsid);
  1742. void __RPC_STUB IOleLink_SetSourceMoniker_Stub(
  1743.     IRpcStubBuffer *This,
  1744.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1745.     PRPC_MESSAGE _pRpcMessage,
  1746.     DWORD *_pdwStubPhase);
  1747. HRESULT STDMETHODCALLTYPE IOleLink_GetSourceMoniker_Proxy( 
  1748.     IOleLink * This,
  1749.     /* [out] */ IMoniker **ppmk);
  1750. void __RPC_STUB IOleLink_GetSourceMoniker_Stub(
  1751.     IRpcStubBuffer *This,
  1752.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1753.     PRPC_MESSAGE _pRpcMessage,
  1754.     DWORD *_pdwStubPhase);
  1755. HRESULT STDMETHODCALLTYPE IOleLink_SetSourceDisplayName_Proxy( 
  1756.     IOleLink * This,
  1757.     /* [in] */ LPCOLESTR pszStatusText);
  1758. void __RPC_STUB IOleLink_SetSourceDisplayName_Stub(
  1759.     IRpcStubBuffer *This,
  1760.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1761.     PRPC_MESSAGE _pRpcMessage,
  1762.     DWORD *_pdwStubPhase);
  1763. HRESULT STDMETHODCALLTYPE IOleLink_GetSourceDisplayName_Proxy( 
  1764.     IOleLink * This,
  1765.     /* [out] */ LPOLESTR *ppszDisplayName);
  1766. void __RPC_STUB IOleLink_GetSourceDisplayName_Stub(
  1767.     IRpcStubBuffer *This,
  1768.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1769.     PRPC_MESSAGE _pRpcMessage,
  1770.     DWORD *_pdwStubPhase);
  1771. HRESULT STDMETHODCALLTYPE IOleLink_BindToSource_Proxy( 
  1772.     IOleLink * This,
  1773.     /* [in] */ DWORD bindflags,
  1774.     /* [unique][in] */ IBindCtx *pbc);
  1775. void __RPC_STUB IOleLink_BindToSource_Stub(
  1776.     IRpcStubBuffer *This,
  1777.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1778.     PRPC_MESSAGE _pRpcMessage,
  1779.     DWORD *_pdwStubPhase);
  1780. HRESULT STDMETHODCALLTYPE IOleLink_BindIfRunning_Proxy( 
  1781.     IOleLink * This);
  1782. void __RPC_STUB IOleLink_BindIfRunning_Stub(
  1783.     IRpcStubBuffer *This,
  1784.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1785.     PRPC_MESSAGE _pRpcMessage,
  1786.     DWORD *_pdwStubPhase);
  1787. HRESULT STDMETHODCALLTYPE IOleLink_GetBoundSource_Proxy( 
  1788.     IOleLink * This,
  1789.     /* [out] */ IUnknown **ppunk);
  1790. void __RPC_STUB IOleLink_GetBoundSource_Stub(
  1791.     IRpcStubBuffer *This,
  1792.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1793.     PRPC_MESSAGE _pRpcMessage,
  1794.     DWORD *_pdwStubPhase);
  1795. HRESULT STDMETHODCALLTYPE IOleLink_UnbindSource_Proxy( 
  1796.     IOleLink * This);
  1797. void __RPC_STUB IOleLink_UnbindSource_Stub(
  1798.     IRpcStubBuffer *This,
  1799.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1800.     PRPC_MESSAGE _pRpcMessage,
  1801.     DWORD *_pdwStubPhase);
  1802. HRESULT STDMETHODCALLTYPE IOleLink_Update_Proxy( 
  1803.     IOleLink * This,
  1804.     /* [unique][in] */ IBindCtx *pbc);
  1805. void __RPC_STUB IOleLink_Update_Stub(
  1806.     IRpcStubBuffer *This,
  1807.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1808.     PRPC_MESSAGE _pRpcMessage,
  1809.     DWORD *_pdwStubPhase);
  1810. #endif  /* __IOleLink_INTERFACE_DEFINED__ */
  1811. #ifndef __IOleItemContainer_INTERFACE_DEFINED__
  1812. #define __IOleItemContainer_INTERFACE_DEFINED__
  1813. /* interface IOleItemContainer */
  1814. /* [unique][uuid][object] */ 
  1815. typedef /* [unique] */ IOleItemContainer *LPOLEITEMCONTAINER;
  1816. typedef 
  1817. enum tagBINDSPEED
  1818.     { BINDSPEED_INDEFINITE = 1,
  1819. BINDSPEED_MODERATE = 2,
  1820. BINDSPEED_IMMEDIATE = 3
  1821.     }  BINDSPEED;
  1822. typedef /* [v1_enum] */ 
  1823. enum tagOLECONTF
  1824.     { OLECONTF_EMBEDDINGS = 1,
  1825. OLECONTF_LINKS = 2,
  1826. OLECONTF_OTHERS = 4,
  1827. OLECONTF_ONLYUSER = 8,
  1828. OLECONTF_ONLYIFRUNNING = 16
  1829.     }  OLECONTF;
  1830. EXTERN_C const IID IID_IOleItemContainer;
  1831. #if defined(__cplusplus) && !defined(CINTERFACE)
  1832.     
  1833.     MIDL_INTERFACE("0000011c-0000-0000-C000-000000000046")
  1834.     IOleItemContainer : public IOleContainer
  1835.     {
  1836.     public:
  1837.         virtual HRESULT STDMETHODCALLTYPE GetObject( 
  1838.             /* [in] */ LPOLESTR pszItem,
  1839.             /* [in] */ DWORD dwSpeedNeeded,
  1840.             /* [unique][in] */ IBindCtx *pbc,
  1841.             /* [in] */ REFIID riid,
  1842.             /* [iid_is][out] */ void **ppvObject) = 0;
  1843.         
  1844.         virtual HRESULT STDMETHODCALLTYPE GetObjectStorage(