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

模拟服务器

开发平台:

C/C++

  1.     public:
  2.         virtual HRESULT STDMETHODCALLTYPE get_Handle( 
  3.             /* [out] */ OLE_HANDLE *pHandle) = 0;
  4.         
  5.         virtual HRESULT STDMETHODCALLTYPE get_hPal( 
  6.             /* [out] */ OLE_HANDLE *phPal) = 0;
  7.         
  8.         virtual HRESULT STDMETHODCALLTYPE get_Type( 
  9.             /* [out] */ SHORT *pType) = 0;
  10.         
  11.         virtual HRESULT STDMETHODCALLTYPE get_Width( 
  12.             /* [out] */ OLE_XSIZE_HIMETRIC *pWidth) = 0;
  13.         
  14.         virtual HRESULT STDMETHODCALLTYPE get_Height( 
  15.             /* [out] */ OLE_YSIZE_HIMETRIC *pHeight) = 0;
  16.         
  17.         virtual HRESULT STDMETHODCALLTYPE Render( 
  18.             /* [in] */ HDC hDC,
  19.             /* [in] */ LONG x,
  20.             /* [in] */ LONG y,
  21.             /* [in] */ LONG cx,
  22.             /* [in] */ LONG cy,
  23.             /* [in] */ OLE_XPOS_HIMETRIC xSrc,
  24.             /* [in] */ OLE_YPOS_HIMETRIC ySrc,
  25.             /* [in] */ OLE_XSIZE_HIMETRIC cxSrc,
  26.             /* [in] */ OLE_YSIZE_HIMETRIC cySrc,
  27.             /* [in] */ LPCRECT pRcWBounds) = 0;
  28.         
  29.         virtual HRESULT STDMETHODCALLTYPE set_hPal( 
  30.             /* [in] */ OLE_HANDLE hPal) = 0;
  31.         
  32.         virtual HRESULT STDMETHODCALLTYPE get_CurDC( 
  33.             /* [out] */ HDC *phDC) = 0;
  34.         
  35.         virtual HRESULT STDMETHODCALLTYPE SelectPicture( 
  36.             /* [in] */ HDC hDCIn,
  37.             /* [out] */ HDC *phDCOut,
  38.             /* [out] */ OLE_HANDLE *phBmpOut) = 0;
  39.         
  40.         virtual HRESULT STDMETHODCALLTYPE get_KeepOriginalFormat( 
  41.             /* [out] */ BOOL *pKeep) = 0;
  42.         
  43.         virtual HRESULT STDMETHODCALLTYPE put_KeepOriginalFormat( 
  44.             /* [in] */ BOOL keep) = 0;
  45.         
  46.         virtual HRESULT STDMETHODCALLTYPE PictureChanged( void) = 0;
  47.         
  48.         virtual HRESULT STDMETHODCALLTYPE SaveAsFile( 
  49.             /* [in] */ LPSTREAM pStream,
  50.             /* [in] */ BOOL fSaveMemCopy,
  51.             /* [out] */ LONG *pCbSize) = 0;
  52.         
  53.         virtual HRESULT STDMETHODCALLTYPE get_Attributes( 
  54.             /* [out] */ DWORD *pDwAttr) = 0;
  55.         
  56.     };
  57.     
  58. #else  /* C style interface */
  59.     typedef struct IPictureVtbl
  60.     {
  61.         BEGIN_INTERFACE
  62.         
  63.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  64.             IPicture * This,
  65.             /* [in] */ REFIID riid,
  66.             /* [iid_is][out] */ void **ppvObject);
  67.         
  68.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  69.             IPicture * This);
  70.         
  71.         ULONG ( STDMETHODCALLTYPE *Release )( 
  72.             IPicture * This);
  73.         
  74.         HRESULT ( STDMETHODCALLTYPE *get_Handle )( 
  75.             IPicture * This,
  76.             /* [out] */ OLE_HANDLE *pHandle);
  77.         
  78.         HRESULT ( STDMETHODCALLTYPE *get_hPal )( 
  79.             IPicture * This,
  80.             /* [out] */ OLE_HANDLE *phPal);
  81.         
  82.         HRESULT ( STDMETHODCALLTYPE *get_Type )( 
  83.             IPicture * This,
  84.             /* [out] */ SHORT *pType);
  85.         
  86.         HRESULT ( STDMETHODCALLTYPE *get_Width )( 
  87.             IPicture * This,
  88.             /* [out] */ OLE_XSIZE_HIMETRIC *pWidth);
  89.         
  90.         HRESULT ( STDMETHODCALLTYPE *get_Height )( 
  91.             IPicture * This,
  92.             /* [out] */ OLE_YSIZE_HIMETRIC *pHeight);
  93.         
  94.         HRESULT ( STDMETHODCALLTYPE *Render )( 
  95.             IPicture * This,
  96.             /* [in] */ HDC hDC,
  97.             /* [in] */ LONG x,
  98.             /* [in] */ LONG y,
  99.             /* [in] */ LONG cx,
  100.             /* [in] */ LONG cy,
  101.             /* [in] */ OLE_XPOS_HIMETRIC xSrc,
  102.             /* [in] */ OLE_YPOS_HIMETRIC ySrc,
  103.             /* [in] */ OLE_XSIZE_HIMETRIC cxSrc,
  104.             /* [in] */ OLE_YSIZE_HIMETRIC cySrc,
  105.             /* [in] */ LPCRECT pRcWBounds);
  106.         
  107.         HRESULT ( STDMETHODCALLTYPE *set_hPal )( 
  108.             IPicture * This,
  109.             /* [in] */ OLE_HANDLE hPal);
  110.         
  111.         HRESULT ( STDMETHODCALLTYPE *get_CurDC )( 
  112.             IPicture * This,
  113.             /* [out] */ HDC *phDC);
  114.         
  115.         HRESULT ( STDMETHODCALLTYPE *SelectPicture )( 
  116.             IPicture * This,
  117.             /* [in] */ HDC hDCIn,
  118.             /* [out] */ HDC *phDCOut,
  119.             /* [out] */ OLE_HANDLE *phBmpOut);
  120.         
  121.         HRESULT ( STDMETHODCALLTYPE *get_KeepOriginalFormat )( 
  122.             IPicture * This,
  123.             /* [out] */ BOOL *pKeep);
  124.         
  125.         HRESULT ( STDMETHODCALLTYPE *put_KeepOriginalFormat )( 
  126.             IPicture * This,
  127.             /* [in] */ BOOL keep);
  128.         
  129.         HRESULT ( STDMETHODCALLTYPE *PictureChanged )( 
  130.             IPicture * This);
  131.         
  132.         HRESULT ( STDMETHODCALLTYPE *SaveAsFile )( 
  133.             IPicture * This,
  134.             /* [in] */ LPSTREAM pStream,
  135.             /* [in] */ BOOL fSaveMemCopy,
  136.             /* [out] */ LONG *pCbSize);
  137.         
  138.         HRESULT ( STDMETHODCALLTYPE *get_Attributes )( 
  139.             IPicture * This,
  140.             /* [out] */ DWORD *pDwAttr);
  141.         
  142.         END_INTERFACE
  143.     } IPictureVtbl;
  144.     interface IPicture
  145.     {
  146.         CONST_VTBL struct IPictureVtbl *lpVtbl;
  147.     };
  148.     
  149. #ifdef COBJMACROS
  150. #define IPicture_QueryInterface(This,riid,ppvObject)
  151.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  152. #define IPicture_AddRef(This)
  153.     (This)->lpVtbl -> AddRef(This)
  154. #define IPicture_Release(This)
  155.     (This)->lpVtbl -> Release(This)
  156. #define IPicture_get_Handle(This,pHandle)
  157.     (This)->lpVtbl -> get_Handle(This,pHandle)
  158. #define IPicture_get_hPal(This,phPal)
  159.     (This)->lpVtbl -> get_hPal(This,phPal)
  160. #define IPicture_get_Type(This,pType)
  161.     (This)->lpVtbl -> get_Type(This,pType)
  162. #define IPicture_get_Width(This,pWidth)
  163.     (This)->lpVtbl -> get_Width(This,pWidth)
  164. #define IPicture_get_Height(This,pHeight)
  165.     (This)->lpVtbl -> get_Height(This,pHeight)
  166. #define IPicture_Render(This,hDC,x,y,cx,cy,xSrc,ySrc,cxSrc,cySrc,pRcWBounds)
  167.     (This)->lpVtbl -> Render(This,hDC,x,y,cx,cy,xSrc,ySrc,cxSrc,cySrc,pRcWBounds)
  168. #define IPicture_set_hPal(This,hPal)
  169.     (This)->lpVtbl -> set_hPal(This,hPal)
  170. #define IPicture_get_CurDC(This,phDC)
  171.     (This)->lpVtbl -> get_CurDC(This,phDC)
  172. #define IPicture_SelectPicture(This,hDCIn,phDCOut,phBmpOut)
  173.     (This)->lpVtbl -> SelectPicture(This,hDCIn,phDCOut,phBmpOut)
  174. #define IPicture_get_KeepOriginalFormat(This,pKeep)
  175.     (This)->lpVtbl -> get_KeepOriginalFormat(This,pKeep)
  176. #define IPicture_put_KeepOriginalFormat(This,keep)
  177.     (This)->lpVtbl -> put_KeepOriginalFormat(This,keep)
  178. #define IPicture_PictureChanged(This)
  179.     (This)->lpVtbl -> PictureChanged(This)
  180. #define IPicture_SaveAsFile(This,pStream,fSaveMemCopy,pCbSize)
  181.     (This)->lpVtbl -> SaveAsFile(This,pStream,fSaveMemCopy,pCbSize)
  182. #define IPicture_get_Attributes(This,pDwAttr)
  183.     (This)->lpVtbl -> get_Attributes(This,pDwAttr)
  184. #endif /* COBJMACROS */
  185. #endif  /* C style interface */
  186. HRESULT STDMETHODCALLTYPE IPicture_get_Handle_Proxy( 
  187.     IPicture * This,
  188.     /* [out] */ OLE_HANDLE *pHandle);
  189. void __RPC_STUB IPicture_get_Handle_Stub(
  190.     IRpcStubBuffer *This,
  191.     IRpcChannelBuffer *_pRpcChannelBuffer,
  192.     PRPC_MESSAGE _pRpcMessage,
  193.     DWORD *_pdwStubPhase);
  194. HRESULT STDMETHODCALLTYPE IPicture_get_hPal_Proxy( 
  195.     IPicture * This,
  196.     /* [out] */ OLE_HANDLE *phPal);
  197. void __RPC_STUB IPicture_get_hPal_Stub(
  198.     IRpcStubBuffer *This,
  199.     IRpcChannelBuffer *_pRpcChannelBuffer,
  200.     PRPC_MESSAGE _pRpcMessage,
  201.     DWORD *_pdwStubPhase);
  202. HRESULT STDMETHODCALLTYPE IPicture_get_Type_Proxy( 
  203.     IPicture * This,
  204.     /* [out] */ SHORT *pType);
  205. void __RPC_STUB IPicture_get_Type_Stub(
  206.     IRpcStubBuffer *This,
  207.     IRpcChannelBuffer *_pRpcChannelBuffer,
  208.     PRPC_MESSAGE _pRpcMessage,
  209.     DWORD *_pdwStubPhase);
  210. HRESULT STDMETHODCALLTYPE IPicture_get_Width_Proxy( 
  211.     IPicture * This,
  212.     /* [out] */ OLE_XSIZE_HIMETRIC *pWidth);
  213. void __RPC_STUB IPicture_get_Width_Stub(
  214.     IRpcStubBuffer *This,
  215.     IRpcChannelBuffer *_pRpcChannelBuffer,
  216.     PRPC_MESSAGE _pRpcMessage,
  217.     DWORD *_pdwStubPhase);
  218. HRESULT STDMETHODCALLTYPE IPicture_get_Height_Proxy( 
  219.     IPicture * This,
  220.     /* [out] */ OLE_YSIZE_HIMETRIC *pHeight);
  221. void __RPC_STUB IPicture_get_Height_Stub(
  222.     IRpcStubBuffer *This,
  223.     IRpcChannelBuffer *_pRpcChannelBuffer,
  224.     PRPC_MESSAGE _pRpcMessage,
  225.     DWORD *_pdwStubPhase);
  226. HRESULT STDMETHODCALLTYPE IPicture_Render_Proxy( 
  227.     IPicture * This,
  228.     /* [in] */ HDC hDC,
  229.     /* [in] */ LONG x,
  230.     /* [in] */ LONG y,
  231.     /* [in] */ LONG cx,
  232.     /* [in] */ LONG cy,
  233.     /* [in] */ OLE_XPOS_HIMETRIC xSrc,
  234.     /* [in] */ OLE_YPOS_HIMETRIC ySrc,
  235.     /* [in] */ OLE_XSIZE_HIMETRIC cxSrc,
  236.     /* [in] */ OLE_YSIZE_HIMETRIC cySrc,
  237.     /* [in] */ LPCRECT pRcWBounds);
  238. void __RPC_STUB IPicture_Render_Stub(
  239.     IRpcStubBuffer *This,
  240.     IRpcChannelBuffer *_pRpcChannelBuffer,
  241.     PRPC_MESSAGE _pRpcMessage,
  242.     DWORD *_pdwStubPhase);
  243. HRESULT STDMETHODCALLTYPE IPicture_set_hPal_Proxy( 
  244.     IPicture * This,
  245.     /* [in] */ OLE_HANDLE hPal);
  246. void __RPC_STUB IPicture_set_hPal_Stub(
  247.     IRpcStubBuffer *This,
  248.     IRpcChannelBuffer *_pRpcChannelBuffer,
  249.     PRPC_MESSAGE _pRpcMessage,
  250.     DWORD *_pdwStubPhase);
  251. HRESULT STDMETHODCALLTYPE IPicture_get_CurDC_Proxy( 
  252.     IPicture * This,
  253.     /* [out] */ HDC *phDC);
  254. void __RPC_STUB IPicture_get_CurDC_Stub(
  255.     IRpcStubBuffer *This,
  256.     IRpcChannelBuffer *_pRpcChannelBuffer,
  257.     PRPC_MESSAGE _pRpcMessage,
  258.     DWORD *_pdwStubPhase);
  259. HRESULT STDMETHODCALLTYPE IPicture_SelectPicture_Proxy( 
  260.     IPicture * This,
  261.     /* [in] */ HDC hDCIn,
  262.     /* [out] */ HDC *phDCOut,
  263.     /* [out] */ OLE_HANDLE *phBmpOut);
  264. void __RPC_STUB IPicture_SelectPicture_Stub(
  265.     IRpcStubBuffer *This,
  266.     IRpcChannelBuffer *_pRpcChannelBuffer,
  267.     PRPC_MESSAGE _pRpcMessage,
  268.     DWORD *_pdwStubPhase);
  269. HRESULT STDMETHODCALLTYPE IPicture_get_KeepOriginalFormat_Proxy( 
  270.     IPicture * This,
  271.     /* [out] */ BOOL *pKeep);
  272. void __RPC_STUB IPicture_get_KeepOriginalFormat_Stub(
  273.     IRpcStubBuffer *This,
  274.     IRpcChannelBuffer *_pRpcChannelBuffer,
  275.     PRPC_MESSAGE _pRpcMessage,
  276.     DWORD *_pdwStubPhase);
  277. HRESULT STDMETHODCALLTYPE IPicture_put_KeepOriginalFormat_Proxy( 
  278.     IPicture * This,
  279.     /* [in] */ BOOL keep);
  280. void __RPC_STUB IPicture_put_KeepOriginalFormat_Stub(
  281.     IRpcStubBuffer *This,
  282.     IRpcChannelBuffer *_pRpcChannelBuffer,
  283.     PRPC_MESSAGE _pRpcMessage,
  284.     DWORD *_pdwStubPhase);
  285. HRESULT STDMETHODCALLTYPE IPicture_PictureChanged_Proxy( 
  286.     IPicture * This);
  287. void __RPC_STUB IPicture_PictureChanged_Stub(
  288.     IRpcStubBuffer *This,
  289.     IRpcChannelBuffer *_pRpcChannelBuffer,
  290.     PRPC_MESSAGE _pRpcMessage,
  291.     DWORD *_pdwStubPhase);
  292. HRESULT STDMETHODCALLTYPE IPicture_SaveAsFile_Proxy( 
  293.     IPicture * This,
  294.     /* [in] */ LPSTREAM pStream,
  295.     /* [in] */ BOOL fSaveMemCopy,
  296.     /* [out] */ LONG *pCbSize);
  297. void __RPC_STUB IPicture_SaveAsFile_Stub(
  298.     IRpcStubBuffer *This,
  299.     IRpcChannelBuffer *_pRpcChannelBuffer,
  300.     PRPC_MESSAGE _pRpcMessage,
  301.     DWORD *_pdwStubPhase);
  302. HRESULT STDMETHODCALLTYPE IPicture_get_Attributes_Proxy( 
  303.     IPicture * This,
  304.     /* [out] */ DWORD *pDwAttr);
  305. void __RPC_STUB IPicture_get_Attributes_Stub(
  306.     IRpcStubBuffer *This,
  307.     IRpcChannelBuffer *_pRpcChannelBuffer,
  308.     PRPC_MESSAGE _pRpcMessage,
  309.     DWORD *_pdwStubPhase);
  310. #endif  /* __IPicture_INTERFACE_DEFINED__ */
  311. #ifndef __IFontEventsDisp_INTERFACE_DEFINED__
  312. #define __IFontEventsDisp_INTERFACE_DEFINED__
  313. /* interface IFontEventsDisp */
  314. /* [unique][uuid][object] */ 
  315. typedef IFontEventsDisp *LPFONTEVENTS;
  316. EXTERN_C const IID IID_IFontEventsDisp;
  317. #if defined(__cplusplus) && !defined(CINTERFACE)
  318.     
  319.     MIDL_INTERFACE("4EF6100A-AF88-11D0-9846-00C04FC29993")
  320.     IFontEventsDisp : public IDispatch
  321.     {
  322.     public:
  323.     };
  324.     
  325. #else  /* C style interface */
  326.     typedef struct IFontEventsDispVtbl
  327.     {
  328.         BEGIN_INTERFACE
  329.         
  330.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  331.             IFontEventsDisp * This,
  332.             /* [in] */ REFIID riid,
  333.             /* [iid_is][out] */ void **ppvObject);
  334.         
  335.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  336.             IFontEventsDisp * This);
  337.         
  338.         ULONG ( STDMETHODCALLTYPE *Release )( 
  339.             IFontEventsDisp * This);
  340.         
  341.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  342.             IFontEventsDisp * This,
  343.             /* [out] */ UINT *pctinfo);
  344.         
  345.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  346.             IFontEventsDisp * This,
  347.             /* [in] */ UINT iTInfo,
  348.             /* [in] */ LCID lcid,
  349.             /* [out] */ ITypeInfo **ppTInfo);
  350.         
  351.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  352.             IFontEventsDisp * This,
  353.             /* [in] */ REFIID riid,
  354.             /* [size_is][in] */ LPOLESTR *rgszNames,
  355.             /* [in] */ UINT cNames,
  356.             /* [in] */ LCID lcid,
  357.             /* [size_is][out] */ DISPID *rgDispId);
  358.         
  359.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  360.             IFontEventsDisp * This,
  361.             /* [in] */ DISPID dispIdMember,
  362.             /* [in] */ REFIID riid,
  363.             /* [in] */ LCID lcid,
  364.             /* [in] */ WORD wFlags,
  365.             /* [out][in] */ DISPPARAMS *pDispParams,
  366.             /* [out] */ VARIANT *pVarResult,
  367.             /* [out] */ EXCEPINFO *pExcepInfo,
  368.             /* [out] */ UINT *puArgErr);
  369.         
  370.         END_INTERFACE
  371.     } IFontEventsDispVtbl;
  372.     interface IFontEventsDisp
  373.     {
  374.         CONST_VTBL struct IFontEventsDispVtbl *lpVtbl;
  375.     };
  376.     
  377. #ifdef COBJMACROS
  378. #define IFontEventsDisp_QueryInterface(This,riid,ppvObject)
  379.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  380. #define IFontEventsDisp_AddRef(This)
  381.     (This)->lpVtbl -> AddRef(This)
  382. #define IFontEventsDisp_Release(This)
  383.     (This)->lpVtbl -> Release(This)
  384. #define IFontEventsDisp_GetTypeInfoCount(This,pctinfo)
  385.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  386. #define IFontEventsDisp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  387.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  388. #define IFontEventsDisp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  389.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  390. #define IFontEventsDisp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  391.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  392. #endif /* COBJMACROS */
  393. #endif  /* C style interface */
  394. #endif  /* __IFontEventsDisp_INTERFACE_DEFINED__ */
  395. #ifndef __IFontDisp_INTERFACE_DEFINED__
  396. #define __IFontDisp_INTERFACE_DEFINED__
  397. /* interface IFontDisp */
  398. /* [unique][uuid][object] */ 
  399. typedef IFontDisp *LPFONTDISP;
  400. EXTERN_C const IID IID_IFontDisp;
  401. #if defined(__cplusplus) && !defined(CINTERFACE)
  402.     
  403.     MIDL_INTERFACE("BEF6E003-A874-101A-8BBA-00AA00300CAB")
  404.     IFontDisp : public IDispatch
  405.     {
  406.     public:
  407.     };
  408.     
  409. #else  /* C style interface */
  410.     typedef struct IFontDispVtbl
  411.     {
  412.         BEGIN_INTERFACE
  413.         
  414.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  415.             IFontDisp * This,
  416.             /* [in] */ REFIID riid,
  417.             /* [iid_is][out] */ void **ppvObject);
  418.         
  419.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  420.             IFontDisp * This);
  421.         
  422.         ULONG ( STDMETHODCALLTYPE *Release )( 
  423.             IFontDisp * This);
  424.         
  425.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  426.             IFontDisp * This,
  427.             /* [out] */ UINT *pctinfo);
  428.         
  429.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  430.             IFontDisp * This,
  431.             /* [in] */ UINT iTInfo,
  432.             /* [in] */ LCID lcid,
  433.             /* [out] */ ITypeInfo **ppTInfo);
  434.         
  435.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  436.             IFontDisp * This,
  437.             /* [in] */ REFIID riid,
  438.             /* [size_is][in] */ LPOLESTR *rgszNames,
  439.             /* [in] */ UINT cNames,
  440.             /* [in] */ LCID lcid,
  441.             /* [size_is][out] */ DISPID *rgDispId);
  442.         
  443.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  444.             IFontDisp * This,
  445.             /* [in] */ DISPID dispIdMember,
  446.             /* [in] */ REFIID riid,
  447.             /* [in] */ LCID lcid,
  448.             /* [in] */ WORD wFlags,
  449.             /* [out][in] */ DISPPARAMS *pDispParams,
  450.             /* [out] */ VARIANT *pVarResult,
  451.             /* [out] */ EXCEPINFO *pExcepInfo,
  452.             /* [out] */ UINT *puArgErr);
  453.         
  454.         END_INTERFACE
  455.     } IFontDispVtbl;
  456.     interface IFontDisp
  457.     {
  458.         CONST_VTBL struct IFontDispVtbl *lpVtbl;
  459.     };
  460.     
  461. #ifdef COBJMACROS
  462. #define IFontDisp_QueryInterface(This,riid,ppvObject)
  463.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  464. #define IFontDisp_AddRef(This)
  465.     (This)->lpVtbl -> AddRef(This)
  466. #define IFontDisp_Release(This)
  467.     (This)->lpVtbl -> Release(This)
  468. #define IFontDisp_GetTypeInfoCount(This,pctinfo)
  469.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  470. #define IFontDisp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  471.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  472. #define IFontDisp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  473.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  474. #define IFontDisp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  475.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  476. #endif /* COBJMACROS */
  477. #endif  /* C style interface */
  478. #endif  /* __IFontDisp_INTERFACE_DEFINED__ */
  479. #ifndef __IPictureDisp_INTERFACE_DEFINED__
  480. #define __IPictureDisp_INTERFACE_DEFINED__
  481. /* interface IPictureDisp */
  482. /* [unique][uuid][object] */ 
  483. typedef IPictureDisp *LPPICTUREDISP;
  484. EXTERN_C const IID IID_IPictureDisp;
  485. #if defined(__cplusplus) && !defined(CINTERFACE)
  486.     
  487.     MIDL_INTERFACE("7BF80981-BF32-101A-8BBB-00AA00300CAB")
  488.     IPictureDisp : public IDispatch
  489.     {
  490.     public:
  491.     };
  492.     
  493. #else  /* C style interface */
  494.     typedef struct IPictureDispVtbl
  495.     {
  496.         BEGIN_INTERFACE
  497.         
  498.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  499.             IPictureDisp * This,
  500.             /* [in] */ REFIID riid,
  501.             /* [iid_is][out] */ void **ppvObject);
  502.         
  503.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  504.             IPictureDisp * This);
  505.         
  506.         ULONG ( STDMETHODCALLTYPE *Release )( 
  507.             IPictureDisp * This);
  508.         
  509.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  510.             IPictureDisp * This,
  511.             /* [out] */ UINT *pctinfo);
  512.         
  513.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  514.             IPictureDisp * This,
  515.             /* [in] */ UINT iTInfo,
  516.             /* [in] */ LCID lcid,
  517.             /* [out] */ ITypeInfo **ppTInfo);
  518.         
  519.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  520.             IPictureDisp * This,
  521.             /* [in] */ REFIID riid,
  522.             /* [size_is][in] */ LPOLESTR *rgszNames,
  523.             /* [in] */ UINT cNames,
  524.             /* [in] */ LCID lcid,
  525.             /* [size_is][out] */ DISPID *rgDispId);
  526.         
  527.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  528.             IPictureDisp * This,
  529.             /* [in] */ DISPID dispIdMember,
  530.             /* [in] */ REFIID riid,
  531.             /* [in] */ LCID lcid,
  532.             /* [in] */ WORD wFlags,
  533.             /* [out][in] */ DISPPARAMS *pDispParams,
  534.             /* [out] */ VARIANT *pVarResult,
  535.             /* [out] */ EXCEPINFO *pExcepInfo,
  536.             /* [out] */ UINT *puArgErr);
  537.         
  538.         END_INTERFACE
  539.     } IPictureDispVtbl;
  540.     interface IPictureDisp
  541.     {
  542.         CONST_VTBL struct IPictureDispVtbl *lpVtbl;
  543.     };
  544.     
  545. #ifdef COBJMACROS
  546. #define IPictureDisp_QueryInterface(This,riid,ppvObject)
  547.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  548. #define IPictureDisp_AddRef(This)
  549.     (This)->lpVtbl -> AddRef(This)
  550. #define IPictureDisp_Release(This)
  551.     (This)->lpVtbl -> Release(This)
  552. #define IPictureDisp_GetTypeInfoCount(This,pctinfo)
  553.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  554. #define IPictureDisp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  555.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  556. #define IPictureDisp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  557.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  558. #define IPictureDisp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  559.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  560. #endif /* COBJMACROS */
  561. #endif  /* C style interface */
  562. #endif  /* __IPictureDisp_INTERFACE_DEFINED__ */
  563. #ifndef __IOleInPlaceObjectWindowless_INTERFACE_DEFINED__
  564. #define __IOleInPlaceObjectWindowless_INTERFACE_DEFINED__
  565. /* interface IOleInPlaceObjectWindowless */
  566. /* [uuid][unique][object][local] */ 
  567. typedef IOleInPlaceObjectWindowless *LPOLEINPLACEOBJECTWINDOWLESS;
  568. EXTERN_C const IID IID_IOleInPlaceObjectWindowless;
  569. #if defined(__cplusplus) && !defined(CINTERFACE)
  570.     
  571.     MIDL_INTERFACE("1C2056CC-5EF4-101B-8BC8-00AA003E3B29")
  572.     IOleInPlaceObjectWindowless : public IOleInPlaceObject
  573.     {
  574.     public:
  575.         virtual HRESULT STDMETHODCALLTYPE OnWindowMessage( 
  576.             /* [in] */ UINT msg,
  577.             /* [in] */ WPARAM wParam,
  578.             /* [in] */ LPARAM lParam,
  579.             /* [out] */ LRESULT *plResult) = 0;
  580.         
  581.         virtual HRESULT STDMETHODCALLTYPE GetDropTarget( 
  582.             /* [out] */ IDropTarget **ppDropTarget) = 0;
  583.         
  584.     };
  585.     
  586. #else  /* C style interface */
  587.     typedef struct IOleInPlaceObjectWindowlessVtbl
  588.     {
  589.         BEGIN_INTERFACE
  590.         
  591.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  592.             IOleInPlaceObjectWindowless * This,
  593.             /* [in] */ REFIID riid,
  594.             /* [iid_is][out] */ void **ppvObject);
  595.         
  596.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  597.             IOleInPlaceObjectWindowless * This);
  598.         
  599.         ULONG ( STDMETHODCALLTYPE *Release )( 
  600.             IOleInPlaceObjectWindowless * This);
  601.         
  602.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetWindow )( 
  603.             IOleInPlaceObjectWindowless * This,
  604.             /* [out] */ HWND *phwnd);
  605.         
  606.         HRESULT ( STDMETHODCALLTYPE *ContextSensitiveHelp )( 
  607.             IOleInPlaceObjectWindowless * This,
  608.             /* [in] */ BOOL fEnterMode);
  609.         
  610.         HRESULT ( STDMETHODCALLTYPE *InPlaceDeactivate )( 
  611.             IOleInPlaceObjectWindowless * This);
  612.         
  613.         HRESULT ( STDMETHODCALLTYPE *UIDeactivate )( 
  614.             IOleInPlaceObjectWindowless * This);
  615.         
  616.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *SetObjectRects )( 
  617.             IOleInPlaceObjectWindowless * This,
  618.             /* [in] */ LPCRECT lprcPosRect,
  619.             /* [in] */ LPCRECT lprcClipRect);
  620.         
  621.         HRESULT ( STDMETHODCALLTYPE *ReactivateAndUndo )( 
  622.             IOleInPlaceObjectWindowless * This);
  623.         
  624.         HRESULT ( STDMETHODCALLTYPE *OnWindowMessage )( 
  625.             IOleInPlaceObjectWindowless * This,
  626.             /* [in] */ UINT msg,
  627.             /* [in] */ WPARAM wParam,
  628.             /* [in] */ LPARAM lParam,
  629.             /* [out] */ LRESULT *plResult);
  630.         
  631.         HRESULT ( STDMETHODCALLTYPE *GetDropTarget )( 
  632.             IOleInPlaceObjectWindowless * This,
  633.             /* [out] */ IDropTarget **ppDropTarget);
  634.         
  635.         END_INTERFACE
  636.     } IOleInPlaceObjectWindowlessVtbl;
  637.     interface IOleInPlaceObjectWindowless
  638.     {
  639.         CONST_VTBL struct IOleInPlaceObjectWindowlessVtbl *lpVtbl;
  640.     };
  641.     
  642. #ifdef COBJMACROS
  643. #define IOleInPlaceObjectWindowless_QueryInterface(This,riid,ppvObject)
  644.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  645. #define IOleInPlaceObjectWindowless_AddRef(This)
  646.     (This)->lpVtbl -> AddRef(This)
  647. #define IOleInPlaceObjectWindowless_Release(This)
  648.     (This)->lpVtbl -> Release(This)
  649. #define IOleInPlaceObjectWindowless_GetWindow(This,phwnd)
  650.     (This)->lpVtbl -> GetWindow(This,phwnd)
  651. #define IOleInPlaceObjectWindowless_ContextSensitiveHelp(This,fEnterMode)
  652.     (This)->lpVtbl -> ContextSensitiveHelp(This,fEnterMode)
  653. #define IOleInPlaceObjectWindowless_InPlaceDeactivate(This)
  654.     (This)->lpVtbl -> InPlaceDeactivate(This)
  655. #define IOleInPlaceObjectWindowless_UIDeactivate(This)
  656.     (This)->lpVtbl -> UIDeactivate(This)
  657. #define IOleInPlaceObjectWindowless_SetObjectRects(This,lprcPosRect,lprcClipRect)
  658.     (This)->lpVtbl -> SetObjectRects(This,lprcPosRect,lprcClipRect)
  659. #define IOleInPlaceObjectWindowless_ReactivateAndUndo(This)
  660.     (This)->lpVtbl -> ReactivateAndUndo(This)
  661. #define IOleInPlaceObjectWindowless_OnWindowMessage(This,msg,wParam,lParam,plResult)
  662.     (This)->lpVtbl -> OnWindowMessage(This,msg,wParam,lParam,plResult)
  663. #define IOleInPlaceObjectWindowless_GetDropTarget(This,ppDropTarget)
  664.     (This)->lpVtbl -> GetDropTarget(This,ppDropTarget)
  665. #endif /* COBJMACROS */
  666. #endif  /* C style interface */
  667. HRESULT STDMETHODCALLTYPE IOleInPlaceObjectWindowless_OnWindowMessage_Proxy( 
  668.     IOleInPlaceObjectWindowless * This,
  669.     /* [in] */ UINT msg,
  670.     /* [in] */ WPARAM wParam,
  671.     /* [in] */ LPARAM lParam,
  672.     /* [out] */ LRESULT *plResult);
  673. void __RPC_STUB IOleInPlaceObjectWindowless_OnWindowMessage_Stub(
  674.     IRpcStubBuffer *This,
  675.     IRpcChannelBuffer *_pRpcChannelBuffer,
  676.     PRPC_MESSAGE _pRpcMessage,
  677.     DWORD *_pdwStubPhase);
  678. HRESULT STDMETHODCALLTYPE IOleInPlaceObjectWindowless_GetDropTarget_Proxy( 
  679.     IOleInPlaceObjectWindowless * This,
  680.     /* [out] */ IDropTarget **ppDropTarget);
  681. void __RPC_STUB IOleInPlaceObjectWindowless_GetDropTarget_Stub(
  682.     IRpcStubBuffer *This,
  683.     IRpcChannelBuffer *_pRpcChannelBuffer,
  684.     PRPC_MESSAGE _pRpcMessage,
  685.     DWORD *_pdwStubPhase);
  686. #endif  /* __IOleInPlaceObjectWindowless_INTERFACE_DEFINED__ */
  687. #ifndef __IOleInPlaceSiteEx_INTERFACE_DEFINED__
  688. #define __IOleInPlaceSiteEx_INTERFACE_DEFINED__
  689. /* interface IOleInPlaceSiteEx */
  690. /* [uuid][unique][object] */ 
  691. typedef IOleInPlaceSiteEx *LPOLEINPLACESITEEX;
  692. typedef /* [v1_enum] */ 
  693. enum tagACTIVATEFLAGS
  694.     { ACTIVATE_WINDOWLESS = 1
  695.     }  ACTIVATEFLAGS;
  696. EXTERN_C const IID IID_IOleInPlaceSiteEx;
  697. #if defined(__cplusplus) && !defined(CINTERFACE)
  698.     
  699.     MIDL_INTERFACE("9C2CAD80-3424-11CF-B670-00AA004CD6D8")
  700.     IOleInPlaceSiteEx : public IOleInPlaceSite
  701.     {
  702.     public:
  703.         virtual HRESULT STDMETHODCALLTYPE OnInPlaceActivateEx( 
  704.             /* [out] */ BOOL *pfNoRedraw,
  705.             /* [in] */ DWORD dwFlags) = 0;
  706.         
  707.         virtual HRESULT STDMETHODCALLTYPE OnInPlaceDeactivateEx( 
  708.             /* [in] */ BOOL fNoRedraw) = 0;
  709.         
  710.         virtual HRESULT STDMETHODCALLTYPE RequestUIActivate( void) = 0;
  711.         
  712.     };
  713.     
  714. #else  /* C style interface */
  715.     typedef struct IOleInPlaceSiteExVtbl
  716.     {
  717.         BEGIN_INTERFACE
  718.         
  719.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  720.             IOleInPlaceSiteEx * This,
  721.             /* [in] */ REFIID riid,
  722.             /* [iid_is][out] */ void **ppvObject);
  723.         
  724.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  725.             IOleInPlaceSiteEx * This);
  726.         
  727.         ULONG ( STDMETHODCALLTYPE *Release )( 
  728.             IOleInPlaceSiteEx * This);
  729.         
  730.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetWindow )( 
  731.             IOleInPlaceSiteEx * This,
  732.             /* [out] */ HWND *phwnd);
  733.         
  734.         HRESULT ( STDMETHODCALLTYPE *ContextSensitiveHelp )( 
  735.             IOleInPlaceSiteEx * This,
  736.             /* [in] */ BOOL fEnterMode);
  737.         
  738.         HRESULT ( STDMETHODCALLTYPE *CanInPlaceActivate )( 
  739.             IOleInPlaceSiteEx * This);
  740.         
  741.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceActivate )( 
  742.             IOleInPlaceSiteEx * This);
  743.         
  744.         HRESULT ( STDMETHODCALLTYPE *OnUIActivate )( 
  745.             IOleInPlaceSiteEx * This);
  746.         
  747.         HRESULT ( STDMETHODCALLTYPE *GetWindowContext )( 
  748.             IOleInPlaceSiteEx * This,
  749.             /* [out] */ IOleInPlaceFrame **ppFrame,
  750.             /* [out] */ IOleInPlaceUIWindow **ppDoc,
  751.             /* [out] */ LPRECT lprcPosRect,
  752.             /* [out] */ LPRECT lprcClipRect,
  753.             /* [out][in] */ LPOLEINPLACEFRAMEINFO lpFrameInfo);
  754.         
  755.         HRESULT ( STDMETHODCALLTYPE *Scroll )( 
  756.             IOleInPlaceSiteEx * This,
  757.             /* [in] */ SIZE scrollExtant);
  758.         
  759.         HRESULT ( STDMETHODCALLTYPE *OnUIDeactivate )( 
  760.             IOleInPlaceSiteEx * This,
  761.             /* [in] */ BOOL fUndoable);
  762.         
  763.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceDeactivate )( 
  764.             IOleInPlaceSiteEx * This);
  765.         
  766.         HRESULT ( STDMETHODCALLTYPE *DiscardUndoState )( 
  767.             IOleInPlaceSiteEx * This);
  768.         
  769.         HRESULT ( STDMETHODCALLTYPE *DeactivateAndUndo )( 
  770.             IOleInPlaceSiteEx * This);
  771.         
  772.         HRESULT ( STDMETHODCALLTYPE *OnPosRectChange )( 
  773.             IOleInPlaceSiteEx * This,
  774.             /* [in] */ LPCRECT lprcPosRect);
  775.         
  776.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceActivateEx )( 
  777.             IOleInPlaceSiteEx * This,
  778.             /* [out] */ BOOL *pfNoRedraw,
  779.             /* [in] */ DWORD dwFlags);
  780.         
  781.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceDeactivateEx )( 
  782.             IOleInPlaceSiteEx * This,
  783.             /* [in] */ BOOL fNoRedraw);
  784.         
  785.         HRESULT ( STDMETHODCALLTYPE *RequestUIActivate )( 
  786.             IOleInPlaceSiteEx * This);
  787.         
  788.         END_INTERFACE
  789.     } IOleInPlaceSiteExVtbl;
  790.     interface IOleInPlaceSiteEx
  791.     {
  792.         CONST_VTBL struct IOleInPlaceSiteExVtbl *lpVtbl;
  793.     };
  794.     
  795. #ifdef COBJMACROS
  796. #define IOleInPlaceSiteEx_QueryInterface(This,riid,ppvObject)
  797.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  798. #define IOleInPlaceSiteEx_AddRef(This)
  799.     (This)->lpVtbl -> AddRef(This)
  800. #define IOleInPlaceSiteEx_Release(This)
  801.     (This)->lpVtbl -> Release(This)
  802. #define IOleInPlaceSiteEx_GetWindow(This,phwnd)
  803.     (This)->lpVtbl -> GetWindow(This,phwnd)
  804. #define IOleInPlaceSiteEx_ContextSensitiveHelp(This,fEnterMode)
  805.     (This)->lpVtbl -> ContextSensitiveHelp(This,fEnterMode)
  806. #define IOleInPlaceSiteEx_CanInPlaceActivate(This)
  807.     (This)->lpVtbl -> CanInPlaceActivate(This)
  808. #define IOleInPlaceSiteEx_OnInPlaceActivate(This)
  809.     (This)->lpVtbl -> OnInPlaceActivate(This)
  810. #define IOleInPlaceSiteEx_OnUIActivate(This)
  811.     (This)->lpVtbl -> OnUIActivate(This)
  812. #define IOleInPlaceSiteEx_GetWindowContext(This,ppFrame,ppDoc,lprcPosRect,lprcClipRect,lpFrameInfo)
  813.     (This)->lpVtbl -> GetWindowContext(This,ppFrame,ppDoc,lprcPosRect,lprcClipRect,lpFrameInfo)
  814. #define IOleInPlaceSiteEx_Scroll(This,scrollExtant)
  815.     (This)->lpVtbl -> Scroll(This,scrollExtant)
  816. #define IOleInPlaceSiteEx_OnUIDeactivate(This,fUndoable)
  817.     (This)->lpVtbl -> OnUIDeactivate(This,fUndoable)
  818. #define IOleInPlaceSiteEx_OnInPlaceDeactivate(This)
  819.     (This)->lpVtbl -> OnInPlaceDeactivate(This)
  820. #define IOleInPlaceSiteEx_DiscardUndoState(This)
  821.     (This)->lpVtbl -> DiscardUndoState(This)
  822. #define IOleInPlaceSiteEx_DeactivateAndUndo(This)
  823.     (This)->lpVtbl -> DeactivateAndUndo(This)
  824. #define IOleInPlaceSiteEx_OnPosRectChange(This,lprcPosRect)
  825.     (This)->lpVtbl -> OnPosRectChange(This,lprcPosRect)
  826. #define IOleInPlaceSiteEx_OnInPlaceActivateEx(This,pfNoRedraw,dwFlags)
  827.     (This)->lpVtbl -> OnInPlaceActivateEx(This,pfNoRedraw,dwFlags)
  828. #define IOleInPlaceSiteEx_OnInPlaceDeactivateEx(This,fNoRedraw)
  829.     (This)->lpVtbl -> OnInPlaceDeactivateEx(This,fNoRedraw)
  830. #define IOleInPlaceSiteEx_RequestUIActivate(This)
  831.     (This)->lpVtbl -> RequestUIActivate(This)
  832. #endif /* COBJMACROS */
  833. #endif  /* C style interface */
  834. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteEx_OnInPlaceActivateEx_Proxy( 
  835.     IOleInPlaceSiteEx * This,
  836.     /* [out] */ BOOL *pfNoRedraw,
  837.     /* [in] */ DWORD dwFlags);
  838. void __RPC_STUB IOleInPlaceSiteEx_OnInPlaceActivateEx_Stub(
  839.     IRpcStubBuffer *This,
  840.     IRpcChannelBuffer *_pRpcChannelBuffer,
  841.     PRPC_MESSAGE _pRpcMessage,
  842.     DWORD *_pdwStubPhase);
  843. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteEx_OnInPlaceDeactivateEx_Proxy( 
  844.     IOleInPlaceSiteEx * This,
  845.     /* [in] */ BOOL fNoRedraw);
  846. void __RPC_STUB IOleInPlaceSiteEx_OnInPlaceDeactivateEx_Stub(
  847.     IRpcStubBuffer *This,
  848.     IRpcChannelBuffer *_pRpcChannelBuffer,
  849.     PRPC_MESSAGE _pRpcMessage,
  850.     DWORD *_pdwStubPhase);
  851. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteEx_RequestUIActivate_Proxy( 
  852.     IOleInPlaceSiteEx * This);
  853. void __RPC_STUB IOleInPlaceSiteEx_RequestUIActivate_Stub(
  854.     IRpcStubBuffer *This,
  855.     IRpcChannelBuffer *_pRpcChannelBuffer,
  856.     PRPC_MESSAGE _pRpcMessage,
  857.     DWORD *_pdwStubPhase);
  858. #endif  /* __IOleInPlaceSiteEx_INTERFACE_DEFINED__ */
  859. #ifndef __IOleInPlaceSiteWindowless_INTERFACE_DEFINED__
  860. #define __IOleInPlaceSiteWindowless_INTERFACE_DEFINED__
  861. /* interface IOleInPlaceSiteWindowless */
  862. /* [uuid][unique][object][local] */ 
  863. typedef IOleInPlaceSiteWindowless *LPOLEINPLACESITEWINDOWLESS;
  864. typedef /* [v1_enum] */ 
  865. enum tagOLEDCFLAGS
  866.     { OLEDC_NODRAW = 0x1,
  867. OLEDC_PAINTBKGND = 0x2,
  868. OLEDC_OFFSCREEN = 0x4
  869.     }  OLEDCFLAGS;
  870. EXTERN_C const IID IID_IOleInPlaceSiteWindowless;
  871. #if defined(__cplusplus) && !defined(CINTERFACE)
  872.     
  873.     MIDL_INTERFACE("922EADA0-3424-11CF-B670-00AA004CD6D8")
  874.     IOleInPlaceSiteWindowless : public IOleInPlaceSiteEx
  875.     {
  876.     public:
  877.         virtual HRESULT STDMETHODCALLTYPE CanWindowlessActivate( void) = 0;
  878.         
  879.         virtual HRESULT STDMETHODCALLTYPE GetCapture( void) = 0;
  880.         
  881.         virtual HRESULT STDMETHODCALLTYPE SetCapture( 
  882.             /* [in] */ BOOL fCapture) = 0;
  883.         
  884.         virtual HRESULT STDMETHODCALLTYPE GetFocus( void) = 0;
  885.         
  886.         virtual HRESULT STDMETHODCALLTYPE SetFocus( 
  887.             /* [in] */ BOOL fFocus) = 0;
  888.         
  889.         virtual HRESULT STDMETHODCALLTYPE GetDC( 
  890.             /* [in] */ LPCRECT pRect,
  891.             /* [in] */ DWORD grfFlags,
  892.             /* [out] */ HDC *phDC) = 0;
  893.         
  894.         virtual HRESULT STDMETHODCALLTYPE ReleaseDC( 
  895.             /* [in] */ HDC hDC) = 0;
  896.         
  897.         virtual HRESULT STDMETHODCALLTYPE InvalidateRect( 
  898.             /* [in] */ LPCRECT pRect,
  899.             /* [in] */ BOOL fErase) = 0;
  900.         
  901.         virtual HRESULT STDMETHODCALLTYPE InvalidateRgn( 
  902.             /* [in] */ HRGN hRGN,
  903.             /* [in] */ BOOL fErase) = 0;
  904.         
  905.         virtual HRESULT STDMETHODCALLTYPE ScrollRect( 
  906.             /* [in] */ INT dx,
  907.             /* [in] */ INT dy,
  908.             /* [in] */ LPCRECT pRectScroll,
  909.             /* [in] */ LPCRECT pRectClip) = 0;
  910.         
  911.         virtual HRESULT STDMETHODCALLTYPE AdjustRect( 
  912.             /* [out][in] */ LPRECT prc) = 0;
  913.         
  914.         virtual HRESULT STDMETHODCALLTYPE OnDefWindowMessage( 
  915.             /* [in] */ UINT msg,
  916.             /* [in] */ WPARAM wParam,
  917.             /* [in] */ LPARAM lParam,
  918.             /* [out] */ LRESULT *plResult) = 0;
  919.         
  920.     };
  921.     
  922. #else  /* C style interface */
  923.     typedef struct IOleInPlaceSiteWindowlessVtbl
  924.     {
  925.         BEGIN_INTERFACE
  926.         
  927.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  928.             IOleInPlaceSiteWindowless * This,
  929.             /* [in] */ REFIID riid,
  930.             /* [iid_is][out] */ void **ppvObject);
  931.         
  932.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  933.             IOleInPlaceSiteWindowless * This);
  934.         
  935.         ULONG ( STDMETHODCALLTYPE *Release )( 
  936.             IOleInPlaceSiteWindowless * This);
  937.         
  938.         /* [input_sync] */ HRESULT ( STDMETHODCALLTYPE *GetWindow )( 
  939.             IOleInPlaceSiteWindowless * This,
  940.             /* [out] */ HWND *phwnd);
  941.         
  942.         HRESULT ( STDMETHODCALLTYPE *ContextSensitiveHelp )( 
  943.             IOleInPlaceSiteWindowless * This,
  944.             /* [in] */ BOOL fEnterMode);
  945.         
  946.         HRESULT ( STDMETHODCALLTYPE *CanInPlaceActivate )( 
  947.             IOleInPlaceSiteWindowless * This);
  948.         
  949.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceActivate )( 
  950.             IOleInPlaceSiteWindowless * This);
  951.         
  952.         HRESULT ( STDMETHODCALLTYPE *OnUIActivate )( 
  953.             IOleInPlaceSiteWindowless * This);
  954.         
  955.         HRESULT ( STDMETHODCALLTYPE *GetWindowContext )( 
  956.             IOleInPlaceSiteWindowless * This,
  957.             /* [out] */ IOleInPlaceFrame **ppFrame,
  958.             /* [out] */ IOleInPlaceUIWindow **ppDoc,
  959.             /* [out] */ LPRECT lprcPosRect,
  960.             /* [out] */ LPRECT lprcClipRect,
  961.             /* [out][in] */ LPOLEINPLACEFRAMEINFO lpFrameInfo);
  962.         
  963.         HRESULT ( STDMETHODCALLTYPE *Scroll )( 
  964.             IOleInPlaceSiteWindowless * This,
  965.             /* [in] */ SIZE scrollExtant);
  966.         
  967.         HRESULT ( STDMETHODCALLTYPE *OnUIDeactivate )( 
  968.             IOleInPlaceSiteWindowless * This,
  969.             /* [in] */ BOOL fUndoable);
  970.         
  971.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceDeactivate )( 
  972.             IOleInPlaceSiteWindowless * This);
  973.         
  974.         HRESULT ( STDMETHODCALLTYPE *DiscardUndoState )( 
  975.             IOleInPlaceSiteWindowless * This);
  976.         
  977.         HRESULT ( STDMETHODCALLTYPE *DeactivateAndUndo )( 
  978.             IOleInPlaceSiteWindowless * This);
  979.         
  980.         HRESULT ( STDMETHODCALLTYPE *OnPosRectChange )( 
  981.             IOleInPlaceSiteWindowless * This,
  982.             /* [in] */ LPCRECT lprcPosRect);
  983.         
  984.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceActivateEx )( 
  985.             IOleInPlaceSiteWindowless * This,
  986.             /* [out] */ BOOL *pfNoRedraw,
  987.             /* [in] */ DWORD dwFlags);
  988.         
  989.         HRESULT ( STDMETHODCALLTYPE *OnInPlaceDeactivateEx )( 
  990.             IOleInPlaceSiteWindowless * This,
  991.             /* [in] */ BOOL fNoRedraw);
  992.         
  993.         HRESULT ( STDMETHODCALLTYPE *RequestUIActivate )( 
  994.             IOleInPlaceSiteWindowless * This);
  995.         
  996.         HRESULT ( STDMETHODCALLTYPE *CanWindowlessActivate )( 
  997.             IOleInPlaceSiteWindowless * This);
  998.         
  999.         HRESULT ( STDMETHODCALLTYPE *GetCapture )( 
  1000.             IOleInPlaceSiteWindowless * This);
  1001.         
  1002.         HRESULT ( STDMETHODCALLTYPE *SetCapture )( 
  1003.             IOleInPlaceSiteWindowless * This,
  1004.             /* [in] */ BOOL fCapture);
  1005.         
  1006.         HRESULT ( STDMETHODCALLTYPE *GetFocus )( 
  1007.             IOleInPlaceSiteWindowless * This);
  1008.         
  1009.         HRESULT ( STDMETHODCALLTYPE *SetFocus )( 
  1010.             IOleInPlaceSiteWindowless * This,
  1011.             /* [in] */ BOOL fFocus);
  1012.         
  1013.         HRESULT ( STDMETHODCALLTYPE *GetDC )( 
  1014.             IOleInPlaceSiteWindowless * This,
  1015.             /* [in] */ LPCRECT pRect,
  1016.             /* [in] */ DWORD grfFlags,
  1017.             /* [out] */ HDC *phDC);
  1018.         
  1019.         HRESULT ( STDMETHODCALLTYPE *ReleaseDC )( 
  1020.             IOleInPlaceSiteWindowless * This,
  1021.             /* [in] */ HDC hDC);
  1022.         
  1023.         HRESULT ( STDMETHODCALLTYPE *InvalidateRect )( 
  1024.             IOleInPlaceSiteWindowless * This,
  1025.             /* [in] */ LPCRECT pRect,
  1026.             /* [in] */ BOOL fErase);
  1027.         
  1028.         HRESULT ( STDMETHODCALLTYPE *InvalidateRgn )( 
  1029.             IOleInPlaceSiteWindowless * This,
  1030.             /* [in] */ HRGN hRGN,
  1031.             /* [in] */ BOOL fErase);
  1032.         
  1033.         HRESULT ( STDMETHODCALLTYPE *ScrollRect )( 
  1034.             IOleInPlaceSiteWindowless * This,
  1035.             /* [in] */ INT dx,
  1036.             /* [in] */ INT dy,
  1037.             /* [in] */ LPCRECT pRectScroll,
  1038.             /* [in] */ LPCRECT pRectClip);
  1039.         
  1040.         HRESULT ( STDMETHODCALLTYPE *AdjustRect )( 
  1041.             IOleInPlaceSiteWindowless * This,
  1042.             /* [out][in] */ LPRECT prc);
  1043.         
  1044.         HRESULT ( STDMETHODCALLTYPE *OnDefWindowMessage )( 
  1045.             IOleInPlaceSiteWindowless * This,
  1046.             /* [in] */ UINT msg,
  1047.             /* [in] */ WPARAM wParam,
  1048.             /* [in] */ LPARAM lParam,
  1049.             /* [out] */ LRESULT *plResult);
  1050.         
  1051.         END_INTERFACE
  1052.     } IOleInPlaceSiteWindowlessVtbl;
  1053.     interface IOleInPlaceSiteWindowless
  1054.     {
  1055.         CONST_VTBL struct IOleInPlaceSiteWindowlessVtbl *lpVtbl;
  1056.     };
  1057.     
  1058. #ifdef COBJMACROS
  1059. #define IOleInPlaceSiteWindowless_QueryInterface(This,riid,ppvObject)
  1060.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1061. #define IOleInPlaceSiteWindowless_AddRef(This)
  1062.     (This)->lpVtbl -> AddRef(This)
  1063. #define IOleInPlaceSiteWindowless_Release(This)
  1064.     (This)->lpVtbl -> Release(This)
  1065. #define IOleInPlaceSiteWindowless_GetWindow(This,phwnd)
  1066.     (This)->lpVtbl -> GetWindow(This,phwnd)
  1067. #define IOleInPlaceSiteWindowless_ContextSensitiveHelp(This,fEnterMode)
  1068.     (This)->lpVtbl -> ContextSensitiveHelp(This,fEnterMode)
  1069. #define IOleInPlaceSiteWindowless_CanInPlaceActivate(This)
  1070.     (This)->lpVtbl -> CanInPlaceActivate(This)
  1071. #define IOleInPlaceSiteWindowless_OnInPlaceActivate(This)
  1072.     (This)->lpVtbl -> OnInPlaceActivate(This)
  1073. #define IOleInPlaceSiteWindowless_OnUIActivate(This)
  1074.     (This)->lpVtbl -> OnUIActivate(This)
  1075. #define IOleInPlaceSiteWindowless_GetWindowContext(This,ppFrame,ppDoc,lprcPosRect,lprcClipRect,lpFrameInfo)
  1076.     (This)->lpVtbl -> GetWindowContext(This,ppFrame,ppDoc,lprcPosRect,lprcClipRect,lpFrameInfo)
  1077. #define IOleInPlaceSiteWindowless_Scroll(This,scrollExtant)
  1078.     (This)->lpVtbl -> Scroll(This,scrollExtant)
  1079. #define IOleInPlaceSiteWindowless_OnUIDeactivate(This,fUndoable)
  1080.     (This)->lpVtbl -> OnUIDeactivate(This,fUndoable)
  1081. #define IOleInPlaceSiteWindowless_OnInPlaceDeactivate(This)
  1082.     (This)->lpVtbl -> OnInPlaceDeactivate(This)
  1083. #define IOleInPlaceSiteWindowless_DiscardUndoState(This)
  1084.     (This)->lpVtbl -> DiscardUndoState(This)
  1085. #define IOleInPlaceSiteWindowless_DeactivateAndUndo(This)
  1086.     (This)->lpVtbl -> DeactivateAndUndo(This)
  1087. #define IOleInPlaceSiteWindowless_OnPosRectChange(This,lprcPosRect)
  1088.     (This)->lpVtbl -> OnPosRectChange(This,lprcPosRect)
  1089. #define IOleInPlaceSiteWindowless_OnInPlaceActivateEx(This,pfNoRedraw,dwFlags)
  1090.     (This)->lpVtbl -> OnInPlaceActivateEx(This,pfNoRedraw,dwFlags)
  1091. #define IOleInPlaceSiteWindowless_OnInPlaceDeactivateEx(This,fNoRedraw)
  1092.     (This)->lpVtbl -> OnInPlaceDeactivateEx(This,fNoRedraw)
  1093. #define IOleInPlaceSiteWindowless_RequestUIActivate(This)
  1094.     (This)->lpVtbl -> RequestUIActivate(This)
  1095. #define IOleInPlaceSiteWindowless_CanWindowlessActivate(This)
  1096.     (This)->lpVtbl -> CanWindowlessActivate(This)
  1097. #define IOleInPlaceSiteWindowless_GetCapture(This)
  1098.     (This)->lpVtbl -> GetCapture(This)
  1099. #define IOleInPlaceSiteWindowless_SetCapture(This,fCapture)
  1100.     (This)->lpVtbl -> SetCapture(This,fCapture)
  1101. #define IOleInPlaceSiteWindowless_GetFocus(This)
  1102.     (This)->lpVtbl -> GetFocus(This)
  1103. #define IOleInPlaceSiteWindowless_SetFocus(This,fFocus)
  1104.     (This)->lpVtbl -> SetFocus(This,fFocus)
  1105. #define IOleInPlaceSiteWindowless_GetDC(This,pRect,grfFlags,phDC)
  1106.     (This)->lpVtbl -> GetDC(This,pRect,grfFlags,phDC)
  1107. #define IOleInPlaceSiteWindowless_ReleaseDC(This,hDC)
  1108.     (This)->lpVtbl -> ReleaseDC(This,hDC)
  1109. #define IOleInPlaceSiteWindowless_InvalidateRect(This,pRect,fErase)
  1110.     (This)->lpVtbl -> InvalidateRect(This,pRect,fErase)
  1111. #define IOleInPlaceSiteWindowless_InvalidateRgn(This,hRGN,fErase)
  1112.     (This)->lpVtbl -> InvalidateRgn(This,hRGN,fErase)
  1113. #define IOleInPlaceSiteWindowless_ScrollRect(This,dx,dy,pRectScroll,pRectClip)
  1114.     (This)->lpVtbl -> ScrollRect(This,dx,dy,pRectScroll,pRectClip)
  1115. #define IOleInPlaceSiteWindowless_AdjustRect(This,prc)
  1116.     (This)->lpVtbl -> AdjustRect(This,prc)
  1117. #define IOleInPlaceSiteWindowless_OnDefWindowMessage(This,msg,wParam,lParam,plResult)
  1118.     (This)->lpVtbl -> OnDefWindowMessage(This,msg,wParam,lParam,plResult)
  1119. #endif /* COBJMACROS */
  1120. #endif  /* C style interface */
  1121. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_CanWindowlessActivate_Proxy( 
  1122.     IOleInPlaceSiteWindowless * This);
  1123. void __RPC_STUB IOleInPlaceSiteWindowless_CanWindowlessActivate_Stub(
  1124.     IRpcStubBuffer *This,
  1125.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1126.     PRPC_MESSAGE _pRpcMessage,
  1127.     DWORD *_pdwStubPhase);
  1128. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_GetCapture_Proxy( 
  1129.     IOleInPlaceSiteWindowless * This);
  1130. void __RPC_STUB IOleInPlaceSiteWindowless_GetCapture_Stub(
  1131.     IRpcStubBuffer *This,
  1132.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1133.     PRPC_MESSAGE _pRpcMessage,
  1134.     DWORD *_pdwStubPhase);
  1135. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_SetCapture_Proxy( 
  1136.     IOleInPlaceSiteWindowless * This,
  1137.     /* [in] */ BOOL fCapture);
  1138. void __RPC_STUB IOleInPlaceSiteWindowless_SetCapture_Stub(
  1139.     IRpcStubBuffer *This,
  1140.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1141.     PRPC_MESSAGE _pRpcMessage,
  1142.     DWORD *_pdwStubPhase);
  1143. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_GetFocus_Proxy( 
  1144.     IOleInPlaceSiteWindowless * This);
  1145. void __RPC_STUB IOleInPlaceSiteWindowless_GetFocus_Stub(
  1146.     IRpcStubBuffer *This,
  1147.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1148.     PRPC_MESSAGE _pRpcMessage,
  1149.     DWORD *_pdwStubPhase);
  1150. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_SetFocus_Proxy( 
  1151.     IOleInPlaceSiteWindowless * This,
  1152.     /* [in] */ BOOL fFocus);
  1153. void __RPC_STUB IOleInPlaceSiteWindowless_SetFocus_Stub(
  1154.     IRpcStubBuffer *This,
  1155.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1156.     PRPC_MESSAGE _pRpcMessage,
  1157.     DWORD *_pdwStubPhase);
  1158. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_GetDC_Proxy( 
  1159.     IOleInPlaceSiteWindowless * This,
  1160.     /* [in] */ LPCRECT pRect,
  1161.     /* [in] */ DWORD grfFlags,
  1162.     /* [out] */ HDC *phDC);
  1163. void __RPC_STUB IOleInPlaceSiteWindowless_GetDC_Stub(
  1164.     IRpcStubBuffer *This,
  1165.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1166.     PRPC_MESSAGE _pRpcMessage,
  1167.     DWORD *_pdwStubPhase);
  1168. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_ReleaseDC_Proxy( 
  1169.     IOleInPlaceSiteWindowless * This,
  1170.     /* [in] */ HDC hDC);
  1171. void __RPC_STUB IOleInPlaceSiteWindowless_ReleaseDC_Stub(
  1172.     IRpcStubBuffer *This,
  1173.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1174.     PRPC_MESSAGE _pRpcMessage,
  1175.     DWORD *_pdwStubPhase);
  1176. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_InvalidateRect_Proxy( 
  1177.     IOleInPlaceSiteWindowless * This,
  1178.     /* [in] */ LPCRECT pRect,
  1179.     /* [in] */ BOOL fErase);
  1180. void __RPC_STUB IOleInPlaceSiteWindowless_InvalidateRect_Stub(
  1181.     IRpcStubBuffer *This,
  1182.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1183.     PRPC_MESSAGE _pRpcMessage,
  1184.     DWORD *_pdwStubPhase);
  1185. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_InvalidateRgn_Proxy( 
  1186.     IOleInPlaceSiteWindowless * This,
  1187.     /* [in] */ HRGN hRGN,
  1188.     /* [in] */ BOOL fErase);
  1189. void __RPC_STUB IOleInPlaceSiteWindowless_InvalidateRgn_Stub(
  1190.     IRpcStubBuffer *This,
  1191.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1192.     PRPC_MESSAGE _pRpcMessage,
  1193.     DWORD *_pdwStubPhase);
  1194. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_ScrollRect_Proxy( 
  1195.     IOleInPlaceSiteWindowless * This,
  1196.     /* [in] */ INT dx,
  1197.     /* [in] */ INT dy,
  1198.     /* [in] */ LPCRECT pRectScroll,
  1199.     /* [in] */ LPCRECT pRectClip);
  1200. void __RPC_STUB IOleInPlaceSiteWindowless_ScrollRect_Stub(
  1201.     IRpcStubBuffer *This,
  1202.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1203.     PRPC_MESSAGE _pRpcMessage,
  1204.     DWORD *_pdwStubPhase);
  1205. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_AdjustRect_Proxy( 
  1206.     IOleInPlaceSiteWindowless * This,
  1207.     /* [out][in] */ LPRECT prc);
  1208. void __RPC_STUB IOleInPlaceSiteWindowless_AdjustRect_Stub(
  1209.     IRpcStubBuffer *This,
  1210.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1211.     PRPC_MESSAGE _pRpcMessage,
  1212.     DWORD *_pdwStubPhase);
  1213. HRESULT STDMETHODCALLTYPE IOleInPlaceSiteWindowless_OnDefWindowMessage_Proxy( 
  1214.     IOleInPlaceSiteWindowless * This,
  1215.     /* [in] */ UINT msg,
  1216.     /* [in] */ WPARAM wParam,
  1217.     /* [in] */ LPARAM lParam,
  1218.     /* [out] */ LRESULT *plResult);
  1219. void __RPC_STUB IOleInPlaceSiteWindowless_OnDefWindowMessage_Stub(
  1220.     IRpcStubBuffer *This,
  1221.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1222.     PRPC_MESSAGE _pRpcMessage,
  1223.     DWORD *_pdwStubPhase);
  1224. #endif  /* __IOleInPlaceSiteWindowless_INTERFACE_DEFINED__ */
  1225. #ifndef __IViewObjectEx_INTERFACE_DEFINED__
  1226. #define __IViewObjectEx_INTERFACE_DEFINED__
  1227. /* interface IViewObjectEx */
  1228. /* [uuid][unique][object][local] */ 
  1229. typedef IViewObjectEx *LPVIEWOBJECTEX;
  1230. typedef /* [v1_enum] */ 
  1231. enum tagVIEWSTATUS
  1232.     { VIEWSTATUS_OPAQUE = 1,
  1233. VIEWSTATUS_SOLIDBKGND = 2,
  1234. VIEWSTATUS_DVASPECTOPAQUE = 4,
  1235. VIEWSTATUS_DVASPECTTRANSPARENT = 8,
  1236. VIEWSTATUS_SURFACE = 16,
  1237. VIEWSTATUS_3DSURFACE = 32
  1238.     }  VIEWSTATUS;
  1239. typedef /* [v1_enum] */ 
  1240. enum tagHITRESULT
  1241.     { HITRESULT_OUTSIDE = 0,
  1242. HITRESULT_TRANSPARENT = 1,
  1243. HITRESULT_CLOSE = 2,
  1244. HITRESULT_HIT = 3
  1245.     }  HITRESULT;
  1246. typedef /* [v1_enum] */ 
  1247. enum tagDVASPECT2
  1248.     { DVASPECT_OPAQUE = 16,
  1249. DVASPECT_TRANSPARENT = 32
  1250.     }  DVASPECT2;
  1251. typedef struct tagExtentInfo
  1252.     {
  1253.     ULONG cb;
  1254.     DWORD dwExtentMode;
  1255.     SIZEL sizelProposed;
  1256.     }  DVEXTENTINFO;
  1257. typedef /* [v1_enum] */ 
  1258. enum tagExtentMode
  1259.     { DVEXTENT_CONTENT = 0,
  1260. DVEXTENT_INTEGRAL = DVEXTENT_CONTENT + 1
  1261.     }  DVEXTENTMODE;
  1262. typedef /* [v1_enum] */ 
  1263. enum tagAspectInfoFlag
  1264.     { DVASPECTINFOFLAG_CANOPTIMIZE = 1
  1265.     }  DVASPECTINFOFLAG;
  1266. typedef struct tagAspectInfo
  1267.     {
  1268.     ULONG cb;
  1269.     DWORD dwFlags;
  1270.     }  DVASPECTINFO;
  1271. EXTERN_C const IID IID_IViewObjectEx;
  1272. #if defined(__cplusplus) && !defined(CINTERFACE)
  1273.     
  1274.     MIDL_INTERFACE("3AF24292-0C96-11CE-A0CF-00AA00600AB8")
  1275.     IViewObjectEx : public IViewObject2
  1276.     {
  1277.     public:
  1278.         virtual HRESULT STDMETHODCALLTYPE GetRect( 
  1279.             /* [in] */ DWORD dwAspect,
  1280.             /* [out] */ LPRECTL pRect) = 0;
  1281.         
  1282.         virtual HRESULT STDMETHODCALLTYPE GetViewStatus( 
  1283.             /* [out] */ DWORD *pdwStatus) = 0;
  1284.         
  1285.         virtual HRESULT STDMETHODCALLTYPE QueryHitPoint( 
  1286.             /* [in] */ DWORD dwAspect,
  1287.             /* [in] */ LPCRECT pRectBounds,
  1288.             /* [in] */ POINT ptlLoc,
  1289.             /* [in] */ LONG lCloseHint,
  1290.             /* [out] */ DWORD *pHitResult) = 0;
  1291.         
  1292.         virtual HRESULT STDMETHODCALLTYPE QueryHitRect( 
  1293.             /* [in] */ DWORD dwAspect,
  1294.             /* [in] */ LPCRECT pRectBounds,
  1295.             /* [in] */ LPCRECT pRectLoc,
  1296.             /* [in] */ LONG lCloseHint,
  1297.             /* [out] */ DWORD *pHitResult) = 0;
  1298.         
  1299.         virtual HRESULT STDMETHODCALLTYPE GetNaturalExtent( 
  1300.             /* [in] */ DWORD dwAspect,
  1301.             /* [in] */ LONG lindex,
  1302.             /* [in] */ DVTARGETDEVICE *ptd,
  1303.             /* [in] */ HDC hicTargetDev,
  1304.             /* [in] */ DVEXTENTINFO *pExtentInfo,
  1305.             /* [out] */ LPSIZEL pSizel) = 0;
  1306.         
  1307.     };
  1308.     
  1309. #else  /* C style interface */
  1310.     typedef struct IViewObjectExVtbl
  1311.     {
  1312.         BEGIN_INTERFACE
  1313.         
  1314.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1315.             IViewObjectEx * This,
  1316.             /* [in] */ REFIID riid,
  1317.             /* [iid_is][out] */ void **ppvObject);
  1318.         
  1319.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1320.             IViewObjectEx * This);
  1321.         
  1322.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1323.             IViewObjectEx * This);
  1324.         
  1325.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Draw )( 
  1326.             IViewObjectEx * This,
  1327.             /* [in] */ DWORD dwDrawAspect,
  1328.             /* [in] */ LONG lindex,
  1329.             /* [unique][in] */ void *pvAspect,
  1330.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1331.             /* [in] */ HDC hdcTargetDev,
  1332.             /* [in] */ HDC hdcDraw,
  1333.             /* [in] */ LPCRECTL lprcBounds,
  1334.             /* [unique][in] */ LPCRECTL lprcWBounds,
  1335.             /* [in] */ BOOL ( STDMETHODCALLTYPE *pfnContinue )( 
  1336.                 ULONG_PTR dwContinue),
  1337.             /* [in] */ ULONG_PTR dwContinue);
  1338.         
  1339.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetColorSet )( 
  1340.             IViewObjectEx * This,
  1341.             /* [in] */ DWORD dwDrawAspect,
  1342.             /* [in] */ LONG lindex,
  1343.             /* [unique][in] */ void *pvAspect,
  1344.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1345.             /* [in] */ HDC hicTargetDev,
  1346.             /* [out] */ LOGPALETTE **ppColorSet);
  1347.         
  1348.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Freeze )( 
  1349.             IViewObjectEx * This,
  1350.             /* [in] */ DWORD dwDrawAspect,
  1351.             /* [in] */ LONG lindex,
  1352.             /* [unique][in] */ void *pvAspect,
  1353.             /* [out] */ DWORD *pdwFreeze);
  1354.         
  1355.         HRESULT ( STDMETHODCALLTYPE *Unfreeze )( 
  1356.             IViewObjectEx * This,
  1357.             /* [in] */ DWORD dwFreeze);
  1358.         
  1359.         HRESULT ( STDMETHODCALLTYPE *SetAdvise )( 
  1360.             IViewObjectEx * This,
  1361.             /* [in] */ DWORD aspects,
  1362.             /* [in] */ DWORD advf,
  1363.             /* [unique][in] */ IAdviseSink *pAdvSink);
  1364.         
  1365.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *GetAdvise )( 
  1366.             IViewObjectEx * This,
  1367.             /* [unique][out] */ DWORD *pAspects,
  1368.             /* [unique][out] */ DWORD *pAdvf,
  1369.             /* [out] */ IAdviseSink **ppAdvSink);
  1370.         
  1371.         HRESULT ( STDMETHODCALLTYPE *GetExtent )( 
  1372.             IViewObjectEx * This,
  1373.             /* [in] */ DWORD dwDrawAspect,
  1374.             /* [in] */ LONG lindex,
  1375.             /* [unique][in] */ DVTARGETDEVICE *ptd,
  1376.             /* [out] */ LPSIZEL lpsizel);
  1377.         
  1378.         HRESULT ( STDMETHODCALLTYPE *GetRect )( 
  1379.             IViewObjectEx * This,
  1380.             /* [in] */ DWORD dwAspect,
  1381.             /* [out] */ LPRECTL pRect);
  1382.         
  1383.         HRESULT ( STDMETHODCALLTYPE *GetViewStatus )( 
  1384.             IViewObjectEx * This,
  1385.             /* [out] */ DWORD *pdwStatus);
  1386.         
  1387.         HRESULT ( STDMETHODCALLTYPE *QueryHitPoint )( 
  1388.             IViewObjectEx * This,
  1389.             /* [in] */ DWORD dwAspect,
  1390.             /* [in] */ LPCRECT pRectBounds,
  1391.             /* [in] */ POINT ptlLoc,
  1392.             /* [in] */ LONG lCloseHint,
  1393.             /* [out] */ DWORD *pHitResult);
  1394.         
  1395.         HRESULT ( STDMETHODCALLTYPE *QueryHitRect )( 
  1396.             IViewObjectEx * This,
  1397.             /* [in] */ DWORD dwAspect,
  1398.             /* [in] */ LPCRECT pRectBounds,
  1399.             /* [in] */ LPCRECT pRectLoc,
  1400.             /* [in] */ LONG lCloseHint,
  1401.             /* [out] */ DWORD *pHitResult);
  1402.         
  1403.         HRESULT ( STDMETHODCALLTYPE *GetNaturalExtent )( 
  1404.             IViewObjectEx * This,
  1405.             /* [in] */ DWORD dwAspect,
  1406.             /* [in] */ LONG lindex,
  1407.             /* [in] */ DVTARGETDEVICE *ptd,
  1408.             /* [in] */ HDC hicTargetDev,
  1409.             /* [in] */ DVEXTENTINFO *pExtentInfo,
  1410.             /* [out] */ LPSIZEL pSizel);
  1411.         
  1412.         END_INTERFACE
  1413.     } IViewObjectExVtbl;
  1414.     interface IViewObjectEx
  1415.     {
  1416.         CONST_VTBL struct IViewObjectExVtbl *lpVtbl;
  1417.     };
  1418.     
  1419. #ifdef COBJMACROS
  1420. #define IViewObjectEx_QueryInterface(This,riid,ppvObject)
  1421.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1422. #define IViewObjectEx_AddRef(This)
  1423.     (This)->lpVtbl -> AddRef(This)
  1424. #define IViewObjectEx_Release(This)
  1425.     (This)->lpVtbl -> Release(This)
  1426. #define IViewObjectEx_Draw(This,dwDrawAspect,lindex,pvAspect,ptd,hdcTargetDev,hdcDraw,lprcBounds,lprcWBounds,pfnContinue,dwContinue)
  1427.     (This)->lpVtbl -> Draw(This,dwDrawAspect,lindex,pvAspect,ptd,hdcTargetDev,hdcDraw,lprcBounds,lprcWBounds,pfnContinue,dwContinue)
  1428. #define IViewObjectEx_GetColorSet(This,dwDrawAspect,lindex,pvAspect,ptd,hicTargetDev,ppColorSet)
  1429.     (This)->lpVtbl -> GetColorSet(This,dwDrawAspect,lindex,pvAspect,ptd,hicTargetDev,ppColorSet)
  1430. #define IViewObjectEx_Freeze(This,dwDrawAspect,lindex,pvAspect,pdwFreeze)
  1431.     (This)->lpVtbl -> Freeze(This,dwDrawAspect,lindex,pvAspect,pdwFreeze)
  1432. #define IViewObjectEx_Unfreeze(This,dwFreeze)
  1433.     (This)->lpVtbl -> Unfreeze(This,dwFreeze)
  1434. #define IViewObjectEx_SetAdvise(This,aspects,advf,pAdvSink)
  1435.     (This)->lpVtbl -> SetAdvise(This,aspects,advf,pAdvSink)
  1436. #define IViewObjectEx_GetAdvise(This,pAspects,pAdvf,ppAdvSink)
  1437.     (This)->lpVtbl -> GetAdvise(This,pAspects,pAdvf,ppAdvSink)
  1438. #define IViewObjectEx_GetExtent(This,dwDrawAspect,lindex,ptd,lpsizel)
  1439.     (This)->lpVtbl -> GetExtent(This,dwDrawAspect,lindex,ptd,lpsizel)
  1440. #define IViewObjectEx_GetRect(This,dwAspect,pRect)
  1441.     (This)->lpVtbl -> GetRect(This,dwAspect,pRect)
  1442. #define IViewObjectEx_GetViewStatus(This,pdwStatus)
  1443.     (This)->lpVtbl -> GetViewStatus(This,pdwStatus)
  1444. #define IViewObjectEx_QueryHitPoint(This,dwAspect,pRectBounds,ptlLoc,lCloseHint,pHitResult)
  1445.     (This)->lpVtbl -> QueryHitPoint(This,dwAspect,pRectBounds,ptlLoc,lCloseHint,pHitResult)
  1446. #define IViewObjectEx_QueryHitRect(This,dwAspect,pRectBounds,pRectLoc,lCloseHint,pHitResult)
  1447.     (This)->lpVtbl -> QueryHitRect(This,dwAspect,pRectBounds,pRectLoc,lCloseHint,pHitResult)
  1448. #define IViewObjectEx_GetNaturalExtent(This,dwAspect,lindex,ptd,hicTargetDev,pExtentInfo,pSizel)
  1449.     (This)->lpVtbl -> GetNaturalExtent(This,dwAspect,lindex,ptd,hicTargetDev,pExtentInfo,pSizel)
  1450. #endif /* COBJMACROS */
  1451. #endif  /* C style interface */
  1452. HRESULT STDMETHODCALLTYPE IViewObjectEx_GetRect_Proxy( 
  1453.     IViewObjectEx * This,
  1454.     /* [in] */ DWORD dwAspect,
  1455.     /* [out] */ LPRECTL pRect);
  1456. void __RPC_STUB IViewObjectEx_GetRect_Stub(
  1457.     IRpcStubBuffer *This,
  1458.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1459.     PRPC_MESSAGE _pRpcMessage,
  1460.     DWORD *_pdwStubPhase);
  1461. HRESULT STDMETHODCALLTYPE IViewObjectEx_GetViewStatus_Proxy( 
  1462.     IViewObjectEx * This,
  1463.     /* [out] */ DWORD *pdwStatus);
  1464. void __RPC_STUB IViewObjectEx_GetViewStatus_Stub(
  1465.     IRpcStubBuffer *This,
  1466.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1467.     PRPC_MESSAGE _pRpcMessage,
  1468.     DWORD *_pdwStubPhase);
  1469. HRESULT STDMETHODCALLTYPE IViewObjectEx_QueryHitPoint_Proxy( 
  1470.     IViewObjectEx * This,
  1471.     /* [in] */ DWORD dwAspect,
  1472.     /* [in] */ LPCRECT pRectBounds,
  1473.     /* [in] */ POINT ptlLoc,
  1474.     /* [in] */ LONG lCloseHint,
  1475.     /* [out] */ DWORD *pHitResult);
  1476. void __RPC_STUB IViewObjectEx_QueryHitPoint_Stub(
  1477.     IRpcStubBuffer *This,
  1478.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1479.     PRPC_MESSAGE _pRpcMessage,
  1480.     DWORD *_pdwStubPhase);
  1481. HRESULT STDMETHODCALLTYPE IViewObjectEx_QueryHitRect_Proxy( 
  1482.     IViewObjectEx * This,
  1483.     /* [in] */ DWORD dwAspect,
  1484.     /* [in] */ LPCRECT pRectBounds,
  1485.     /* [in] */ LPCRECT pRectLoc,
  1486.     /* [in] */ LONG lCloseHint,
  1487.     /* [out] */ DWORD *pHitResult);
  1488. void __RPC_STUB IViewObjectEx_QueryHitRect_Stub(
  1489.     IRpcStubBuffer *This,
  1490.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1491.     PRPC_MESSAGE _pRpcMessage,
  1492.     DWORD *_pdwStubPhase);
  1493. HRESULT STDMETHODCALLTYPE IViewObjectEx_GetNaturalExtent_Proxy( 
  1494.     IViewObjectEx * This,
  1495.     /* [in] */ DWORD dwAspect,
  1496.     /* [in] */ LONG lindex,
  1497.     /* [in] */ DVTARGETDEVICE *ptd,
  1498.     /* [in] */ HDC hicTargetDev,
  1499.     /* [in] */ DVEXTENTINFO *pExtentInfo,
  1500.     /* [out] */ LPSIZEL pSizel);
  1501. void __RPC_STUB IViewObjectEx_GetNaturalExtent_Stub(
  1502.     IRpcStubBuffer *This,
  1503.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1504.     PRPC_MESSAGE _pRpcMessage,
  1505.     DWORD *_pdwStubPhase);
  1506. #endif  /* __IViewObjectEx_INTERFACE_DEFINED__ */
  1507. #ifndef __IOleUndoUnit_INTERFACE_DEFINED__
  1508. #define __IOleUndoUnit_INTERFACE_DEFINED__
  1509. /* interface IOleUndoUnit */
  1510. /* [uuid][unique][object] */ 
  1511. typedef IOleUndoUnit *LPOLEUNDOUNIT;
  1512. EXTERN_C const IID IID_IOleUndoUnit;
  1513. #if defined(__cplusplus) && !defined(CINTERFACE)
  1514.     
  1515.     MIDL_INTERFACE("894AD3B0-EF97-11CE-9BC9-00AA00608E01")
  1516.     IOleUndoUnit : public IUnknown
  1517.     {
  1518.     public:
  1519.         virtual HRESULT STDMETHODCALLTYPE Do( 
  1520.             /* [in] */ IOleUndoManager *pUndoManager) = 0;
  1521.         
  1522.         virtual HRESULT STDMETHODCALLTYPE GetDescription( 
  1523.             /* [out] */ BSTR *pBstr) = 0;
  1524.         
  1525.         virtual HRESULT STDMETHODCALLTYPE GetUnitType( 
  1526.             /* [out] */ CLSID *pClsid,
  1527.             /* [out] */ LONG *plID) = 0;
  1528.         
  1529.         virtual HRESULT STDMETHODCALLTYPE OnNextAdd( void) = 0;
  1530.         
  1531.     };
  1532.     
  1533. #else  /* C style interface */
  1534.     typedef struct IOleUndoUnitVtbl
  1535.     {
  1536.         BEGIN_INTERFACE
  1537.         
  1538.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1539.             IOleUndoUnit * This,
  1540.             /* [in] */ REFIID riid,
  1541.             /* [iid_is][out] */ void **ppvObject);
  1542.         
  1543.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1544.             IOleUndoUnit * This);
  1545.         
  1546.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1547.             IOleUndoUnit * This);
  1548.         
  1549.         HRESULT ( STDMETHODCALLTYPE *Do )( 
  1550.             IOleUndoUnit * This,
  1551.             /* [in] */ IOleUndoManager *pUndoManager);
  1552.         
  1553.         HRESULT ( STDMETHODCALLTYPE *GetDescription )( 
  1554.             IOleUndoUnit * This,
  1555.             /* [out] */ BSTR *pBstr);
  1556.         
  1557.         HRESULT ( STDMETHODCALLTYPE *GetUnitType )( 
  1558.             IOleUndoUnit * This,
  1559.             /* [out] */ CLSID *pClsid,
  1560.             /* [out] */ LONG *plID);
  1561.         
  1562.         HRESULT ( STDMETHODCALLTYPE *OnNextAdd )( 
  1563.             IOleUndoUnit * This);
  1564.         
  1565.         END_INTERFACE
  1566.     } IOleUndoUnitVtbl;
  1567.     interface IOleUndoUnit
  1568.     {
  1569.         CONST_VTBL struct IOleUndoUnitVtbl *lpVtbl;
  1570.     };
  1571.     
  1572. #ifdef COBJMACROS
  1573. #define IOleUndoUnit_QueryInterface(This,riid,ppvObject)
  1574.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1575. #define IOleUndoUnit_AddRef(This)
  1576.     (This)->lpVtbl -> AddRef(This)
  1577. #define IOleUndoUnit_Release(This)
  1578.     (This)->lpVtbl -> Release(This)
  1579. #define IOleUndoUnit_Do(This,pUndoManager)
  1580.     (This)->lpVtbl -> Do(This,pUndoManager)
  1581. #define IOleUndoUnit_GetDescription(This,pBstr)
  1582.     (This)->lpVtbl -> GetDescription(This,pBstr)
  1583. #define IOleUndoUnit_GetUnitType(This,pClsid,plID)
  1584.     (This)->lpVtbl -> GetUnitType(This,pClsid,plID)
  1585. #define IOleUndoUnit_OnNextAdd(This)
  1586.     (This)->lpVtbl -> OnNextAdd(This)
  1587. #endif /* COBJMACROS */
  1588. #endif  /* C style interface */
  1589. HRESULT STDMETHODCALLTYPE IOleUndoUnit_Do_Proxy( 
  1590.     IOleUndoUnit * This,
  1591.     /* [in] */ IOleUndoManager *pUndoManager);
  1592. void __RPC_STUB IOleUndoUnit_Do_Stub(
  1593.     IRpcStubBuffer *This,
  1594.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1595.     PRPC_MESSAGE _pRpcMessage,
  1596.     DWORD *_pdwStubPhase);
  1597. HRESULT STDMETHODCALLTYPE IOleUndoUnit_GetDescription_Proxy( 
  1598.     IOleUndoUnit * This,
  1599.     /* [out] */ BSTR *pBstr);
  1600. void __RPC_STUB IOleUndoUnit_GetDescription_Stub(
  1601.     IRpcStubBuffer *This,
  1602.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1603.     PRPC_MESSAGE _pRpcMessage,
  1604.     DWORD *_pdwStubPhase);
  1605. HRESULT STDMETHODCALLTYPE IOleUndoUnit_GetUnitType_Proxy( 
  1606.     IOleUndoUnit * This,
  1607.     /* [out] */ CLSID *pClsid,
  1608.     /* [out] */ LONG *plID);
  1609. void __RPC_STUB IOleUndoUnit_GetUnitType_Stub(
  1610.     IRpcStubBuffer *This,
  1611.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1612.     PRPC_MESSAGE _pRpcMessage,
  1613.     DWORD *_pdwStubPhase);
  1614. HRESULT STDMETHODCALLTYPE IOleUndoUnit_OnNextAdd_Proxy( 
  1615.     IOleUndoUnit * This);
  1616. void __RPC_STUB IOleUndoUnit_OnNextAdd_Stub(
  1617.     IRpcStubBuffer *This,
  1618.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1619.     PRPC_MESSAGE _pRpcMessage,
  1620.     DWORD *_pdwStubPhase);
  1621. #endif  /* __IOleUndoUnit_INTERFACE_DEFINED__ */
  1622. #ifndef __IOleParentUndoUnit_INTERFACE_DEFINED__
  1623. #define __IOleParentUndoUnit_INTERFACE_DEFINED__
  1624. /* interface IOleParentUndoUnit */
  1625. /* [uuid][unique][object] */ 
  1626. typedef IOleParentUndoUnit *LPOLEPARENTUNDOUNIT;
  1627. EXTERN_C const IID IID_IOleParentUndoUnit;
  1628. #if defined(__cplusplus) && !defined(CINTERFACE)
  1629.     
  1630.     MIDL_INTERFACE("A1FAF330-EF97-11CE-9BC9-00AA00608E01")
  1631.     IOleParentUndoUnit : public IOleUndoUnit
  1632.     {
  1633.     public:
  1634.         virtual HRESULT STDMETHODCALLTYPE Open( 
  1635.             /* [in] */ IOleParentUndoUnit *pPUU) = 0;
  1636.         
  1637.         virtual HRESULT STDMETHODCALLTYPE Close( 
  1638.             /* [in] */ IOleParentUndoUnit *pPUU,
  1639.             /* [in] */ BOOL fCommit) = 0;
  1640.         
  1641.         virtual HRESULT STDMETHODCALLTYPE Add( 
  1642.             /* [in] */ IOleUndoUnit *pUU) = 0;
  1643.         
  1644.         virtual HRESULT STDMETHODCALLTYPE FindUnit( 
  1645.             /* [in] */ IOleUndoUnit *pUU) = 0;
  1646.         
  1647.         virtual HRESULT STDMETHODCALLTYPE GetParentState( 
  1648.             /* [out] */ DWORD *pdwState) = 0;
  1649.         
  1650.     };
  1651.     
  1652. #else  /* C style interface */
  1653.     typedef struct IOleParentUndoUnitVtbl
  1654.     {
  1655.         BEGIN_INTERFACE
  1656.         
  1657.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1658.             IOleParentUndoUnit * This,
  1659.             /* [in] */ REFIID riid,
  1660.             /* [iid_is][out] */ void **ppvObject);
  1661.         
  1662.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1663.             IOleParentUndoUnit * This);
  1664.         
  1665.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1666.             IOleParentUndoUnit * This);
  1667.         
  1668.         HRESULT ( STDMETHODCALLTYPE *Do )( 
  1669.             IOleParentUndoUnit * This,
  1670.             /* [in] */ IOleUndoManager *pUndoManager);
  1671.         
  1672.         HRESULT ( STDMETHODCALLTYPE *GetDescription )( 
  1673.             IOleParentUndoUnit * This,
  1674.             /* [out] */ BSTR *pBstr);
  1675.         
  1676.         HRESULT ( STDMETHODCALLTYPE *GetUnitType )( 
  1677.             IOleParentUndoUnit * This,
  1678.             /* [out] */ CLSID *pClsid,
  1679.             /* [out] */ LONG *plID);
  1680.         
  1681.         HRESULT ( STDMETHODCALLTYPE *OnNextAdd )( 
  1682.             IOleParentUndoUnit * This);
  1683.         
  1684.         HRESULT ( STDMETHODCALLTYPE *Open )( 
  1685.             IOleParentUndoUnit * This,
  1686.             /* [in] */ IOleParentUndoUnit *pPUU);
  1687.         
  1688.         HRESULT ( STDMETHODCALLTYPE *Close )( 
  1689.             IOleParentUndoUnit * This,
  1690.             /* [in] */ IOleParentUndoUnit *pPUU,
  1691.             /* [in] */ BOOL fCommit);
  1692.         
  1693.         HRESULT ( STDMETHODCALLTYPE *Add )( 
  1694.             IOleParentUndoUnit * This,
  1695.             /* [in] */ IOleUndoUnit *pUU);
  1696.         
  1697.         HRESULT ( STDMETHODCALLTYPE *FindUnit )( 
  1698.             IOleParentUndoUnit * This,
  1699.             /* [in] */ IOleUndoUnit *pUU);
  1700.         
  1701.         HRESULT ( STDMETHODCALLTYPE *GetParentState )( 
  1702.             IOleParentUndoUnit * This,
  1703.             /* [out] */ DWORD *pdwState);
  1704.         
  1705.         END_INTERFACE
  1706.     } IOleParentUndoUnitVtbl;
  1707.     interface IOleParentUndoUnit
  1708.     {
  1709.         CONST_VTBL struct IOleParentUndoUnitVtbl *lpVtbl;
  1710.     };
  1711.     
  1712. #ifdef COBJMACROS
  1713. #define IOleParentUndoUnit_QueryInterface(This,riid,ppvObject)
  1714.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1715. #define IOleParentUndoUnit_AddRef(This)
  1716.     (This)->lpVtbl -> AddRef(This)
  1717. #define IOleParentUndoUnit_Release(This)
  1718.     (This)->lpVtbl -> Release(This)
  1719. #define IOleParentUndoUnit_Do(This,pUndoManager)
  1720.     (This)->lpVtbl -> Do(This,pUndoManager)
  1721. #define IOleParentUndoUnit_GetDescription(This,pBstr)
  1722.     (This)->lpVtbl -> GetDescription(This,pBstr)
  1723. #define IOleParentUndoUnit_GetUnitType(This,pClsid,plID)
  1724.     (This)->lpVtbl -> GetUnitType(This,pClsid,plID)
  1725. #define IOleParentUndoUnit_OnNextAdd(This)
  1726.     (This)->lpVtbl -> OnNextAdd(This)
  1727. #define IOleParentUndoUnit_Open(This,pPUU)
  1728.     (This)->lpVtbl -> Open(This,pPUU)
  1729. #define IOleParentUndoUnit_Close(This,pPUU,fCommit)
  1730.     (This)->lpVtbl -> Close(This,pPUU,fCommit)
  1731. #define IOleParentUndoUnit_Add(This,pUU)
  1732.     (This)->lpVtbl -> Add(This,pUU)
  1733. #define IOleParentUndoUnit_FindUnit(This,pUU)
  1734.     (This)->lpVtbl -> FindUnit(This,pUU)
  1735. #define IOleParentUndoUnit_GetParentState(This,pdwState)
  1736.     (This)->lpVtbl -> GetParentState(This,pdwState)
  1737. #endif /* COBJMACROS */
  1738. #endif  /* C style interface */
  1739. HRESULT STDMETHODCALLTYPE IOleParentUndoUnit_Open_Proxy( 
  1740.     IOleParentUndoUnit * This,
  1741.     /* [in] */ IOleParentUndoUnit *pPUU);
  1742. void __RPC_STUB IOleParentUndoUnit_Open_Stub(
  1743.     IRpcStubBuffer *This,
  1744.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1745.     PRPC_MESSAGE _pRpcMessage,
  1746.     DWORD *_pdwStubPhase);
  1747. HRESULT STDMETHODCALLTYPE IOleParentUndoUnit_Close_Proxy( 
  1748.     IOleParentUndoUnit * This,
  1749.     /* [in] */ IOleParentUndoUnit *pPUU,
  1750.     /* [in] */ BOOL fCommit);
  1751. void __RPC_STUB IOleParentUndoUnit_Close_Stub(
  1752.     IRpcStubBuffer *This,
  1753.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1754.     PRPC_MESSAGE _pRpcMessage,
  1755.     DWORD *_pdwStubPhase);
  1756. HRESULT STDMETHODCALLTYPE IOleParentUndoUnit_Add_Proxy( 
  1757.     IOleParentUndoUnit * This,
  1758.     /* [in] */ IOleUndoUnit *pUU);
  1759. void __RPC_STUB IOleParentUndoUnit_Add_Stub(
  1760.     IRpcStubBuffer *This,
  1761.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1762.     PRPC_MESSAGE _pRpcMessage,
  1763.     DWORD *_pdwStubPhase);
  1764. HRESULT STDMETHODCALLTYPE IOleParentUndoUnit_FindUnit_Proxy( 
  1765.     IOleParentUndoUnit * This,
  1766.     /* [in] */ IOleUndoUnit *pUU);
  1767. void __RPC_STUB IOleParentUndoUnit_FindUnit_Stub(
  1768.     IRpcStubBuffer *This,
  1769.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1770.     PRPC_MESSAGE _pRpcMessage,
  1771.     DWORD *_pdwStubPhase);
  1772. HRESULT STDMETHODCALLTYPE IOleParentUndoUnit_GetParentState_Proxy( 
  1773.     IOleParentUndoUnit * This,
  1774.     /* [out] */ DWORD *pdwState);
  1775. void __RPC_STUB IOleParentUndoUnit_GetParentState_Stub(
  1776.     IRpcStubBuffer *This,
  1777.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1778.     PRPC_MESSAGE _pRpcMessage,
  1779.     DWORD *_pdwStubPhase);
  1780. #endif  /* __IOleParentUndoUnit_INTERFACE_DEFINED__ */
  1781. #ifndef __IEnumOleUndoUnits_INTERFACE_DEFINED__
  1782. #define __IEnumOleUndoUnits_INTERFACE_DEFINED__
  1783. /* interface IEnumOleUndoUnits */
  1784. /* [uuid][unique][object] */ 
  1785. typedef IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
  1786. EXTERN_C const IID IID_IEnumOleUndoUnits;
  1787. #if defined(__cplusplus) && !defined(CINTERFACE)
  1788.     
  1789.     MIDL_INTERFACE("B3E7C340-EF97-11CE-9BC9-00AA00608E01")
  1790.     IEnumOleUndoUnits : public IUnknown
  1791.     {
  1792.     public:
  1793.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE Next( 
  1794.             /* [in] */ ULONG cElt,
  1795.             /* [length_is][size_is][out] */ IOleUndoUnit **rgElt,
  1796.             /* [out] */ ULONG *pcEltFetched) = 0;
  1797.         
  1798.         virtual HRESULT STDMETHODCALLTYPE Skip( 
  1799.             /* [in] */ ULONG cElt) = 0;
  1800.         
  1801.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1802.         
  1803.         virtual HRESULT STDMETHODCALLTYPE Clone( 
  1804.             /* [out] */ IEnumOleUndoUnits **ppEnum) = 0;
  1805.         
  1806.     };
  1807.     
  1808. #else  /* C style interface */
  1809.     typedef struct IEnumOleUndoUnitsVtbl
  1810.     {
  1811.         BEGIN_INTERFACE
  1812.         
  1813.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1814.             IEnumOleUndoUnits * This,
  1815.             /* [in] */ REFIID riid,
  1816.             /* [iid_is][out] */ void **ppvObject);
  1817.         
  1818.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1819.             IEnumOleUndoUnits * This);
  1820.         
  1821.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1822.             IEnumOleUndoUnits * This);
  1823.         
  1824.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )( 
  1825.             IEnumOleUndoUnits * This,
  1826.             /* [in] */ ULONG cElt,
  1827.             /* [length_is][size_is][out] */ IOleUndoUnit **rgElt,
  1828.             /* [out] */ ULONG *pcEltFetched);
  1829.         
  1830.         HRESULT ( STDMETHODCALLTYPE *Skip )( 
  1831.             IEnumOleUndoUnits * This,
  1832.             /* [in] */ ULONG cElt);
  1833.         
  1834.         HRESULT ( STDMETHODCALLTYPE *Reset )( 
  1835.             IEnumOleUndoUnits * This);
  1836.         
  1837.         HRESULT ( STDMETHODCALLTYPE *Clone )( 
  1838.             IEnumOleUndoUnits * This,
  1839.             /* [out] */ IEnumOleUndoUnits **ppEnum);
  1840.         
  1841.         END_INTERFACE
  1842.     } IEnumOleUndoUnitsVtbl;
  1843.     interface IEnumOleUndoUnits
  1844.     {
  1845.         CONST_VTBL struct IEnumOleUndoUnitsVtbl *lpVtbl;
  1846.     };
  1847.     
  1848. #ifdef COBJMACROS
  1849. #define IEnumOleUndoUnits_QueryInterface(This,riid,ppvObject)
  1850.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1851. #define IEnumOleUndoUnits_AddRef(This)
  1852.     (This)->lpVtbl -> AddRef(This)
  1853. #define IEnumOleUndoUnits_Release(This)
  1854.     (This)->lpVtbl -> Release(This)
  1855. #define IEnumOleUndoUnits_Next(This,cElt,rgElt,pcEltFetched)
  1856.     (This)->lpVtbl -> Next(This,cElt,rgElt,pcEltFetched)
  1857. #define IEnumOleUndoUnits_Skip(This,cElt)
  1858.     (This)->lpVtbl -> Skip(This,cElt)
  1859. #define IEnumOleUndoUnits_Reset(This)
  1860.     (This)->lpVtbl -> Reset(This)
  1861. #define IEnumOleUndoUnits_Clone(This,ppEnum)
  1862.     (This)->lpVtbl -> Clone(This,ppEnum)
  1863. #endif /* COBJMACROS */
  1864. #endif  /* C style interface */
  1865. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumOleUndoUnits_RemoteNext_Proxy( 
  1866.     IEnumOleUndoUnits * This,
  1867.     /* [in] */ ULONG cElt,
  1868.     /* [length_is][size_is][out] */ IOleUndoUnit **rgElt,
  1869.     /* [out] */ ULONG *pcEltFetched);
  1870. void __RPC_STUB IEnumOleUndoUnits_RemoteNext_Stub(
  1871.     IRpcStubBuffer *This,
  1872.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1873.     PRPC_MESSAGE _pRpcMessage,
  1874.     DWORD *_pdwStubPhase);
  1875. HRESULT STDMETHODCALLTYPE IEnumOleUndoUnits_Skip_Proxy( 
  1876.     IEnumOleUndoUnits * This,
  1877.     /* [in] */ ULONG cElt);
  1878. void __RPC_STUB IEnumOleUndoUnits_Skip_Stub(
  1879.     IRpcStubBuffer *This,
  1880.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1881.     PRPC_MESSAGE _pRpcMessage,
  1882.     DWORD *_pdwStubPhase);
  1883. HRESULT STDMETHODCALLTYPE IEnumOleUndoUnits_Reset_Proxy( 
  1884.     IEnumOleUndoUnits * This);
  1885. void __RPC_STUB IEnumOleUndoUnits_Reset_Stub(
  1886.     IRpcStubBuffer *This,
  1887.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1888.     PRPC_MESSAGE _pRpcMessage,
  1889.     DWORD *_pdwStubPhase);
  1890. HRESULT STDMETHODCALLTYPE IEnumOleUndoUnits_Clone_Proxy( 
  1891.     IEnumOleUndoUnits * This,
  1892.     /* [out] */ IEnumOleUndoUnits **ppEnum);
  1893. void __RPC_STUB IEnumOleUndoUnits_Clone_Stub(
  1894.     IRpcStubBuffer *This,
  1895.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1896.     PRPC_MESSAGE _pRpcMessage,
  1897.     DWORD *_pdwStubPhase);
  1898. #endif  /* __IEnumOleUndoUnits_INTERFACE_DEFINED__ */
  1899. #ifndef __IOleUndoManager_INTERFACE_DEFINED__
  1900. #define __IOleUndoManager_INTERFACE_DEFINED__
  1901. /* interface IOleUndoManager */
  1902. /* [uuid][unique][object] */ 
  1903. #define SID_SOleUndoManager IID_IOleUndoManager
  1904. typedef IOleUndoManager *LPOLEUNDOMANAGER;
  1905. EXTERN_C const IID IID_IOleUndoManager;
  1906. #if defined(__cplusplus) && !defined(CINTERFACE)
  1907.     
  1908.     MIDL_INTERFACE("D001F200-EF97-11CE-9BC9-00AA00608E01")
  1909.     IOleUndoManager : public IUnknown
  1910.     {
  1911.     public:
  1912.         virtual HRESULT STDMETHODCALLTYPE Open( 
  1913.             /* [in] */ IOleParentUndoUnit *pPUU) = 0;
  1914.         
  1915.         virtual HRESULT STDMETHODCALLTYPE Close( 
  1916.             /* [in] */ IOleParentUndoUnit *pPUU,
  1917.             /* [in] */ BOOL fCommit) = 0;
  1918.         
  1919.         virtual HRESULT STDMETHODCALLTYPE Add( 
  1920.             /* [in] */ IOleUndoUnit *pUU) = 0;
  1921.         
  1922.         virtual HRESULT STDMETHODCALLTYPE GetOpenParentState( 
  1923.             /* [out] */ DWORD *pdwState) = 0;
  1924.         
  1925.         virtual HRESULT STDMETHODCALLTYPE DiscardFrom( 
  1926.             /* [in] */ IOleUndoUnit *pUU) = 0;
  1927.         
  1928.         virtual HRESULT STDMETHODCALLTYPE UndoTo( 
  1929.             /* [in] */ IOleUndoUnit *pUU) = 0;
  1930.         
  1931.         virtual HRESULT STDMETHODCALLTYPE RedoTo( 
  1932.             /* [in] */ IOleUndoUnit *pUU) = 0;
  1933.         
  1934.         virtual HRESULT STDMETHODCALLTYPE EnumUndoable( 
  1935.             /* [out] */ IEnumOleUndoUnits **ppEnum) = 0;
  1936.         
  1937.         virtual HRESULT STDMETHODCALLTYPE EnumRedoable( 
  1938.             /* [out] */ IEnumOleUndoUnits **ppEnum) = 0;
  1939.         
  1940.         virtual HRESULT STDMETHODCALLTYPE GetLastUndoDescription( 
  1941.             /* [out] */ BSTR *pBstr) = 0;
  1942.         
  1943.         virtual HRESULT STDMETHODCALLTYPE GetLastRedoDescription( 
  1944.             /* [out] */ BSTR *pBstr) = 0;
  1945.         
  1946.         virtual HRESULT STDMETHODCALLTYPE Enable( 
  1947.             /* [in] */ BOOL fEnable) = 0;
  1948.         
  1949.     };
  1950.     
  1951. #else  /* C style interface */
  1952.     typedef struct IOleUndoManagerVtbl
  1953.     {
  1954.         BEGIN_INTERFACE
  1955.         
  1956.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1957.             IOleUndoManager * This,
  1958.             /* [in] */ REFIID riid,
  1959.             /* [iid_is][out] */ void **ppvObject);
  1960.         
  1961.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1962.             IOleUndoManager * This);
  1963.         
  1964.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1965.             IOleUndoManager * This);
  1966.         
  1967.         HRESULT ( STDMETHODCALLTYPE *Open )( 
  1968.             IOleUndoManager * This,
  1969.             /* [in] */ IOleParentUndoUnit *pPUU);
  1970.         
  1971.         HRESULT ( STDMETHODCALLTYPE *Close )( 
  1972.             IOleUndoManager * This,
  1973.             /* [in] */ IOleParentUndoUnit *pPUU,
  1974.             /* [in] */ BOOL fCommit);
  1975.         
  1976.         HRESULT ( STDMETHODCALLTYPE *Add )( 
  1977.             IOleUndoManager * This,
  1978.             /* [in] */ IOleUndoUnit *pUU);
  1979.         
  1980.         HRESULT ( STDMETHODCALLTYPE *GetOpenParentState )( 
  1981.             IOleUndoManager * This,
  1982.             /* [out] */ DWORD *pdwState);
  1983.         
  1984.         HRESULT ( STDMETHODCALLTYPE *DiscardFrom )( 
  1985.             IOleUndoManager * This,
  1986.             /* [in] */ IOleUndoUnit *pUU);
  1987.         
  1988.         HRESULT ( STDMETHODCALLTYPE *UndoTo )( 
  1989.             IOleUndoManager * This,
  1990.             /* [in] */ IOleUndoUnit *pUU);
  1991.         
  1992.         HRESULT ( STDMETHODCALLTYPE *RedoTo )( 
  1993.             IOleUndoManager * This,
  1994.             /* [in] */ IOleUndoUnit *pUU);
  1995.         
  1996.         HRESULT ( STDMETHODCALLTYPE *EnumUndoable )( 
  1997.             IOleUndoManager * This,
  1998.             /* [out] */ IEnumOleUndoUnits **ppEnum);
  1999.         
  2000.         HRESULT ( STDMETHODCALLTYPE *EnumRedoable )( 
  2001.             IOleUndoManager * This,
  2002.             /* [out] */ IEnumOleUndoUnits **ppEnum);
  2003.         
  2004.         HRESULT ( STDMETHODCALLTYPE *GetLastUndoDescription )( 
  2005.             IOleUndoManager * This,
  2006.             /* [out] */ BSTR *pBstr);
  2007.         
  2008.         HRESULT ( STDMETHODCALLTYPE *GetLastRedoDescription )( 
  2009.             IOleUndoManager * This,
  2010.             /* [out] */ BSTR *pBstr);
  2011.         
  2012.         HRESULT ( STDMETHODCALLTYPE *Enable )( 
  2013.             IOleUndoManager * This,
  2014.             /* [in] */ BOOL fEnable);
  2015.         
  2016.         END_INTERFACE
  2017.     } IOleUndoManagerVtbl;
  2018.     interface IOleUndoManager
  2019.     {
  2020.         CONST_VTBL struct IOleUndoManagerVtbl *lpVtbl;
  2021.     };
  2022.     
  2023. #ifdef COBJMACROS
  2024. #define IOleUndoManager_QueryInterface(This,riid,ppvObject)
  2025.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2026. #define IOleUndoManager_AddRef(This)
  2027.     (This)->lpVtbl -> AddRef(This)
  2028. #define IOleUndoManager_Release(This)
  2029.     (This)->lpVtbl -> Release(This)
  2030. #define IOleUndoManager_Open(This,pPUU)
  2031.     (This)->lpVtbl -> Open(This,pPUU)
  2032. #define IOleUndoManager_Close(This,pPUU,fCommit)
  2033.     (This)->lpVtbl -> Close(This,pPUU,fCommit)
  2034. #define IOleUndoManager_Add(This,pUU)
  2035.     (This)->lpVtbl -> Add(This,pUU)
  2036. #define IOleUndoManager_GetOpenParentState(This,pdwState)
  2037.     (This)->lpVtbl -> GetOpenParentState(This,pdwState)
  2038. #define IOleUndoManager_DiscardFrom(This,pUU)
  2039.     (This)->lpVtbl -> DiscardFrom(This,pUU)
  2040. #define IOleUndoManager_UndoTo(This,pUU)
  2041.     (This)->lpVtbl -> UndoTo(This,pUU)
  2042. #define IOleUndoManager_RedoTo(This,pUU)
  2043.     (This)->lpVtbl -> RedoTo(This,pUU)
  2044. #define IOleUndoManager_EnumUndoable(This,ppEnum)
  2045.     (This)->lpVtbl -> EnumUndoable(This,ppEnum)
  2046. #define IOleUndoManager_EnumRedoable(This,ppEnum)
  2047.     (This)->lpVtbl -> EnumRedoable(This,ppEnum)
  2048. #define IOleUndoManager_GetLastUndoDescription(This,pBstr)
  2049.     (This)->lpVtbl -> GetLastUndoDescription(This,pBstr)
  2050. #define IOleUndoManager_GetLastRedoDescription(This,pBstr)
  2051.     (This)->lpVtbl -> GetLastRedoDescription(This,pBstr)
  2052. #define IOleUndoManager_Enable(This,fEnable)
  2053.     (This)->lpVtbl -> Enable(This,fEnable)
  2054. #endif /* COBJMACROS */
  2055. #endif  /* C style interface */
  2056. HRESULT STDMETHODCALLTYPE IOleUndoManager_Open_Proxy( 
  2057.     IOleUndoManager * This,
  2058.     /* [in] */ IOleParentUndoUnit *pPUU);
  2059. void __RPC_STUB IOleUndoManager_Open_Stub(
  2060.     IRpcStubBuffer *This,
  2061.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2062.     PRPC_MESSAGE _pRpcMessage,
  2063.     DWORD *_pdwStubPhase);
  2064. HRESULT STDMETHODCALLTYPE IOleUndoManager_Close_Proxy( 
  2065.     IOleUndoManager * This,
  2066.     /* [in] */ IOleParentUndoUnit *pPUU,
  2067.     /* [in] */ BOOL fCommit);
  2068. void __RPC_STUB IOleUndoManager_Close_Stub(
  2069.     IRpcStubBuffer *This,
  2070.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2071.     PRPC_MESSAGE _pRpcMessage,
  2072.     DWORD *_pdwStubPhase);
  2073. HRESULT STDMETHODCALLTYPE IOleUndoManager_Add_Proxy( 
  2074.     IOleUndoManager * This,
  2075.     /* [in] */ IOleUndoUnit *pUU);
  2076. void __RPC_STUB IOleUndoManager_Add_Stub(
  2077.     IRpcStubBuffer *This,
  2078.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2079.     PRPC_MESSAGE _pRpcMessage,
  2080.     DWORD *_pdwStubPhase);
  2081. HRESULT STDMETHODCALLTYPE IOleUndoManager_GetOpenParentState_Proxy( 
  2082.     IOleUndoManager * This,
  2083.     /* [out] */ DWORD *pdwState);
  2084. void __RPC_STUB IOleUndoManager_GetOpenParentState_Stub(
  2085.     IRpcStubBuffer *This,
  2086.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2087.     PRPC_MESSAGE _pRpcMessage,
  2088.     DWORD *_pdwStubPhase);
  2089. HRESULT STDMETHODCALLTYPE IOleUndoManager_DiscardFrom_Proxy( 
  2090.     IOleUndoManager * This,
  2091.     /* [in] */ IOleUndoUnit *pUU);
  2092. void __RPC_STUB IOleUndoManager_DiscardFrom_Stub(
  2093.     IRpcStubBuffer *This,
  2094.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2095.     PRPC_MESSAGE _pRpcMessage,
  2096.     DWORD *_pdwStubPhase);
  2097. HRESULT STDMETHODCALLTYPE IOleUndoManager_UndoTo_Proxy( 
  2098.     IOleUndoManager * This,
  2099.     /* [in] */ IOleUndoUnit *pUU);
  2100. void __RPC_STUB IOleUndoManager_UndoTo_Stub(
  2101.     IRpcStubBuffer *This,
  2102.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2103.     PRPC_MESSAGE _pRpcMessage,
  2104.     DWORD *_pdwStubPhase);
  2105. HRESULT STDMETHODCALLTYPE IOleUndoManager_RedoTo_Proxy( 
  2106.     IOleUndoManager * This,
  2107.     /* [in] */ IOleUndoUnit *pUU);
  2108. void __RPC_STUB IOleUndoManager_RedoTo_Stub(
  2109.     IRpcStubBuffer *This,
  2110.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2111.     PRPC_MESSAGE _pRpcMessage,
  2112.     DWORD *_pdwStubPhase);
  2113. HRESULT STDMETHODCALLTYPE IOleUndoManager_EnumUndoable_Proxy( 
  2114.     IOleUndoManager * This,
  2115.     /* [out] */ IEnumOleUndoUnits **ppEnum);
  2116. void __RPC_STUB IOleUndoManager_EnumUndoable_Stub(
  2117.     IRpcStubBuffer *This,
  2118.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2119.     PRPC_MESSAGE _pRpcMessage,
  2120.     DWORD *_pdwStubPhase);
  2121. HRESULT STDMETHODCALLTYPE IOleUndoManager_EnumRedoable_Proxy( 
  2122.     IOleUndoManager * This,
  2123.     /* [out] */ IEnumOleUndoUnits **ppEnum);
  2124. void __RPC_STUB IOleUndoManager_EnumRedoable_Stub(
  2125.     IRpcStubBuffer *This,
  2126.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2127.     PRPC_MESSAGE _pRpcMessage,
  2128.     DWORD *_pdwStubPhase);
  2129. HRESULT STDMETHODCALLTYPE IOleUndoManager_GetLastUndoDescription_Proxy( 
  2130.     IOleUndoManager * This,
  2131.     /* [out] */ BSTR *pBstr);
  2132. void __RPC_STUB IOleUndoManager_GetLastUndoDescription_Stub(
  2133.     IRpcStubBuffer *This,
  2134.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2135.     PRPC_MESSAGE _pRpcMessage,
  2136.     DWORD *_pdwStubPhase);
  2137. HRESULT STDMETHODCALLTYPE IOleUndoManager_GetLastRedoDescription_Proxy( 
  2138.     IOleUndoManager * This,
  2139.     /* [out] */ BSTR *pBstr);
  2140. void __RPC_STUB IOleUndoManager_GetLastRedoDescription_Stub(
  2141.     IRpcStubBuffer *This,
  2142.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2143.     PRPC_MESSAGE _pRpcMessage,
  2144.     DWORD *_pdwStubPhase);
  2145. HRESULT STDMETHODCALLTYPE IOleUndoManager_Enable_Proxy( 
  2146.     IOleUndoManager * This,
  2147.     /* [in] */ BOOL fEnable);
  2148. void __RPC_STUB IOleUndoManager_Enable_Stub(
  2149.     IRpcStubBuffer *This,
  2150.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2151.     PRPC_MESSAGE _pRpcMessage,
  2152.     DWORD *_pdwStubPhase);
  2153. #endif  /* __IOleUndoManager_INTERFACE_DEFINED__ */
  2154. #ifndef __IPointerInactive_INTERFACE_DEFINED__
  2155. #define __IPointerInactive_INTERFACE_DEFINED__
  2156. /* interface IPointerInactive */
  2157. /* [uuid][unique][object] */ 
  2158. typedef IPointerInactive *LPPOINTERINACTIVE;
  2159. typedef /* [v1_enum] */ 
  2160. enum tagPOINTERINACTIVE
  2161.     { POINTERINACTIVE_ACTIVATEONENTRY = 1,
  2162. POINTERINACTIVE_DEACTIVATEONLEAVE = 2,
  2163. POINTERINACTIVE_ACTIVATEONDRAG = 4
  2164.     }  POINTERINACTIVE;
  2165. EXTERN_C const IID IID_IPointerInactive;
  2166. #if defined(__cplusplus) && !defined(CINTERFACE)
  2167.     
  2168.     MIDL_INTERFACE("55980BA0-35AA-11CF-B671-00AA004CD6D8")
  2169.     IPointerInactive : public IUnknown
  2170.     {
  2171.     public:
  2172.         virtual HRESULT STDMETHODCALLTYPE GetActivationPolicy( 
  2173.             /* [out] */ DWORD *pdwPolicy) = 0;
  2174.         
  2175.         virtual HRESULT STDMETHODCALLTYPE OnInactiveMouseMove( 
  2176.             /* [in] */ LPCRECT pRectBounds,
  2177.             /* [in] */ LONG x,
  2178.             /* [in] */ LONG y,
  2179.             /* [in] */ DWORD grfKeyState) = 0;
  2180.         
  2181.         virtual HRESULT STDMETHODCALLTYPE OnInactiveSetCursor( 
  2182.             /* [in] */ LPCRECT pRectBounds,
  2183.             /* [in] */ LONG x,
  2184.             /* [in] */ LONG y,
  2185.             /* [in] */ DWORD dwMouseMsg,
  2186.             /* [in] */ BOOL fSetAlways) = 0;
  2187.         
  2188.     };
  2189.     
  2190. #else  /* C style interface */
  2191.     typedef struct IPointerInactiveVtbl
  2192.     {
  2193.         BEGIN_INTERFACE
  2194.         
  2195.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2196.             IPointerInactive * This,
  2197.             /* [in] */ REFIID riid,
  2198.             /* [iid_is][out] */ void **ppvObject);
  2199.         
  2200.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2201.             IPointerInactive * This);
  2202.         
  2203.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2204.             IPointerInactive * This);
  2205.         
  2206.         HRESULT ( STDMETHODCALLTYPE *GetActivationPolicy )( 
  2207.             IPointerInactive * This,
  2208.             /* [out] */ DWORD *pdwPolicy);
  2209.         
  2210.         HRESULT ( STDMETHODCALLTYPE *OnInactiveMouseMove )( 
  2211.             IPointerInactive * This,
  2212.             /* [in] */ LPCRECT pRectBounds,
  2213.             /* [in] */ LONG x,
  2214.             /* [in] */ LONG y,
  2215.             /* [in] */ DWORD grfKeyState);
  2216.         
  2217.         HRESULT ( STDMETHODCALLTYPE *OnInactiveSetCursor )( 
  2218.             IPointerInactive * This,
  2219.             /* [in] */ LPCRECT pRectBounds,
  2220.             /* [in] */ LONG x,
  2221.             /* [in] */ LONG y,
  2222.             /* [in] */ DWORD dwMouseMsg,
  2223.             /* [in] */ BOOL fSetAlways);
  2224.         
  2225.         END_INTERFACE
  2226.     } IPointerInactiveVtbl;
  2227.     interface IPointerInactive
  2228.     {
  2229.         CONST_VTBL struct IPointerInactiveVtbl *lpVtbl;
  2230.     };
  2231.     
  2232. #ifdef COBJMACROS
  2233. #define IPointerInactive_QueryInterface(This,riid,ppvObject)
  2234.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2235. #define IPointerInactive_AddRef(This)
  2236.     (This)->lpVtbl -> AddRef(This)
  2237. #define IPointerInactive_Release(This)
  2238.     (This)->lpVtbl -> Release(This)
  2239. #define IPointerInactive_GetActivationPolicy(This,pdwPolicy)
  2240.     (This)->lpVtbl -> GetActivationPolicy(This,pdwPolicy)
  2241. #define IPointerInactive_OnInactiveMouseMove(This,pRectBounds,x,y,grfKeyState)
  2242.     (This)->lpVtbl -> OnInactiveMouseMove(This,pRectBounds,x,y,grfKeyState)
  2243. #define IPointerInactive_OnInactiveSetCursor(This,pRectBounds,x,y,dwMouseMsg,fSetAlways)
  2244.     (This)->lpVtbl -> OnInactiveSetCursor(This,pRectBounds,x,y,dwMouseMsg,fSetAlways)
  2245. #endif /* COBJMACROS */
  2246. #endif  /* C style interface */
  2247. HRESULT STDMETHODCALLTYPE IPointerInactive_GetActivationPolicy_Proxy( 
  2248.     IPointerInactive * This,
  2249.     /* [out] */ DWORD *pdwPolicy);
  2250. void __RPC_STUB IPointerInactive_GetActivationPolicy_Stub(
  2251.     IRpcStubBuffer *This,
  2252.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2253.     PRPC_MESSAGE _pRpcMessage,
  2254.     DWORD *_pdwStubPhase);
  2255. HRESULT STDMETHODCALLTYPE IPointerInactive_OnInactiveMouseMove_Proxy( 
  2256.     IPointerInactive * This,
  2257.     /* [in] */ LPCRECT pRectBounds,
  2258.     /* [in] */ LONG x,
  2259.     /* [in] */ LONG y,
  2260.     /* [in] */ DWORD grfKeyState);
  2261. void __RPC_STUB IPointerInactive_OnInactiveMouseMove_Stub(
  2262.     IRpcStubBuffer *This,
  2263.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2264.     PRPC_MESSAGE _pRpcMessage,
  2265.     DWORD *_pdwStubPhase);
  2266. HRESULT STDMETHODCALLTYPE IPointerInactive_OnInactiveSetCursor_Proxy( 
  2267.     IPointerInactive * This,
  2268.     /* [in] */ LPCRECT pRectBounds,
  2269.     /* [in] */ LONG x,
  2270.     /* [in] */ LONG y,
  2271.     /* [in] */ DWORD dwMouseMsg,
  2272.     /* [in] */ BOOL fSetAlways);
  2273. void __RPC_STUB IPointerInactive_OnInactiveSetCursor_Stub(
  2274.     IRpcStubBuffer *This,
  2275.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2276.     PRPC_MESSAGE _pRpcMessage,
  2277.     DWORD *_pdwStubPhase);
  2278. #endif  /* __IPointerInactive_INTERFACE_DEFINED__ */
  2279. #ifndef __IObjectWithSite_INTERFACE_DEFINED__
  2280. #define __IObjectWithSite_INTERFACE_DEFINED__
  2281. /* interface IObjectWithSite */
  2282. /* [unique][uuid][object] */ 
  2283. typedef IObjectWithSite *LPOBJECTWITHSITE;
  2284. EXTERN_C const IID IID_IObjectWithSite;
  2285. #if defined(__cplusplus) && !defined(CINTERFACE)
  2286.     
  2287.     MIDL_INTERFACE("FC4801A3-2BA9-11CF-A229-00AA003D7352")
  2288.     IObjectWithSite : public IUnknown
  2289.     {
  2290.     public:
  2291.         virtual HRESULT STDMETHODCALLTYPE SetSite( 
  2292.             /* [in] */ IUnknown *pUnkSite) = 0;
  2293.         
  2294.         virtual HRESULT STDMETHODCALLTYPE GetSite( 
  2295.             /* [in] */ REFIID riid,
  2296.             /* [iid_is][out] */ void **ppvSite) = 0;
  2297.         
  2298.     };
  2299.     
  2300. #else  /* C style interface */
  2301.     typedef struct IObjectWithSiteVtbl
  2302.     {
  2303.         BEGIN_INTERFACE
  2304.         
  2305.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2306.             IObjectWithSite * This,
  2307.             /* [in] */ REFIID riid,
  2308.             /* [iid_is][out] */ void **ppvObject);
  2309.         
  2310.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2311.             IObjectWithSite * This);
  2312.         
  2313.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2314.             IObjectWithSite * This);
  2315.         
  2316.         HRESULT ( STDMETHODCALLTYPE *SetSite )( 
  2317.             IObjectWithSite * This,
  2318.             /* [in] */ IUnknown *pUnkSite);
  2319.         
  2320.         HRESULT ( STDMETHODCALLTYPE *GetSite )( 
  2321.             IObjectWithSite * This,
  2322.             /* [in] */ REFIID riid,
  2323.             /* [iid_is][out] */ void **ppvSite);
  2324.         
  2325.         END_INTERFACE
  2326.     } IObjectWithSiteVtbl;
  2327.     interface IObjectWithSite
  2328.     {
  2329.         CONST_VTBL struct IObjectWithSiteVtbl *lpVtbl;
  2330.     };
  2331.     
  2332. #ifdef COBJMACROS
  2333. #define IObjectWithSite_QueryInterface(This,riid,ppvObject)
  2334.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2335. #define IObjectWithSite_AddRef(This)
  2336.     (This)->lpVtbl -> AddRef(This)
  2337. #define IObjectWithSite_Release(This)
  2338.     (This)->lpVtbl -> Release(This)
  2339. #define IObjectWithSite_SetSite(This,pUnkSite)
  2340.     (This)->lpVtbl -> SetSite(This,pUnkSite)
  2341. #define IObjectWithSite_GetSite(This,riid,ppvSite)
  2342.     (This)->lpVtbl -> GetSite(This,riid,ppvSite)
  2343. #endif /* COBJMACROS */
  2344. #endif  /* C style interface */
  2345. HRESULT STDMETHODCALLTYPE IObjectWithSite_SetSite_Proxy( 
  2346.     IObjectWithSite * This,
  2347.     /* [in] */ IUnknown *pUnkSite);
  2348. void __RPC_STUB IObjectWithSite_SetSite_Stub(
  2349.     IRpcStubBuffer *This,
  2350.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2351.     PRPC_MESSAGE _pRpcMessage,
  2352.     DWORD *_pdwStubPhase);
  2353. HRESULT STDMETHODCALLTYPE IObjectWithSite_GetSite_Proxy( 
  2354.     IObjectWithSite * This,
  2355.     /* [in] */ REFIID riid,
  2356.     /* [iid_is][out] */ void **ppvSite);
  2357. void __RPC_STUB IObjectWithSite_GetSite_Stub(
  2358.     IRpcStubBuffer *This,
  2359.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2360.     PRPC_MESSAGE _pRpcMessage,
  2361.     DWORD *_pdwStubPhase);
  2362. #endif  /* __IObjectWithSite_INTERFACE_DEFINED__ */
  2363. #ifndef __IPerPropertyBrowsing_INTERFACE_DEFINED__
  2364. #define __IPerPropertyBrowsing_INTERFACE_DEFINED__
  2365. /* interface IPerPropertyBrowsing */
  2366. /* [unique][uuid][object] */ 
  2367. typedef IPerPropertyBrowsing *LPPERPROPERTYBROWSING;
  2368. typedef struct tagCALPOLESTR
  2369.     {
  2370.     ULONG cElems;
  2371.     /* [size_is] */ LPOLESTR *pElems;
  2372.     }  CALPOLESTR;
  2373. typedef struct tagCALPOLESTR *LPCALPOLESTR;
  2374. typedef struct tagCADWORD
  2375.     {
  2376.     ULONG cElems;
  2377.     /* [size_is] */ DWORD *pElems;
  2378.     }  CADWORD;
  2379. typedef struct tagCADWORD *LPCADWORD;
  2380. EXTERN_C const IID IID_IPerPropertyBrowsing;
  2381. #if defined(__cplusplus) && !defined(CINTERFACE)
  2382.     
  2383.     MIDL_INTERFACE("376BD3AA-3845-101B-84ED-08002B2EC713")
  2384.     IPerPropertyBrowsing : public IUnknown
  2385.     {
  2386.     public:
  2387.         virtual HRESULT STDMETHODCALLTYPE GetDisplayString( 
  2388.             /* [in] */ DISPID dispID,
  2389.             /* [out] */ BSTR *pBstr) = 0;
  2390.         
  2391.         virtual HRESULT STDMETHODCALLTYPE MapPropertyToPage( 
  2392.             /* [in] */ DISPID dispID,
  2393.             /* [out] */ CLSID *pClsid) = 0;
  2394.         
  2395.         virtual HRESULT STDMETHODCALLTYPE GetPredefinedStrings( 
  2396.             /* [in] */ DISPID dispID,
  2397.             /* [out] */ CALPOLESTR *pCaStringsOut,
  2398.             /* [out] */ CADWORD *pCaCookiesOut) = 0;
  2399.         
  2400.         virtual HRESULT STDMETHODCALLTYPE GetPredefinedValue( 
  2401.             /* [in] */ DISPID dispID,
  2402.             /* [in] */ DWORD dwCookie,
  2403.             /* [out] */ VARIANT *pVarOut) = 0;
  2404.         
  2405.     };
  2406.     
  2407. #else  /* C style interface */
  2408.     typedef struct IPerPropertyBrowsingVtbl
  2409.     {
  2410.         BEGIN_INTERFACE
  2411.         
  2412.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2413.             IPerPropertyBrowsing * This,
  2414.             /* [in] */ REFIID riid,
  2415.             /* [iid_is][out] */ void **ppvObject);
  2416.         
  2417.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2418.             IPerPropertyBrowsing * This);
  2419.         
  2420.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2421.             IPerPropertyBrowsing * This);
  2422.         
  2423.         HRESULT ( STDMETHODCALLTYPE *GetDisplayString )( 
  2424.             IPerPropertyBrowsing * This,
  2425.             /* [in] */ DISPID dispID,
  2426.             /* [out] */ BSTR *pBstr);
  2427.         
  2428.         HRESULT ( STDMETHODCALLTYPE *MapPropertyToPage )( 
  2429.             IPerPropertyBrowsing * This,
  2430.             /* [in] */ DISPID dispID,
  2431.             /* [out] */ CLSID *pClsid);
  2432.         
  2433.         HRESULT ( STDMETHODCALLTYPE *GetPredefinedStrings )( 
  2434.             IPerPropertyBrowsing * This,
  2435.             /* [in] */ DISPID dispID,
  2436.             /* [out] */ CALPOLESTR *pCaStringsOut,
  2437.             /* [out] */ CADWORD *pCaCookiesOut);
  2438.         
  2439.         HRESULT ( STDMETHODCALLTYPE *GetPredefinedValue )( 
  2440.             IPerPropertyBrowsing * This,
  2441.             /* [in] */ DISPID dispID,
  2442.             /* [in] */ DWORD dwCookie,
  2443.             /* [out] */ VARIANT *pVarOut);
  2444.         
  2445.         END_INTERFACE
  2446.     } IPerPropertyBrowsingVtbl;
  2447.     interface IPerPropertyBrowsing
  2448.     {
  2449.         CONST_VTBL struct IPerPropertyBrowsingVtbl *lpVtbl;
  2450.     };
  2451.     
  2452. #ifdef COBJMACROS
  2453. #define IPerPropertyBrowsing_QueryInterface(This,riid,ppvObject)
  2454.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2455. #define IPerPropertyBrowsing_AddRef(This)
  2456.     (This)->lpVtbl -> AddRef(This)
  2457. #define IPerPropertyBrowsing_Release(This)
  2458.     (This)->lpVtbl -> Release(This)
  2459. #define IPerPropertyBrowsing_GetDisplayString(This,dispID,pBstr)
  2460.     (This)->lpVtbl -> GetDisplayString(This,dispID,pBstr)
  2461. #define IPerPropertyBrowsing_MapPropertyToPage(This,dispID,pClsid)
  2462.     (This)->lpVtbl -> MapPropertyToPage(This,dispID,pClsid)
  2463. #define IPerPropertyBrowsing_GetPredefinedStrings(This,dispID,pCaStringsOut,pCaCookiesOut)
  2464.     (This)->lpVtbl -> GetPredefinedStrings(This,dispID,pCaStringsOut,pCaCookiesOut)
  2465. #define IPerPropertyBrowsing_GetPredefinedValue(This,dispID,dwCookie,pVarOut)
  2466.     (This)->lpVtbl -> GetPredefinedValue(This,dispID,dwCookie,pVarOut)
  2467. #endif /* COBJMACROS */
  2468. #endif  /* C style interface */
  2469. HRESULT STDMETHODCALLTYPE IPerPropertyBrowsing_GetDisplayString_Proxy( 
  2470.     IPerPropertyBrowsing * This,
  2471.     /* [in] */ DISPID dispID,
  2472.     /* [out] */ BSTR *pBstr);
  2473. void __RPC_STUB IPerPropertyBrowsing_GetDisplayString_Stub(
  2474.     IRpcStubBuffer *This,
  2475.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2476.     PRPC_MESSAGE _pRpcMessage,
  2477.     DWORD *_pdwStubPhase);
  2478. HRESULT STDMETHODCALLTYPE IPerPropertyBrowsing_MapPropertyToPage_Proxy( 
  2479.     IPerPropertyBrowsing * This,
  2480.     /* [in] */ DISPID dispID,
  2481.     /* [out] */ CLSID *pClsid);
  2482. void __RPC_STUB IPerPropertyBrowsing_MapPropertyToPage_Stub(
  2483.     IRpcStubBuffer *This,
  2484.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2485.     PRPC_MESSAGE _pRpcMessage,
  2486.     DWORD *_pdwStubPhase);
  2487. HRESULT STDMETHODCALLTYPE IPerPropertyBrowsing_GetPredefinedStrings_Proxy( 
  2488.     IPerPropertyBrowsing * This,
  2489.     /* [in] */ DISPID dispID,
  2490.     /* [out] */ CALPOLESTR *pCaStringsOut,
  2491.     /* [out] */ CADWORD *pCaCookiesOut);
  2492. void __RPC_STUB IPerPropertyBrowsing_GetPredefinedStrings_Stub(
  2493.     IRpcStubBuffer *This,
  2494.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2495.     PRPC_MESSAGE _pRpcMessage,
  2496.     DWORD *_pdwStubPhase);
  2497. HRESULT STDMETHODCALLTYPE IPerPropertyBrowsing_GetPredefinedValue_Proxy( 
  2498.     IPerPropertyBrowsing * This,
  2499.     /* [in] */ DISPID dispID,
  2500.     /* [in] */ DWORD dwCookie,
  2501.     /* [out] */ VARIANT *pVarOut);
  2502. void __RPC_STUB IPerPropertyBrowsing_GetPredefinedValue_Stub(
  2503.     IRpcStubBuffer *This,
  2504.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2505.     PRPC_MESSAGE _pRpcMessage,
  2506.     DWORD *_pdwStubPhase);
  2507. #endif  /* __IPerPropertyBrowsing_INTERFACE_DEFINED__ */
  2508. #ifndef __IPropertyBag2_INTERFACE_DEFINED__
  2509. #define __IPropertyBag2_INTERFACE_DEFINED__
  2510. /* interface IPropertyBag2 */
  2511. /* [unique][uuid][object] */ 
  2512. typedef IPropertyBag2 *LPPROPERTYBAG2;
  2513. typedef /* [v1_enum] */ 
  2514. enum tagPROPBAG2_TYPE
  2515.     { PROPBAG2_TYPE_UNDEFINED = 0,
  2516. PROPBAG2_TYPE_DATA = 1,
  2517. PROPBAG2_TYPE_URL = 2,
  2518. PROPBAG2_TYPE_OBJECT = 3,
  2519. PROPBAG2_TYPE_STREAM = 4,
  2520. PROPBAG2_TYPE_STORAGE = 5,
  2521. PROPBAG2_TYPE_MONIKER = 6
  2522.     }  PROPBAG2_TYPE;
  2523. typedef struct tagPROPBAG2
  2524.     {
  2525.     DWORD dwType;
  2526.     VARTYPE vt;
  2527.     CLIPFORMAT cfType;
  2528.     DWORD dwHint;
  2529.     LPOLESTR pstrName;
  2530.     CLSID clsid;
  2531.     }  PROPBAG2;
  2532. EXTERN_C const IID IID_IPropertyBag2;
  2533. #if defined(__cplusplus) && !defined(CINTERFACE)
  2534.     
  2535.     MIDL_INTERFACE("22F55882-280B-11d0-A8A9-00A0C90C2004")
  2536.     IPropertyBag2 : public IUnknown
  2537.     {
  2538.     public:
  2539.         virtual HRESULT STDMETHODCALLTYPE Read( 
  2540.             /* [in] */ ULONG cProperties,
  2541.             /* [in] */ PROPBAG2 *pPropBag,
  2542.             /* [in] */ IErrorLog *pErrLog,
  2543.             /* [out] */ VARIANT *pvarValue,
  2544.             /* [out] */ HRESULT *phrError) = 0;
  2545.         
  2546.         virtual HRESULT STDMETHODCALLTYPE Write( 
  2547.             /* [in] */ ULONG cProperties,
  2548.             /* [in] */ PROPBAG2 *pPropBag,
  2549.             /* [in] */ VARIANT *pvarValue) = 0;
  2550.         
  2551.         virtual HRESULT STDMETHODCALLTYPE CountProperties( 
  2552.             /* [out] */ ULONG *pcProperties) = 0;
  2553.         
  2554.         virtual HRESULT STDMETHODCALLTYPE GetPropertyInfo( 
  2555.             /* [in] */ ULONG iProperty,
  2556.             /* [in] */ ULONG cProperties,
  2557.             /* [out] */ PROPBAG2 *pPropBag,
  2558.             /* [out] */ ULONG *pcProperties) = 0;
  2559.         
  2560.         virtual HRESULT STDMETHODCALLTYPE LoadObject( 
  2561.             /* [in] */ LPCOLESTR pstrName,
  2562.             /* [in] */ DWORD dwHint,
  2563.             /* [in] */ IUnknown *pUnkObject,
  2564.             /* [in] */ IErrorLog *pErrLog) = 0;
  2565.         
  2566.     };
  2567.     
  2568. #else  /* C style interface */
  2569.     typedef struct IPropertyBag2Vtbl
  2570.     {
  2571.         BEGIN_INTERFACE
  2572.         
  2573.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2574.             IPropertyBag2 * This,
  2575.             /* [in] */ REFIID riid,
  2576.             /* [iid_is][out] */ void **ppvObject);
  2577.         
  2578.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2579.             IPropertyBag2 * This);
  2580.         
  2581.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2582.             IPropertyBag2 * This);
  2583.         
  2584.         HRESULT ( STDMETHODCALLTYPE *Read )( 
  2585.             IPropertyBag2 * This,
  2586.             /* [in] */ ULONG cProperties,
  2587.             /* [in] */ PROPBAG2 *pPropBag,
  2588.             /* [in] */ IErrorLog *pErrLog,
  2589.             /* [out] */ VARIANT *pvarValue,
  2590.             /* [out] */ HRESULT *phrError);
  2591.         
  2592.         HRESULT ( STDMETHODCALLTYPE *Write )( 
  2593.             IPropertyBag2 * This,
  2594.             /* [in] */ ULONG cProperties,
  2595.             /* [in] */ PROPBAG2 *pPropBag,
  2596.             /* [in] */ VARIANT *pvarValue);
  2597.         
  2598.         HRESULT ( STDMETHODCALLTYPE *CountProperties )( 
  2599.             IPropertyBag2 * This,
  2600.             /* [out] */ ULONG *pcProperties);
  2601.         
  2602.         HRESULT ( STDMETHODCALLTYPE *GetPropertyInfo )( 
  2603.             IPropertyBag2 * This,
  2604.             /* [in] */ ULONG iProperty,
  2605.             /* [in] */ ULONG cProperties,
  2606.             /* [out] */ PROPBAG2 *pPropBag,
  2607.             /* [out] */ ULONG *pcProperties);
  2608.         
  2609.         HRESULT ( STDMETHODCALLTYPE *LoadObject )( 
  2610.             IPropertyBag2 * This,
  2611.             /* [in] */ LPCOLESTR pstrName,
  2612.             /* [in] */ DWORD dwHint,
  2613.             /* [in] */ IUnknown *pUnkObject,
  2614.             /* [in] */ IErrorLog *pErrLog);
  2615.         
  2616.         END_INTERFACE
  2617.     } IPropertyBag2Vtbl;
  2618.     interface IPropertyBag2
  2619.     {
  2620.         CONST_VTBL struct IPropertyBag2Vtbl *lpVtbl;
  2621.     };
  2622.     
  2623. #ifdef COBJMACROS
  2624. #define IPropertyBag2_QueryInterface(This,riid,ppvObject)
  2625.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2626. #define IPropertyBag2_AddRef(This)
  2627.     (This)->lpVtbl -> AddRef(This)
  2628. #define IPropertyBag2_Release(This)
  2629.     (This)->lpVtbl -> Release(This)
  2630. #define IPropertyBag2_Read(This,cProperties,pPropBag,pErrLog,pvarValue,phrError)
  2631.     (This)->lpVtbl -> Read(This,cProperties,pPropBag,pErrLog,pvarValue,phrError)
  2632. #define IPropertyBag2_Write(This,cProperties,pPropBag,pvarValue)
  2633.     (This)->lpVtbl -> Write(This,cProperties,pPropBag,pvarValue)
  2634. #define IPropertyBag2_CountProperties(This,pcProperties)
  2635.     (This)->lpVtbl -> CountProperties(This,pcProperties)
  2636. #define IPropertyBag2_GetPropertyInfo(This,iProperty,cProperties,pPropBag,pcProperties)
  2637.     (This)->lpVtbl -> GetPropertyInfo(This,iProperty,cProperties,pPropBag,pcProperties)
  2638. #define IPropertyBag2_LoadObject(This,pstrName,dwHint,pUnkObject,pErrLog)
  2639.     (This)->lpVtbl -> LoadObject(This,pstrName,dwHint,pUnkObject,pErrLog)
  2640. #endif /* COBJMACROS */
  2641. #endif  /* C style interface */
  2642. HRESULT STDMETHODCALLTYPE IPropertyBag2_Read_Proxy( 
  2643.     IPropertyBag2 * This,
  2644.     /* [in] */ ULONG cProperties,
  2645.     /* [in] */ PROPBAG2 *pPropBag,
  2646.     /* [in] */ IErrorLog *pErrLog,
  2647.     /* [out] */ VARIANT *pvarValue,
  2648.     /* [out] */ HRESULT *phrError);
  2649. void __RPC_STUB IPropertyBag2_Read_Stub(
  2650.     IRpcStubBuffer *This,
  2651.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2652.     PRPC_MESSAGE _pRpcMessage,
  2653.     DWORD *_pdwStubPhase);
  2654. HRESULT STDMETHODCALLTYPE IPropertyBag2_Write_Proxy( 
  2655.     IPropertyBag2 * This,
  2656.     /* [in] */ ULONG cProperties,
  2657.     /* [in] */ PROPBAG2 *pPropBag,
  2658.     /* [in] */ VARIANT *pvarValue);
  2659. void __RPC_STUB IPropertyBag2_Write_Stub(
  2660.     IRpcStubBuffer *This,
  2661.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2662.     PRPC_MESSAGE _pRpcMessage,
  2663.     DWORD *_pdwStubPhase);
  2664. HRESULT STDMETHODCALLTYPE IPropertyBag2_CountProperties_Proxy( 
  2665.     IPropertyBag2 * This,
  2666.     /* [out] */ ULONG *pcProperties);
  2667. void __RPC_STUB IPropertyBag2_CountProperties_Stub(
  2668.     IRpcStubBuffer *This,
  2669.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2670.     PRPC_MESSAGE _pRpcMessage,
  2671.     DWORD *_pdwStubPhase);
  2672. HRESULT STDMETHODCALLTYPE IPropertyBag2_GetPropertyInfo_Proxy( 
  2673.     IPropertyBag2 * This,
  2674.     /* [in] */ ULONG iProperty,
  2675.     /* [in] */ ULONG cProperties,
  2676.     /* [out] */ PROPBAG2 *pPropBag,
  2677.     /* [out] */ ULONG *pcProperties);
  2678. void __RPC_STUB IPropertyBag2_GetPropertyInfo_Stub(
  2679.     IRpcStubBuffer *This,
  2680.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2681.     PRPC_MESSAGE _pRpcMessage,
  2682.     DWORD *_pdwStubPhase);
  2683. HRESULT STDMETHODCALLTYPE IPropertyBag2_LoadObject_Proxy( 
  2684.     IPropertyBag2 * This,
  2685.     /* [in] */ LPCOLESTR pstrName,
  2686.     /* [in] */ DWORD dwHint,
  2687.     /* [in] */ IUnknown *pUnkObject,
  2688.     /* [in] */ IErrorLog *pErrLog);
  2689. void __RPC_STUB IPropertyBag2_LoadObject_Stub(
  2690.     IRpcStubBuffer *This,
  2691.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2692.     PRPC_MESSAGE _pRpcMessage,
  2693.     DWORD *_pdwStubPhase);
  2694. #endif  /* __IPropertyBag2_INTERFACE_DEFINED__ */
  2695. #ifndef __IPersistPropertyBag2_INTERFACE_DEFINED__
  2696. #define __IPersistPropertyBag2_INTERFACE_DEFINED__
  2697. /* interface IPersistPropertyBag2 */
  2698. /* [unique][uuid][object] */ 
  2699. typedef IPersistPropertyBag2 *LPPERSISTPROPERTYBAG2;
  2700. EXTERN_C const IID IID_IPersistPropertyBag2;
  2701. #if defined(__cplusplus) && !defined(CINTERFACE)
  2702.     
  2703.     MIDL_INTERFACE("22F55881-280B-11d0-A8A9-00A0C90C2004")
  2704.     IPersistPropertyBag2 : public IPersist
  2705.     {
  2706.     public:
  2707.         virtual HRESULT STDMETHODCALLTYPE InitNew( void) = 0;
  2708.         
  2709.         virtual HRESULT STDMETHODCALLTYPE Load( 
  2710.             /* [in] */ IPropertyBag2 *pPropBag,
  2711.             /* [in] */ IErrorLog *pErrLog) = 0;
  2712.         
  2713.         virtual HRESULT STDMETHODCALLTYPE Save( 
  2714.             /* [in] */ IPropertyBag2 *pPropBag,
  2715.             /* [in] */ BOOL fClearDirty,
  2716.             /* [in] */ BOOL fSaveAllProperties) = 0;
  2717.         
  2718.         virtual HRESULT STDMETHODCALLTYPE IsDirty( void) = 0;
  2719.         
  2720.     };
  2721.     
  2722. #else  /* C style interface */
  2723.     typedef struct IPersistPropertyBag2Vtbl
  2724.     {
  2725.         BEGIN_INTERFACE
  2726.         
  2727.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2728.             IPersistPropertyBag2 * This,
  2729.             /* [in] */ REFIID riid,
  2730.             /* [iid_is][out] */ void **ppvObject);
  2731.         
  2732.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2733.             IPersistPropertyBag2 * This);
  2734.         
  2735.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2736.             IPersistPropertyBag2 * This);
  2737.         
  2738.         HRESULT ( STDMETHODCALLTYPE *GetClassID )( 
  2739.             IPersistPropertyBag2 * This,
  2740.             /* [out] */ CLSID *pClassID);
  2741.         
  2742.         HRESULT ( STDMETHODCALLTYPE *InitNew )( 
  2743.             IPersistPropertyBag2 * This);
  2744.         
  2745.         HRESULT ( STDMETHODCALLTYPE *Load )( 
  2746.             IPersistPropertyBag2 * This,
  2747.             /* [in] */ IPropertyBag2 *pPropBag,
  2748.             /* [in] */ IErrorLog *pErrLog);
  2749.         
  2750.         HRESULT ( STDMETHODCALLTYPE *Save )( 
  2751.             IPersistPropertyBag2 * This,
  2752.             /* [in] */ IPropertyBag2 *pPropBag,
  2753.             /* [in] */ BOOL fClearDirty,
  2754.             /* [in] */ BOOL fSaveAllProperties);
  2755.         
  2756.         HRESULT ( STDMETHODCALLTYPE *IsDirty )( 
  2757.             IPersistPropertyBag2 * This);
  2758.         
  2759.         END_INTERFACE
  2760.     } IPersistPropertyBag2Vtbl;
  2761.     interface IPersistPropertyBag2
  2762.     {
  2763.         CONST_VTBL struct IPersistPropertyBag2Vtbl *lpVtbl;
  2764.     };
  2765.     
  2766. #ifdef COBJMACROS
  2767. #define IPersistPropertyBag2_QueryInterface(This,riid,ppvObject)
  2768.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2769. #define IPersistPropertyBag2_AddRef(This)
  2770.     (This)->lpVtbl -> AddRef(This)
  2771. #define IPersistPropertyBag2_Release(This)
  2772.     (This)->lpVtbl -> Release(This)
  2773. #define IPersistPropertyBag2_GetClassID(This,pClassID)
  2774.     (This)->lpVtbl -> GetClassID(This,pClassID)
  2775. #define IPersistPropertyBag2_InitNew(This)
  2776.     (This)->lpVtbl -> InitNew(This)
  2777. #define IPersistPropertyBag2_Load(This,pPropBag,pErrLog)
  2778.     (This)->lpVtbl -> Load(This,pPropBag,pErrLog)
  2779. #define IPersistPropertyBag2_Save(This,pPropBag,fClearDirty,fSaveAllProperties)
  2780.     (This)->lpVtbl -> Save(This,pPropBag,fClearDirty,fSaveAllProperties)
  2781. #define IPersistPropertyBag2_IsDirty(This)
  2782.     (This)->lpVtbl -> IsDirty(This)
  2783. #endif /* COBJMACROS */
  2784. #endif  /* C style interface */
  2785. HRESULT STDMETHODCALLTYPE IPersistPropertyBag2_InitNew_Proxy( 
  2786.     IPersistPropertyBag2 * This);
  2787. void __RPC_STUB IPersistPropertyBag2_InitNew_Stub(
  2788.     IRpcStubBuffer *This,
  2789.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2790.     PRPC_MESSAGE _pRpcMessage,
  2791.     DWORD *_pdwStubPhase);
  2792. HRESULT STDMETHODCALLTYPE IPersistPropertyBag2_Load_Proxy( 
  2793.     IPersistPropertyBag2 * This,
  2794.     /* [in] */ IPropertyBag2 *pPropBag,
  2795.     /* [in] */ IErrorLog *pErrLog);
  2796. void __RPC_STUB IPersistPropertyBag2_Load_Stub(
  2797.     IRpcStubBuffer *This,
  2798.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2799.     PRPC_MESSAGE _pRpcMessage,
  2800.     DWORD *_pdwStubPhase);
  2801. HRESULT STDMETHODCALLTYPE IPersistPropertyBag2_Save_Proxy( 
  2802.     IPersistPropertyBag2 * This,
  2803.     /* [in] */ IPropertyBag2 *pPropBag,
  2804.     /* [in] */ BOOL fClearDirty,
  2805.     /* [in] */ BOOL fSaveAllProperties);
  2806. void __RPC_STUB IPersistPropertyBag2_Save_Stub(
  2807.     IRpcStubBuffer *This,
  2808.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2809.     PRPC_MESSAGE _pRpcMessage,
  2810.     DWORD *_pdwStubPhase);
  2811. HRESULT STDMETHODCALLTYPE IPersistPropertyBag2_IsDirty_Proxy( 
  2812.     IPersistPropertyBag2 * This);
  2813. void __RPC_STUB IPersistPropertyBag2_IsDirty_Stub(
  2814.     IRpcStubBuffer *This,
  2815.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2816.     PRPC_MESSAGE _pRpcMessage,
  2817.     DWORD *_pdwStubPhase);
  2818. #endif  /* __IPersistPropertyBag2_INTERFACE_DEFINED__ */
  2819. #ifndef __IAdviseSinkEx_INTERFACE_DEFINED__
  2820. #define __IAdviseSinkEx_INTERFACE_DEFINED__
  2821. /* interface IAdviseSinkEx */
  2822. /* [uuid][unique][object] */ 
  2823. typedef IAdviseSinkEx *LPADVISESINKEX;
  2824. EXTERN_C const IID IID_IAdviseSinkEx;
  2825. #if defined(__cplusplus) && !defined(CINTERFACE)
  2826.     
  2827.     MIDL_INTERFACE("3AF24290-0C96-11CE-A0CF-00AA00600AB8")
  2828.     IAdviseSinkEx : public IAdviseSink
  2829.     {
  2830.     public:
  2831.         virtual /* [local] */ void STDMETHODCALLTYPE OnViewStatusChange( 
  2832.             /* [in] */ DWORD dwViewStatus) = 0;
  2833.         
  2834.     };
  2835.     
  2836. #else  /* C style interface */
  2837.     typedef struct IAdviseSinkExVtbl
  2838.     {
  2839.         BEGIN_INTERFACE
  2840.         
  2841.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2842.             IAdviseSinkEx * This,
  2843.             /* [in] */ REFIID riid,
  2844.             /* [iid_is][out] */ void **ppvObject);
  2845.         
  2846.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2847.             IAdviseSinkEx * This);
  2848.         
  2849.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2850.             IAdviseSinkEx * This);
  2851.         
  2852.         /* [local] */ void ( STDMETHODCALLTYPE *OnDataChange )( 
  2853.             IAdviseSinkEx * This,
  2854.             /* [unique][in] */ FORMATETC *pFormatetc,
  2855.             /* [unique][in] */ STGMEDIUM *pStgmed);
  2856.         
  2857.         /* [local] */ void ( STDMETHODCALLTYPE *OnViewChange )( 
  2858.             IAdviseSinkEx * This,
  2859.             /* [in] */ DWORD dwAspect,
  2860.             /* [in] */ LONG lindex);
  2861.         
  2862.         /* [local] */ void ( STDMETHODCALLTYPE *OnRename )( 
  2863.             IAdviseSinkEx * This,
  2864.             /* [in] */ IMoniker *pmk);
  2865.         
  2866.         /* [local] */ void ( STDMETHODCALLTYPE *OnSave )( 
  2867.             IAdviseSinkEx * This);
  2868.         
  2869.         /* [local] */ void ( STDMETHODCALLTYPE *OnClose )( 
  2870.             IAdviseSinkEx * This);
  2871.         
  2872.         /* [local] */ void ( STDMETHODCALLTYPE *OnViewStatusChange )( 
  2873.             IAdviseSinkEx * This,
  2874.             /* [in] */ DWORD dwViewStatus);
  2875.         
  2876.         END_INTERFACE
  2877.     } IAdviseSinkExVtbl;
  2878.     interface IAdviseSinkEx
  2879.     {
  2880.         CONST_VTBL struct IAdviseSinkExVtbl *lpVtbl;
  2881.     };
  2882.     
  2883. #ifdef COBJMACROS
  2884. #define IAdviseSinkEx_QueryInterface(This,riid,ppvObject)
  2885.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2886. #define IAdviseSinkEx_AddRef(This)
  2887.     (This)->lpVtbl -> AddRef(This)
  2888. #define IAdviseSinkEx_Release(This)
  2889.     (This)->lpVtbl -> Release(This)
  2890. #define IAdviseSinkEx_OnDataChange(This,pFormatetc,pStgmed)
  2891.     (This)->lpVtbl -> OnDataChange(This,pFormatetc,pStgmed)
  2892. #define IAdviseSinkEx_OnViewChange(This,dwAspect,lindex)
  2893.     (This)->lpVtbl -> OnViewChange(This,dwAspect,lindex)
  2894. #define IAdviseSinkEx_OnRename(This,pmk)
  2895.     (This)->lpVtbl -> OnRename(This,pmk)
  2896. #define IAdviseSinkEx_OnSave(This)
  2897.     (This)->lpVtbl -> OnSave(This)
  2898. #define IAdviseSinkEx_OnClose(This)
  2899.     (This)->lpVtbl -> OnClose(This)
  2900. #define IAdviseSinkEx_OnViewStatusChange(This,dwViewStatus)
  2901.     (This)->lpVtbl -> OnViewStatusChange(This,dwViewStatus)
  2902. #endif /* COBJMACROS */
  2903. #endif  /* C style interface */
  2904. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSinkEx_RemoteOnViewStatusChange_Proxy( 
  2905.     IAdviseSinkEx * This,
  2906.     /* [in] */ DWORD dwViewStatus);
  2907. void __RPC_STUB IAdviseSinkEx_RemoteOnViewStatusChange_Stub(
  2908.     IRpcStubBuffer *This,
  2909.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2910.     PRPC_MESSAGE _pRpcMessage,
  2911.     DWORD *_pdwStubPhase);
  2912. #endif  /* __IAdviseSinkEx_INTERFACE_DEFINED__ */
  2913. #ifndef __IQuickActivate_INTERFACE_DEFINED__
  2914. #define __IQuickActivate_INTERFACE_DEFINED__
  2915. /* interface IQuickActivate */
  2916. /* [uuid][unique][object] */ 
  2917. typedef IQuickActivate *LPQUICKACTIVATE;
  2918. typedef /* [v1_enum] */ 
  2919. enum tagQACONTAINERFLAGS
  2920.     { QACONTAINER_SHOWHATCHING = 0x1,
  2921. QACONTAINER_SHOWGRABHANDLES = 0x2,
  2922. QACONTAINER_USERMODE = 0x4,
  2923. QACONTAINER_DISPLAYASDEFAULT = 0x8,
  2924. QACONTAINER_UIDEAD = 0x10,
  2925. QACONTAINER_AUTOCLIP = 0x20,
  2926. QACONTAINER_MESSAGEREFLECT = 0x40,
  2927. QACONTAINER_SUPPORTSMNEMONICS = 0x80
  2928.     }  QACONTAINERFLAGS;
  2929. typedef /* [public][uuid] */  DECLSPEC_UUID("66504301-BE0F-101A-8BBB-00AA00300CAB") DWORD OLE_COLOR;
  2930. typedef struct tagQACONTAINER
  2931.     {
  2932.     ULONG cbSize;
  2933.     IOleClientSite *pClientSite;
  2934.     IAdviseSinkEx *pAdviseSink;
  2935.     IPropertyNotifySink *pPropertyNotifySink;
  2936.     IUnknown *pUnkEventSink;
  2937.     DWORD dwAmbientFlags;
  2938.     OLE_COLOR colorFore;
  2939.     OLE_COLOR colorBack;
  2940.     IFont *pFont;
  2941.     IOleUndoManager *pUndoMgr;
  2942.     DWORD dwAppearance;
  2943.     LONG lcid;
  2944.     HPALETTE hpal;
  2945.     IBindHost *pBindHost;
  2946.     IOleControlSite *pOleControlSite;
  2947.     IServiceProvider *pServiceProvider;
  2948.     }  QACONTAINER;
  2949. typedef struct tagQACONTROL
  2950.     {
  2951.     ULONG cbSize;
  2952.     DWORD dwMiscStatus;
  2953.     DWORD dwViewStatus;
  2954.     DWORD dwEventCookie;
  2955.     DWORD dwPropNotifyCookie;
  2956.     DWORD dwPointerActivationPolicy;
  2957.     }  QACONTROL;
  2958. EXTERN_C const IID IID_IQuickActivate;
  2959. #if defined(__cplusplus) && !defined(CINTERFACE)
  2960.     
  2961.     MIDL_INTERFACE("CF51ED10-62FE-11CF-BF86-00A0C9034836")
  2962.     IQuickActivate : public IUnknown
  2963.     {
  2964.     public:
  2965.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE QuickActivate( 
  2966.             /* [in] */ QACONTAINER *pQaContainer,
  2967.             /* [out][in] */ QACONTROL *pQaControl) = 0;
  2968.         
  2969.         virtual HRESULT STDMETHODCALLTYPE SetContentExtent( 
  2970.             /* [in] */ LPSIZEL pSizel) = 0;
  2971.         
  2972.         virtual HRESULT STDMETHODCALLTYPE GetContentExtent( 
  2973.             /* [out] */ LPSIZEL pSizel) = 0;
  2974.         
  2975.     };
  2976.     
  2977. #else  /* C style interface */
  2978.     typedef struct IQuickActivateVtbl
  2979.     {
  2980.         BEGIN_INTERFACE
  2981.         
  2982.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2983.             IQuickActivate * This,
  2984.             /* [in] */ REFIID riid,
  2985.             /* [iid_is][out] */ void **ppvObject);
  2986.         
  2987.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2988.             IQuickActivate * This);
  2989.         
  2990.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2991.             IQuickActivate * This);
  2992.         
  2993.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *QuickActivate )( 
  2994.             IQuickActivate * This,
  2995.             /* [in] */ QACONTAINER *pQaContainer,
  2996.             /* [out][in] */ QACONTROL *pQaControl);
  2997.         
  2998.         HRESULT ( STDMETHODCALLTYPE *SetContentExtent )( 
  2999.             IQuickActivate * This,
  3000.             /* [in] */ LPSIZEL pSizel);
  3001.         
  3002.         HRESULT ( STDMETHODCALLTYPE *GetContentExtent )( 
  3003.             IQuickActivate * This,
  3004.             /* [out] */ LPSIZEL pSizel);
  3005.         
  3006.         END_INTERFACE
  3007.     } IQuickActivateVtbl;
  3008.     interface IQuickActivate
  3009.     {
  3010.         CONST_VTBL struct IQuickActivateVtbl *lpVtbl;
  3011.     };
  3012.     
  3013. #ifdef COBJMACROS
  3014. #define IQuickActivate_QueryInterface(This,riid,ppvObject)
  3015.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  3016. #define IQuickActivate_AddRef(This)
  3017.     (This)->lpVtbl -> AddRef(This)
  3018. #define IQuickActivate_Release(This)
  3019.     (This)->lpVtbl -> Release(This)
  3020. #define IQuickActivate_QuickActivate(This,pQaContainer,pQaControl)
  3021.     (This)->lpVtbl -> QuickActivate(This,pQaContainer,pQaControl)
  3022. #define IQuickActivate_SetContentExtent(This,pSizel)
  3023.     (This)->lpVtbl -> SetContentExtent(This,pSizel)
  3024. #define IQuickActivate_GetContentExtent(This,pSizel)
  3025.     (This)->lpVtbl -> GetContentExtent(This,pSizel)
  3026. #endif /* COBJMACROS */
  3027. #endif  /* C style interface */
  3028. /* [call_as] */ HRESULT STDMETHODCALLTYPE IQuickActivate_RemoteQuickActivate_Proxy( 
  3029.     IQuickActivate * This,
  3030.     /* [in] */ QACONTAINER *pQaContainer,
  3031.     /* [out] */ QACONTROL *pQaControl);
  3032. void __RPC_STUB IQuickActivate_RemoteQuickActivate_Stub(
  3033.     IRpcStubBuffer *This,
  3034.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3035.     PRPC_MESSAGE _pRpcMessage,
  3036.     DWORD *_pdwStubPhase);
  3037. HRESULT STDMETHODCALLTYPE IQuickActivate_SetContentExtent_Proxy( 
  3038.     IQuickActivate * This,
  3039.     /* [in] */ LPSIZEL pSizel);
  3040. void __RPC_STUB IQuickActivate_SetContentExtent_Stub(
  3041.     IRpcStubBuffer *This,
  3042.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3043.     PRPC_MESSAGE _pRpcMessage,
  3044.     DWORD *_pdwStubPhase);
  3045. HRESULT STDMETHODCALLTYPE IQuickActivate_GetContentExtent_Proxy( 
  3046.     IQuickActivate * This,
  3047.     /* [out] */ LPSIZEL pSizel);
  3048. void __RPC_STUB IQuickActivate_GetContentExtent_Stub(
  3049.     IRpcStubBuffer *This,
  3050.     IRpcChannelBuffer *_pRpcChannelBuffer,
  3051.     PRPC_MESSAGE _pRpcMessage,
  3052.     DWORD *_pdwStubPhase);
  3053. #endif  /* __IQuickActivate_INTERFACE_DEFINED__ */
  3054. /* Additional Prototypes for ALL interfaces */
  3055. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
  3056. unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
  3057. unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
  3058. void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 
  3059. unsigned long             __RPC_USER  CLIPFORMAT_UserSize(     unsigned long *, unsigned long            , CLIPFORMAT * ); 
  3060. unsigned char * __RPC_USER  CLIPFORMAT_UserMarshal(  unsigned long *, unsigned char *, CLIPFORMAT * ); 
  3061. unsigned char * __RPC_USER  CLIPFORMAT_UserUnmarshal(unsigned long *, unsigned char *, CLIPFORMAT * ); 
  3062. void                      __RPC_USER  CLIPFORMAT_UserFree(     unsigned long *, CLIPFORMAT * ); 
  3063. unsigned long             __RPC_USER  HACCEL_UserSize(     unsigned long *, unsigned long            , HACCEL * ); 
  3064. unsigned char * __RPC_USER  HACCEL_UserMarshal(  unsigned long *, unsigned char *, HACCEL * ); 
  3065. unsigned char * __RPC_USER  HACCEL_UserUnmarshal(unsigned long *, unsigned char *, HACCEL * ); 
  3066. void                      __RPC_USER  HACCEL_UserFree(     unsigned long *, HACCEL * ); 
  3067. unsigned long             __RPC_USER  HDC_UserSize(     unsigned long *, unsigned long            , HDC * ); 
  3068. unsigned char * __RPC_USER  HDC_UserMarshal(  unsigned long *, unsigned char *, HDC * ); 
  3069. unsigned char * __RPC_USER  HDC_UserUnmarshal(unsigned long *, unsigned char *, HDC * ); 
  3070. void                      __RPC_USER  HDC_UserFree(     unsigned long *, HDC * ); 
  3071. unsigned long             __RPC_USER  HFONT_UserSize(     unsigned long *, unsigned long            , HFONT * ); 
  3072. unsigned char * __RPC_USER  HFONT_UserMarshal(  unsigned long *, unsigned char *, HFONT * ); 
  3073. unsigned char * __RPC_USER  HFONT_UserUnmarshal(unsigned long *, unsigned char *, HFONT * ); 
  3074. void                      __RPC_USER  HFONT_UserFree(     unsigned long *, HFONT * ); 
  3075. unsigned long             __RPC_USER  HPALETTE_UserSize(     unsigned long *, unsigned long            , HPALETTE * ); 
  3076. unsigned char * __RPC_USER  HPALETTE_UserMarshal(  unsigned long *, unsigned char *, HPALETTE * ); 
  3077. unsigned char * __RPC_USER  HPALETTE_UserUnmarshal(unsigned long *, unsigned char *, HPALETTE * ); 
  3078. void                      __RPC_USER  HPALETTE_UserFree(     unsigned long *, HPALETTE * ); 
  3079. unsigned long             __RPC_USER  HWND_UserSize(     unsigned long *, unsigned long            , HWND * ); 
  3080. unsigned char * __RPC_USER  HWND_UserMarshal(  unsigned long *, unsigned char *, HWND * ); 
  3081. unsigned char * __RPC_USER  HWND_UserUnmarshal(unsigned long *, unsigned char *, HWND * ); 
  3082. void                      __RPC_USER  HWND_UserFree(     unsigned long *, HWND * ); 
  3083. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long *, unsigned long            , VARIANT * ); 
  3084. unsigned char * __RPC_USER  VARIANT_UserMarshal(  unsigned long *, unsigned char *, VARIANT * ); 
  3085. unsigned char * __RPC_USER  VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * ); 
  3086. void                      __RPC_USER  VARIANT_UserFree(     unsigned long *, VARIANT * ); 
  3087. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumConnections_Next_Proxy( 
  3088.     IEnumConnections * This,
  3089.     /* [in] */ ULONG cConnections,
  3090.     /* [length_is][size_is][out] */ LPCONNECTDATA rgcd,
  3091.     /* [out] */ ULONG *pcFetched);
  3092. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumConnections_Next_Stub( 
  3093.     IEnumConnections * This,
  3094.     /* [in] */ ULONG cConnections,
  3095.     /* [length_is][size_is][out] */ LPCONNECTDATA rgcd,
  3096.     /* [out] */ ULONG *pcFetched);
  3097. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumConnectionPoints_Next_Proxy( 
  3098.     IEnumConnectionPoints * This,
  3099.     /* [in] */ ULONG cConnections,
  3100.     /* [length_is][size_is][out] */ LPCONNECTIONPOINT *ppCP,
  3101.     /* [out] */ ULONG *pcFetched);
  3102. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumConnectionPoints_Next_Stub( 
  3103.     IEnumConnectionPoints * This,
  3104.     /* [in] */ ULONG cConnections,
  3105.     /* [length_is][size_is][out] */ LPCONNECTIONPOINT *ppCP,
  3106.     /* [out] */ ULONG *pcFetched);
  3107. /* [local] */ HRESULT STDMETHODCALLTYPE IClassFactory2_CreateInstanceLic_Proxy( 
  3108.     IClassFactory2 * This,
  3109.     /* [in] */ IUnknown *pUnkOuter,
  3110.     /* [in] */ IUnknown *pUnkReserved,
  3111.     /* [in] */ REFIID riid,
  3112.     /* [in] */ BSTR bstrKey,
  3113.     /* [iid_is][out] */ PVOID *ppvObj);
  3114. /* [call_as] */ HRESULT STDMETHODCALLTYPE IClassFactory2_CreateInstanceLic_Stub( 
  3115.     IClassFactory2 * This,
  3116.     /* [in] */ REFIID riid,
  3117.     /* [in] */ BSTR bstrKey,
  3118.     /* [iid_is][out] */ IUnknown **ppvObj);
  3119. /* [local] */ HRESULT STDMETHODCALLTYPE IPersistMemory_Load_Proxy( 
  3120.     IPersistMemory * This,
  3121.     /* [size_is][in] */ LPVOID pMem,
  3122.     /* [in] */ ULONG cbSize);
  3123. /* [call_as] */ HRESULT STDMETHODCALLTYPE IPersistMemory_Load_Stub( 
  3124.     IPersistMemory * This,
  3125.     /* [size_is][in] */ BYTE *pMem,
  3126.     /* [in] */ ULONG cbSize);
  3127. /* [local] */ HRESULT STDMETHODCALLTYPE IPersistMemory_Save_Proxy( 
  3128.     IPersistMemory * This,
  3129.     /* [size_is][out] */ LPVOID pMem,
  3130.     /* [in] */ BOOL fClearDirty,
  3131.     /* [in] */ ULONG cbSize);
  3132. /* [call_as] */ HRESULT STDMETHODCALLTYPE IPersistMemory_Save_Stub( 
  3133.     IPersistMemory * This,
  3134.     /* [size_is][out] */ BYTE *pMem,
  3135.     /* [in] */ BOOL fClearDirty,
  3136.     /* [in] */ ULONG cbSize);
  3137. /* [local] */ HRESULT STDMETHODCALLTYPE IEnumOleUndoUnits_Next_Proxy( 
  3138.     IEnumOleUndoUnits * This,
  3139.     /* [in] */ ULONG cElt,
  3140.     /* [length_is][size_is][out] */ IOleUndoUnit **rgElt,
  3141.     /* [out] */ ULONG *pcEltFetched);
  3142. /* [call_as] */ HRESULT STDMETHODCALLTYPE IEnumOleUndoUnits_Next_Stub( 
  3143.     IEnumOleUndoUnits * This,
  3144.     /* [in] */ ULONG cElt,
  3145.     /* [length_is][size_is][out] */ IOleUndoUnit **rgElt,
  3146.     /* [out] */ ULONG *pcEltFetched);
  3147. /* [local] */ void STDMETHODCALLTYPE IAdviseSinkEx_OnViewStatusChange_Proxy( 
  3148.     IAdviseSinkEx * This,
  3149.     /* [in] */ DWORD dwViewStatus);
  3150. /* [call_as] */ HRESULT STDMETHODCALLTYPE IAdviseSinkEx_OnViewStatusChange_Stub( 
  3151.     IAdviseSinkEx * This,
  3152.     /* [in] */ DWORD dwViewStatus);
  3153. /* [local] */ HRESULT STDMETHODCALLTYPE IQuickActivate_QuickActivate_Proxy( 
  3154.     IQuickActivate * This,
  3155.     /* [in] */ QACONTAINER *pQaContainer,
  3156.     /* [out][in] */ QACONTROL *pQaControl);
  3157. /* [call_as] */ HRESULT STDMETHODCALLTYPE IQuickActivate_QuickActivate_Stub( 
  3158.     IQuickActivate * This,
  3159.     /* [in] */ QACONTAINER *pQaContainer,
  3160.     /* [out] */ QACONTROL *pQaControl);
  3161. /* end of Additional Prototypes */
  3162. #ifdef __cplusplus
  3163. }
  3164. #endif
  3165. #endif