【发布时间】:2019-11-11 17:06:30
【问题描述】:
我有一台运行 IIS 和 PHP 的服务器。我有许多发送电子邮件的网页,有些是给我的,有些是给用户的。这一切都很好。我使用的是 Comcast Business Class 帐户,这意味着我可以使用 smtp.comcast.net 作为我的 SMTP 服务器,使用端口 25,并且不使用任何类型的身份验证,这非常棒。它工作得很好。
现在快进到今天。我正在编写一些自定义 C# 代码来监视文件夹结构,如果新文件与某些参数匹配,则基本上将新文件通过电子邮件发送给我。在我的 C# 代码中,我尝试使用相同的设置,但它不起作用。 SmtpClient.Send() 函数不会引发异常,并且我的代码完成了例程,就好像一切都很愉快并且正常工作一样。但后来我等啊等啊,一直没收到邮件。
SmtpClient smtp = new SmtpClient("smtp.comcast.net");
smtp.Port = 25;
smtp.EnableSsl = false;
smtp.UseDefaultCredentials = false;
smtp.Timeout = 2500;
smtp.Send(mail);
onStatusUpdate("Successfully sent email to " + mail.To + (mail.CC.Count > 0 ? " and CC'd " + mail.CC.ToString() : ""));
“邮件”对象是 MailMessage 类型,并设置有收件人、发件人、主题、正文和抄送。还具有 HTML 和纯文本替代视图。
我想最简单的问题是,在 C# 中以老式的 port-25 方式发送电子邮件是否存在 PHP 中不存在的技巧?
我提到 PHP 的唯一原因是因为我知道我的防火墙没有阻止端口 25,我知道我的 ISP 已打开它,我知道我有正确的服务器,我知道它应该工作。
【问题讨论】: