Я пытаюсь отправить по электронной почте с помощью C# консоли, но не суметь каждый раз с ошибкой говорит:C# отправка электронной почты неудачи
Failure sending mail. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: An attempt was made to access a socket in a way forbidden by its access permissions 173.194.65.109:587
это мой C# код:
SmtpClient client = new SmtpClient();
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.EnableSsl = true;
client.Host = "smtp.gmail.com";
client.Port = 587;
// setup Smtp authentication
System.Net.NetworkCredential credentials = new System.Net.NetworkCredential("[email protected]", "myPassword");
client.UseDefaultCredentials = false;
client.Credentials = credentials;
MailMessage msg = new MailMessage();
msg.From = new MailAddress("[email protected]");
msg.To.Add(new MailAddress("[email protected]"));
msg.Subject = "This is a test Email subject";
msg.IsBodyHtml = true;
msg.Body = string.Format("<html><head></head><body><b>Test HTML Email</b></body>");
client.Send(msg);
Я также пытался использовать:
, но все еще без успеха.
это общий код на C#, который написан по всему Интернету на каждом форуме ... но мне это не помогает.
вы должны указать другой порт –
Ваш код отлично подходит для меня. Вам не нужно менять порт, как было предложено.Возможные проблемы с сервером в GMail сегодня утром? Попробуйте снова. Сервер исходящей почты (SMTP): \t smtp.gmail.com - Использовать аутентификацию: Да - Порт для SSL: 465 или 587 – ShaneLS
Если вы используете домашний интернет, некоторые поставщики действительно строги в отношении того, какие порты открыты. – Henry