小弟用qq的服务器smtp.qq.com发送邮件,但总是报"身份验证失败",请高人求解。
代码如下 MailMessage msg = new MailMessage();
                msg.From = new MailAddress("[email protected]", "guide"); //发送方
                msg.To.Add(new MailAddress("[email protected]", "guide")); //接收方
                msg.Subject = "Message Subject"; //主题
                msg.Body = "Mail body content"; //内容
                msg.BodyEncoding = Encoding.UTF8;
                msg.IsBodyHtml = true; //是否允许html
                msg.Priority = MailPriority.High; //优先级
                SmtpClient mailClient = new SmtpClient("smtp.qq.com",25);                mailClient.EnableSsl = false;
                mailClient.UseDefaultCredentials = false;
                mailClient.DeliveryMethod = SmtpDeliveryMethod.Network;
                mailClient.Credentials = new System.Net.NetworkCredential("[email protected]", "123456");                mailClient.Send(msg);  
执行上面的代码报“身份验证失败”,急!!!

解决方案 »

  1.   

    mailClient.Credentials = new System.Net.NetworkCredential("[email protected]", "123456");---->mailClient.Credentials = new System.Net.NetworkCredential("XXXXX", "123456");
      

  2.   

    先确认一下QQ是不是支持SMTP吧。
    印象中好像不行。如果支持再检查一下是否需要。安全密码验证。
      

  3.   

    System.Net.NetworkCredential是FCL中一个密码身份验证的提供凭据类。今天我在一个.Net应用程序中,使用WebRequest请求一个网页,由于是在局域网当中,必须通过代理服务器材能够访问,设置了WebProxy和密码凭据后,访问网页出现407错误。其代码大致如下: WebProxy _wpr = new WebProxy("http://isaserver:2000",true) ;
    NetworkCredential _cred = new NetworkCredential(@"CropDomain\UserName","Password");
    _wrp.Credentials = _cred;
    WebRequest _wrq = WebRequest.CreateDefault(new Uri("page url"));
    _wrq.Proxy = _wrp;
    WebResponse _wrp = _wrq.GetResponse();  反复跟踪,检查了用户帐号、密码,正确无误,但是就是无法通过代理的验证。后来把第2句代码改成了:
    NetworkCredential _cred = new NetworkCredential("UserName","Password","CropDomain"); 
    KO!代码执行成功。 本来是想偷个懒的把用户帐号直接写在NetworkCredential构造函数的第一个参数里,没有想到这个参数其实只认用户名,而不会对包含域名的用户帐号做解析,害得我调试了一个上午。原文:http://blog.csdn.net/smile2me27/archive/2005/01/14/253321.aspx
      

  4.   

    呵呵不用试了,QQMail好像不支持SMTP & POP3
    换其它的MAILSERVER试试
      

  5.   

    不好意思,我专程去看了下,QQ邮箱还是支持的,不过需要SMTP身份验证.
    QQ邮箱 POP3 和 SMTP 服务器地址设置如下:邮箱 POP3服务器(端口110) SMTP服务器(端口25) 
    qq.com pop.qq.com smtp.qq.com 
    SMTP服务器需要身份验证。
     
    如果是设置POP3和SMTP的SSL加密方式,则端口如下:
    POP3服务器(端口995)
    SMTP服务器(端口465或587)。
      

  6.   


    我在这用Foxmail测试不能通过,提示拒绝登陆
      

  7.   

    POP3/IMAP/SMTP服务
    开启POP3/SMTP服务 
    收取  全部 最近30天 的邮件 
    开启IMAP/SMTP服务 (什么是 IMAP,它又是如何设置?) 
    ====================
    在QQMAIL里需开启此选项
      

  8.   

    ???还是不行吗,开启后我用MAILTOOL收发都正常了
      

  9.   

    同样的问题,我用163的发往qq正常,用QQ发往163就是验证失败。
      

  10.   

    有的服务器要SSL加密证的,你加上看一看
      

  11.   

    mailClient.EnableSsl = false;
    改一下 = true 试试,我以前碰到过,要验证的服务器如果没加密通不过
    不验证的服务器要是加密了也通不过