Не удается отправить SMTP почту с .NET, проблема с сетью? - PullRequest
2 голосов
/ 29 апреля 2010

Я пытаюсь отправить SMTP-сообщение по электронной почте через SMTP-сервер Gmail, используя код ниже:

MailMessage message = new MailMessage("myEmail@gmail.com", "myEmail@purdue.edu", "Testing SMTP", "Test, yo");
SmtpClient client = new SmtpClient();
client.EnableSsl = true;
client.Host = "smtp.gmail.com";
client.Port = 587;
client.Credentials = new NetworkCredential("myEmail@gmail.com", "myPassword");
client.Send(message);

Используя тот же код, мой друг успешно отправил мне письмо из другой сети, но .NET выдает ошибку «Невозможно установить соединение, поскольку целевая машина активно отказала ему в 74.125.91.109:587». Это должно быть проблема с сетью, верно?

Мой сетевой администратор утверждает, что нет заблокированных исходящих портов и мой брандмауэр полностью отключен, что еще может быть причиной этого? Я также попробовал smtp-сервер Пердью (smtp.purdue.edu), и он не работает с тем же сообщением.

Ответы [ 4 ]

4 голосов
/ 29 апреля 2010

Отключите любую антивирусную программу.

Что касается теста Пердью, вы уверены, что они используют порт 587?

0 голосов
/ 19 мая 2014

Это может быть вызвано тем, что McAfee Virus блокирует массовых почтовых червей. Вы можете сделать следующее:

1. Откройте консоль VirusScan, щелкнув правой кнопкой мыши экран VirusScan на панели задач и выберите Консоль VirusScan ...

2. Дважды щелкните элемент «Защита доступа» и откройте его.

3.Отключите правило "Запретить массовую рассылку от отправки почты".

4.Нажмите ОК и закройте консоль VirusScan.

Надеюсь, это беспомощно.

0 голосов
/ 05 июля 2010

Измените порт на 465. У меня сработало.

0 голосов
/ 29 апреля 2010

Вы должны использовать порт 465 для SSL в соответствии с this

...