Отправка письма с вложением - C#
Формулировка задачи:
Я знаю, что ума тем есть, но не 1 пример не работает...
При коде:
даже без антивируса вылезает сообщение о том, что программа пытается отправить письмо, но была заблокирована. При таком коде, который почти везде:
и им подобным, ошибка:
Служба закрыта. Закрытие канала передали...
Может быть мне нужно порт 25 поменять на другой? Или что тогда?
MailMessage message; SmtpClient client; message = new System.Net.Mail.MailMessage( "мой-майлremoved@mail.ru", "мой-майлremoved@mail.ru", "Subject", "Body"); client = new SmtpClient("smtp.gmail.com", 587) { Credentials = new NetworkCredential("мой-майлremoved@mail.ru", "*****"), EnableSsl = true }; message.BodyEncoding = System.Text.Encoding.UTF8; message.IsBodyHtml = true; //добавляем в аттачмент картинку // message.Attachments.Add(new Attachment("picture.jpg", "image/jpeg")); //добавляем адрес BCC при необходимости //MailAddress bcc = new MailAddress("removed@mail.ru"); // message.Bcc.Add(bcc); try { client.Send(message); } catch (Exception ex) { Console.WriteLine("Error: " + ex.ToString()); return; } return; }
//Авторизация на SMTP сервере SmtpClient Smtp = new SmtpClient("smtp.mail.ru", 25); Smtp.Credentials = new NetworkCredential("login", "pass"); //Smtp.EnableSsl = false; //Формирование письма MailMessage Message = new MailMessage(); Message.From = new MailAddress("removed@mail.ru"); Message.To.Add(new MailAddress("removed@mail.ru")); Message.Subject = "Заголовок"; Message.Body = "Сообщение"; //Прикрепляем файл string file = "C:\\file.zip"; Attachment attach = new Attachment(file, MediaTypeNames.Application.Octet); // Добавляем информацию для файла ContentDisposition disposition = attach.ContentDisposition; disposition.CreationDate = System.IO.File.GetCreationTime(file); disposition.ModificationDate = System.IO.File.GetLastWriteTime(file); disposition.ReadDate = System.IO.File.GetLastAccessTime(file); Message.Attachments.Add(attach); Smtp.Send(Message);//отправка
Решение задачи: «Отправка письма с вложением»
textual
Листинг программы
Directory.GetFiles("send", "*.*").ToList().ForEach(name => mail.Attachments.Add(new Attachment(name, MediaTypeNames.Text.Plain)));//создаёте папку send в директории с exe файлом и в неё закидываете файлы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д