private LumiSoftSendMailBaseArgs OnSendMailing(string strEmailAccout, string strEmailAddress, string strTo, string strCC, string strBCC, Mime myMimeObjects, MemoryStream myMimeStreams) { LumiSoftSendMailBaseArgs e = new LumiSoftSendMailBaseArgs(strEmailAccout, strEmailAddress, strTo, strCC, strBCC, myMimeObjects, myMimeStreams); if (SendMailing != null) { SendMailing(e); } return(e); }
/// <summary> /// 发送邮件 /// </summary> public void SendMail() { //为发件构造邮件内存流 MemoryStream mimeStreams = this.MemoryStreamMime(); Mime myMime = this.MakeMime(); try { using (SMTP_Client smtp = new SMTP_Client()) { LumiSoftSendMailBaseArgs e = OnSendMailing(this.Account, this.CurrentUserMail, this.To, this.CC, this.BCC, myMime, mimeStreams); if (!e.IsCancel) { //To: string[] _ArrayTo = this.To.Split(';'); foreach (string _str_each_to in _ArrayTo) { if (_str_each_to.Trim() != "") { this.SendMail(smtp, _str_each_to, mimeStreams); } } //CC: string[] _ArrayCC = this.CC.Split(';'); foreach (string _str_each_cc in _ArrayCC) { if (_str_each_cc.Trim() != "") { this.SendMail(smtp, _str_each_cc, mimeStreams); } } //BCC: string[] _ArrayBCC = this.BCC.Split(';'); foreach (string _str_each_bcc in _ArrayBCC) { if (_str_each_bcc.Trim() != "") { this.SendMail(smtp, _str_each_bcc, mimeStreams); } } OnSendMailSuccessed(this.Account, this.CurrentUserMail, this.To, this.CC, this.BCC, myMime, mimeStreams); } } } catch (Exception ex) { OnSendMailError(this.Account, this.CurrentUserMail, this.To, this.CC, this.BCC, myMime, mimeStreams, ex); } }