ASP.NET用QQ,网易发送邮件以及添加附件
教程:ASP.NET用QQ,网易发送邮件以及添加附件
这是我用QQ邮箱出现的异常:
命令顺序不正确。 服务器响应为:Error: need EHLO and AUTH first ! 无法从传输连接中读取数据: net_io_connectionclosed
解决方法:
首先去邮箱设置一下内容:
1.开启SMTP,
2.申请授权码.(授权码作为QQ邮箱登陆密码使用.)
QQ邮箱帮助中心:(可查询到QQ邮箱使用SMTP的端口,服务器地址和如何设置SSL以及客户端配置)
http://service.mail.qq.com/
如果这些已经弄好了,应是代码有问题.请参考C#代码部分.

QQ邮箱代码:
注意:用户名不加后缀"@qq.com",密码使用生成的授权码,SSL设置为true
方法一:
(环境:vs2015 mvc , 已测试成功)
| 1 2 3 4 5 6 7 8 9 10 11 12 | WebMail.SmtpServer = "smtp.qq.com";           WebMail.SmtpPort = 587;           WebMail.EnableSsl = true;           WebMail.UserName = "8448xx4";           WebMail.Password = "ujalggwrqpvdbghi";           WebMail.From = "8448xx4@qq.com";//获取或设置发件人的电子邮件地址           WebMail.Send( to, subject,content");           //该方法有许多重载可参考msdn library           //to 1:该收件人的电子邮件地址。           //subject2:邮件标题           //content3.正文 | 
方法二
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |    stringtxtFullPath = HttpContext.Current.Server.MapPath("~/")+@"show/XX合约.txt";    //创建一个附件对象    Attachment objMailAttachment = newAttachment(txtFullPath);    //创建邮件消息    MailMessage objMailMessage = newMailMessage();    objMailMessage.From = newMailAddress("8448xx4@qq.com");    //源邮件地址 收件人    objMailMessage.To.Add(usermail);    objMailMessage.Subject = "活动通知!";//发送邮件的标题    //将附件附加到邮件消息对象中    objMailMessage.Attachments.Add(objMailAttachment);    //正文    objMailMessage.Body = "请在2016在六号楼..";     //objMailMessage.IsBodyHtml = true;    SmtpClient SmptpMail = newSmtpClient();    //设置发件箱的SMTP服务器    SmptpMail.Host = "smtp.qq.com";//SSL设置为true  SmptpMail.EnableSsl = true;    //SMTP使用的端口    SmptpMail.Port = 465;    //QQ用户名,和授权码    SmptpMail.Credentials = newNetworkCredential("8448xx4", "gsdahhe!");    SmptpMail.Send(objMailMessage); | 
网易邮箱:(已经测试成功, ps.我网易邮箱好像没有设置过STMAP和授权码,似乎账号,密码可以直接用)
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | stringtxtFullPath = HttpContext.Current.Server.MapPath("~/")+@"show/XXX合约.txt";        //创建一个附件对象        Attachment objMailAttachment = newAttachment(txtFullPath);        //创建邮件消息        MailMessage objMailMessage = newMailMessage();        objMailMessage.From = newMailAddress("198489xx@163.com");        //源邮件地址        objMailMessage.To.Add(usermail);//收件人        objMailMessage.Subject = "活动通知!";//发送邮件的标题        //将附件附加到邮件消息对象中        objMailMessage.Attachments.Add(objMailAttachment);       //正文        objMailMessage.Body = body; //      //  objMailMessage.IsBodyHtml = true;        SmtpClient SmptpMail = newSmtpClient();        //设置发件箱的SMTP服务器        SmptpMail.Host = "smtp.163.com";        //SMTP使用的端口        SmptpMail.Port = 25;        //用户名密码        SmptpMail.Credentials = newNetworkCredential("198489xx@163.com","454646546sdsg");        SmptpMail.Send(objMailMessage); | 
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号