SmtpClient:连接尝试失败,因为连接方在一段时间后没有正确响应

时间:2011-08-18 05:15:20

标签: c# email smtpclient

在Visual Studio 2008中使用C#.NET中的电子邮件发送时,我收到以下错误

  

连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应74.125.53.108:25

但是相同的代码在其他一些PC上工作得很好,但是当我今天测试时,它在Send()方法中给出了错误...我的网络连接也很好,我正在测试电子邮件代码.. < / p>

以下是我的电子邮件地址

MailMessage mail = new MailMessage();
mail.To.Add(to);
mail.From = new MailAddress(from);
mail.Subject = subject;
mail.Body = body;
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.Credentials = new System.Net.NetworkCredential("MyUserName@gmail.com",
                                                            "MyPassword");
smtp.EnableSsl = true;
smtp.Send(mail);

造成这种错误的原因可能是什么.. ???

2 个答案:

答案 0 :(得分:23)

以下代码适用于我。你的代码给了我错误,我相信这是因为没有将端口设置为587.

http://forums.asp.net/t/1250771.aspx/4/10

MailMessage mail = new MailMessage();
mail.To.Add(to);
mail.From = new MailAddress(from);
mail.Subject = subject;
mail.Body = body;
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient("smtp.gmail.com",587);
smtp.EnableSsl = true;
smtp.UseDefaultCredentials = false;
smtp.Credentials = new System.Net.NetworkCredential(address, password);
smtp.Send(mail);

答案 1 :(得分:2)

由于我公司的无线安全性,这件事发生在我身上。更改为打开wifi后,该问题会自动解决。