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

我用过这个:

    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}

有帮助吗?

解决方案

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

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

其他提示

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

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

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

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

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top