none
Enviar mail con smtpclient.UseDefaultCredentials = true; RRS feed

  • Pregunta

  • Instalé el servicio smtp en IIS 6.0.

    Tengo un sitio mvc 2 con visual studio 2010 desarrollado con c#, quiero enviar un mail a un mail de gmail desde una página de contacto donde ingreso nombre, país, teléfono, e-mail y comentario y me da este error:

    El buzón de correo no está disponible. La respuesta del servidor fue: 5.7.1 Unable to relay for mdeanquin@gmail.com

    Este es el código del model para enviar el mail:

    public bool EnviarEmail(string pNombre, string pPais, string pTelefono, string pEmail, string pComentario)
            {
                bool enviado = false;
                try
                {
                    MailMessage msg = new MailMessage(pEmail, "mdeanquin@gmail.com");
                    msg.BodyEncoding = Encoding.Default;
                    msg.IsBodyHtml = true;
                    string cuerpo = "<p>Nombre: " + pNombre + "</p><p>País: " + pPais + "</p>";
                    if (pTelefono != "") cuerpo += "<p>Teléfono: " + pTelefono + "</p>";
                    cuerpo += "<p>" + pComentario + "</p>";
                    msg.Body = cuerpo;
                    msg.Priority = MailPriority.Normal;
                    string asunto = "Laboratorio de Estructuras - Contacto desde página web";
                    msg.Subject = asunto;
                    SmtpClient client = new SmtpClient();
                    client.UseDefaultCredentials = true;
                    client.Send(msg);
                    enviado = true;
                }
                catch (FormatException e)
                {
                    throw new Exception(e.Message);
                }
                catch (SmtpException e)
                {
                    throw new Exception(e.Message);
                }
                return enviado;
            }

    ¿Cómo puedo arreglar ese error?

    lunes, 29 de enero de 2018 15:44

Respuestas

Todas las respuestas

  • Hola, por lo que entiendo eso te ha funcionado bien antes de publicarlo en el IIS esto es asi?,o cuando lo utilzas ejecutando desde el visual studio tampoco te ha funcionado?



    Votar es agradecer.
    Saludos.
    Lima-Perú


    lunes, 29 de enero de 2018 16:12
  • hola

    no puedes usar las default credentials cuando envias un mail desde el smt de gmail, debes indicar el usuario y password de una cuenta valida

    MailMessage - Envia mail con GMail (1/3)

    analiza como lo realizo en el articulo usando

    smtp.Credentials = new NetworkCredential("xx@gmail.com", "password"),

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 29 de enero de 2018 17:21
  • No entendieron la pregunta, tengo la página de contacto en mi sitio web y tengo que mandar un mail desde ahí, el remitente es cualquiera, que no conozco el mail y no se la contraseña, servidor, nada, y el receptor es mi mail.

    Eso ya está solucionado, envía el mail, pero ese mail queda en la carpeta c:\inetpub\mailroot\queue.

    ¿Cómo hago para que pase de la carpeta queue a mi mail de gmail?

    lunes, 29 de enero de 2018 17:46