Smtp реализация, выдает ошибку в консоли в чём может быть дело? - C#
Формулировка задачи:
System.Net.Mail.SmtpException: Время ожидания операции истекло.
в System.Net.Mail.SmtpClient.Send(MailMessage message)
в SendingMail.Program.SendMail() в c:\Users\User\Desktop\SendingMail\SendingM
ail\Program.cs:строка 58
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.Net.Mail; using System.Web; namespace SendingMail { class Program { static void Main(string[] args) { SendMail(); } static void SendMail() { //smtp сервер string smtpHost = "smtp.mail.ru"; //smtp порт int smtpPort = 25; //логин string login = ".......@mail.ru"; //пароль string pass = "************"; //создаем подключение SmtpClient client = new SmtpClient(smtpHost, smtpPort); client.Credentials = new NetworkCredential(login, pass); //От кого письмо string from = "..........@mail.ru"; //Кому письмо string to = "............@yandex.ru"; //Тема письма string subject = "Mail"; //Текст письма string body = "Hello!"; //Вложение для письма //Если нужно не одно вложение, для каждого создаем отдельный Attachment //Attachment attData = new Attachment(@"D:\att.zip"); //Создаем сообщение MailMessage mess = new MailMessage(from, to, subject, body); //прикрепляем вложение //mess.Attachments.Add(attData); //прописываем заголовок mess.SubjectEncoding = Encoding.Default; mess.BodyEncoding = Encoding.Default; mess.Headers["Content-type"] = "text/plain; charset=windows-1251"; try { client.Send(mess); Console.WriteLine("Message send"); //СТРОКА 58 } catch(Exception ex) { Console.WriteLine(ex.ToString()); Console.ReadKey(); } } } }
Решение задачи: «Smtp реализация, выдает ошибку в консоли в чём может быть дело?»
textual
Листинг программы
var mail = new MailMessage(); var smtpServer = new SmtpClient("smtp.mail.ru"); mail.From = new MailAddress("@mail.ru", "anonymous@none.com"); // от кого кому + скрытие mail.To.Add("********@list.ru"); mail.Subject = "Test mail"; mail.Body = "Mail with attachment"; //var attachment = new Attachment("d:/****.txt"); //ail.Attachments.Add(attachment); //Directory.GetFiles("send", "*.*").ToList().ForEach(name => mail.Attachments.Add(new Attachment(name, MediaTypeNames.Text.Plain)));//создаёте папку send в директории с exe файлом и в неё закидываете файлы smtpServer.Port = 587; // порт аккаунт отправителя smtpServer.Credentials = new NetworkCredential("****@mail.ru", "*******"); smtpServer.EnableSsl = true; smtpServer.Send(mail);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д