SMTP服务不可用

时间:2009-11-26 23:44:13

标签: c# asp.net email smtp gmail

我正在尝试创建一个网络应用程序,在输入您的电子邮件地址和消息后,会从电子邮件地址发送包含此信息的电子邮件。

我用过这个:

    try
    {
        NetworkCredential login = new NetworkCredential("your_____@gmail.com", "password");

        System.Net.Mail.MailMessage email = new System.Net.Mail.MailMessage();

        email.To.Add(new MailAddress("my____email@gmail.com"));
        email.From = new MailAddress("your_____@gmail.com");
        email.Subject = "Question";

        email.Body = question;

        SmtpClient client = new SmtpClient("smtp.gmail.com");
        client.EnableSsl = true;
        client.UseDefaultCredentials = false;
        client.Credentials = login;
        client.Send(email);
    }
    catch
    {
    }

但是它给了我一个SMTP错误。

  

“服务不可用,关闭   传输通道。服务器   响应是:无法连接到SMTP   服务器209.85.129.111   (209.85.129.111:25),连接错误   10051“System.Exception   {System.Net.Mail.SmtpException}

3 个答案:

答案 0 :(得分:3)

要通过您的Gmail帐户发送,您需要连接到端口587:

SmtpClient client = new SmtpClient("smtp.gmail.com", 587);

答案 1 :(得分:1)

您不需要指定端口587 - 代码在没有它的情况下工作。我已成功使用以下方式发送和接收电子邮件:

SmtpClient客户端=新的SmtpClient(“smtp.gmail.com”);

如果仔细查看错误,则显示“无法连接到SMTP服务器”,错误10051表示网络无法访问。你有防火墙阻塞端口587吗?

答案 2 :(得分:0)

Gmail使用端口465,错误显示端口25 尝试使用465端口

http://mail.google.com/support/bin/answer.py?answer=76147