Пример #1
0
        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);
        }
Пример #2
0
        /// <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);
            }
        }