话说网上发送邮件的代码不少,可是我因为不细心,致使拿别人的代码发送邮件总是失败,今天就说说几个要注意的地方吧!!!服务器
public bool SendEmail() { MailMessage msg = new MailMessage(); msg.To.Add("to@qq.com");//收件人地址 msg.CC.Add("cc@qq.com");//抄送人地址 msg.From = new MailAddress("from@qq.com", "Edward");//发件人邮箱,名称 msg.Subject = "This is a test email from QQ";//邮件标题 msg.SubjectEncoding = Encoding.UTF8;//标题格式为UTF8 msg.Body = "this is body";//邮件内容 msg.BodyEncoding = Encoding.UTF8;//内容格式为UTF8 SmtpClient client = new SmtpClient(); client.Host = "smtp.qq.com";//SMTP服务器地址 client.Port = 587;//SMTP端口,QQ邮箱填写587 client.EnableSsl = true;//启用SSL加密 //发件人邮箱帐号,受权码(注意此处,是受权码你须要到qq邮箱里点设置开启Smtp服务,而后会提示你第三方登陆时密码处填写受权码) client.Credentials = new System.Net.NetworkCredential("from@qq.com", "password"); try { client.Send(msg);//发送邮件 } catch (Exception) { return false; } return true; }
网上相似这段代码的代码不少,可是大多数都说的是client.Credentials = new System.Net.NetworkCredential("from@qq.com", "password")这块写的是password,其实可能以前的前辈们用的时候QQ邮箱须要的是密码,可是如今qq邮箱须要的则是受权码,下面就说怎么拿到这个受权码吧!this
首先发送邮件要开启一个smtp的服务(ps:我这菜鸟仍是不久前才知道的,不过好像outlook不是smtp,反正协议不少的)加密
第一步:打开qq邮箱点击设置:spa
而后还有两步你就成功了blog
第二步:点击帐户io
第三步:向下拉找到smtp字样的地方,而后所有开启class
相信你能理解这句话,而后你开启的时候会自动弹出受权码,若是没有当时没有复制粘贴能够点击生成受权码 ,来从新生成:test
就是这个东东了,拿这个复制粘贴到你代码的password处便可(ps:本菜鸟被坑的很惨啊,再说多一句163的邮箱也是这样的,只有开启smtp服务才能拿到受权码)email