Я разрабатываю приложение для сервера, и оно должно время от времени отправлять почту для уведомлений пользователям.
MailMessage mm = new MailMessage();
mm.To.Add("me@domain.net");
mm.From = new MailAddress("you@domain.net");
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).
... и исключение говорит:
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 крутым, отправляя почту с моей рабочей станции?