SmtpClient + smtp.yandex.ru - C#
Формулировка задачи:
Здравствуйте. Не отправляется почта. В чем может быть причина? Если на порт 465 подключаться, то по таймауту отваливается, если к 587 то:
Код:
Листинг программы
- E:\Projects\mail_sendnew\mail_send\bin\Release>mail_send.exe
- Can't send email: System.Net.Mail.SmtpException: Неправильная последовательность команд. Ответ сервера: 5.5.4 Error: send AUTH command first.
- в System.Net.Mail.MailCommand.CheckResponse(SmtpStatusCode statusCode, String response)
- в System.Net.Mail.SmtpTransport.SendMail(MailAddress sender, MailAddressCollection recipients, String deliveryNotify, SmtpFailedRecipientException& exception)
- в System.Net.Mail.SmtpClient.Send(MailMessage message)
- в mail_send.Program.SendMail() в e:\Projects\mail_sendnew\mail_send\Program.cs:строка 89
Листинг программы
- public static void SendMail()
- {
- const string smtp_account = "removed@mail.ru";
- const string smtp_password = "password";
- const string smtp_reciever = "removed@mail.ru";
- var from_email = new MailAddress(smtp_account);
- var to_emal = new MailAddress(smtp_reciever);
- Attachment attach = new Attachment("file.txt");
- var message = new MailMessage(from_email, to_emal);
- message.Subject = "Hello!";
- message.Body = "How are you?";
- message.Attachments.Add(attach);
- var smtp = new SmtpClient
- {
- Host = "smtp.yandex.ru",
- Port = 587,
- EnableSsl = true,
- DeliveryMethod = SmtpDeliveryMethod.Network,
- UseDefaultCredentials = false,
- Credentials = new NetworkCredential(from_email.Address, smtp_password)
- };
- try
- {
- smtp.Send(message);
- }
- catch (Exception ex)
- {
- DebugMSG("Can't send email: " + ex.ToString());
- return;
- }
- }
Решение задачи: «SmtpClient + smtp.yandex.ru»
textual
Листинг программы
- //начинаем отправку сообщения
- MailSender mail_msg = new MailSender();
- mail_msg.MailAdressTo = addr_to;
- mail_msg.MailAdressFrom = "mymail@list.ru";
- mail_msg.NameFrom = name_sender;
- mail_msg.SubjectLetter = subject_letter;
- mail_msg.BodyTextLetter = text_letter;
- mail_msg.SmtpSendMail = "smtp.mail.ru";
- mail_msg.PortSendMail = 465;
- mail_msg.LoginSendMail = "mymail@list.ru";
- mail_msg.PasswSendMail = "password";
- mail_msg.BodyIsHtml = true;
- mail_msg.EnableSSL = true;
- //отправляем сообщение
- mail_msg.SendMessageToMail();
- string status_message = mail_msg.GetStatusSend;
- Console.WriteLine("Статус сообщения: {0}", status_message);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д