c#调用qq邮箱smtp发送邮件(修正版)

发布时间:2020-08-30编辑:脚本学堂
分享一例c#使用QQ邮箱的smtp服务发送邮件的例子,对网上的方法做了修改,修正了一切错误,特此分享下,有需要的朋友作个参考。

本节内容:
c#调用qq邮箱发送邮件的方法。

完整代码:
 

复制代码 代码示例:
try
{
   MailMessage mm = new MailMessage();
   MailAddress Fromma = new MailAddress("xxxx@qq.com");
   MailAddress Toma = new MailAddress("MMMMMMM@qq.com", null);
   mm.From = Fromma;
   //收件人
   mm.To.Add("MMMMMM@qq.com");
   //邮箱标题
   mm.Subject = "Hello Dear:";
   mm.IsBodyHtml = true;
   //邮件内容
   mm.Body = "你好Mr流星!";
   //内容的编码格式
   mm.BodyEncoding = System.Text.Encoding.UTF8;
   //mm.ReplyTo = Toma;
   //mm.Sender =Fromma;
   //mm.IsBodyHtml = false;
   mm.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess;
   mm.CC.Add(Toma);
   SmtpClient sc = new SmtpClient();
   NetworkCredential nc = new NetworkCredential();
   nc.UserName = "XXXXX@qq.com";//你的邮箱地址
   nc.Password = "zzzzz";//邮箱密码,这里的密码是xxxxx@qq.com邮箱的密码~
      sc.UsedefaultCredentials = true;
   sc.DeliveryMethod = SmtpDeliveryMethod.Network;
   sc.Credentials = nc;
   //如果这里报mail from address must be same as authorization user这个错误,是你的QQ邮箱没有开启SMTP,
   //到你自己的邮箱设置一下就可以啦!在帐户下面,如果是163邮箱的话,下面该成smtp.163.com
   sc.Host = "smtp.qq.com";
   sc.Send(mm);
}
catch (Exception ex)
{
   throw new Exception(ex.Message);
}

使用几个QQ邮箱进行测试,均成功了。