DXFEROBJ.H
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:2k
源码类别:

Windows编程

开发平台:

Visual C++

  1. //**********************************************************************
  2. // File name: dxferobj.h
  3. //
  4. //      Definition of CDataXferObj
  5. //
  6. // Copyright (c) 1993-1997 Microsoft Corporation. All rights reserved.
  7. //**********************************************************************
  8. #if !defined( _DATAXFEROBJ_H_)
  9. #define _DATAXFEROBJ_H_
  10. class CSimpleSite;
  11. interface CDataObject;
  12. class CDataXferObj : public IDataObject
  13. {
  14. private:
  15. int m_nCount;                       // reference count
  16. SIZEL m_sizel;
  17. POINTL m_pointl;
  18. LPSTORAGE m_lpObjStorage;
  19. LPOLEOBJECT m_lpOleObject;
  20. // construction/destruction
  21. CDataXferObj();
  22. ~CDataXferObj();
  23. public:
  24. STDMETHODIMP QueryInterface (REFIID riid, LPVOID FAR* ppvObj);
  25. STDMETHODIMP_(ULONG) AddRef ();
  26. STDMETHODIMP_(ULONG) Release ();
  27. STDMETHODIMP DAdvise  ( FORMATETC FAR* pFormatetc, DWORD advf,
  28. LPADVISESINK pAdvSink, DWORD FAR* pdwConnection)
  29. { return ResultFromScode(OLE_E_ADVISENOTSUPPORTED); }
  30. STDMETHODIMP DUnadvise  ( DWORD dwConnection)
  31. { return ResultFromScode(OLE_E_ADVISENOTSUPPORTED); }
  32. STDMETHODIMP EnumDAdvise  ( LPENUMSTATDATA FAR* ppenumAdvise)
  33. { return ResultFromScode(OLE_E_ADVISENOTSUPPORTED); }
  34. STDMETHODIMP EnumFormatEtc  ( DWORD dwDirection,
  35. LPENUMFORMATETC FAR* ppenumFormatEtc);
  36. STDMETHODIMP GetCanonicalFormatEtc  ( LPFORMATETC pformatetc,
  37. LPFORMATETC pformatetcOut)
  38. { pformatetcOut->ptd = NULL; return ResultFromScode(E_NOTIMPL); }
  39. STDMETHODIMP GetData  (LPFORMATETC pformatetcIn, LPSTGMEDIUM pmedium );
  40. STDMETHODIMP GetDataHere  (LPFORMATETC pformatetc, LPSTGMEDIUM pmedium);
  41. STDMETHODIMP QueryGetData  (LPFORMATETC pformatetc );
  42. STDMETHODIMP SetData  (LPFORMATETC pformatetc, STGMEDIUM FAR * pmedium,
  43. BOOL fRelease)
  44. { return ResultFromScode(E_NOTIMPL); }
  45. static CDataXferObj FAR* Create(CSimpleSite FAR* lpSite,
  46. POINTL FAR* pPointl);
  47. };
  48. #endif  // _DATAXFEROBJ_H_