none
Envio automatico de correos RRS feed

  • Pregunta

  • Buenos días, les cuento un poco como viene la mano, tengo un programa que cada vez que el usuario marca que su maquina se encuentra en falla el sistema guarda un comentario en una tabla. Lo que yo necesito hacer es leer esa tabla y enviar en un mail ese comentario, si me pueden dar alguna idea les estaría muy agradecido
    • Editado Cesard.17 jueves, 16 de noviembre de 2017 12:25
    jueves, 16 de noviembre de 2017 12:24

Todas las respuestas

  • Buenas,

    Desde donde quieras que se ejecute el envío de mensajes, puedes monitorizar la DB  cada X tiempo, y si detectas algo pendiente de enviar por email, con la clase SmtpClient  puedes enviar el correo.

    Si tienes dudas sobre como hacerlo comentanos y te ayudamos. 

    Atte


    No olvides votar mi comentario si te ha ayudado y marcarlo como respuesta si ha sido la solución, con eso ayudas a mejorar mi reputación en la comunidad y a identificar la respuesta a la gente que tenga el mismo problema.

    Para obtener una respuesta lo más rápida y concisa posible, te recomiendo:


    jueves, 16 de noviembre de 2017 12:41
  • Hola

    Lo que yo necesito hacer es leer esa tabla y enviar en un mail ese comentario, si me pueden dar alguna idea

    Tendrías que tomar ese comentario y ponerlo como contenido del email.

    private void btnEnviar_Click(object sender, EventArgs e)
            {
                MailMessage _Correo = new MailMessage();
    
                if (string.IsNullOrEmpty(txtDe.Text))
                    MessageBox.Show("Remitente no puede estar vacío", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
                else
                {
                    _Correo.From = new MailAddress(txtDe.Text);
    
                    _Correo.To.Add(txtPara.Text);
                    _Correo.Subject = txtAsunto.Text;
                    _Correo.Body = txtContenido.Text;
                    _Correo.IsBodyHtml = false; // Le indicamos que el cuerpo del mensaje no es HTLM
                    _Correo.Priority = MailPriority.Normal;
                }
               
                if (Adj == true)
                {
                    Attachment _attachment = new Attachment(@Archivo);
                    _Correo.Attachments.Add(_attachment);
                    Adj = false;
                }
    
                SmtpClient smtp = new SmtpClient();
                smtp.Credentials = new NetworkCredential(txtDe.Text, txtContraseña.Text);
    
                smtp.Host = "smtp.live.com";
                smtp.Port = 587;
                smtp.EnableSsl = true;
    
                try
                {
                    smtp.Send(_Correo);
                    MessageBox.Show("Correo enviado");
                }
                catch
                {
                    MessageBox.Show("No se pudo enviar el correo");
                }
                _Correo.Dispose();
            }

    Adapta el código a tus necesidades.

    Saludos!


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú

    • Propuesto como respuesta Sergio Parra domingo, 3 de diciembre de 2017 7:27
    sábado, 2 de diciembre de 2017 22:20