一、准备工作
1.要想编写一个发送邮件的小工具,首先得了解以下内容:
2.其次是准备好一个邮箱,我们得对邮箱做一些设置。
本次使用163邮箱来距离,因为用到了smtp协议,所以得保证这个邮箱的smtp服务是开启的。具体操作从以下文档得到http://help.163.com/09/1223/14/5R7P6CJ600753VB8.html。
3.除此之外,我们还需开通一个客户端授权密码:
到此我们的准备工作告一段落。
二、编写代码
1.初始化一个邮件类并进行相应赋值
1 /// <summary> 2 /// 邮件信息 3 /// </summary> 4 /// <returns></returns> 5 private System.Net.Mail.MailMessage MailInfo() 6 { 7 System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(); 8 //收件人 9 message.To.Add("xxxxxx@qq.com"); 10 //抄送 11 message.CC.Add("xxxxxxx@qq.com"); 12 //密件抄送 13 message.Bcc.Add("xxxxxxxx@qq.com"); 14 message.Subject = "邮件主题"; 15 message.Body = "这里是邮件正文"; 16 message.BodyEncoding = Encoding.UTF8; 17 message.Attachments.Add(new System.Net.Mail.Attachment("附件.txt")); 18 //优先级 19 message.Priority = System.Net.Mail.MailPriority.High; 20 //发件人 21 message.Sender = new System.Net.Mail.MailAddress("xxxxxxxx@qq.com"); 22 return message; 23 }
2.发送邮件
1 /// <summary> 2 /// 发送邮件 3 /// </summary> 4 private void SmtpSend() 5 { 6 System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient(); 7 client.Host = "smtp.163.com"; 8 client.Port = 25; 9 client.Credentials = new System.Net.NetworkCredential("xxxxxxxx@qq.com", "password"); 10 client.EnableSsl = true; 11 client.DeliveryFormat = System.Net.Mail.SmtpDeliveryFormat.SevenBit; 12 client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; 13 client.Send(MailInfo()); 14 }
三、半成品运行截图