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);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5