Добрый день, возможно ли с помощью класса SmtpClient отправить почту на яндекс? Перепробовал уже кучу разных вариантов, никак не могу понять в чем заключается проблема.
UPD Попробовал вариант, предложенный @sp7 но у меня не работает:
public static void SendEmail(string to, string from, string boby, string subject)
{
MailMessage mail = new MailMessage();
mail.From = new MailAddress(from); // Адрес отправителя
mail.To.Add(new MailAddress(from)); // Адрес получателя
mail.Subject = "Заголовок";
mail.Body = "Письмо........................";
SmtpClient client = new SmtpClient();
client.Host = "smtp.yandex.ru";
client.Port = 587; // Обратите внимание что порт 587
client.EnableSsl = true;
client.Credentials = new NetworkCredential(from, "TYTPAROL"); // Ваши логин и пароль
try
{
client.Send(mail);
}
catch (Exception ex)
{
Debug.Print(ex.ToString());
}
}
Вызвано исключение: "System.Net.Mail.SmtpException" в System.dll System.Net.Mail.SmtpException: Неправильная последовательность команд. Отклик сервера: 5.5.4 Error: send AUTH command first. в System.Net.Mail.MailCommand.CheckResponse(SmtpStatusCode statusCode, String response) в System.Net.Mail.MailCommand.Send(SmtpConnection conn, Byte[] command, MailAddress from, Boolean allowUnicode) в System.Net.Mail.SmtpTransport.SendMail(MailAddress sender, MailAddressCollection recipients, String deliveryNotify, Boolean allowUnicode, SmtpFailedRecipientException& exception) в System.Net.Mail.SmtpClient.Send(MailMessage message) в ExceptionHandler.Components.MailSender.SendEmail(String to, String from, String boby, String subject)
UPD Попробовал вариант, предложенный @sp7 для почты на mail.ru и все работает:
from = "КакаятоПочта@mail.ru";
client.Host = "smtp.mail.ru";
Пожалуйста если будете отвечать не посылайте меня на ответы пяти летней давности, походу много воды утекло. Спасибо!
Вот пример отправки письма:
static void Main(string[] args)
{
MailMessage mail = new MailMessage();
mail.From = new MailAddress("myAddress@yandex.ru"); // Адрес отправителя
mail.To.Add(new MailAddress("clientAddress@mail.ru")); // Адрес получателя
mail.Subject = "Заголовок";
mail.Body = "Письмо........................";
SmtpClient client = new SmtpClient();
client.Host = "smtp.yandex.ru";
client.Port = 587; // Обратите внимание что порт 587
client.EnableSsl = true;
client.Credentials = new NetworkCredential("address@yandex.ru", "password"); // Ваши логин и пароль
client.Send(mail);
Console.ReadKey();
}
Я пользовался таким способом, особо проблем не возникало.
using System;
using System.IO;
using System.Net;
using System.Net.Mail;
using System.Text;
public class SettingMessage
{
public static void MessageSend()
{
try
{
using (var mess = new MailMessage())
{
var client = new SmtpClient("smtp.server.ru", 25); // smtp сервер, номер порта ["smtp.mail.ru",25);]
client.Credentials = new NetworkCredential("Твоя почта", "Твой пароль");
client.EnableSsl = true;
mess.From = new MailAddress("Твоя почта");
mess.To.Add(new MailAddress("Кому отправлять"));
mess.Subject = Environment.UserName;
mess.SubjectEncoding = Encoding.UTF8;
mess.Priority = MailPriority.High;
mess.IsBodyHtml = false;
mess.Body = "Заголовок";
try
{
var attachfile = "С:\\file.txt"; // полный путь к Вашему файлу.
if (File.Exists(attachfile)) // Проверка есть ли файл на диске?!
{
var SF = new Attachment(attachfile);
mess.Attachments.Add(SF); // прикрепляем какой-нибудь файл.
}
}
catch { // тут лови исключения}
client.Send(mess); // для отправки сообщения
// mess?.Dispose(); // освобождение ресурсов
}
}
catch
{
return;
}
}
}
Отправить возможно. Нужно включить SSL, а вот порт, как это ни странно, оставить по умолчанию - 25. К тому же письма должны отправляться строго на адрес, на который настроен SmtpClient. То есть, если вы с помощью сервера Яндекса попробуете отправить письмо на любой другой адрес, кроме своего, - оно не отправится.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Доброго времени суток!
ComboBox привязан при определенной коллекции данных, которая заполняется полученными из интернета данными после запуска программыНужно что...
Есть класс PersonVm, который представляет информацию о человеке:
Подскажите пожалуйста, как сделать чтобы при нажатии на Button один раз TextBox включился и второй раз нажать на этот же Button TextBox должен выключитсяСпасибо