Exemple #1
0
        /// <summary>
        /// 当邮件发送完毕后,使用该函数提示用户
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnSendCompleted(object sender, AsyncCompletedEventArgs e)
        {
            //if (e.Cancelled)
            //{

            //}
            //if (e.Error != null)
            //{
            //    var msg = "邮件主题为【" + this._mMsg.Subject + "】发送失败!\r\n失败原因:" + e.Error.Message;
            //    MessageBox.Show(msg);
            //}
            //else
            //{
            var isOk = MessageToMf.SaveSendMailToMf(_vault, this._mMsg, MailCore.MF.MessageToMf.GetFolderIdByName(_vault, "发件箱"));

            if (isOk)
            {
                MessageBox.Show("邮件主题为【" + this._mMsg.Subject + "】发送成功,写入DBWorld成功!");
                Application.Exit();
            }
            else
            {
                MessageBox.Show("邮件主题为【" + this._mMsg.Subject + "】发送成功,写入DBWorld失败!");
            }
            //}
        }
Exemple #2
0
        /// <summary>
        /// 保存邮件草稿
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void lnkblSave_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            //判断库对象、邮件配置对象、邮箱对象
            if (_vault == null || _config == null || editor == null)
            {
                return;
            }

            try
            {
                _mMsg = new MailMessage();
                var consignee = CheckMails(txtboxReceiver.Text); //收件地址转换
                var copySend  = CheckMails(txtboxCC.Text);       //抄送地址转换

                _mMsg.Subject = txtboxSubject.Text.Trim();       //标题

                _mMsg.From = new MailAddress(_config.Email, _config.UserName);

                //收件地址集
                foreach (var item in consignee)
                {
                    _mMsg.To.Add(new MailAddress(CheckContacts(item)));
                }

                //抄送地址集
                foreach (var item in copySend)
                {
                    _mMsg.CC.Add(CheckContacts(item));
                }

                //附件集
                foreach (var attachment in GetAttachments())
                {
                    _mMsg.Attachments.Add(attachment);
                }

                _mMsg.Body = editor.GetBodyText();

                if (_actionType == MailInfo.MAILTYPE_DARFT) //如果是草稿箱模式则更改原文件
                {
                    //增加邮件唯一标识
                    _mMsg.Headers.Add("MessageId", _guidDraft);
                }
                else //否则重新建一个草稿
                {
                    //增加邮件唯一标识
                    _mMsg.Headers.Add("MessageId", System.Guid.NewGuid().ToString());
                }

                var isOk = MessageToMf.SaveSendMailToMf(_vault, _mMsg, MailCore.MF.MessageToMf.GetFolderIdByName(_vault, "草稿箱")); ////写入MFils 文件夹ID3 草稿箱
                if (isOk)
                {
                    MessageBox.Show("草稿保存成功!");
                }
                else
                {
                    MessageBox.Show("草稿保存失败!");
                }
            }
            catch (Exception)
            {
                MessageBox.Show("草稿保存失败!");
            }
        }