MailMessage.h
上传用户:xmpantheon
上传日期:2016-10-20
资源大小:7502k
文件大小:2k
源码类别:

Email服务器

开发平台:

Visual C++

  1. // MailMessage.h: interface for the CMailMessage class.
  2. // Copyright (c) 1998, Wes Clyburn
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_MAILMESSAGE_H__55DE48CC_BEA4_11D1_870E_444553540000__INCLUDED_)
  5. #define AFX_MAILMESSAGE_H__55DE48CC_BEA4_11D1_870E_444553540000__INCLUDED_
  6. #if _MSC_VER >= 1000
  7. #pragma once
  8. #endif // _MSC_VER >= 1000
  9. #include <afxtempl.h>
  10. // CMailMessage
  11. // Formats a message compliant with RFC 822.
  12. //
  13. class CMailMessage  
  14. {
  15. public:
  16. CMailMessage();
  17. virtual ~CMailMessage();
  18. void FormatMessage();
  19. int GetNumRecipients();
  20. BOOL GetRecipient( CString& sEmailAddress, CString& sFriendlyName, int nIndex = 0 );
  21. BOOL AddRecipient( LPCTSTR szEmailAddress, LPCTSTR szFriendlyName = "" );
  22. BOOL AddMultipleRecipients( LPCTSTR szRecipients = NULL );
  23. UINT GetCharsPerLine();
  24. void SetCharsPerLine( UINT nCharsPerLine );
  25. CString m_sFrom;
  26. CString m_sSubject;
  27. CString m_sEnvelope;
  28. CString m_sMailerName;
  29. CString m_sHeader;
  30. CTime m_tDateTime;
  31. CString m_sBody;
  32. private:
  33. UINT m_nCharsPerLine;
  34. class CRecipient
  35. {
  36. public:
  37. CString m_sEmailAddress;
  38. CString m_sFriendlyName;
  39. };
  40. CArray <CRecipient, CRecipient&> m_Recipients;
  41. protected:
  42. // When overriding prepare_header(), call base class 
  43. // version first, then add specialized 
  44. // add_header_line calls.
  45. // This ensures that the base class has a chance to
  46. // create the header lines it needs.
  47. virtual void prepare_header();
  48. virtual void prepare_body();
  49. virtual void end_header();
  50. virtual void start_header();
  51. // This rarely needs overwriting, but is virtual just in case.
  52. // Do not include the trailing CR/LF in parameter.
  53. virtual void add_header_line( LPCTSTR szHeaderLine );
  54. };
  55. #endif // !defined(AFX_MAILMESSAGE_H__55DE48CC_BEA4_11D1_870E_444553540000__INCLUDED_)