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

模拟服务器

开发平台:

C/C++

  1.             /* [in] */ LPOLESTR pszItem,
  2.             /* [unique][in] */ IBindCtx *pbc,
  3.             /* [in] */ REFIID riid,
  4.             /* [iid_is][out] */ void **ppvStorage) = 0;
  5.         
  6.         virtual HRESULT STDMETHODCALLTYPE IsRunning( 
  7.             /* [in] */ LPOLESTR pszItem) = 0;
  8.         
  9.     };
  10.     
  11. #else  /* C style interface */
  12.     typedef struct IOleItemContainerVtbl
  13.     {
  14.         BEGIN_INTERFACE
  15.         
  16.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  17.             IOleItemContainer * This,
  18.             /* [in] */ REFIID riid,
  19.             /* [iid_is][out] */ void **ppvObject);
  20.         
  21.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  22.             IOleItemContainer * This);
  23.         
  24.         ULONG ( STDMETHODCALLTYPE *Release )( 
  25.             IOleItemContainer * This);
  26.         
  27.         HRESULT ( STDMETHODCALLTYPE *ParseDisplayName )( 
  28.             IOleItemContainer * This,
  29.             /* [unique][in] */ IBindCtx *pbc,
  30.             /* [in] */ LPOLESTR pszDisplayName,
  31.             /* [out] */ ULONG *pchEaten,
  32.             /* [out] */ IMoniker **ppmkOut);
  33.         
  34.         HRESULT ( STDMETHODCALLTYPE *EnumObjects )( 
  35.             IOleItemContainer * This,
  36.             /* [in] */ DWORD grfFlags,
  37.             /* [out] */ IEnumUnknown **ppenum);
  38.         
  39.         HRESULT ( STDMETHODCALLTYPE *LockContainer )( 
  40.             IOleItemContainer * This,
  41.             /* [in] */ BOOL fLock);
  42.         
  43.         HRESULT ( STDMETHODCALLTYPE *GetObject )( 
  44.             IOleItemContainer * This,
  45.             /* [in] */ LPOLESTR pszItem,
  46.             /* [in] */ DWORD dwSpeedNeeded,
  47.             /* [unique][in] */ IBindCtx *pbc,
  48.             /* [in] */ REFIID riid,
  49.             /* [iid_is][out] */ void **ppvObject);
  50.         
  51.         HRESULT ( STDMETHODCALLTYPE *GetObjectStorage )( 
  52.             IOleItemContainer * This,
  53.             /* [in] */ LPOLESTR pszItem,
  54.             /* [unique][in] */ IBindCtx *pbc,
  55.             /* [in] */ REFIID riid,
  56.             /* [iid_is][out] */ void **ppvStorage);
  57.         
  58.         HRESULT ( STDMETHODCALLTYPE *IsRunning )( 
  59.             IOleItemContainer * This,
  60.             /* [in] */ LPOLESTR pszItem);
  61.         
  62.         END_INTERFACE
  63.     } IOleItemContainerVtbl;
  64.     interface IOleItemContainer
  65.     {
  66.         CONST_VTBL struct IOleItemContainerVtbl *lpVtbl;
  67.     };
  68.     
  69. #ifdef COBJMACROS
  70. #define IOleItemContainer_QueryInterface(This,riid,ppvObject)
  71.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  72. #define IOleItemContainer_AddRef(This)
  73.     (This)->lpVtbl -> AddRef(This)
  74. #define IOleItemContainer_Release(This)
  75.     (This)->lpVtbl -> Release(This)
  76. #define IOleItemContainer_ParseDisplayName(This,pbc,pszDisplayName,pchEaten,ppmkOut)
  77.     (This)->lpVtbl -> ParseDisplayName(This,pbc,pszDisplayName,pchEaten,ppmkOut)
  78. #define IOleItemContainer_EnumObjects(This,grfFlags,ppenum)
  79.     (This)->lpVtbl -> EnumObjects(This,grfFlags,ppenum)
  80. #define IOleItemContainer_LockContainer(This,fLock)
  81.     (This)->lpVtbl -> LockContainer(This,fLock)
  82. #define IOleItemContainer_GetObject(This,pszItem,dwSpeedNeeded,pbc,riid,ppvObject)
  83.     (This)->lpVtbl -> GetObject(This,pszItem,dwSpeedNeeded,pbc,riid,ppvObject)
  84. #define IOleItemContainer_GetObjectStorage(This,pszItem,pbc,riid,ppvStorage)
  85.     (This)->lpVtbl -> GetObjectStorage(This,pszItem,pbc,riid,ppvStorage)
  86. #define IOleItemContainer_IsRunning(This,pszItem)
  87.     (This)->lpVtbl -> IsRunning(This,pszItem)
  88. #endif /* COBJMACROS */
  89. #endif  /* C style interface */
  90. HRESULT STDMETHODCALLTYPE IOleItemContainer_GetObject_Proxy( 
  91.     IOleItemContainer * This,
  92.     /* [in] */ LPOLESTR pszItem,
  93.     /* [in] */ DWORD dwSpeedNeeded,
  94.     /* [unique][in] */ IBindCtx *pbc,
  95.     /* [in] */ REFIID riid,
  96.     /* [iid_is][out] */ void **ppvObject);
  97. void __RPC_STUB IOleItemContainer_GetObject_Stub(
  98.     IRpcStubBuffer *This,
  99.     IRpcChannelBuffer *_pRpcChannelBuffer,
  100.     PRPC_MESSAGE _pRpcMessage,
  101.     DWORD *_pdwStubPhase);
  102. HRESULT STDMETHODCALLTYPE IOleItemContainer_GetObjectStorage_Proxy( 
  103.     IOleItemContainer * This,
  104.     /* [in] */ LPOLESTR pszItem,
  105.     /* [unique][in] */ IBindCtx *pbc,
  106.     /* [in] */ REFIID riid,
  107.     /* [iid_is][out] */ void **ppvStorage);
  108. void __RPC_STUB IOleItemContainer_GetObjectStorage_Stub(
  109.     IRpcStubBuffer *This,
  110.     IRpcChannelBuffer *_pRpcChannelBuffer,
  111.     PRPC_MESSAGE _pRpcMessage,
  112.     DWORD *_pdwStubPhase);
  113. HRESULT STDMETHODCALLTYPE IOleItemContainer_IsRunning_Proxy( 
  114.     IOleItemContainer * This,
  115.     /* [in] */ LPOLESTR pszItem);
  116. void __RPC_STUB IOleItemContainer_IsRunning_Stub(
  117.     IRpcStubBuffer *This,
  118.     IRpcChannelBuffer *_pRpcChannelBuffer,
  119.     PRPC_MESSAGE _pRpcMessage,
  120.     DWORD *_pdwStubPhase);
  121. #endif  /* __IOleItemContainer_INTERFACE_DEFINED__ */
  122. #ifndef __IOleInPlaceUIWindow_INTERFACE_DEFINED__
  123. #define __IOleInPlaceUIWindow_INTERFACE_DEFINED__
  124. /* interface IOleInPlaceUIWindow */
  125. /* [unique][uuid][object] */ 
  126. typedef /* [unique] */ IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
  127. typedef RECT BORDERWIDTHS;
  128. typedef LPRECT LPBORDERWIDTHS;
  129. typedef LPCRECT LPCBORDERWIDTHS;
  130. EXTERN_C const IID IID_IOleInPlaceUIWindow;
  131. #if defined(__cplusplus) && !defined(CINTERFACE)
  132.     
  133.     MIDL_INTERFACE("00000115-0000-0000-C000-000000000046")
  134.     IOleInPlaceUIWindow : public IOleWindow
  135.     {
  136.     public:
  137.         virtual /* [input_sync] */ HRESULT STDMETHODCALLTYPE GetBorder( 
  138.             /* [out] */ LPRECT lprectBorder) = 0;
  139.         
  140.         virtual /* [input_sync] */ HRESULT STDMETHODCALLTYPE RequestBorderSpace( 
  141.             /* [unique][in] */ LPCBORDERWIDTHS pborderwidths) = 0;
  142.         
  143.         virtual /* [input_sync] */ HRESULT STDMETHODCALLTYPE SetBorderSpace( 
  144.             /* [unique][in] */ LPCBORDERWIDTHS pborderwidths) = 0;
  145.         
  146.         virtual HRESULT STDMETHODCALLTYPE SetActiveObject( 
  147.             /* [unique][in] */ IOleInPlaceActiveObject *pActiveObject,
  148.             /* [unique][string][in] */ LPCOLESTR pszObjName) = 0;
  149.         
  150.     };
  151.     
  152. #else  /* C style interface */
  153.     typedef struct IOleInPlaceUIWindowVtbl
  154.     {
  155.         BEGIN_INTERFACE
  156.         
  157.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  158.             IOleInPlaceUIWindow * This,
  159.             /* [in] */ REFIID riid,
  160.             /* [iid_is][out] */ void **ppvObject);
  161.         
  162.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  163.             IOleInPlaceUIWindow * This);
  164.         
  165.         ULONG ( STDMETHODCALLTYPE *Release )( 
  166.             IOleInPlaceUIWindow * This);
  167.         
  168.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetWindow )( 
  169.             IOleInPlaceUIWindow * This,
  170.             /* [out] */ HWND *phwnd);
  171.         
  172.         HRESULT ( STDMETHODCALLTYPE *ContextSensitiveHelp )( 
  173.             IOleInPlaceUIWindow * This,
  174.             /* [in] */ BOOL fEnterMode);
  175.         
  176.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetBorder )( 
  177.             IOleInPlaceUIWindow * This,
  178.             /* [out] */ LPRECT lprectBorder);
  179.         
  180.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *RequestBorderSpace )( 
  181.             IOleInPlaceUIWindow * This,
  182.             /* [unique][in] */ LPCBORDERWIDTHS pborderwidths);
  183.         
  184.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *SetBorderSpace )( 
  185.             IOleInPlaceUIWindow * This,
  186.             /* [unique][in] */ LPCBORDERWIDTHS pborderwidths);
  187.         
  188.         HRESULT ( STDMETHODCALLTYPE *SetActiveObject )( 
  189.             IOleInPlaceUIWindow * This,
  190.             /* [unique][in] */ IOleInPlaceActiveObject *pActiveObject,
  191.             /* [unique][string][in] */ LPCOLESTR pszObjName);
  192.         
  193.         END_INTERFACE
  194.     } IOleInPlaceUIWindowVtbl;
  195.     interface IOleInPlaceUIWindow
  196.     {
  197.         CONST_VTBL struct IOleInPlaceUIWindowVtbl *lpVtbl;
  198.     };
  199.     
  200. #ifdef COBJMACROS
  201. #define IOleInPlaceUIWindow_QueryInterface(This,riid,ppvObject)
  202.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  203. #define IOleInPlaceUIWindow_AddRef(This)
  204.     (This)->lpVtbl -> AddRef(This)
  205. #define IOleInPlaceUIWindow_Release(This)
  206.     (This)->lpVtbl -> Release(This)
  207. #define IOleInPlaceUIWindow_GetWindow(This,phwnd)
  208.     (This)->lpVtbl -> GetWindow(This,phwnd)
  209. #define IOleInPlaceUIWindow_ContextSensitiveHelp(This,fEnterMode)
  210.     (This)->lpVtbl -> ContextSensitiveHelp(This,fEnterMode)
  211. #define IOleInPlaceUIWindow_GetBorder(This,lprectBorder)
  212.     (This)->lpVtbl -> GetBorder(This,lprectBorder)
  213. #define IOleInPlaceUIWindow_RequestBorderSpace(This,pborderwidths)
  214.     (This)->lpVtbl -> RequestBorderSpace(This,pborderwidths)
  215. #define IOleInPlaceUIWindow_SetBorderSpace(This,pborderwidths)
  216.     (This)->lpVtbl -> SetBorderSpace(This,pborderwidths)
  217. #define IOleInPlaceUIWindow_SetActiveObject(This,pActiveObject,pszObjName)
  218.     (This)->lpVtbl -> SetActiveObject(This,pActiveObject,pszObjName)
  219. #endif /* COBJMACROS */
  220. #endif  /* C style interface */
  221. /* [input_sync] */ HRESULT STDMETHODCALLTYPE IOleInPlaceUIWindow_GetBorder_Proxy( 
  222.     IOleInPlaceUIWindow * This,
  223.     /* [out] */ LPRECT lprectBorder);
  224. void __RPC_STUB IOleInPlaceUIWindow_GetBorder_Stub(
  225.     IRpcStubBuffer *This,
  226.     IRpcChannelBuffer *_pRpcChannelBuffer,
  227.     PRPC_MESSAGE _pRpcMessage,
  228.     DWORD *_pdwStubPhase);
  229. /* [input_sync] */ HRESULT STDMETHODCALLTYPE IOleInPlaceUIWindow_RequestBorderSpace_Proxy( 
  230.     IOleInPlaceUIWindow * This,
  231.     /* [unique][in] */ LPCBORDERWIDTHS pborderwidths);
  232. void __RPC_STUB IOleInPlaceUIWindow_RequestBorderSpace_Stub(
  233.     IRpcStubBuffer *This,
  234.     IRpcChannelBuffer *_pRpcChannelBuffer,
  235.     PRPC_MESSAGE _pRpcMessage,
  236.     DWORD *_pdwStubPhase);
  237. /* [input_sync] */ HRESULT STDMETHODCALLTYPE IOleInPlaceUIWindow_SetBorderSpace_Proxy( 
  238.     IOleInPlaceUIWindow * This,
  239.     /* [unique][in] */ LPCBORDERWIDTHS pborderwidths);
  240. void __RPC_STUB IOleInPlaceUIWindow_SetBorderSpace_Stub(
  241.     IRpcStubBuffer *This,
  242.     IRpcChannelBuffer *_pRpcChannelBuffer,
  243.     PRPC_MESSAGE _pRpcMessage,
  244.     DWORD *_pdwStubPhase);
  245. HRESULT STDMETHODCALLTYPE IOleInPlaceUIWindow_SetActiveObject_Proxy( 
  246.     IOleInPlaceUIWindow * This,
  247.     /* [unique][in] */ IOleInPlaceActiveObject *pActiveObject,
  248.     /* [unique][string][in] */ LPCOLESTR pszObjName);
  249. void __RPC_STUB IOleInPlaceUIWindow_SetActiveObject_Stub(
  250.     IRpcStubBuffer *This,
  251.     IRpcChannelBuffer *_pRpcChannelBuffer,
  252.     PRPC_MESSAGE _pRpcMessage,
  253.     DWORD *_pdwStubPhase);
  254. #endif  /* __IOleInPlaceUIWindow_INTERFACE_DEFINED__ */
  255. #ifndef __IOleInPlaceActiveObject_INTERFACE_DEFINED__
  256. #define __IOleInPlaceActiveObject_INTERFACE_DEFINED__
  257. /* interface IOleInPlaceActiveObject */
  258. /* [uuid][object] */ 
  259. typedef /* [unique] */ IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
  260. EXTERN_C const IID IID_IOleInPlaceActiveObject;
  261. #if defined(__cplusplus) && !defined(CINTERFACE)
  262.     
  263.     MIDL_INTERFACE("00000117-0000-0000-C000-000000000046")
  264.     IOleInPlaceActiveObject : public IOleWindow
  265.     {
  266.     public:
  267.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE TranslateAccelerator( 
  268.             /* [in] */ LPMSG lpmsg) = 0;
  269.         
  270.         virtual /* [input_sync] */ HRESULT STDMETHODCALLTYPE OnFrameWindowActivate( 
  271.             /* [in] */ BOOL fActivate) = 0;
  272.         
  273.         virtual /* [input_sync] */ HRESULT STDMETHODCALLTYPE OnDocWindowActivate( 
  274.             /* [in] */ BOOL fActivate) = 0;
  275.         
  276.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE ResizeBorder( 
  277.             /* [in] */ LPCRECT prcBorder,
  278.             /* [unique][in] */ IOleInPlaceUIWindow *pUIWindow,
  279.             /* [in] */ BOOL fFrameWindow) = 0;
  280.         
  281.         virtual HRESULT STDMETHODCALLTYPE EnableModeless( 
  282.             /* [in] */ BOOL fEnable) = 0;
  283.         
  284.     };
  285.     
  286. #else  /* C style interface */
  287.     typedef struct IOleInPlaceActiveObjectVtbl
  288.     {
  289.         BEGIN_INTERFACE
  290.         
  291.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  292.             IOleInPlaceActiveObject * This,
  293.             /* [in] */ REFIID riid,
  294.             /* [iid_is][out] */ void **ppvObject);
  295.         
  296.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  297.             IOleInPlaceActiveObject * This);
  298.         
  299.         ULONG ( STDMETHODCALLTYPE *Release )( 
  300.             IOleInPlaceActiveObject * This);
  301.         
  302.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetWindow )( 
  303.             IOleInPlaceActiveObject * This,
  304.             /* [out] */ HWND *phwnd);
  305.         
  306.         HRESULT ( STDMETHODCALLTYPE *ContextSensitiveHelp )( 
  307.             IOleInPlaceActiveObject * This,
  308.             /* [in] */ BOOL fEnterMode);
  309.         
  310.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *TranslateAccelerator )( 
  311.             IOleInPlaceActiveObject * This,
  312.             /* [in] */ LPMSG lpmsg);
  313.         
  314.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *OnFrameWindowActivate )( 
  315.             IOleInPlaceActiveObject * This,
  316.             /* [in] */ BOOL fActivate);
  317.         
  318.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *OnDocWindowActivate )( 
  319.             IOleInPlaceActiveObject * This,
  320.             /* [in] */ BOOL fActivate);
  321.         
  322.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *ResizeBorder )( 
  323.             IOleInPlaceActiveObject * This,
  324.             /* [in] */ LPCRECT prcBorder,
  325.             /* [unique][in] */ IOleInPlaceUIWindow *pUIWindow,
  326.             /* [in] */ BOOL fFrameWindow);
  327.         
  328.         HRESULT ( STDMETHODCALLTYPE *EnableModeless )( 
  329.             IOleInPlaceActiveObject * This,
  330.             /* [in] */ BOOL fEnable);
  331.         
  332.         END_INTERFACE
  333.     } IOleInPlaceActiveObjectVtbl;
  334.     interface IOleInPlaceActiveObject
  335.     {
  336.         CONST_VTBL struct IOleInPlaceActiveObjectVtbl *lpVtbl;
  337.     };
  338.     
  339. #ifdef COBJMACROS
  340. #define IOleInPlaceActiveObject_QueryInterface(This,riid,ppvObject)
  341.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  342. #define IOleInPlaceActiveObject_AddRef(This)
  343.     (This)->lpVtbl -> AddRef(This)
  344. #define IOleInPlaceActiveObject_Release(This)
  345.     (This)->lpVtbl -> Release(This)
  346. #define IOleInPlaceActiveObject_GetWindow(This,phwnd)
  347.     (This)->lpVtbl -> GetWindow(This,phwnd)
  348. #define IOleInPlaceActiveObject_ContextSensitiveHelp(This,fEnterMode)
  349.     (This)->lpVtbl -> ContextSensitiveHelp(This,fEnterMode)
  350. #define IOleInPlaceActiveObject_TranslateAccelerator(This,lpmsg)
  351.     (This)->lpVtbl -> TranslateAccelerator(This,lpmsg)
  352. #define IOleInPlaceActiveObject_OnFrameWindowActivate(This,fActivate)
  353.     (This)->lpVtbl -> OnFrameWindowActivate(This,fActivate)
  354. #define IOleInPlaceActiveObject_OnDocWindowActivate(This,fActivate)
  355.     (This)->lpVtbl -> OnDocWindowActivate(This,fActivate)
  356. #define IOleInPlaceActiveObject_ResizeBorder(This,prcBorder,pUIWindow,fFrameWindow)
  357.     (This)->lpVtbl -> ResizeBorder(This,prcBorder,pUIWindow,fFrameWindow)
  358. #define IOleInPlaceActiveObject_EnableModeless(This,fEnable)
  359.     (This)->lpVtbl -> EnableModeless(This,fEnable)
  360. #endif /* COBJMACROS */
  361. #endif  /* C style interface */
  362. /* [call_as] */ HRESULT STDMETHODCALLTYPE IOleInPlaceActiveObject_RemoteTranslateAccelerator_Proxy( 
  363.     IOleInPlaceActiveObject * This);
  364. void __RPC_STUB IOleInPlaceActiveObject_RemoteTranslateAccelerator_Stub(
  365.     IRpcStubBuffer *This,
  366.     IRpcChannelBuffer *_pRpcChannelBuffer,
  367.     PRPC_MESSAGE _pRpcMessage,
  368.     DWORD *_pdwStubPhase);
  369. /* [input_sync] */ HRESULT STDMETHODCALLTYPE IOleInPlaceActiveObject_OnFrameWindowActivate_Proxy( 
  370.     IOleInPlaceActiveObject * This,
  371.     /* [in] */ BOOL fActivate);
  372. void __RPC_STUB IOleInPlaceActiveObject_OnFrameWindowActivate_Stub(
  373.     IRpcStubBuffer *This,
  374.     IRpcChannelBuffer *_pRpcChannelBuffer,
  375.     PRPC_MESSAGE _pRpcMessage,
  376.     DWORD *_pdwStubPhase);
  377. /* [input_sync] */ HRESULT STDMETHODCALLTYPE IOleInPlaceActiveObject_OnDocWindowActivate_Proxy( 
  378.     IOleInPlaceActiveObject * This,
  379.     /* [in] */ BOOL fActivate);
  380. void __RPC_STUB IOleInPlaceActiveObject_OnDocWindowActivate_Stub(
  381.     IRpcStubBuffer *This,
  382.     IRpcChannelBuffer *_pRpcChannelBuffer,
  383.     PRPC_MESSAGE _pRpcMessage,
  384.     DWORD *_pdwStubPhase);
  385. /* [input_sync][call_as] */ HRESULT STDMETHODCALLTYPE IOleInPlaceActiveObject_RemoteResizeBorder_Proxy( 
  386.     IOleInPlaceActiveObject * This,
  387.     /* [in] */ LPCRECT prcBorder,
  388.     /* [in] */ REFIID riid,
  389.     /* [iid_is][unique][in] */ IOleInPlaceUIWindow *pUIWindow,
  390.     /* [in] */ BOOL fFrameWindow);
  391. void __RPC_STUB IOleInPlaceActiveObject_RemoteResizeBorder_Stub(
  392.     IRpcStubBuffer *This,
  393.     IRpcChannelBuffer *_pRpcChannelBuffer,
  394.     PRPC_MESSAGE _pRpcMessage,
  395.     DWORD *_pdwStubPhase);
  396. HRESULT STDMETHODCALLTYPE IOleInPlaceActiveObject_EnableModeless_Proxy( 
  397.     IOleInPlaceActiveObject * This,
  398.     /* [in] */ BOOL fEnable);
  399. void __RPC_STUB IOleInPlaceActiveObject_EnableModeless_Stub(
  400.     IRpcStubBuffer *This,
  401.     IRpcChannelBuffer *_pRpcChannelBuffer,
  402.     PRPC_MESSAGE _pRpcMessage,
  403.     DWORD *_pdwStubPhase);
  404. #endif  /* __IOleInPlaceActiveObject_INTERFACE_DEFINED__ */
  405. #ifndef __IOleInPlaceFrame_INTERFACE_DEFINED__
  406. #define __IOleInPlaceFrame_INTERFACE_DEFINED__
  407. /* interface IOleInPlaceFrame */
  408. /* [unique][uuid][object] */ 
  409. typedef /* [unique] */ IOleInPlaceFrame *LPOLEINPLACEFRAME;
  410. typedef struct tagOIFI
  411.     {
  412.     UINT cb;
  413.     BOOL fMDIApp;
  414.     HWND hwndFrame;
  415.     HACCEL haccel;
  416.     UINT cAccelEntries;
  417.     }  OLEINPLACEFRAMEINFO;
  418. typedef struct tagOIFI *LPOLEINPLACEFRAMEINFO;
  419. typedef struct tagOleMenuGroupWidths
  420.     {
  421.     LONG width[ 6 ];
  422.     }  OLEMENUGROUPWIDTHS;
  423. typedef struct tagOleMenuGroupWidths *LPOLEMENUGROUPWIDTHS;
  424. typedef HGLOBAL HOLEMENU;
  425. EXTERN_C const IID IID_IOleInPlaceFrame;
  426. #if defined(__cplusplus) && !defined(CINTERFACE)
  427.     
  428.     MIDL_INTERFACE("00000116-0000-0000-C000-000000000046")
  429.     IOleInPlaceFrame : public IOleInPlaceUIWindow
  430.     {
  431.     public:
  432.         virtual HRESULT STDMETHODCALLTYPE InsertMenus( 
  433.             /* [in] */ HMENU hmenuShared,
  434.             /* [out][in] */ LPOLEMENUGROUPWIDTHS lpMenuWidths) = 0;
  435.         
  436.         virtual /* [input_sync] */ HRESULT STDMETHODCALLTYPE SetMenu( 
  437.             /* [in] */ HMENU hmenuShared,
  438.             /* [in] */ HOLEMENU holemenu,
  439.             /* [in] */ HWND hwndActiveObject) = 0;
  440.         
  441.         virtual HRESULT STDMETHODCALLTYPE RemoveMenus( 
  442.             /* [in] */ HMENU hmenuShared) = 0;
  443.         
  444.         virtual /* [input_sync] */ HRESULT STDMETHODCALLTYPE SetStatusText( 
  445.             /* [unique][in] */ LPCOLESTR pszStatusText) = 0;
  446.         
  447.         virtual HRESULT STDMETHODCALLTYPE EnableModeless( 
  448.             /* [in] */ BOOL fEnable) = 0;
  449.         
  450.         virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( 
  451.             /* [in] */ LPMSG lpmsg,
  452.             /* [in] */ WORD wID) = 0;
  453.         
  454.     };
  455.     
  456. #else  /* C style interface */
  457.     typedef struct IOleInPlaceFrameVtbl
  458.     {
  459.         BEGIN_INTERFACE
  460.         
  461.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  462.             IOleInPlaceFrame * This,
  463.             /* [in] */ REFIID riid,
  464.             /* [iid_is][out] */ void **ppvObject);
  465.         
  466.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  467.             IOleInPlaceFrame * This);
  468.         
  469.         ULONG ( STDMETHODCALLTYPE *Release )( 
  470.             IOleInPlaceFrame * This);
  471.         
  472.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetWindow )( 
  473.             IOleInPlaceFrame * This,
  474.             /* [out] */ HWND *phwnd);
  475.         
  476.         HRESULT ( STDMETHODCALLTYPE *ContextSensitiveHelp )( 
  477.             IOleInPlaceFrame * This,
  478.             /* [in] */ BOOL fEnterMode);
  479.         
  480.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetBorder )( 
  481.             IOleInPlaceFrame * This,
  482.             /* [out] */ LPRECT lprectBorder);
  483.         
  484.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *RequestBorderSpace )( 
  485.             IOleInPlaceFrame * This,
  486.             /* [unique][in] */ LPCBORDERWIDTHS pborderwidths);
  487.         
  488.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *SetBorderSpace )( 
  489.             IOleInPlaceFrame * This,
  490.             /* [unique][in] */ LPCBORDERWIDTHS pborderwidths);
  491.         
  492.         HRESULT ( STDMETHODCALLTYPE *SetActiveObject )( 
  493.             IOleInPlaceFrame * This,
  494.             /* [unique][in] */ IOleInPlaceActiveObject *pActiveObject,
  495.             /* [unique][string][in] */ LPCOLESTR pszObjName);
  496.         
  497.         HRESULT ( STDMETHODCALLTYPE *InsertMenus )( 
  498.             IOleInPlaceFrame * This,
  499.             /* [in] */ HMENU hmenuShared,
  500.             /* [out][in] */ LPOLEMENUGROUPWIDTHS lpMenuWidths);
  501.         
  502.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *SetMenu )( 
  503.             IOleInPlaceFrame * This,
  504.             /* [in] */ HMENU hmenuShared,
  505.             /* [in] */ HOLEMENU holemenu,
  506.             /* [in] */ HWND hwndActiveObject);
  507.         
  508.         HRESULT ( STDMETHODCALLTYPE *RemoveMenus )( 
  509.             IOleInPlaceFrame * This,
  510.             /* [in] */ HMENU hmenuShared);
  511.         
  512.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *SetStatusText )( 
  513.             IOleInPlaceFrame * This,
  514.             /* [unique][in] */ LPCOLESTR pszStatusText);
  515.         
  516.         HRESULT ( STDMETHODCALLTYPE *EnableModeless )( 
  517.             IOleInPlaceFrame * This,
  518.             /* [in] */ BOOL fEnable);
  519.         
  520.         HRESULT ( STDMETHODCALLTYPE *TranslateAccelerator )( 
  521.             IOleInPlaceFrame * This,
  522.             /* [in] */ LPMSG lpmsg,
  523.             /* [in] */ WORD wID);
  524.         
  525.         END_INTERFACE
  526.     } IOleInPlaceFrameVtbl;
  527.     interface IOleInPlaceFrame
  528.     {
  529.         CONST_VTBL struct IOleInPlaceFrameVtbl *lpVtbl;
  530.     };
  531.     
  532. #ifdef COBJMACROS
  533. #define IOleInPlaceFrame_QueryInterface(This,riid,ppvObject)
  534.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  535. #define IOleInPlaceFrame_AddRef(This)
  536.     (This)->lpVtbl -> AddRef(This)
  537. #define IOleInPlaceFrame_Release(This)
  538.     (This)->lpVtbl -> Release(This)
  539. #define IOleInPlaceFrame_GetWindow(This,phwnd)
  540.     (This)->lpVtbl -> GetWindow(This,phwnd)
  541. #define IOleInPlaceFrame_ContextSensitiveHelp(This,fEnterMode)
  542.     (This)->lpVtbl -> ContextSensitiveHelp(This,fEnterMode)
  543. #define IOleInPlaceFrame_GetBorder(This,lprectBorder)
  544.     (This)->lpVtbl -> GetBorder(This,lprectBorder)
  545. #define IOleInPlaceFrame_RequestBorderSpace(This,pborderwidths)
  546.     (This)->lpVtbl -> RequestBorderSpace(This,pborderwidths)
  547. #define IOleInPlaceFrame_SetBorderSpace(This,pborderwidths)
  548.     (This)->lpVtbl -> SetBorderSpace(This,pborderwidths)
  549. #define IOleInPlaceFrame_SetActiveObject(This,pActiveObject,pszObjName)
  550.     (This)->lpVtbl -> SetActiveObject(This,pActiveObject,pszObjName)
  551. #define IOleInPlaceFrame_InsertMenus(This,hmenuShared,lpMenuWidths)
  552.     (This)->lpVtbl -> InsertMenus(This,hmenuShared,lpMenuWidths)
  553. #define IOleInPlaceFrame_SetMenu(This,hmenuShared,holemenu,hwndActiveObject)
  554.     (This)->lpVtbl -> SetMenu(This,hmenuShared,holemenu,hwndActiveObject)
  555. #define IOleInPlaceFrame_RemoveMenus(This,hmenuShared)
  556.     (This)->lpVtbl -> RemoveMenus(This,hmenuShared)
  557. #define IOleInPlaceFrame_SetStatusText(This,pszStatusText)
  558.     (This)->lpVtbl -> SetStatusText(This,pszStatusText)
  559. #define IOleInPlaceFrame_EnableModeless(This,fEnable)
  560.     (This)->lpVtbl -> EnableModeless(This,fEnable)
  561. #define IOleInPlaceFrame_TranslateAccelerator(This,lpmsg,wID)
  562.     (This)->lpVtbl -> TranslateAccelerator(This,lpmsg,wID)
  563. #endif /* COBJMACROS */
  564. #endif  /* C style interface */
  565. HRESULT STDMETHODCALLTYPE IOleInPlaceFrame_InsertMenus_Proxy( 
  566.     IOleInPlaceFrame * This,
  567.     /* [in] */ HMENU hmenuShared,
  568.     /* [out][in] */ LPOLEMENUGROUPWIDTHS lpMenuWidths);
  569. void __RPC_STUB IOleInPlaceFrame_InsertMenus_Stub(
  570.     IRpcStubBuffer *This,
  571.     IRpcChannelBuffer *_pRpcChannelBuffer,
  572.     PRPC_MESSAGE _pRpcMessage,
  573.     DWORD *_pdwStubPhase);
  574. /* [input_sync] */ HRESULT STDMETHODCALLTYPE IOleInPlaceFrame_SetMenu_Proxy( 
  575.     IOleInPlaceFrame * This,
  576.     /* [in] */ HMENU hmenuShared,
  577.     /* [in] */ HOLEMENU holemenu,
  578.     /* [in] */ HWND hwndActiveObject);
  579. void __RPC_STUB IOleInPlaceFrame_SetMenu_Stub(
  580.     IRpcStubBuffer *This,
  581.     IRpcChannelBuffer *_pRpcChannelBuffer,
  582.     PRPC_MESSAGE _pRpcMessage,
  583.     DWORD *_pdwStubPhase);
  584. HRESULT STDMETHODCALLTYPE IOleInPlaceFrame_RemoveMenus_Proxy( 
  585.     IOleInPlaceFrame * This,
  586.     /* [in] */ HMENU hmenuShared);
  587. void __RPC_STUB IOleInPlaceFrame_RemoveMenus_Stub(
  588.     IRpcStubBuffer *This,
  589.     IRpcChannelBuffer *_pRpcChannelBuffer,
  590.     PRPC_MESSAGE _pRpcMessage,
  591.     DWORD *_pdwStubPhase);
  592. /* [input_sync] */ HRESULT STDMETHODCALLTYPE IOleInPlaceFrame_SetStatusText_Proxy( 
  593.     IOleInPlaceFrame * This,
  594.     /* [unique][in] */ LPCOLESTR pszStatusText);
  595. void __RPC_STUB IOleInPlaceFrame_SetStatusText_Stub(
  596.     IRpcStubBuffer *This,
  597.     IRpcChannelBuffer *_pRpcChannelBuffer,
  598.     PRPC_MESSAGE _pRpcMessage,
  599.     DWORD *_pdwStubPhase);
  600. HRESULT STDMETHODCALLTYPE IOleInPlaceFrame_EnableModeless_Proxy( 
  601.     IOleInPlaceFrame * This,
  602.     /* [in] */ BOOL fEnable);
  603. void __RPC_STUB IOleInPlaceFrame_EnableModeless_Stub(
  604.     IRpcStubBuffer *This,
  605.     IRpcChannelBuffer *_pRpcChannelBuffer,
  606.     PRPC_MESSAGE _pRpcMessage,
  607.     DWORD *_pdwStubPhase);
  608. HRESULT STDMETHODCALLTYPE IOleInPlaceFrame_TranslateAccelerator_Proxy( 
  609.     IOleInPlaceFrame * This,
  610.     /* [in] */ LPMSG lpmsg,
  611.     /* [in] */ WORD wID);
  612. void __RPC_STUB IOleInPlaceFrame_TranslateAccelerator_Stub(
  613.     IRpcStubBuffer *This,
  614.     IRpcChannelBuffer *_pRpcChannelBuffer,
  615.     PRPC_MESSAGE _pRpcMessage,
  616.     DWORD *_pdwStubPhase);
  617. #endif  /* __IOleInPlaceFrame_INTERFACE_DEFINED__ */
  618. #ifndef __IOleInPlaceObject_INTERFACE_DEFINED__
  619. #define __IOleInPlaceObject_INTERFACE_DEFINED__
  620. /* interface IOleInPlaceObject */
  621. /* [unique][uuid][object] */ 
  622. typedef /* [unique] */ IOleInPlaceObject *LPOLEINPLACEOBJECT;
  623. EXTERN_C const IID IID_IOleInPlaceObject;
  624. #if defined(__cplusplus) && !defined(CINTERFACE)
  625.     
  626.     MIDL_INTERFACE("00000113-0000-0000-C000-000000000046")
  627.     IOleInPlaceObject : public IOleWindow
  628.     {
  629.     public:
  630.         virtual HRESULT STDMETHODCALLTYPE InPlaceDeactivate( void) = 0;
  631.         
  632.         virtual HRESULT STDMETHODCALLTYPE UIDeactivate( void) = 0;
  633.         
  634.         virtual /* [input_sync] */ HRESULT STDMETHODCALLTYPE SetObjectRects( 
  635.             /* [in] */ LPCRECT lprcPosRect,
  636.             /* [in] */ LPCRECT lprcClipRect) = 0;
  637.         
  638.         virtual HRESULT STDMETHODCALLTYPE ReactivateAndUndo( void) = 0;
  639.         
  640.     };
  641.     
  642. #else  /* C style interface */
  643.     typedef struct IOleInPlaceObjectVtbl
  644.     {
  645.         BEGIN_INTERFACE
  646.         
  647.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  648.             IOleInPlaceObject * This,
  649.             /* [in] */ REFIID riid,
  650.             /* [iid_is][out] */ void **ppvObject);
  651.         
  652.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  653.             IOleInPlaceObject * This);
  654.         
  655.         ULONG ( STDMETHODCALLTYPE *Release )( 
  656.             IOleInPlaceObject * This);
  657.         
  658.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetWindow )( 
  659.             IOleInPlaceObject * This,
  660.             /* [out] */ HWND *phwnd);
  661.         
  662.         HRESULT ( STDMETHODCALLTYPE *ContextSensitiveHelp )( 
  663.             IOleInPlaceObject * This,
  664.             /* [in] */ BOOL fEnterMode);
  665.         
  666.         HRESULT ( STDMETHODCALLTYPE *InPlaceDeactivate )( 
  667.             IOleInPlaceObject * This);
  668.         
  669.         HRESULT ( STDMETHODCALLTYPE *UIDeactivate )( 
  670.             IOleInPlaceObject * This);
  671.         
  672.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *SetObjectRects )( 
  673.             IOleInPlaceObject * This,
  674.             /* [in] */ LPCRECT lprcPosRect,
  675.             /* [in] */ LPCRECT lprcClipRect);
  676.         
  677.         HRESULT ( STDMETHODCALLTYPE *ReactivateAndUndo )( 
  678.             IOleInPlaceObject * This);
  679.         
  680.         END_INTERFACE
  681.     } IOleInPlaceObjectVtbl;
  682.     interface IOleInPlaceObject
  683.     {
  684.         CONST_VTBL struct IOleInPlaceObjectVtbl *lpVtbl;
  685.     };
  686.     
  687. #ifdef COBJMACROS
  688. #define IOleInPlaceObject_QueryInterface(This,riid,ppvObject)
  689.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  690. #define IOleInPlaceObject_AddRef(This)
  691.     (This)->lpVtbl -> AddRef(This)
  692. #define IOleInPlaceObject_Release(This)
  693.     (This)->lpVtbl -> Release(This)
  694. #define IOleInPlaceObject_GetWindow(This,phwnd)
  695.     (This)->lpVtbl -> GetWindow(This,phwnd)
  696. #define IOleInPlaceObject_ContextSensitiveHelp(This,fEnterMode)
  697.     (This)->lpVtbl -> ContextSensitiveHelp(This,fEnterMode)
  698. #define IOleInPlaceObject_InPlaceDeactivate(This)
  699.     (This)->lpVtbl -> InPlaceDeactivate(This)
  700. #define IOleInPlaceObject_UIDeactivate(This)
  701.     (This)->lpVtbl -> UIDeactivate(This)
  702. #define IOleInPlaceObject_SetObjectRects(This,lprcPosRect,lprcClipRect)
  703.     (This)->lpVtbl -> SetObjectRects(This,lprcPosRect,lprcClipRect)
  704. #define IOleInPlaceObject_ReactivateAndUndo(This)
  705.     (This)->lpVtbl -> ReactivateAndUndo(This)
  706. #endif /* COBJMACROS */
  707. #endif  /* C style interface */
  708. HRESULT STDMETHODCALLTYPE IOleInPlaceObject_InPlaceDeactivate_Proxy( 
  709.     IOleInPlaceObject * This);
  710. void __RPC_STUB IOleInPlaceObject_InPlaceDeactivate_Stub(
  711.     IRpcStubBuffer *This,
  712.     IRpcChannelBuffer *_pRpcChannelBuffer,
  713.     PRPC_MESSAGE _pRpcMessage,
  714.     DWORD *_pdwStubPhase);
  715. HRESULT STDMETHODCALLTYPE IOleInPlaceObject_UIDeactivate_Proxy( 
  716.     IOleInPlaceObject * This);
  717. void __RPC_STUB IOleInPlaceObject_UIDeactivate_Stub(
  718.     IRpcStubBuffer *This,
  719.     IRpcChannelBuffer *_pRpcChannelBuffer,
  720.     PRPC_MESSAGE _pRpcMessage,
  721.     DWORD *_pdwStubPhase);
  722. /* [input_sync] */ HRESULT STDMETHODCALLTYPE IOleInPlaceObject_SetObjectRects_Proxy( 
  723.     IOleInPlaceObject * This,
  724.     /* [in] */ LPCRECT lprcPosRect,
  725.     /* [in] */ LPCRECT lprcClipRect);
  726. void __RPC_STUB IOleInPlaceObject_SetObjectRects_Stub(
  727.     IRpcStubBuffer *This,
  728.     IRpcChannelBuffer *_pRpcChannelBuffer,
  729.     PRPC_MESSAGE _pRpcMessage,
  730.     DWORD *_pdwStubPhase);
  731. HRESULT STDMETHODCALLTYPE IOleInPlaceObject_ReactivateAndUndo_Proxy( 
  732.     IOleInPlaceObject * This);
  733. void __RPC_STUB IOleInPlaceObject_ReactivateAndUndo_Stub(
  734.     IRpcStubBuffer *This,
  735.     IRpcChannelBuffer *_pRpcChannelBuffer,
  736.     PRPC_MESSAGE _pRpcMessage,
  737.     DWORD *_pdwStubPhase);
  738. #endif  /* __IOleInPlaceObject_INTERFACE_DEFINED__ */
  739. #ifndef __IOleInPlaceSite_INTERFACE_DEFINED__
  740. #define __IOleInPlaceSite_INTERFACE_DEFINED__
  741. /* interface IOleInPlaceSite */
  742. /* [unique][uuid][object] */ 
  743. typedef /* [unique] */ IOleInPlaceSite *LPOLEINPLACESITE;
  744. EXTERN_C const IID IID_IOleInPlaceSite;
  745. #if defined(__cplusplus) && !defined(CINTERFACE)
  746.     
  747.     MIDL_INTERFACE("00000119-0000-0000-C000-000000000046")
  748.     IOleInPlaceSite : public IOleWindow
  749.     {
  750.     public:
  751.         virtual HRESULT STDMETHODCALLTYPE CanInPlaceActivate( void) = 0;
  752.         
  753.         virtual HRESULT STDMETHODCALLTYPE OnInPlaceActivate( void) = 0;
  754.         
  755.         virtual HRESULT STDMETHODCALLTYPE OnUIActivate( void) = 0;
  756.         
  757.         virtual HRESULT STDMETHODCALLTYPE GetWindowContext( 
  758.             /* [out] */ IOleInPlaceFrame **ppFrame,
  759.             /* [out] */ IOleInPlaceUIWindow **ppDoc,
  760.             /* [out] */ LPRECT lprcPosRect,
  761.             /* [out] */ LPRECT lprcClipRect,
  762.             /* [out][in] */ LPOLEINPLACEFRAMEINFO lpFrameInfo) = 0;
  763.         
  764.         virtual HRESULT STDMETHODCALLTYPE Scroll( 
  765.             /* [in] */ SIZE scrollExtant) = 0;
  766.         
  767.         virtual HRESULT STDMETHODCALLTYPE OnUIDeactivate( 
  768.             /* [in] */ BOOL fUndoable) = 0;
  769.         
  770.         virtual HRESULT STDMETHODCALLTYPE OnInPlaceDeactivate( void) = 0;
  771.         
  772.         virtual HRESULT STDMETHODCALLTYPE DiscardUndoState( void) = 0;
  773.         
  774.         virtual HRESULT STDMETHODCALLTYPE DeactivateAndUndo( void) = 0;
  775.         
  776.         virtual HRESULT STDMETHODCALLTYPE OnPosRectChange( 
  777.             /* [in] */ LPCRECT lprcPosRect) = 0;
  778.         
  779.     };
  780.     
  781. #else  /* C style interface */
  782.     typedef struct IOleInPlaceSiteVtbl
  783.     {
  784.         BEGIN_INTERFACE
  785.         
  786.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  787.             IOleInPlaceSite * This,
  788.             /* [in] */ REFIID riid,
  789.             /* [iid_is][out] */ void **ppvObject);
  790.         
  791.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  792.             IOleInPlaceSite * This);
  793.         
  794.         ULONG ( STDMETHODCALLTYPE *Release )( 
  795.             IOleInPlaceSite * This);
  796.         
  797.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetWindow )( 
  798.             IOleInPlaceSite * This,
  799.             /* [out] */ HWND *phwnd);
  800.         
  801.         HRESULT ( STDMETHODCALLTYPE *ContextSensitiveHelp )( 
  802.             IOleInPlaceSite * This,
  803.             /* [in] */ BOOL fEnterMode);
  804.         
  805.         HRESULT ( STDMETHODCALLTYPE *CanInPlaceActivate )( 
  806.             IOleInPlaceSite * This);
  807.         
  808.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceActivate )( 
  809.             IOleInPlaceSite * This);
  810.         
  811.         HRESULT ( STDMETHODCALLTYPE *OnUIActivate )( 
  812.             IOleInPlaceSite * This);
  813.         
  814.         HRESULT ( STDMETHODCALLTYPE *GetWindowContext )( 
  815.             IOleInPlaceSite * This,
  816.             /* [out] */ IOleInPlaceFrame **ppFrame,
  817.             /* [out] */ IOleInPlaceUIWindow **ppDoc,
  818.             /* [out] */ LPRECT lprcPosRect,
  819.             /* [out] */ LPRECT lprcClipRect,
  820.             /* [out][in] */ LPOLEINPLACEFRAMEINFO lpFrameInfo);
  821.         
  822.         HRESULT ( STDMETHODCALLTYPE *Scroll )( 
  823.             IOleInPlaceSite * This,
  824.             /* [in] */ SIZE scrollExtant);
  825.         
  826.         HRESULT ( STDMETHODCALLTYPE *OnUIDeactivate )( 
  827.             IOleInPlaceSite * This,
  828.             /* [in] */ BOOL fUndoable);
  829.         
  830.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceDeactivate )( 
  831.             IOleInPlaceSite * This);
  832.         
  833.         HRESULT ( STDMETHODCALLTYPE *DiscardUndoState )( 
  834.             IOleInPlaceSite * This);
  835.         
  836.         HRESULT ( STDMETHODCALLTYPE *DeactivateAndUndo )( 
  837.             IOleInPlaceSite * This);
  838.         
  839.         HRESULT ( STDMETHODCALLTYPE *OnPosRectChange )( 
  840.             IOleInPlaceSite * This,
  841.             /* [in] */ LPCRECT lprcPosRect);
  842.         
  843.         END_INTERFACE
  844.     } IOleInPlaceSiteVtbl;
  845.     interface IOleInPlaceSite
  846.     {
  847.         CONST_VTBL struct IOleInPlaceSiteVtbl *lpVtbl;
  848.     };
  849.     
  850. #ifdef COBJMACROS
  851. #define IOleInPlaceSite_QueryInterface(This,riid,ppvObject)
  852.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  853. #define IOleInPlaceSite_AddRef(This)
  854.     (This)->lpVtbl -> AddRef(This)
  855. #define IOleInPlaceSite_Release(This)
  856.     (This)->lpVtbl -> Release(This)
  857. #define IOleInPlaceSite_GetWindow(This,phwnd)
  858.     (This)->lpVtbl -> GetWindow(This,phwnd)
  859. #define IOleInPlaceSite_ContextSensitiveHelp(This,fEnterMode)
  860.     (This)->lpVtbl -> ContextSensitiveHelp(This,fEnterMode)
  861. #define IOleInPlaceSite_CanInPlaceActivate(This)
  862.     (This)->lpVtbl -> CanInPlaceActivate(This)
  863. #define IOleInPlaceSite_OnInPlaceActivate(This)
  864.     (This)->lpVtbl -> OnInPlaceActivate(This)
  865. #define IOleInPlaceSite_OnUIActivate(This)
  866.     (This)->lpVtbl -> OnUIActivate(This)
  867. #define IOleInPlaceSite_GetWindowContext(This,ppFrame,ppDoc,lprcPosRect,lprcClipRect,lpFrameInfo)
  868.     (This)->lpVtbl -> GetWindowContext(This,ppFrame,ppDoc,lprcPosRect,lprcClipRect,lpFrameInfo)
  869. #define IOleInPlaceSite_Scroll(This,scrollExtant)
  870.     (This)->lpVtbl -> Scroll(This,scrollExtant)
  871. #define IOleInPlaceSite_OnUIDeactivate(This,fUndoable)
  872.     (This)->lpVtbl -> OnUIDeactivate(This,fUndoable)
  873. #define IOleInPlaceSite_OnInPlaceDeactivate(This)
  874.     (This)->lpVtbl -> OnInPlaceDeactivate(This)
  875. #define IOleInPlaceSite_DiscardUndoState(This)
  876.     (This)->lpVtbl -> DiscardUndoState(This)
  877. #define IOleInPlaceSite_DeactivateAndUndo(This)
  878.     (This)->lpVtbl -> DeactivateAndUndo(This)
  879. #define IOleInPlaceSite_OnPosRectChange(This,lprcPosRect)
  880.     (This)->lpVtbl -> OnPosRectChange(This,lprcPosRect)
  881. #endif /* COBJMACROS */
  882. #endif  /* C style interface */
  883. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_CanInPlaceActivate_Proxy( 
  884.     IOleInPlaceSite * This);
  885. void __RPC_STUB IOleInPlaceSite_CanInPlaceActivate_Stub(
  886.     IRpcStubBuffer *This,
  887.     IRpcChannelBuffer *_pRpcChannelBuffer,
  888.     PRPC_MESSAGE _pRpcMessage,
  889.     DWORD *_pdwStubPhase);
  890. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_OnInPlaceActivate_Proxy( 
  891.     IOleInPlaceSite * This);
  892. void __RPC_STUB IOleInPlaceSite_OnInPlaceActivate_Stub(
  893.     IRpcStubBuffer *This,
  894.     IRpcChannelBuffer *_pRpcChannelBuffer,
  895.     PRPC_MESSAGE _pRpcMessage,
  896.     DWORD *_pdwStubPhase);
  897. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_OnUIActivate_Proxy( 
  898.     IOleInPlaceSite * This);
  899. void __RPC_STUB IOleInPlaceSite_OnUIActivate_Stub(
  900.     IRpcStubBuffer *This,
  901.     IRpcChannelBuffer *_pRpcChannelBuffer,
  902.     PRPC_MESSAGE _pRpcMessage,
  903.     DWORD *_pdwStubPhase);
  904. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_GetWindowContext_Proxy( 
  905.     IOleInPlaceSite * This,
  906.     /* [out] */ IOleInPlaceFrame **ppFrame,
  907.     /* [out] */ IOleInPlaceUIWindow **ppDoc,
  908.     /* [out] */ LPRECT lprcPosRect,
  909.     /* [out] */ LPRECT lprcClipRect,
  910.     /* [out][in] */ LPOLEINPLACEFRAMEINFO lpFrameInfo);
  911. void __RPC_STUB IOleInPlaceSite_GetWindowContext_Stub(
  912.     IRpcStubBuffer *This,
  913.     IRpcChannelBuffer *_pRpcChannelBuffer,
  914.     PRPC_MESSAGE _pRpcMessage,
  915.     DWORD *_pdwStubPhase);
  916. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_Scroll_Proxy( 
  917.     IOleInPlaceSite * This,
  918.     /* [in] */ SIZE scrollExtant);
  919. void __RPC_STUB IOleInPlaceSite_Scroll_Stub(
  920.     IRpcStubBuffer *This,
  921.     IRpcChannelBuffer *_pRpcChannelBuffer,
  922.     PRPC_MESSAGE _pRpcMessage,
  923.     DWORD *_pdwStubPhase);
  924. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_OnUIDeactivate_Proxy( 
  925.     IOleInPlaceSite * This,
  926.     /* [in] */ BOOL fUndoable);
  927. void __RPC_STUB IOleInPlaceSite_OnUIDeactivate_Stub(
  928.     IRpcStubBuffer *This,
  929.     IRpcChannelBuffer *_pRpcChannelBuffer,
  930.     PRPC_MESSAGE _pRpcMessage,
  931.     DWORD *_pdwStubPhase);
  932. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_OnInPlaceDeactivate_Proxy( 
  933.     IOleInPlaceSite * This);
  934. void __RPC_STUB IOleInPlaceSite_OnInPlaceDeactivate_Stub(
  935.     IRpcStubBuffer *This,
  936.     IRpcChannelBuffer *_pRpcChannelBuffer,
  937.     PRPC_MESSAGE _pRpcMessage,
  938.     DWORD *_pdwStubPhase);
  939. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_DiscardUndoState_Proxy( 
  940.     IOleInPlaceSite * This);
  941. void __RPC_STUB IOleInPlaceSite_DiscardUndoState_Stub(
  942.     IRpcStubBuffer *This,
  943.     IRpcChannelBuffer *_pRpcChannelBuffer,
  944.     PRPC_MESSAGE _pRpcMessage,
  945.     DWORD *_pdwStubPhase);
  946. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_DeactivateAndUndo_Proxy( 
  947.     IOleInPlaceSite * This);
  948. void __RPC_STUB IOleInPlaceSite_DeactivateAndUndo_Stub(
  949.     IRpcStubBuffer *This,
  950.     IRpcChannelBuffer *_pRpcChannelBuffer,
  951.     PRPC_MESSAGE _pRpcMessage,
  952.     DWORD *_pdwStubPhase);
  953. HRESULT STDMETHODCALLTYPE IOleInPlaceSite_OnPosRectChange_Proxy( 
  954.     IOleInPlaceSite * This,
  955.     /* [in] */ LPCRECT lprcPosRect);
  956. void __RPC_STUB IOleInPlaceSite_OnPosRectChange_Stub(
  957.     IRpcStubBuffer *This,
  958.     IRpcChannelBuffer *_pRpcChannelBuffer,
  959.     PRPC_MESSAGE _pRpcMessage,
  960.     DWORD *_pdwStubPhase);
  961. #endif  /* __IOleInPlaceSite_INTERFACE_DEFINED__ */
  962. #ifndef __IContinue_INTERFACE_DEFINED__
  963. #define __IContinue_INTERFACE_DEFINED__
  964. /* interface IContinue */
  965. /* [uuid][object] */ 
  966. EXTERN_C const IID IID_IContinue;
  967. #if defined(__cplusplus) && !defined(CINTERFACE)
  968.     
  969.     MIDL_INTERFACE("0000012a-0000-0000-C000-000000000046")
  970.     IContinue : public IUnknown
  971.     {
  972.     public:
  973.         virtual HRESULT STDMETHODCALLTYPE FContinue( void) = 0;
  974.         
  975.     };
  976.     
  977. #else  /* C style interface */
  978.     typedef struct IContinueVtbl
  979.     {
  980.         BEGIN_INTERFACE
  981.         
  982.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  983.             IContinue * This,
  984.             /* [in] */ REFIID riid,
  985.             /* [iid_is][out] */ void **ppvObject);
  986.         
  987.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  988.             IContinue * This);
  989.         
  990.         ULONG ( STDMETHODCALLTYPE *Release )( 
  991.             IContinue * This);
  992.         
  993.         HRESULT ( STDMETHODCALLTYPE *FContinue )( 
  994.             IContinue * This);
  995.         
  996.         END_INTERFACE
  997.     } IContinueVtbl;
  998.     interface IContinue
  999.     {
  1000.         CONST_VTBL struct IContinueVtbl *lpVtbl;
  1001.     };
  1002.     
  1003. #ifdef COBJMACROS
  1004. #define IContinue_QueryInterface(This,riid,ppvObject)
  1005.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1006. #define IContinue_AddRef(This)
  1007.     (This)->lpVtbl -> AddRef(This)
  1008. #define IContinue_Release(This)
  1009.     (This)->lpVtbl -> Release(This)
  1010. #define IContinue_FContinue(This)
  1011.     (This)->lpVtbl -> FContinue(This)
  1012. #endif /* COBJMACROS */
  1013. #endif  /* C style interface */
  1014. HRESULT STDMETHODCALLTYPE IContinue_FContinue_Proxy( 
  1015.     IContinue * This);
  1016. void __RPC_STUB IContinue_FContinue_Stub(
  1017.     IRpcStubBuffer *This,
  1018.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1019.     PRPC_MESSAGE _pRpcMessage,
  1020.     DWORD *_pdwStubPhase);
  1021. #endif  /* __IContinue_INTERFACE_DEFINED__ */
  1022. #ifndef __IViewObject_INTERFACE_DEFINED__
  1023. #define __IViewObject_INTERFACE_DEFINED__
  1024. /* interface IViewObject */
  1025. /* [uuid][object] */ 
  1026. typedef /* [unique] */ IViewObject *LPVIEWOBJECT;
  1027. EXTERN_C const IID IID_IViewObject;
  1028. #if defined(__cplusplus) && !defined(CINTERFACE)
  1029.     
  1030.     MIDL_INTERFACE("0000010d-0000-0000-C000-000000000046")
  1031.     IViewObject : public IUnknown
  1032.     {
  1033.     public:
  1034.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Draw( 
  1035.             /* [in] */ DWORD dwDrawAspect,
  1036.             /* [in] */ LONG lindex,
  1037.             /* [unique][in] */ void *pvAspect,
  1038.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1039.             /* [in] */ HDC hdcTargetDev,
  1040.             /* [in] */ HDC hdcDraw,
  1041.             /* [in] */ LPCRECTL lprcBounds,
  1042.             /* [unique][in] */ LPCRECTL lprcWBounds,
  1043.             /* [in] */ BOOL ( STDMETHODCALLTYPE *pfnContinue )( 
  1044.                 ULONG_PTR dwContinue),
  1045.             /* [in] */ ULONG_PTR dwContinue) = 0;
  1046.         
  1047.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetColorSet( 
  1048.             /* [in] */ DWORD dwDrawAspect,
  1049.             /* [in] */ LONG lindex,
  1050.             /* [unique][in] */ void *pvAspect,
  1051.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1052.             /* [in] */ HDC hicTargetDev,
  1053.             /* [out] */ LOGPALETTE **ppColorSet) = 0;
  1054.         
  1055.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Freeze( 
  1056.             /* [in] */ DWORD dwDrawAspect,
  1057.             /* [in] */ LONG lindex,
  1058.             /* [unique][in] */ void *pvAspect,
  1059.             /* [out] */ DWORD *pdwFreeze) = 0;
  1060.         
  1061.         virtual HRESULT STDMETHODCALLTYPE Unfreeze( 
  1062.             /* [in] */ DWORD dwFreeze) = 0;
  1063.         
  1064.         virtual HRESULT STDMETHODCALLTYPE SetAdvise( 
  1065.             /* [in] */ DWORD aspects,
  1066.             /* [in] */ DWORD advf,
  1067.             /* [unique][in] */ IAdviseSink *pAdvSink) = 0;
  1068.         
  1069.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetAdvise( 
  1070.             /* [unique][out] */ DWORD *pAspects,
  1071.             /* [unique][out] */ DWORD *pAdvf,
  1072.             /* [out] */ IAdviseSink **ppAdvSink) = 0;
  1073.         
  1074.     };
  1075.     
  1076. #else  /* C style interface */
  1077.     typedef struct IViewObjectVtbl
  1078.     {
  1079.         BEGIN_INTERFACE
  1080.         
  1081.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1082.             IViewObject * This,
  1083.             /* [in] */ REFIID riid,
  1084.             /* [iid_is][out] */ void **ppvObject);
  1085.         
  1086.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1087.             IViewObject * This);
  1088.         
  1089.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1090.             IViewObject * This);
  1091.         
  1092.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Draw )( 
  1093.             IViewObject * This,
  1094.             /* [in] */ DWORD dwDrawAspect,
  1095.             /* [in] */ LONG lindex,
  1096.             /* [unique][in] */ void *pvAspect,
  1097.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1098.             /* [in] */ HDC hdcTargetDev,
  1099.             /* [in] */ HDC hdcDraw,
  1100.             /* [in] */ LPCRECTL lprcBounds,
  1101.             /* [unique][in] */ LPCRECTL lprcWBounds,
  1102.             /* [in] */ BOOL ( STDMETHODCALLTYPE *pfnContinue )( 
  1103.                 ULONG_PTR dwContinue),
  1104.             /* [in] */ ULONG_PTR dwContinue);
  1105.         
  1106.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetColorSet )( 
  1107.             IViewObject * This,
  1108.             /* [in] */ DWORD dwDrawAspect,
  1109.             /* [in] */ LONG lindex,
  1110.             /* [unique][in] */ void *pvAspect,
  1111.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1112.             /* [in] */ HDC hicTargetDev,
  1113.             /* [out] */ LOGPALETTE **ppColorSet);
  1114.         
  1115.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Freeze )( 
  1116.             IViewObject * This,
  1117.             /* [in] */ DWORD dwDrawAspect,
  1118.             /* [in] */ LONG lindex,
  1119.             /* [unique][in] */ void *pvAspect,
  1120.             /* [out] */ DWORD *pdwFreeze);
  1121.         
  1122.         HRESULT ( STDMETHODCALLTYPE *Unfreeze )( 
  1123.             IViewObject * This,
  1124.             /* [in] */ DWORD dwFreeze);
  1125.         
  1126.         HRESULT ( STDMETHODCALLTYPE *SetAdvise )( 
  1127.             IViewObject * This,
  1128.             /* [in] */ DWORD aspects,
  1129.             /* [in] */ DWORD advf,
  1130.             /* [unique][in] */ IAdviseSink *pAdvSink);
  1131.         
  1132.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetAdvise )( 
  1133.             IViewObject * This,
  1134.             /* [unique][out] */ DWORD *pAspects,
  1135.             /* [unique][out] */ DWORD *pAdvf,
  1136.             /* [out] */ IAdviseSink **ppAdvSink);
  1137.         
  1138.         END_INTERFACE
  1139.     } IViewObjectVtbl;
  1140.     interface IViewObject
  1141.     {
  1142.         CONST_VTBL struct IViewObjectVtbl *lpVtbl;
  1143.     };
  1144.     
  1145. #ifdef COBJMACROS
  1146. #define IViewObject_QueryInterface(This,riid,ppvObject)
  1147.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1148. #define IViewObject_AddRef(This)
  1149.     (This)->lpVtbl -> AddRef(This)
  1150. #define IViewObject_Release(This)
  1151.     (This)->lpVtbl -> Release(This)
  1152. #define IViewObject_Draw(This,dwDrawAspect,lindex,pvAspect,ptd,hdcTargetDev,hdcDraw,lprcBounds,lprcWBounds,pfnContinue,dwContinue)
  1153.     (This)->lpVtbl -> Draw(This,dwDrawAspect,lindex,pvAspect,ptd,hdcTargetDev,hdcDraw,lprcBounds,lprcWBounds,pfnContinue,dwContinue)
  1154. #define IViewObject_GetColorSet(This,dwDrawAspect,lindex,pvAspect,ptd,hicTargetDev,ppColorSet)
  1155.     (This)->lpVtbl -> GetColorSet(This,dwDrawAspect,lindex,pvAspect,ptd,hicTargetDev,ppColorSet)
  1156. #define IViewObject_Freeze(This,dwDrawAspect,lindex,pvAspect,pdwFreeze)
  1157.     (This)->lpVtbl -> Freeze(This,dwDrawAspect,lindex,pvAspect,pdwFreeze)
  1158. #define IViewObject_Unfreeze(This,dwFreeze)
  1159.     (This)->lpVtbl -> Unfreeze(This,dwFreeze)
  1160. #define IViewObject_SetAdvise(This,aspects,advf,pAdvSink)
  1161.     (This)->lpVtbl -> SetAdvise(This,aspects,advf,pAdvSink)
  1162. #define IViewObject_GetAdvise(This,pAspects,pAdvf,ppAdvSink)
  1163.     (This)->lpVtbl -> GetAdvise(This,pAspects,pAdvf,ppAdvSink)
  1164. #endif /* COBJMACROS */
  1165. #endif  /* C style interface */
  1166. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewObject_RemoteDraw_Proxy( 
  1167.     IViewObject * This,
  1168.     /* [in] */ DWORD dwDrawAspect,
  1169.     /* [in] */ LONG lindex,
  1170.     /* [in] */ ULONG_PTR pvAspect,
  1171.     /* [unique][in] */ DVTARGETDEVICE *ptd,
  1172.     /* [in] */ ULONG_PTR hdcTargetDev,
  1173.     /* [in] */ ULONG_PTR hdcDraw,
  1174.     /* [in] */ LPCRECTL lprcBounds,
  1175.     /* [unique][in] */ LPCRECTL lprcWBounds,
  1176.     /* [in] */ IContinue *pContinue);
  1177. void __RPC_STUB IViewObject_RemoteDraw_Stub(
  1178.     IRpcStubBuffer *This,
  1179.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1180.     PRPC_MESSAGE _pRpcMessage,
  1181.     DWORD *_pdwStubPhase);
  1182. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewObject_RemoteGetColorSet_Proxy( 
  1183.     IViewObject * This,
  1184.     /* [in] */ DWORD dwDrawAspect,
  1185.     /* [in] */ LONG lindex,
  1186.     /* [in] */ ULONG_PTR pvAspect,
  1187.     /* [unique][in] */ DVTARGETDEVICE *ptd,
  1188.     /* [in] */ ULONG_PTR hicTargetDev,
  1189.     /* [out] */ LOGPALETTE **ppColorSet);
  1190. void __RPC_STUB IViewObject_RemoteGetColorSet_Stub(
  1191.     IRpcStubBuffer *This,
  1192.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1193.     PRPC_MESSAGE _pRpcMessage,
  1194.     DWORD *_pdwStubPhase);
  1195. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewObject_RemoteFreeze_Proxy( 
  1196.     IViewObject * This,
  1197.     /* [in] */ DWORD dwDrawAspect,
  1198.     /* [in] */ LONG lindex,
  1199.     /* [in] */ ULONG_PTR pvAspect,
  1200.     /* [out] */ DWORD *pdwFreeze);
  1201. void __RPC_STUB IViewObject_RemoteFreeze_Stub(
  1202.     IRpcStubBuffer *This,
  1203.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1204.     PRPC_MESSAGE _pRpcMessage,
  1205.     DWORD *_pdwStubPhase);
  1206. HRESULT STDMETHODCALLTYPE IViewObject_Unfreeze_Proxy( 
  1207.     IViewObject * This,
  1208.     /* [in] */ DWORD dwFreeze);
  1209. void __RPC_STUB IViewObject_Unfreeze_Stub(
  1210.     IRpcStubBuffer *This,
  1211.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1212.     PRPC_MESSAGE _pRpcMessage,
  1213.     DWORD *_pdwStubPhase);
  1214. HRESULT STDMETHODCALLTYPE IViewObject_SetAdvise_Proxy( 
  1215.     IViewObject * This,
  1216.     /* [in] */ DWORD aspects,
  1217.     /* [in] */ DWORD advf,
  1218.     /* [unique][in] */ IAdviseSink *pAdvSink);
  1219. void __RPC_STUB IViewObject_SetAdvise_Stub(
  1220.     IRpcStubBuffer *This,
  1221.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1222.     PRPC_MESSAGE _pRpcMessage,
  1223.     DWORD *_pdwStubPhase);
  1224. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewObject_RemoteGetAdvise_Proxy( 
  1225.     IViewObject * This,
  1226.     /* [out] */ DWORD *pAspects,
  1227.     /* [out] */ DWORD *pAdvf,
  1228.     /* [out] */ IAdviseSink **ppAdvSink);
  1229. void __RPC_STUB IViewObject_RemoteGetAdvise_Stub(
  1230.     IRpcStubBuffer *This,
  1231.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1232.     PRPC_MESSAGE _pRpcMessage,
  1233.     DWORD *_pdwStubPhase);
  1234. #endif  /* __IViewObject_INTERFACE_DEFINED__ */
  1235. #ifndef __IViewObject2_INTERFACE_DEFINED__
  1236. #define __IViewObject2_INTERFACE_DEFINED__
  1237. /* interface IViewObject2 */
  1238. /* [uuid][object] */ 
  1239. typedef /* [unique] */ IViewObject2 *LPVIEWOBJECT2;
  1240. EXTERN_C const IID IID_IViewObject2;
  1241. #if defined(__cplusplus) && !defined(CINTERFACE)
  1242.     
  1243.     MIDL_INTERFACE("00000127-0000-0000-C000-000000000046")
  1244.     IViewObject2 : public IViewObject
  1245.     {
  1246.     public:
  1247.         virtual HRESULT STDMETHODCALLTYPE GetExtent( 
  1248.             /* [in] */ DWORD dwDrawAspect,
  1249.             /* [in] */ LONG lindex,
  1250.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1251.             /* [out] */ LPSIZEL lpsizel) = 0;
  1252.         
  1253.     };
  1254.     
  1255. #else  /* C style interface */
  1256.     typedef struct IViewObject2Vtbl
  1257.     {
  1258.         BEGIN_INTERFACE
  1259.         
  1260.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1261.             IViewObject2 * This,
  1262.             /* [in] */ REFIID riid,
  1263.             /* [iid_is][out] */ void **ppvObject);
  1264.         
  1265.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1266.             IViewObject2 * This);
  1267.         
  1268.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1269.             IViewObject2 * This);
  1270.         
  1271.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Draw )( 
  1272.             IViewObject2 * This,
  1273.             /* [in] */ DWORD dwDrawAspect,
  1274.             /* [in] */ LONG lindex,
  1275.             /* [unique][in] */ void *pvAspect,
  1276.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1277.             /* [in] */ HDC hdcTargetDev,
  1278.             /* [in] */ HDC hdcDraw,
  1279.             /* [in] */ LPCRECTL lprcBounds,
  1280.             /* [unique][in] */ LPCRECTL lprcWBounds,
  1281.             /* [in] */ BOOL ( STDMETHODCALLTYPE *pfnContinue )( 
  1282.                 ULONG_PTR dwContinue),
  1283.             /* [in] */ ULONG_PTR dwContinue);
  1284.         
  1285.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetColorSet )( 
  1286.             IViewObject2 * This,
  1287.             /* [in] */ DWORD dwDrawAspect,
  1288.             /* [in] */ LONG lindex,
  1289.             /* [unique][in] */ void *pvAspect,
  1290.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1291.             /* [in] */ HDC hicTargetDev,
  1292.             /* [out] */ LOGPALETTE **ppColorSet);
  1293.         
  1294.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Freeze )( 
  1295.             IViewObject2 * This,
  1296.             /* [in] */ DWORD dwDrawAspect,
  1297.             /* [in] */ LONG lindex,
  1298.             /* [unique][in] */ void *pvAspect,
  1299.             /* [out] */ DWORD *pdwFreeze);
  1300.         
  1301.         HRESULT ( STDMETHODCALLTYPE *Unfreeze )( 
  1302.             IViewObject2 * This,
  1303.             /* [in] */ DWORD dwFreeze);
  1304.         
  1305.         HRESULT ( STDMETHODCALLTYPE *SetAdvise )( 
  1306.             IViewObject2 * This,
  1307.             /* [in] */ DWORD aspects,
  1308.             /* [in] */ DWORD advf,
  1309.             /* [unique][in] */ IAdviseSink *pAdvSink);
  1310.         
  1311.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetAdvise )( 
  1312.             IViewObject2 * This,
  1313.             /* [unique][out] */ DWORD *pAspects,
  1314.             /* [unique][out] */ DWORD *pAdvf,
  1315.             /* [out] */ IAdviseSink **ppAdvSink);
  1316.         
  1317.         HRESULT ( STDMETHODCALLTYPE *GetExtent )( 
  1318.             IViewObject2 * This,
  1319.             /* [in] */ DWORD dwDrawAspect,
  1320.             /* [in] */ LONG lindex,
  1321.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1322.             /* [out] */ LPSIZEL lpsizel);
  1323.         
  1324.         END_INTERFACE
  1325.     } IViewObject2Vtbl;
  1326.     interface IViewObject2
  1327.     {
  1328.         CONST_VTBL struct IViewObject2Vtbl *lpVtbl;
  1329.     };
  1330.     
  1331. #ifdef COBJMACROS
  1332. #define IViewObject2_QueryInterface(This,riid,ppvObject)
  1333.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1334. #define IViewObject2_AddRef(This)
  1335.     (This)->lpVtbl -> AddRef(This)
  1336. #define IViewObject2_Release(This)
  1337.     (This)->lpVtbl -> Release(This)
  1338. #define IViewObject2_Draw(This,dwDrawAspect,lindex,pvAspect,ptd,hdcTargetDev,hdcDraw,lprcBounds,lprcWBounds,pfnContinue,dwContinue)
  1339.     (This)->lpVtbl -> Draw(This,dwDrawAspect,lindex,pvAspect,ptd,hdcTargetDev,hdcDraw,lprcBounds,lprcWBounds,pfnContinue,dwContinue)
  1340. #define IViewObject2_GetColorSet(This,dwDrawAspect,lindex,pvAspect,ptd,hicTargetDev,ppColorSet)
  1341.     (This)->lpVtbl -> GetColorSet(This,dwDrawAspect,lindex,pvAspect,ptd,hicTargetDev,ppColorSet)
  1342. #define IViewObject2_Freeze(This,dwDrawAspect,lindex,pvAspect,pdwFreeze)
  1343.     (This)->lpVtbl -> Freeze(This,dwDrawAspect,lindex,pvAspect,pdwFreeze)
  1344. #define IViewObject2_Unfreeze(This,dwFreeze)
  1345.     (This)->lpVtbl -> Unfreeze(This,dwFreeze)
  1346. #define IViewObject2_SetAdvise(This,aspects,advf,pAdvSink)
  1347.     (This)->lpVtbl -> SetAdvise(This,aspects,advf,pAdvSink)
  1348. #define IViewObject2_GetAdvise(This,pAspects,pAdvf,ppAdvSink)
  1349.     (This)->lpVtbl -> GetAdvise(This,pAspects,pAdvf,ppAdvSink)
  1350. #define IViewObject2_GetExtent(This,dwDrawAspect,lindex,ptd,lpsizel)
  1351.     (This)->lpVtbl -> GetExtent(This,dwDrawAspect,lindex,ptd,lpsizel)
  1352. #endif /* COBJMACROS */
  1353. #endif  /* C style interface */
  1354. HRESULT STDMETHODCALLTYPE IViewObject2_GetExtent_Proxy( 
  1355.     IViewObject2 * This,
  1356.     /* [in] */ DWORD dwDrawAspect,
  1357.     /* [in] */ LONG lindex,
  1358.     /* [unique][in] */ DVTARGETDEVICE *ptd,
  1359.     /* [out] */ LPSIZEL lpsizel);
  1360. void __RPC_STUB IViewObject2_GetExtent_Stub(
  1361.     IRpcStubBuffer *This,
  1362.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1363.     PRPC_MESSAGE _pRpcMessage,
  1364.     DWORD *_pdwStubPhase);
  1365. #endif  /* __IViewObject2_INTERFACE_DEFINED__ */
  1366. #ifndef __IDropSource_INTERFACE_DEFINED__
  1367. #define __IDropSource_INTERFACE_DEFINED__
  1368. /* interface IDropSource */
  1369. /* [uuid][object][local] */ 
  1370. typedef /* [unique] */ IDropSource *LPDROPSOURCE;
  1371. EXTERN_C const IID IID_IDropSource;
  1372. #if defined(__cplusplus) && !defined(CINTERFACE)
  1373.     
  1374.     MIDL_INTERFACE("00000121-0000-0000-C000-000000000046")
  1375.     IDropSource : public IUnknown
  1376.     {
  1377.     public:
  1378.         virtual HRESULT STDMETHODCALLTYPE QueryContinueDrag( 
  1379.             /* [in] */ BOOL fEscapePressed,
  1380.             /* [in] */ DWORD grfKeyState) = 0;
  1381.         
  1382.         virtual HRESULT STDMETHODCALLTYPE GiveFeedback( 
  1383.             /* [in] */ DWORD dwEffect) = 0;
  1384.         
  1385.     };
  1386.     
  1387. #else  /* C style interface */
  1388.     typedef struct IDropSourceVtbl
  1389.     {
  1390.         BEGIN_INTERFACE
  1391.         
  1392.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1393.             IDropSource * This,
  1394.             /* [in] */ REFIID riid,
  1395.             /* [iid_is][out] */ void **ppvObject);
  1396.         
  1397.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1398.             IDropSource * This);
  1399.         
  1400.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1401.             IDropSource * This);
  1402.         
  1403.         HRESULT ( STDMETHODCALLTYPE *QueryContinueDrag )( 
  1404.             IDropSource * This,
  1405.             /* [in] */ BOOL fEscapePressed,
  1406.             /* [in] */ DWORD grfKeyState);
  1407.         
  1408.         HRESULT ( STDMETHODCALLTYPE *GiveFeedback )( 
  1409.             IDropSource * This,
  1410.             /* [in] */ DWORD dwEffect);
  1411.         
  1412.         END_INTERFACE
  1413.     } IDropSourceVtbl;
  1414.     interface IDropSource
  1415.     {
  1416.         CONST_VTBL struct IDropSourceVtbl *lpVtbl;
  1417.     };
  1418.     
  1419. #ifdef COBJMACROS
  1420. #define IDropSource_QueryInterface(This,riid,ppvObject)
  1421.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1422. #define IDropSource_AddRef(This)
  1423.     (This)->lpVtbl -> AddRef(This)
  1424. #define IDropSource_Release(This)
  1425.     (This)->lpVtbl -> Release(This)
  1426. #define IDropSource_QueryContinueDrag(This,fEscapePressed,grfKeyState)
  1427.     (This)->lpVtbl -> QueryContinueDrag(This,fEscapePressed,grfKeyState)
  1428. #define IDropSource_GiveFeedback(This,dwEffect)
  1429.     (This)->lpVtbl -> GiveFeedback(This,dwEffect)
  1430. #endif /* COBJMACROS */
  1431. #endif  /* C style interface */
  1432. HRESULT STDMETHODCALLTYPE IDropSource_QueryContinueDrag_Proxy( 
  1433.     IDropSource * This,
  1434.     /* [in] */ BOOL fEscapePressed,
  1435.     /* [in] */ DWORD grfKeyState);
  1436. void __RPC_STUB IDropSource_QueryContinueDrag_Stub(
  1437.     IRpcStubBuffer *This,
  1438.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1439.     PRPC_MESSAGE _pRpcMessage,
  1440.     DWORD *_pdwStubPhase);
  1441. HRESULT STDMETHODCALLTYPE IDropSource_GiveFeedback_Proxy( 
  1442.     IDropSource * This,
  1443.     /* [in] */ DWORD dwEffect);
  1444. void __RPC_STUB IDropSource_GiveFeedback_Stub(
  1445.     IRpcStubBuffer *This,
  1446.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1447.     PRPC_MESSAGE _pRpcMessage,
  1448.     DWORD *_pdwStubPhase);
  1449. #endif  /* __IDropSource_INTERFACE_DEFINED__ */
  1450. #ifndef __IDropTarget_INTERFACE_DEFINED__
  1451. #define __IDropTarget_INTERFACE_DEFINED__
  1452. /* interface IDropTarget */
  1453. /* [unique][uuid][object] */ 
  1454. typedef /* [unique] */ IDropTarget *LPDROPTARGET;
  1455. #define MK_ALT ( 0x20 )
  1456. #define DROPEFFECT_NONE ( 0 )
  1457. #define DROPEFFECT_COPY ( 1 )
  1458. #define DROPEFFECT_MOVE ( 2 )
  1459. #define DROPEFFECT_LINK ( 4 )
  1460. #define DROPEFFECT_SCROLL ( 0x80000000 )
  1461. // default inset-width of the hot zone, in pixels
  1462. //   typical use: GetProfileInt("windows","DragScrollInset",DD_DEFSCROLLINSET)
  1463. #define DD_DEFSCROLLINSET ( 11 )
  1464. // default delay before scrolling, in milliseconds
  1465. //   typical use: GetProfileInt("windows","DragScrollDelay",DD_DEFSCROLLDELAY)
  1466. #define DD_DEFSCROLLDELAY ( 50 )
  1467. // default scroll interval, in milliseconds
  1468. //   typical use: GetProfileInt("windows","DragScrollInterval", DD_DEFSCROLLINTERVAL)
  1469. #define DD_DEFSCROLLINTERVAL ( 50 )
  1470. // default delay before dragging should start, in milliseconds
  1471. //   typical use: GetProfileInt("windows", "DragDelay", DD_DEFDRAGDELAY)
  1472. #define DD_DEFDRAGDELAY ( 200 )
  1473. // default minimum distance (radius) before dragging should start, in pixels
  1474. //   typical use: GetProfileInt("windows", "DragMinDist", DD_DEFDRAGMINDIST)
  1475. #define DD_DEFDRAGMINDIST ( 2 )
  1476. EXTERN_C const IID IID_IDropTarget;
  1477. #if defined(__cplusplus) && !defined(CINTERFACE)
  1478.     
  1479.     MIDL_INTERFACE("00000122-0000-0000-C000-000000000046")
  1480.     IDropTarget : public IUnknown
  1481.     {
  1482.     public:
  1483.         virtual HRESULT STDMETHODCALLTYPE DragEnter( 
  1484.             /* [unique][in] */ IDataObject *pDataObj,
  1485.             /* [in] */ DWORD grfKeyState,
  1486.             /* [in] */ POINTL pt,
  1487.             /* [out][in] */ DWORD *pdwEffect) = 0;
  1488.         
  1489.         virtual HRESULT STDMETHODCALLTYPE DragOver( 
  1490.             /* [in] */ DWORD grfKeyState,
  1491.             /* [in] */ POINTL pt,
  1492.             /* [out][in] */ DWORD *pdwEffect) = 0;
  1493.         
  1494.         virtual HRESULT STDMETHODCALLTYPE DragLeave( void) = 0;
  1495.         
  1496.         virtual HRESULT STDMETHODCALLTYPE Drop( 
  1497.             /* [unique][in] */ IDataObject *pDataObj,
  1498.             /* [in] */ DWORD grfKeyState,
  1499.             /* [in] */ POINTL pt,
  1500.             /* [out][in] */ DWORD *pdwEffect) = 0;
  1501.         
  1502.     };
  1503.     
  1504. #else  /* C style interface */
  1505.     typedef struct IDropTargetVtbl
  1506.     {
  1507.         BEGIN_INTERFACE
  1508.         
  1509.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1510.             IDropTarget * This,
  1511.             /* [in] */ REFIID riid,
  1512.             /* [iid_is][out] */ void **ppvObject);
  1513.         
  1514.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1515.             IDropTarget * This);
  1516.         
  1517.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1518.             IDropTarget * This);
  1519.         
  1520.         HRESULT ( STDMETHODCALLTYPE *DragEnter )( 
  1521.             IDropTarget * This,
  1522.             /* [unique][in] */ IDataObject *pDataObj,
  1523.             /* [in] */ DWORD grfKeyState,
  1524.             /* [in] */ POINTL pt,
  1525.             /* [out][in] */ DWORD *pdwEffect);
  1526.         
  1527.         HRESULT ( STDMETHODCALLTYPE *DragOver )( 
  1528.             IDropTarget * This,
  1529.             /* [in] */ DWORD grfKeyState,
  1530.             /* [in] */ POINTL pt,
  1531.             /* [out][in] */ DWORD *pdwEffect);
  1532.         
  1533.         HRESULT ( STDMETHODCALLTYPE *DragLeave )( 
  1534.             IDropTarget * This);
  1535.         
  1536.         HRESULT ( STDMETHODCALLTYPE *Drop )( 
  1537.             IDropTarget * This,
  1538.             /* [unique][in] */ IDataObject *pDataObj,
  1539.             /* [in] */ DWORD grfKeyState,
  1540.             /* [in] */ POINTL pt,
  1541.             /* [out][in] */ DWORD *pdwEffect);
  1542.         
  1543.         END_INTERFACE
  1544.     } IDropTargetVtbl;
  1545.     interface IDropTarget
  1546.     {
  1547.         CONST_VTBL struct IDropTargetVtbl *lpVtbl;
  1548.     };
  1549.     
  1550. #ifdef COBJMACROS
  1551. #define IDropTarget_QueryInterface(This,riid,ppvObject)
  1552.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1553. #define IDropTarget_AddRef(This)
  1554.     (This)->lpVtbl -> AddRef(This)
  1555. #define IDropTarget_Release(This)
  1556.     (This)->lpVtbl -> Release(This)
  1557. #define IDropTarget_DragEnter(This,pDataObj,grfKeyState,pt,pdwEffect)
  1558.     (This)->lpVtbl -> DragEnter(This,pDataObj,grfKeyState,pt,pdwEffect)
  1559. #define IDropTarget_DragOver(This,grfKeyState,pt,pdwEffect)
  1560.     (This)->lpVtbl -> DragOver(This,grfKeyState,pt,pdwEffect)
  1561. #define IDropTarget_DragLeave(This)
  1562.     (This)->lpVtbl -> DragLeave(This)
  1563. #define IDropTarget_Drop(This,pDataObj,grfKeyState,pt,pdwEffect)
  1564.     (This)->lpVtbl -> Drop(This,pDataObj,grfKeyState,pt,pdwEffect)
  1565. #endif /* COBJMACROS */
  1566. #endif  /* C style interface */
  1567. HRESULT STDMETHODCALLTYPE IDropTarget_DragEnter_Proxy( 
  1568.     IDropTarget * This,
  1569.     /* [unique][in] */ IDataObject *pDataObj,
  1570.     /* [in] */ DWORD grfKeyState,
  1571.     /* [in] */ POINTL pt,
  1572.     /* [out][in] */ DWORD *pdwEffect);
  1573. void __RPC_STUB IDropTarget_DragEnter_Stub(
  1574.     IRpcStubBuffer *This,
  1575.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1576.     PRPC_MESSAGE _pRpcMessage,
  1577.     DWORD *_pdwStubPhase);
  1578. HRESULT STDMETHODCALLTYPE IDropTarget_DragOver_Proxy( 
  1579.     IDropTarget * This,
  1580.     /* [in] */ DWORD grfKeyState,
  1581.     /* [in] */ POINTL pt,
  1582.     /* [out][in] */ DWORD *pdwEffect);
  1583. void __RPC_STUB IDropTarget_DragOver_Stub(
  1584.     IRpcStubBuffer *This,
  1585.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1586.     PRPC_MESSAGE _pRpcMessage,
  1587.     DWORD *_pdwStubPhase);
  1588. HRESULT STDMETHODCALLTYPE IDropTarget_DragLeave_Proxy( 
  1589.     IDropTarget * This);
  1590. void __RPC_STUB IDropTarget_DragLeave_Stub(
  1591.     IRpcStubBuffer *This,
  1592.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1593.     PRPC_MESSAGE _pRpcMessage,
  1594.     DWORD *_pdwStubPhase);
  1595. HRESULT STDMETHODCALLTYPE IDropTarget_Drop_Proxy( 
  1596.     IDropTarget * This,
  1597.     /* [unique][in] */ IDataObject *pDataObj,
  1598.     /* [in] */ DWORD grfKeyState,
  1599.     /* [in] */ POINTL pt,
  1600.     /* [out][in] */ DWORD *pdwEffect);
  1601. void __RPC_STUB IDropTarget_Drop_Stub(
  1602.     IRpcStubBuffer *This,
  1603.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1604.     PRPC_MESSAGE _pRpcMessage,
  1605.     DWORD *_pdwStubPhase);
  1606. #endif  /* __IDropTarget_INTERFACE_DEFINED__ */
  1607. #ifndef __IEnumOLEVERB_INTERFACE_DEFINED__
  1608. #define __IEnumOLEVERB_INTERFACE_DEFINED__
  1609. /* interface IEnumOLEVERB */
  1610. /* [unique][uuid][object] */ 
  1611. typedef /* [unique] */ IEnumOLEVERB *LPENUMOLEVERB;
  1612. typedef struct tagOLEVERB
  1613.     {
  1614.     LONG lVerb;
  1615.     LPOLESTR lpszVerbName;
  1616.     DWORD fuFlags;
  1617.     DWORD grfAttribs;
  1618.     }  OLEVERB;
  1619. typedef struct tagOLEVERB *LPOLEVERB;
  1620. typedef /* [v1_enum] */ 
  1621. enum tagOLEVERBATTRIB
  1622.     { OLEVERBATTRIB_NEVERDIRTIES = 1,
  1623. OLEVERBATTRIB_ONCONTAINERMENU = 2
  1624.     }  OLEVERBATTRIB;
  1625. EXTERN_C const IID IID_IEnumOLEVERB;
  1626. #if defined(__cplusplus) && !defined(CINTERFACE)
  1627.     
  1628.     MIDL_INTERFACE("00000104-0000-0000-C000-000000000046")
  1629.     IEnumOLEVERB : public IUnknown
  1630.     {
  1631.     public:
  1632.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next( 
  1633.             /* [in] */ ULONG celt,
  1634.             /* [length_is][size_is][out] */ LPOLEVERB rgelt,
  1635.             /* [out] */ ULONG *pceltFetched) = 0;
  1636.         
  1637.         virtual HRESULT STDMETHODCALLTYPE Skip( 
  1638.             /* [in] */ ULONG celt) = 0;
  1639.         
  1640.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1641.         
  1642.         virtual HRESULT STDMETHODCALLTYPE Clone( 
  1643.             /* [out] */ IEnumOLEVERB **ppenum) = 0;
  1644.         
  1645.     };
  1646.     
  1647. #else  /* C style interface */
  1648.     typedef struct IEnumOLEVERBVtbl
  1649.     {
  1650.         BEGIN_INTERFACE
  1651.         
  1652.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1653.             IEnumOLEVERB * This,
  1654.             /* [in] */ REFIID riid,
  1655.             /* [iid_is][out] */ void **ppvObject);
  1656.         
  1657.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1658.             IEnumOLEVERB * This);
  1659.         
  1660.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1661.             IEnumOLEVERB * This);
  1662.         
  1663.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )( 
  1664.             IEnumOLEVERB * This,
  1665.             /* [in] */ ULONG celt,
  1666.             /* [length_is][size_is][out] */ LPOLEVERB rgelt,
  1667.             /* [out] */ ULONG *pceltFetched);
  1668.         
  1669.         HRESULT ( STDMETHODCALLTYPE *Skip )( 
  1670.             IEnumOLEVERB * This,
  1671.             /* [in] */ ULONG celt);
  1672.         
  1673.         HRESULT ( STDMETHODCALLTYPE *Reset )( 
  1674.             IEnumOLEVERB * This);
  1675.         
  1676.         HRESULT ( STDMETHODCALLTYPE *Clone )( 
  1677.             IEnumOLEVERB * This,
  1678.             /* [out] */ IEnumOLEVERB **ppenum);
  1679.         
  1680.         END_INTERFACE
  1681.     } IEnumOLEVERBVtbl;
  1682.     interface IEnumOLEVERB
  1683.     {
  1684.         CONST_VTBL struct IEnumOLEVERBVtbl *lpVtbl;
  1685.     };
  1686.     
  1687. #ifdef COBJMACROS
  1688. #define IEnumOLEVERB_QueryInterface(This,riid,ppvObject)
  1689.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1690. #define IEnumOLEVERB_AddRef(This)
  1691.     (This)->lpVtbl -> AddRef(This)
  1692. #define IEnumOLEVERB_Release(This)
  1693.     (This)->lpVtbl -> Release(This)
  1694. #define IEnumOLEVERB_Next(This,celt,rgelt,pceltFetched)
  1695.     (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  1696. #define IEnumOLEVERB_Skip(This,celt)
  1697.     (This)->lpVtbl -> Skip(This,celt)
  1698. #define IEnumOLEVERB_Reset(This)
  1699.     (This)->lpVtbl -> Reset(This)
  1700. #define IEnumOLEVERB_Clone(This,ppenum)
  1701.     (This)->lpVtbl -> Clone(This,ppenum)
  1702. #endif /* COBJMACROS */
  1703. #endif  /* C style interface */
  1704. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumOLEVERB_RemoteNext_Proxy( 
  1705.     IEnumOLEVERB * This,
  1706.     /* [in] */ ULONG celt,
  1707.     /* [length_is][size_is][out] */ LPOLEVERB rgelt,
  1708.     /* [out] */ ULONG *pceltFetched);
  1709. void __RPC_STUB IEnumOLEVERB_RemoteNext_Stub(
  1710.     IRpcStubBuffer *This,
  1711.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1712.     PRPC_MESSAGE _pRpcMessage,
  1713.     DWORD *_pdwStubPhase);
  1714. HRESULT STDMETHODCALLTYPE IEnumOLEVERB_Skip_Proxy( 
  1715.     IEnumOLEVERB * This,
  1716.     /* [in] */ ULONG celt);
  1717. void __RPC_STUB IEnumOLEVERB_Skip_Stub(
  1718.     IRpcStubBuffer *This,
  1719.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1720.     PRPC_MESSAGE _pRpcMessage,
  1721.     DWORD *_pdwStubPhase);
  1722. HRESULT STDMETHODCALLTYPE IEnumOLEVERB_Reset_Proxy( 
  1723.     IEnumOLEVERB * This);
  1724. void __RPC_STUB IEnumOLEVERB_Reset_Stub(
  1725.     IRpcStubBuffer *This,
  1726.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1727.     PRPC_MESSAGE _pRpcMessage,
  1728.     DWORD *_pdwStubPhase);
  1729. HRESULT STDMETHODCALLTYPE IEnumOLEVERB_Clone_Proxy( 
  1730.     IEnumOLEVERB * This,
  1731.     /* [out] */ IEnumOLEVERB **ppenum);
  1732. void __RPC_STUB IEnumOLEVERB_Clone_Stub(
  1733.     IRpcStubBuffer *This,
  1734.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1735.     PRPC_MESSAGE _pRpcMessage,
  1736.     DWORD *_pdwStubPhase);
  1737. #endif  /* __IEnumOLEVERB_INTERFACE_DEFINED__ */
  1738. /* Additional Prototypes for ALL interfaces */
  1739. unsigned long             __RPC_USER  CLIPFORMAT_UserSize(     unsigned long *, unsigned long            , CLIPFORMAT * ); 
  1740. unsigned char * __RPC_USER  CLIPFORMAT_UserMarshal(  unsigned long *, unsigned char *, CLIPFORMAT * ); 
  1741. unsigned char * __RPC_USER  CLIPFORMAT_UserUnmarshal(unsigned long *, unsigned char *, CLIPFORMAT * ); 
  1742. void                      __RPC_USER  CLIPFORMAT_UserFree(     unsigned long *, CLIPFORMAT * ); 
  1743. unsigned long             __RPC_USER  HACCEL_UserSize(     unsigned long *, unsigned long            , HACCEL * ); 
  1744. unsigned char * __RPC_USER  HACCEL_UserMarshal(  unsigned long *, unsigned char *, HACCEL * ); 
  1745. unsigned char * __RPC_USER  HACCEL_UserUnmarshal(unsigned long *, unsigned char *, HACCEL * ); 
  1746. void                      __RPC_USER  HACCEL_UserFree(     unsigned long *, HACCEL * ); 
  1747. unsigned long             __RPC_USER  HGLOBAL_UserSize(     unsigned long *, unsigned long            , HGLOBAL * ); 
  1748. unsigned char * __RPC_USER  HGLOBAL_UserMarshal(  unsigned long *, unsigned char *, HGLOBAL * ); 
  1749. unsigned char * __RPC_USER  HGLOBAL_UserUnmarshal(unsigned long *, unsigned char *, HGLOBAL * ); 
  1750. void                      __RPC_USER  HGLOBAL_UserFree(     unsigned long *, HGLOBAL * ); 
  1751. unsigned long             __RPC_USER  HMENU_UserSize(     unsigned long *, unsigned long            , HMENU * ); 
  1752. unsigned char * __RPC_USER  HMENU_UserMarshal(  unsigned long *, unsigned char *, HMENU * ); 
  1753. unsigned char * __RPC_USER  HMENU_UserUnmarshal(unsigned long *, unsigned char *, HMENU * ); 
  1754. void                      __RPC_USER  HMENU_UserFree(     unsigned long *, HMENU * ); 
  1755. unsigned long             __RPC_USER  HWND_UserSize(     unsigned long *, unsigned long            , HWND * ); 
  1756. unsigned char * __RPC_USER  HWND_UserMarshal(  unsigned long *, unsigned char *, HWND * ); 
  1757. unsigned char * __RPC_USER  HWND_UserUnmarshal(unsigned long *, unsigned char *, HWND * ); 
  1758. void                      __RPC_USER  HWND_UserFree(     unsigned long *, HWND * ); 
  1759. unsigned long             __RPC_USER  STGMEDIUM_UserSize(     unsigned long *, unsigned long            , STGMEDIUM * ); 
  1760. unsigned char * __RPC_USER  STGMEDIUM_UserMarshal(  unsigned long *, unsigned char *, STGMEDIUM * ); 
  1761. unsigned char * __RPC_USER  STGMEDIUM_UserUnmarshal(unsigned long *, unsigned char *, STGMEDIUM * ); 
  1762. void                      __RPC_USER  STGMEDIUM_UserFree(     unsigned long *, STGMEDIUM * ); 
  1763. /* [local] */ HRESULT STDMETHODCALLTYPE IOleCache2_UpdateCache_Proxy( 
  1764.     IOleCache2 * This,
  1765.     /* [in] */ LPDATAOBJECT pDataObject,
  1766.     /* [in] */ DWORD grfUpdf,
  1767.     /* [in] */ LPVOID pReserved);
  1768. /* [call_as] */ HRESULT STDMETHODCALLTYPE IOleCache2_UpdateCache_Stub( 
  1769.     IOleCache2 * This,
  1770.     /* [in] */ LPDATAOBJECT pDataObject,
  1771.     /* [in] */ DWORD grfUpdf,
  1772.     /* [in] */ LONG_PTR pReserved);
  1773. /* [local] */ HRESULT STDMETHODCALLTYPE IOleInPlaceActiveObject_TranslateAccelerator_Proxy( 
  1774.     IOleInPlaceActiveObject * This,
  1775.     /* [in] */ LPMSG lpmsg);
  1776. /* [call_as] */ HRESULT STDMETHODCALLTYPE IOleInPlaceActiveObject_TranslateAccelerator_Stub( 
  1777.     IOleInPlaceActiveObject * This);
  1778. /* [local] */ HRESULT STDMETHODCALLTYPE IOleInPlaceActiveObject_ResizeBorder_Proxy( 
  1779.     IOleInPlaceActiveObject * This,
  1780.     /* [in] */ LPCRECT prcBorder,
  1781.     /* [unique][in] */ IOleInPlaceUIWindow *pUIWindow,
  1782.     /* [in] */ BOOL fFrameWindow);
  1783. /* [input_sync][call_as] */ HRESULT STDMETHODCALLTYPE IOleInPlaceActiveObject_ResizeBorder_Stub( 
  1784.     IOleInPlaceActiveObject * This,
  1785.     /* [in] */ LPCRECT prcBorder,
  1786.     /* [in] */ REFIID riid,
  1787.     /* [iid_is][unique][in] */ IOleInPlaceUIWindow *pUIWindow,
  1788.     /* [in] */ BOOL fFrameWindow);
  1789. /* [local] */ HRESULT STDMETHODCALLTYPE IViewObject_Draw_Proxy( 
  1790.     IViewObject * This,
  1791.     /* [in] */ DWORD dwDrawAspect,
  1792.     /* [in] */ LONG lindex,
  1793.     /* [unique][in] */ void *pvAspect,
  1794.     /* [unique][in] */ DVTARGETDEVICE *ptd,
  1795.     /* [in] */ HDC hdcTargetDev,
  1796.     /* [in] */ HDC hdcDraw,
  1797.     /* [in] */ LPCRECTL lprcBounds,
  1798.     /* [unique][in] */ LPCRECTL lprcWBounds,
  1799.     /* [in] */ BOOL ( STDMETHODCALLTYPE *pfnContinue )( 
  1800.         ULONG_PTR dwContinue),
  1801.     /* [in] */ ULONG_PTR dwContinue);
  1802. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewObject_Draw_Stub( 
  1803.     IViewObject * This,
  1804.     /* [in] */ DWORD dwDrawAspect,
  1805.     /* [in] */ LONG lindex,
  1806.     /* [in] */ ULONG_PTR pvAspect,
  1807.     /* [unique][in] */ DVTARGETDEVICE *ptd,
  1808.     /* [in] */ ULONG_PTR hdcTargetDev,
  1809.     /* [in] */ ULONG_PTR hdcDraw,
  1810.     /* [in] */ LPCRECTL lprcBounds,
  1811.     /* [unique][in] */ LPCRECTL lprcWBounds,
  1812.     /* [in] */ IContinue *pContinue);
  1813. /* [local] */ HRESULT STDMETHODCALLTYPE IViewObject_GetColorSet_Proxy( 
  1814.     IViewObject * This,
  1815.     /* [in] */ DWORD dwDrawAspect,
  1816.     /* [in] */ LONG lindex,
  1817.     /* [unique][in] */ void *pvAspect,
  1818.     /* [unique][in] */ DVTARGETDEVICE *ptd,
  1819.     /* [in] */ HDC hicTargetDev,
  1820.     /* [out] */ LOGPALETTE **ppColorSet);
  1821. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewObject_GetColorSet_Stub( 
  1822.     IViewObject * This,
  1823.     /* [in] */ DWORD dwDrawAspect,
  1824.     /* [in] */ LONG lindex,
  1825.     /* [in] */ ULONG_PTR pvAspect,
  1826.     /* [unique][in] */ DVTARGETDEVICE *ptd,
  1827.     /* [in] */ ULONG_PTR hicTargetDev,
  1828.     /* [out] */ LOGPALETTE **ppColorSet);
  1829. /* [local] */ HRESULT STDMETHODCALLTYPE IViewObject_Freeze_Proxy( 
  1830.     IViewObject * This,
  1831.     /* [in] */ DWORD dwDrawAspect,
  1832.     /* [in] */ LONG lindex,
  1833.     /* [unique][in] */ void *pvAspect,
  1834.     /* [out] */ DWORD *pdwFreeze);
  1835. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewObject_Freeze_Stub( 
  1836.     IViewObject * This,
  1837.     /* [in] */ DWORD dwDrawAspect,
  1838.     /* [in] */ LONG lindex,
  1839.     /* [in] */ ULONG_PTR pvAspect,
  1840.     /* [out] */ DWORD *pdwFreeze);
  1841. /* [local] */ HRESULT STDMETHODCALLTYPE IViewObject_GetAdvise_Proxy( 
  1842.     IViewObject * This,
  1843.     /* [unique][out] */ DWORD *pAspects,
  1844.     /* [unique][out] */ DWORD *pAdvf,
  1845.     /* [out] */ IAdviseSink **ppAdvSink);
  1846. /* [call_as] */ HRESULT STDMETHODCALLTYPE IViewObject_GetAdvise_Stub( 
  1847.     IViewObject * This,
  1848.     /* [out] */ DWORD *pAspects,
  1849.     /* [out] */ DWORD *pAdvf,
  1850.     /* [out] */ IAdviseSink **ppAdvSink);
  1851. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumOLEVERB_Next_Proxy( 
  1852.     IEnumOLEVERB * This,
  1853.     /* [in] */ ULONG celt,
  1854.     /* [length_is][size_is][out] */ LPOLEVERB rgelt,
  1855.     /* [out] */ ULONG *pceltFetched);
  1856. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumOLEVERB_Next_Stub( 
  1857.     IEnumOLEVERB * This,
  1858.     /* [in] */ ULONG celt,
  1859.     /* [length_is][size_is][out] */ LPOLEVERB rgelt,
  1860.     /* [out] */ ULONG *pceltFetched);
  1861. /* end of Additional Prototypes */
  1862. #ifdef __cplusplus
  1863. }
  1864. #endif
  1865. #endif