我正在为服务器开发一个应用程序,它必须偶尔发送邮件以通知用户。

MailMessage mm = new MailMessage();

mm.To.Add("[email protected]");
mm.From = new MailAddress("[email protected]");
mm.Subject = "J/K";
mm.Priority = MailPriority.Normal;
mm.IsBodyHtml = false;
mm.Body = "Greetings and salutations";

SmtpClient client = new SmtpClient("host.address.lcl");
client.Send(mm);

如果我将应用程序放在实际服务器上它可以正常工作,但在我的工作站上,根据我访问代码的方式,它要么静默失败,要么引发异常。在任何一种情况下,都会生成 McLogEvent:
Blocked by port blocking rule (Anti-virus Standard Protection:Prevent
mass mailing worms from sending mail).

...和异常(exception)说:
System.Net.Mail.SmtpException: Failure sending mail. ---> System.Net.WebException:
Unable to connect to the remote server ---> System.Net.Sockets.SocketException:
No connection could be made because the target machine actively refused it [IP & Port Numbers]

看起来我的工作站上的规则正在努力防止直接或间接生成邮件,但我不确定“主动拒绝它”部分的内容,因为如果 McLogEvent 文本似乎表明它不会走那么远。

我应该指出,如果我使用 System.Web.Mail,它效果很好。缺点当然是关于这个命名空间的编译器消息被弃用而支持 System.Net.Mail。

任何人都知道如何通过从我的工作站发送邮件使 McAfee 变得更酷?

最佳答案

通过右键单击 McAfee 图标并选择 VirusScan Console,从系统托盘打开 mcafee 控制台

查看任务、访问保护下的属性

取消选中阻止端口 25 上传出消息的规则。

编辑 - 说它被主动拒绝的异常只是因为 McAfee 不允许您在端口 25 上建立与任何东西的连接,所以异常只是认为您尝试了一个在 25 上没有任何东西或有防火墙的主机阻止 25.

值得指出的是,如果您在公司网络上并且运行的是 McAfee 的企业版,则该设置的配置级别可能高于您的系统,因此您可能无法更改它 - 如果出现以下情况,请与您的系统管理员联系情况就是这样。

关于c# - 如何通过从我的工作站发送邮件让 McAfee 更酷?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5358856/

10-09 01:18