MIMEContentAgent.h
上传用户:weimei12
上传日期:2022-08-11
资源大小:185k
文件大小:2k
源码类别:

Email客户端

开发平台:

Visual C++

  1. #pragma once
  2. /********************************************************************
  3. created: 2008:10:30   14:56
  4. author: 李欣
  5. filename: c:MyProjectSimpleMailSimpleMailMIMEContentAgent.h
  6. classname:  CMIMEContentAgent
  7. purpose: the base class.Its subclass process a certain mime type.
  8. *********************************************************************/
  9. class CMIMEContentAgent  
  10. {
  11. public:
  12. CMIMEContentAgent(int nMIMEType);
  13. virtual ~CMIMEContentAgent();
  14. ///<summary>
  15. ///   Query the type of the object
  16. ///</summary>
  17. BOOL QueryType(int nContentType);
  18. ///<summary>
  19. ///   append it to the body
  20. ///</summary>
  21. ///<param name = szContent>
  22. ///   the content of this part
  23. ///</param>
  24. ///<param name = szParameters>
  25. ///   parameters needed by some mime types
  26. ///</param>
  27. ///<param name = nEncoding>
  28. ///   the encoding type
  29. ///</param>
  30. ///<param name = bPath>
  31. ///   whether szContent is a path
  32. ///</param>
  33. ///<param name = strDestination>
  34. ///   the result string
  35. ///</param>
  36. virtual BOOL AppendPart(IN LPCTSTR szContent,
  37. IN LPCTSTR szParameters, 
  38. IN const int nEncoding, 
  39. IN const BOOL bPath, 
  40. OUT CString& strDestination) = 0;
  41. ///<summary>
  42. ///   Get the content type sting
  43. ///</summary>
  44. virtual CString GetContentTypeString() = 0;
  45. protected:
  46. ///<summary>
  47. ///   construct the sub-part header
  48. ///</summary>
  49. ///<param name = szContent>
  50. ///   the content of this part
  51. ///</param>
  52. ///<param name = szParameters>
  53. ///   parameters needed by some mime types
  54. ///</param>
  55. ///<param name = nEncoding>
  56. ///   the encoding type
  57. ///</param>
  58. ///<param name = bPath>
  59. ///   whether szContent is a path
  60. ///</param>
  61. /// <returns>
  62. ///    the result string
  63. /// </returns>
  64. virtual CString BuildSubHeader(IN LPCTSTR szContent,
  65.    IN LPCTSTR szParameters,
  66.    IN const int nEncoding,
  67.    IN const BOOL bPath) = 0;
  68. private:
  69. ///<summary>
  70. ///   the type of the object
  71. ///</summary>
  72. int m_nMIMEType;
  73. };