发送电子邮件时出错

时间:2013-06-27 10:49:18

标签: c# smtpclient

请不要将此标记为重复。我可以找到与此相关的问题,但是,没有人帮助过我。以下是我用于在我的c#应用程序中发送电子邮件的内容,但我得到例外说法:

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

我的代码是:

try {
    var client = new SmtpClient("smtp.gmail.com", 587) {
        Credentials = new NetworkCredential("XXXX@gmail.com", "XXXX"),
        EnableSsl = true
    };

    client.Send("XXXX@gmail.com", "XXXX@gmail.com", "test", "testbody");
    Console.WriteLine("Sent");
    Console.ReadLine();
}
catch
{ }

2 个答案:

答案 0 :(得分:1)

检查您的端口是否正确,它应该是端口465(带SSL)和端口587(带TLS)。

如果不起作用,请尝试端口25使用SSL

编辑:

是否有代理服务器?尝试将以下内容放入web.config

<system.net>
    <defaultProxy>
        <proxy usesystemdefault = "false"
               proxyaddress="http://address:port"
               bypassonlocal="false" />
    </defaultProxy>
</system.net>

答案 1 :(得分:1)

检查端口是否未被防火墙阻止,尤其是未被公司防火墙阻止。

根据您的需要,有许多端口扫描仪可用,这里有一个suggestion可以帮助您入门。