我已经看到很多隐式SSL的示例(与不推荐使用的System.Web.Mail
一起使用),但是我使用的是System.Net.Mail
,并且想要一个如何通过SMTP发送电子邮件的代码示例。显式SSL。
我当前的sendEmail
代码如下-请注意,如果我设置了EnableSsl = true
,服务器将返回500错误,并且永远不会发送电子邮件。我认为是因为这是隐式SSL,System.Net.Mail
不支持:
using System.Net.Mail;
...
public static void SendEmail(string emailbody)
{
MailMessage mailMessage = new MailMessage("myDomain@me.com", "yourDomain@me.com");
mailMessage.IsBodyHtml = true;
mailMessage.Body = emailbody;
mailMessage.Subject = "My email";
SmtpClient smtpClient = new SmtpClient("smtp.me.com", 25);
// if false, email sends. If true, email does not send, server returns 500 error
smtpClient.EnableSsl = false;
smtpClient.Send(mailMessage);
}
答案 0 :(得分:1)
你不能。
您应该可以使用cdo.sys,但是它确实很旧,我不相信它已受支持。我也不确定它是Windows 2000附带的还是可用的。
您最好的选择是设置一个实际的邮件服务器来处理与外界的对话,并使用未加密的端口25连接与之对话。如果您有一个专用的小盒子,Postfix是一个免费的,非常轻巧且非常强大的SMTP服务器,可以很好地工作。