2011-08-18 37 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); 
相關問題