2011-08-18 41 views
15

后虽然有电子邮件在C#.NET在Visual Studio 2008中发工作响应我得到了以下错误SmtpClient:连接尝试失败,因为连接的方没有正确的一段时间

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

但同样的代码工作正常在其他一些PC,但是当我我今天正在测试它给我错误Send()方法...也是我的网络RK连接好到哪我测试的电子邮件代码..

下面是我的电子邮件代码

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("[email protected]", 
                  "MyPassword"); 
smtp.EnableSsl = true; 
smtp.Send(mail); 

可能是什么原因这样的错误.. ???

+0

也许你超过从帐户和业务发送邮件的限制可能会被暂时停用该帐户,您是否尝试使用另一个帐户? – V4Vendetta

+0

这是我第一次测试这个今天,但我不认为因为这样的原因可能有问题,我也有发送5邮件以前在1天.....我还没有尝试过与其他帐户...但我将尝试... – DShah

+0

我已尝试与其他帐户也没有工作,同样的错误发生... – DShah

回答

20

以下代码适用于我。你的代码是给我的错误,我相信这是由于端口不设置为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); 
相关问题