Pregunta

Intenté enviar un correo electrónico con el siguiente código:

MailMessage message = new MailMessage();

        message.From = new MailAddress(fromMailAddress.Trim());
        message.To.Add(new MailAddress(toMailAddress.Trim()));

        message.Subject = subject;
        message.Body = body;
        message.SubjectEncoding = System.Text.Encoding.UTF8;
        message.BodyEncoding = System.Text.Encoding.UTF8;
        SmtpClient client = new SmtpClient();
        try
        {
            client.Send(message);
        }
        catch(Exception e)
        {
            throw e;
        }

Sin embargo, tengo la excepción:

  

La respuesta del servidor fue: 5.5.4 Dirección no válida

El correo electrónico, el correo electrónico, el nombre de host del servidor y el puerto son correctos. El mismo código exacto, con los mismos valores de entrada exactos, funciona en otra máquina en nuestra oficina

¿Fue útil?

Solución

Encontré la respuesta después de una depuración exhaustiva.

Resulta que el nombre de mi máquina tiene un carácter '& # 229;' (carácter sueco no válido). Después de cambiar eso, funcionó.

Otros consejos

Se publicó una KB para System.Net.Mail que afectó el análisis de direcciones y Unicode, por lo que la razón por la que funcionó en una máquina y no en la otra fue la presencia de esta KB. .NET 4.0 también tiene algunas mejoras significativas en el análisis de las direcciones de correo electrónico.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top