C# 利用SMTP异步发送邮件
2014-07-17 15:09
489 查看
C#实现收发邮件功能需要用到两个命名空间 System.Net; 和 System.Net.Mail;
由于采用异步发送邮件,需要添加一个异步完成时响应事件 client_SendCompleted
SmtpClient client = new SmtpClient("smtp.gmail.com", 587); //发件服务器地址 client.UseDefaultCredentials = false; client.DeliveryMethod = SmtpDeliveryMethod.Network; client.Credentials = new NetworkCredential("admin@meyer-mzq.com", "******"); client.EnableSsl = true; client.Timeout = 15000; client.SendCompleted += new SendCompletedEventHandler(client_SendCompleted); //异步发送邮件完成响应事件 MailMessage mmsg = new MailMessage(); mmsg.From = new MailAddress("admin@meyer-mzq.com"); //发件人邮箱地址 mmsg.To.Add("admin@meyer-mzq.com"); //收件人邮箱地址 mmsg.Subject = "最新订单数据"; //邮件主题 mmsg.SubjectEncoding = Encoding.UTF8; //主题编码 mmsg.Body = msg; //邮件正文 mmsg.IsBodyHtml = true; //设置为HTML格式 mmsg.BodyEncoding = Encoding.UTF8; //正文编码 mmsg.Priority = MailPriority.High; //优先级 mmsg.Attachments.Add(new Attachment(file));//增加附件 try { client.SendAsync(mmsg, ""); //异步发送邮件 } catch (Exception ex) { MessageBox.Show(ex.Message); }
由于采用异步发送邮件,需要添加一个异步完成时响应事件 client_SendCompleted
private void client_SendCompleted(object sender, AsyncCompletedEventArgs e) { if (e.Error != null) { MessageBox.Show("邮件发送失败,详情:" + e.Error.Message); } else { MessageBox.Show("邮件发送成功!"); } }
相关文章推荐
- C#利用SMTP服务器发送邮件
- C#利用smtp服务器发送邮件简介
- 关于C#如何利用QQ邮箱SMTP发送邮件
- 利用SmtpClient异步地发送邮件
- 利用SMTP发送邮件(C#)
- C#利用smtp服务器发送邮件
- C#中利用SMTP邮件服务器发送邮件
- 利用委托异步发送邮件
- 利用smtp.163.com 发送邮件(本地无需服务器)
- 在做mes系统时,利用D7 IdMessage&IdSMTP发送邮件,从盒子上学习了不少的东西,自己整理了一下,想share给新手,学习参考!
- 利用Oracle的utl_smtp 发送邮件(公网邮件和服务器)
- c#利用jmail发送邮件
- .net 利用ssl加密,密码验证smtp发送邮件
- .NET C# 异步发送 要求回执 嵌入图片资源 自定义邮件头 失败通知 html/文本双视图 支持 notes 的邮件
- *使用C# 创建邮件发送组件(SMTP)
- net利用SMTP发邮件,配置文件(web.config)实现邮件发送的相关配置
- 利用smtp.163.com 发送邮件(本地无需服务器)
- 用c#写的smtp邮件发送类
- C#实现简单的SmtpClient发送邮件
- PHPMailer邮件类利用smtp.163.com发送邮件方法