我遇到了一个让我发疯的问题!!!我有一个用于发送电子邮件的小型 Delphi 7 应用程序(使用 Indy 9 组件套件),一切正常。我正在尝试开发一个 C# 应用程序 (Visual Studio 2012) 做同样的事情,但在我所有的测试中(在互联网上发现了很多变化)结果总是“操作超时”。几年前我在一个 VS2005 C# 应用程序中测试了相同的代码并且它工作正常,但现在,错误发生在 VS2010(我的家)和 VS2012(工作)
ps:smtp服务器的配置是ok的,因为delphi app是工作的!
Ps2:我已经在不同的机器上测试了这段代码以避免防病毒/代理问题,我的家和结果是一样的,总是..
在 C# 代码片段下方:
private void button7_Click(object sender, EventArgs e)
{
using (var msg = new MailMessage("fromMail@myServer.com.br", "toMail@myServer.com.br", "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 + ")");
}
}
}
}
编辑:服务器防火墙阻止了我的测试。查看评论。