2013-08-20 193 views
3

我面對一個讓我瘋狂的問題! 我有一個小的Delphi 7應用程序(使用Indy 9組件套件)用於發送電子郵件,所有工作正常。 我試圖開發一個C#應用程序(Visual Studio 2012),但是在我所有的測試中(在互聯網中發現了很多變體),結果總是「操作超時」。 幾年前,我在一個VS2005 C#應用程序中測試了相同的代碼,它的工作,但現在,錯誤發生在VS2010(我的家)和VS2012(工作)SmtpClient電子郵件發送超時

Ps:SMTP服務器的配置是OK ,因爲Delphi應用程序正在運行!

Ps2的:我已經在不同的機器上測試此代碼,以躲避殺毒/代理的問題,我自己的家,結果是一樣的,總是..

下面的C#代碼片段:

private void button7_Click(object sender, EventArgs e) 
{ 
    using (var msg = new MailMessage("[email protected]", "[email protected]", "Teste de Envio de E-mail em C#", "Mensagem enviada utilizando app em C#")) 
    { 
    using(var smtpClient = new SmtpClient("smtp.myServer.com.br", 465)) 
    { 
     smtpClient.EnableSsl = true; 
     smtpClient.Timeout = 2 * 60 * 1000; 
     smtpClient.UseDefaultCredentials = false; 
     smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; 
     smtpClient.Credentials = new NetworkCredential(msg.From.User, "mypassword"); 
     try 
     { 
     smtpClient.Send(msg); 
     } 
     catch (SmtpException ex) 
     { 
     MessageBox.Show("Erro ao enviar e-mail: " + ex.Message + "(" + ex.StatusCode + ")"); 
     } 
    } 
    } 
} 

已編輯:服務器防火牆阻止了我的測試。查看評論。

+0

檢查你的smtp端口號..對於每一個服務器它改變 –

+0

感謝您的評論,但如上所述,配置是OK ..德爾福應用程序的作品。 – Valmir

+1

Windows防火牆可能會阻止您的應用程序?另外,請將整個例外信息(包括堆棧跟蹤)粘貼到消息中。 –

回答

2

我發現了這個問題。服務器防火牆阻止了我的測試。 只要把它關掉,一切都很順利。

相關問題