C# 在 Windows Server 2008 R2 上使用 System.Web.Mail 发送认证邮件时出错
C# Error sending certified mail with System.Web.Mail on Windows Server 2008 R2
在端口 465 (tls1.2) 上发送经过认证的邮件 (System.Web.Mail.MailMessage) 仅在 windows 服务器 2008 r2
上失败
我有一个基于框架 4.5 的函数,但它使用旧库 (System.Web.Mail.MailMessage) 通过端口 465 上的 smtp 服务器发送电子邮件(经过认证的邮件 tls1.2),该函数运行正常在 windows 10 和 windows 服务器 2012 上,但在 windows 服务器 2008 r2 上失败。错误是 System.Web.HttpException 类型,表明它无法连接到服务器,但在端口 465 上进行 telnet 工作。 windows 服务器 2008 r2 有什么问题?
try
{
System.Web.Mail.MailMessage newMail = new System.Web.Mail.MailMessage();
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", "server");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "465");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", "2");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "username");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "pwd");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");
newMail.From = "mail";
newMail.To = "mail";
newMail.Subject = "test web Mail";
newMail.BodyFormat = System.Web.Mail.MailFormat.Html;
newMail.Body = "body....";
newMail.Priority = System.Web.Mail.MailPriority.High;
System.Web.Mail.SmtpMail.SmtpServer = "smtpserver:465";
System.Web.Mail.SmtpMail.Send(newMail);
Console.WriteLine("Email Send");
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
System.We.HttpException (0x80004005) 传输连接服务器失败
在端口 465 (tls1.2) 上发送经过认证的邮件 (System.Web.Mail.MailMessage) 仅在 windows 服务器 2008 r2
上失败我有一个基于框架 4.5 的函数,但它使用旧库 (System.Web.Mail.MailMessage) 通过端口 465 上的 smtp 服务器发送电子邮件(经过认证的邮件 tls1.2),该函数运行正常在 windows 10 和 windows 服务器 2012 上,但在 windows 服务器 2008 r2 上失败。错误是 System.Web.HttpException 类型,表明它无法连接到服务器,但在端口 465 上进行 telnet 工作。 windows 服务器 2008 r2 有什么问题?
try
{
System.Web.Mail.MailMessage newMail = new System.Web.Mail.MailMessage();
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", "server");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "465");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", "2");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "username");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "pwd");
newMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");
newMail.From = "mail";
newMail.To = "mail";
newMail.Subject = "test web Mail";
newMail.BodyFormat = System.Web.Mail.MailFormat.Html;
newMail.Body = "body....";
newMail.Priority = System.Web.Mail.MailPriority.High;
System.Web.Mail.SmtpMail.SmtpServer = "smtpserver:465";
System.Web.Mail.SmtpMail.Send(newMail);
Console.WriteLine("Email Send");
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
System.We.HttpException (0x80004005) 传输连接服务器失败