2009-07-29 4 views
1

다음 코드를 사용하여 이메일을 보내려고했습니다.5.5.4 잘못된 주소 오류가 발생하는 이유는 무엇입니까?

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; 
     } 

그러나 예외가 있습니다.

서버 응답 : 5.5.4 유효하지 않은 주소

전자 메일, 전자 메일, 서버 호스트 이름 및 포트가 모두 올바른지 확인하십시오. 정확한 동일한 입력 값을 가진 동일한 코드가 사무실의 다른 컴퓨터에서도 작동합니다.

답변

1

일부 디버깅을 완료 한 후에 답을 찾을 수 있습니다.

내 컴퓨터 이름이 'å'문자 (유효하지 않은 스웨덴 문자)가 있음을 나타냅니다. 그것을 바꾼 후에, 그것은 효과가 있었다.

1

주소 해석 및 유니 코드에 영향을 미치는 System.Net.Mail에 대한 KB가 출시되어 한 컴퓨터에서만 작동하는 이유가 다른 이유는이 KB가 존재하지 않았기 때문입니다. .NET 4.0에는 전자 메일 주소를 구문 분석 할 때 몇 가지 중요한 개선 사항이 있습니다.