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);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д