Pergunta

Eu tentei enviar um e-mail usando o seguinte 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;
        }

No entanto, eu tenho a exceção:

A resposta do servidor foi: 5.5.4 endereço inválido

A partir de e-mail, para e-mail, nome de host do servidor ea porta estão todos corretos. O exato mesmo código, com exatos mesmos valores de entrada funciona em outra máquina em nosso escritório

Foi útil?

Solução

Descobri a resposta depois de alguma depuração completa.

Acontece que o meu nome da máquina tem um 'A'-character (personagem sueco inválido) na mesma. Depois de mudar isso, funcionou.

Outras dicas

Houve um KB lançado para System.Net.Mail que a análise endereço afetada e Unicode de modo que a razão ele trabalhou em uma máquina e não a outra era provável a presença deste KB. NET 4.0 também tem algumas melhorias significativas na análise de endereços de email.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top