I`m próby wysłania wiadomości e-mail za pośrednictwem C# i użyć następującego kodu:cyrylica kodowanie podlega w C# maili
public static bool SendSMTPMail(string smtphost, int smtpport, string smtplogin, string smtppassword, string from, string to, string subject, string body, bool isHtml)
{
try
{
using (MailMessage message = new MailMessage(from, to, subject, body))
{
message.IsBodyHtml = isHtml;
message.SubjectEncoding = System.Text.Encoding.UTF8;
message.BodyEncoding = System.Text.Encoding.UTF8;
SmtpClient mailClient = new SmtpClient(smtphost, smtpport);
mailClient.EnableSsl = false;
mailClient.DeliveryMethod = SmtpDeliveryMethod.Network;
mailClient.Credentials = new NetworkCredential(smtplogin, smtppassword);
mailClient.Send(message);
return true;
}
}
catch
{
return false;
}
}
To działa dobrze, gdy maili otrzymałem w Windows, ale gdy użytkownik próbuje je czytać w MacOS - nagłówek tematu jest błędnie zakodowany. Jeśli ustawiam kodowanie obiektowe na Windows-1251, działa dobrze, ale tylko w przypadku obiektów cyrylicą, a ja też wysyłam język azjatycki ...
Jak mogę wysłać e-maile używając czystego Unicode?
A drugie pytanie - jeśli dodam załącznik do maila, zostanie dodane dodatkowe pliki - "filelist.xml" i "header.htm".
Jak się ich pozbyć?
Thaks!
W podmiotu Outlook wygląda to„Subject: =? UTF-8? B? QnVzaW5lc3MgU3R1ZGlvINC00LvRjyDQv9GA0L7RhNC10YHR = = UTF-8? B? gdC40L7QvdCw0LvQvtCyLCDQstC10LHQuNC90LDRgCAwNi4wNC4xMiDQ = = UTF-8? B? SY4 = =”. Wygląda na to, że tak jak w przypadku błędu jest dzielenie ... – JleruOHeP
Czy użytkownik MacOS może dowiedzieć się, jakie kodowanie komputerów Mac myśli, że tak jest? Z jakiego programu pocztowego korzystają? Jeśli używają poczty internetowej, zasugeruj, aby ustawili kodowanie tekstu w przeglądarce na "auto". –
MAcOS używa automatycznego kodowania i nie pomaga. Próbowali również znaleźć właściwe kodowanie, sprawdzając każdą możliwość - ale to też nie pomaga – JleruOHeP