Отправка письма с вложением - 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 файлом и в неё закидываете файлы