try
            {
                SmtpClient sc;
                MailMessage message;                MailAddress f = new MailAddress("******@gmail.com");
                MailAddress t = new MailAddress("******@gmail.com");
                MailAddress c = new MailAddress("******@gmail.com");
                MailAddress b = new MailAddress("******@gmail.com");
                //邮件
                message = new MailMessage();
                message.Sender = f;
                message.From = f;
                message.To.Add(t);
                message.CC.Add(c);
                message.Bcc.Add(b);                message.Subject = "Test Gmail Subject " + DateTime.Now.ToString("yy-MM-dd HH:mm:ss"); //邮件主题
                message.SubjectEncoding = System.Text.Encoding.UTF8;
                message.Body = "Test Gmail Body " + DateTime.Now.ToString("yy-MM-dd HH:mm:ss");//邮件内容
                message.BodyEncoding = System.Text.Encoding.UTF8;
                //smtp发送端                sc = new SmtpClient("smtp.gmail.com", 587);
                sc.EnableSsl = true;
                sc.Credentials = new System.Net.NetworkCredential("******@gmail.com", "******");
                //sc.DeliveryMethod = SmtpDeliveryMethod.Network;
                //sc.Timeout = 200;
                sc.Send(message);
                MessageBox.Show("发送成功");
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message);
            }在我的机器上完全没有问题,但是把程序拿到另外一台机器却出现错误:
“SMTP 服务器要求安全连接或客户端未通过身份验证。 服务器响应为: 5.5.1 Authentication Required. Learn more at”
有人知道是什么原因吗?一直都搞不明白。

解决方案 »

  1.   

    c = new SmtpClient("smtp.gmail.com", 587);
    换个试试
      

  2.   

    补充一下,用户名和密码绝对是无误的。
    而且在我的机器上可以发送邮件,发出的邮件也可以正确收到。
    但是把程序拿到另一台机器就是不行,并且两台机器都是 Win2003 。
      

  3.   

    1. 没有启用 SSL2. 用户名和密码错误看来SSL启用不成功,在那台机器上将windows补丁打上
      

  4.   

    首先,用于发送Email的Gmail帐户,需要把POP功能打开。
    其次,注意Gmail所使用的端口号,有465和587两个,换个试试
      

  5.   

    POP功能已经打开了,并却用户名和密码也是正确的。
    在一台机器上已经测试成功了,程序原封不动的拿到另外一台机器上去运行,却不行。
    所以我总觉得是另外一台机器的设置可能有问题。