2012-05-03 10 views
8

Mam ten fragment kodu, który tworzy załącznik i wysyła wiadomość e-mail. Jeśli nazwa pliku zawiera æ, ø lub æ, ​​nazwa jest całkowicie zniszczona.Nazwa załącznika jest błędnie zdekodowana, jeśli używane są norweskie litery.

enter image description here

Jeśli usunąć norweski litery, wszystko jest ok

enter image description here

 var stream = new MemoryStream(); 
     doc.Save(stream, SaveFormat.Docx); 

     mail.From = new MailAddress("[email protected]"); 
     mail.To.Add("[email protected]"); 
     mail.IsBodyHtml = true; 
     mail.Subject = "Attachments test"; 
     mail.Body = "Hei,<br /><br />"; 
     stream.Seek(0, SeekOrigin.Begin); 

     var attachment = new Attachment(stream, "Name Å Æ Ø.docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document"); 
     attachment.NameEncoding = Encoding.UTF8; 
     mail.Attachments.Add(attachment); 
     var smtp = new SmtpClient("smtp.server.com") {Port = 25}; 
     smtp.Send(mail); 

Jak zdobyć tę pracę prawidłowo?

ROZWIĄZANIE

znalazłem rozwiązanie tutaj http://social.msdn.microsoft.com/Forums/en-US/dotnetframeworkde/thread/b6c764f7-4697-4394-b45f-128a24306d55

+0

jest '' MailMessage' mail' się? Jeśli tak, czy możesz sprawdzić, czy wszystkie właściwości "kodowania", takie jak "BodyEncoding", "HeadersEncoding" itd., Mają tę samą wartość? –

+0

Wszystkie te parametry to UTF8> mail.SubjectEncoding = Encoding.UTF8; mail.BodyEncoding = Encoding.UTF8; mail.HeadersEncoding = Encoding.UTF8; To nie pomaga. – podeig

Odpowiedz

0

Spróbuj zmienić attachment.NameEncoding = Encoding.UTF8; do attachment.NameEncoding = Encoding.Unicode;.

+0

Próbowałem wszystkich Encodings. Jeśli użyję nazwy Unicode w ten sposób = utf-16MUAByg8 ........ zbliża się. – podeig

1

tutaj jest dla rozdzielczości od Microsoft .NET Framework 4

http://support.microsoft.com/kb/2402064

+1

bezpośrednie pobieranie: 64: http://hotfixv4.microsoft.com/ .NET%20Framework%204.0%20-%20Windows%20XP,%20Windows%202003,%20Windows%20Vista,%20Windows%20Server%202008,%20Win7, % 20Windows% 20Serwer% 202008% 20R2% 20 (MSI) /nosp/DevDiv933059/30319.364/free/421618_intl_x64_zip.exe 32: http://hotfixv4.microsoft.com/.NET%20Framework%204.0%20-%20Windows % 20XP,% 20Windows% 202003,% 20Windows% 20Vista,% 20Windows% 20Serwer% 202008,% 20Win7,% 20Windows% 20Serwer% 202008% 20R2% 20 (MSI) /nosp/DevDiv933059/30319.364/free/421617_intl_i386_zip.exe – phoenix

Powiązane problemy