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

Email客户端

开发平台:

Visual C++

  1. #include "StdAfx.h"
  2. #include "SimpleMail.h"
  3. #include "MailMessage.h"
  4. #include "SmtpSendManger.h"
  5. #include "Pop3Message.h"
  6. #include "MailSaveMngr.h"
  7. #include "RecvProgressDlg.h"
  8. #include "PopReceiveManager.h"
  9. #include "MailManager.h"
  10. CMailManager::CMailManager(void)
  11. {
  12. }
  13. CMailManager::~CMailManager(void)
  14. {
  15. }
  16. ///<summary>
  17. ///   send a mail
  18. ///</summary>
  19. HRESULT CMailManager::SendMailMessage(const CString& strRcs, 
  20.   const CString& strCCRcs, 
  21.   const CString& strBCCRcs,
  22.   const CString& strSubject, 
  23.   const CString& strContent,
  24.   const CStringArray& strAttachFiles)
  25. {
  26. if (m_cSendMngr.SendMailMessage(strRcs, strCCRcs, 
  27. strBCCRcs, strSubject, 
  28. strContent, strAttachFiles) != HRESULT_SUCCESS)
  29. {
  30. return HRESULT_FAIL;
  31. }
  32. return HRESULT_SUCCESS;
  33. }
  34. ///<summary>
  35. ///   receive the mails
  36. ///</summary>
  37. HRESULT CMailManager::RecMail(CRecvProgressDlg* pProgressDlg, CArray<MAILPOS>& arrPos, CArray<UINT>& arrSize)
  38. {
  39. if (m_cReceiveMngr.RecMail(&m_cSaveMngr, pProgressDlg, arrPos, arrSize) != HRESULT_SUCCESS)
  40. {
  41. return HRESULT_FAIL;
  42. }
  43. return HRESULT_SUCCESS;
  44. }
  45. ///<summary>
  46. ///   delete the specified mail
  47. ///</summary>
  48. HRESULT CMailManager::DelMail(const CArray<UINT>& arrIndex)
  49. {
  50. if (m_cReceiveMngr.DelMail(arrIndex) != HRESULT_SUCCESS)
  51. {
  52. return HRESULT_FAIL;
  53. }
  54. return HRESULT_SUCCESS;
  55. }
  56. ///<summary>
  57. ///   get the user name
  58. ///</summary>
  59. CString CMailManager::GetUserName()
  60. {
  61. return m_strUserName;
  62. }
  63. ///<summary>
  64. ///   set the user name
  65. ///</summary>
  66. void CMailManager::SetUserName(const CString& strUserName)
  67. {
  68. m_strUserName = strUserName;
  69. m_cSendMngr.SetUserName(strUserName);
  70. m_cReceiveMngr.SetUserName(strUserName);
  71. }
  72. ///<summary>
  73. ///   get the password
  74. ///</summary>
  75. CString CMailManager::GetPassword()
  76. {
  77. return m_strPassword;
  78. }
  79. ///<summary>
  80. ///   set the password
  81. ///</summary>
  82. void CMailManager::SetPassword(const CString& strPassword)
  83. {
  84. m_strPassword = strPassword;
  85. m_cSendMngr.SetPassword(strPassword);
  86. m_cReceiveMngr.SetPassword(strPassword);
  87. }
  88. ///<summary>
  89. ///   get the smtp server address
  90. ///</summary>
  91. CString CMailManager::GetSmtpServer()
  92. {
  93. return m_strSmtpServer;
  94. }
  95. ///<summary>
  96. ///   set the smtp server address
  97. ///</summary>
  98. void CMailManager::SetSmtpServer(const CString& strSmtpServer)
  99. {
  100. m_strSmtpServer = strSmtpServer;
  101. m_cSendMngr.SetSmtpServer(strSmtpServer);
  102. }
  103. ///<summary>
  104. ///   get the pop3 server address
  105. ///</summary>
  106. CString CMailManager::GetPopServer()
  107. {
  108. return m_strPopServer;
  109. }
  110. ///<summary>
  111. ///   set the pop3 server address
  112. ///</summary>
  113. void CMailManager::SetPopServer(const CString& strPopServer)
  114. {
  115. m_strPopServer = strPopServer;
  116. m_cReceiveMngr.SetPopServer(strPopServer);
  117. }
  118. ///<summary>
  119. ///   get the sender address
  120. ///</summary>
  121. CString CMailManager::GetSendMail()
  122. {
  123. return m_strSendMail;
  124. }
  125. ///<summary>
  126. ///   set the sender address
  127. ///</summary>
  128. void CMailManager::SetSendMail(const CString& strSendMail)
  129. {
  130. m_strSendMail = strSendMail;
  131. m_cSendMngr.SetSendMail(strSendMail);
  132. }
  133. ///<summary>
  134. ///   get the setting whether to validate the identity
  135. ///</summary>
  136. BOOL CMailManager::GetValidate()
  137. {
  138. return m_bValidate;
  139. }
  140. ///<summary>
  141. ///   set whether to validate the identity
  142. ///</summary>
  143. void CMailManager::SetValidate(IN BOOL bValidate)
  144. {
  145. m_bValidate = bValidate;
  146. m_cSendMngr.SetValidate(bValidate);
  147. }
  148. ///<summary>
  149. ///   get the manager for saving mails
  150. ///</summary>
  151. CMailSaveMngr* CMailManager::GetSaveMngr()
  152. {
  153. return &m_cSaveMngr;
  154. }