无法在Server 2008上的C#中发送电子邮件,但适用于Windows 7

时间:2012-05-27 20:08:29

标签: .net email iis smtp windows-server-2008

我的代码使用System.Net.Mail.MailMessage通过smtp.gmail.com在端口587上发送电子邮件。当我在Windows 7的计算机上通过IIS运行此代码时,它可以工作。电子邮件已发送,并且已到达。

在Windows Server 2008上的IIS上运行的完全相同的代码不起作用。所有事情都保持不变,唯一的区别是操作系统。它们都运行在同一个网络上,因此它不是路由器安全问题。我试图在端口587上禁用传出防火墙,但这不起作用。我试图在以下两个问题中应用答案,但这些问题都不起作用:

Sending email through a Google Apps account is working locally, but not on my web server

c# SmtpClient class not able to send email using gmail

任何人都知道Windows Server上的哪些安全设置阻止我发送电子邮件?

我得到的错误: 无法解析远程名称:'smtp.gmail.com'

1 个答案:

答案 0 :(得分:0)

我昨天遇到了这个问题,我现在找到了解决方案,现在为时已晚,但希望这有助于其他人 看到这个link,你需要的是

 ServicePointManager.ServerCertificateValidationCallback =
                delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
                {
                    return true;
                };

 Credentials = new NetworkCredential("xxx@zzz.ccc", "sdfsdf")