tls enviar correo c# .net ssl smtp smtpclient

enviar - c# send email ssl



El servidor SMTP requiere una conexión segura o el cliente no fue autenticado, aún no funciona (1)

Revisé tu código y funcionó para mí. Sin embargo, no estoy seguro del objetivo del método PrepareSender() . _message.Body cuerpo del mensaje ( _message.Body ) en PrepareMailMessage() .

¿Intentó usar las credenciales predeterminadas?

_smtpClient.UseDefaultCredentials = true

Obtengo el error anterior. Miré soluciones en línea y parece que hice todo lo que era necesario, pero todavía lo estoy obteniendo. He incluido Enablessl = verdadero; El método de entrega es Network y he proporcionado las credenciales. Lo depuré y el nombre de usuario y la contraseña parecen ser correctos.

using System; using System.Net; using System.Net.Mail; using System.Windows.Forms; namespace SendMail { public partial class MainWindow : Form { #region Private variables private MailMessage _message = new MailMessage(); private EmailSender sender = EmailSender.GetInstance(); private SmtpClient _smtpClient = new SmtpClient(); #endregion public MainWindow() { InitializeComponent(); } private void PrepareMailMessage() { // Set the FROM address _message.From = new MailAddress(tbFromAddr.ToString().Trim()); // Set the TO address _message.To.Add(new MailAddress(tbToAddr.ToString().Trim())); // Set the SUBJECT _message.Subject = tbSubject.ToString(); _message.IsBodyHtml = false; _message.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure; _message.Priority = MailPriority.High; _message.SubjectEncoding = System.Text.Encoding.UTF8; _message.BodyEncoding = System.Text.Encoding.UTF8; } private void PrepareServer() { _smtpClient.Host = "smtp.gmail.com"; _smtpClient.Port = 587; _smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; _smtpClient.UseDefaultCredentials = false; _smtpClient.Credentials = new NetworkCredential(tbFromAddr.ToString().Trim(), tbPassword.ToString().Trim()); _smtpClient.EnableSsl = true; } private void PrepareSender() { sender.Message = _message; sender.smtpClient = _smtpClient; } private void btnSend_Click(object sender, EventArgs e) { PrepareMailMessage(); PrepareServer(); PrepareSender(); //this.sender.Send(); _smtpClient.Send(_message); } } }