webForumDet fria alternativet

Html-mail encoding(?)

.NET

32 svar · 1 028 visningar · startad av Brimba · sida 2 av 2

Frågan, av Brimba

Någon som har skickat HTML mail med .net? När jag sätter mail.body till htmlkod så ser det perfekt ut, men mailet som kommer har tappat massa tecken, och det är olika om jag kollar i outlook express eller IMail (webmail). Jag har provat att sätta encoding iso-8859-1 och utf-8 på både mailet, streamingen samt html-sidan som jag hämtar från nätet. Någon som har varit ute för samma problem, eller tip

Läs frågan i sin helhet →
Medlem sedan aug. 20003 575 inlägg
#21

Skicka med utf8 då?.
Ingen av vad som kan vara fel.

Medlem sedan apr. 20012 266 inlägg
#22

ska leka lite nu :) återkommer med min kod

Medlem sedan dec. 19995 874 inlägg
#23

Testa följande kod, ni kommer (förhoppningsvis) att märka att den bryter efter x tecken och sedan fortsätter den igen.

En bugg i MailMessage-klassen?

string sBody = "<HTML><HEAD><META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=ISO-8859-1\"><title>Test</title></HEAD><BODY BGCOLOR=\"#495DA4\"><CENTER><br><br><img src=\"http://www.domain.se/gfx/layout/m_logga2.gif\"><br><table with=540 cellpadding=\"1\" cellspacing=\"0\" border=0><tr><td><img src=\"http://www.domain.se/gfx/layout/weekly_dates.gif\"></td></tr><tr><td bgcolor=\"#000000\"><table width=\"540\" cellspacing=\"0\" cellpadding=\"10\"><tr><td bgcolor=\"#FFFBE7\" width=\"540\"><CENTER><font size=\"3\" face=\"Verdana\"><B>Nya medlemmar i din &aring;lder!</B></font><br><br><font size=\"3\" face=\"Verdana\">1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br>2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789";
			sBody = sBody + "<br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö ";
			sBody = sBody + "123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklnmopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> ";
			sBody = sBody + "7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö ";
			sBody = sBody + "123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br></font></CENTER></td></tr></table></td></tr></table></CENTER></BODY></HTML>";

mail.Body = sBody;
Medlem sedan dec. 19995 874 inlägg
#24

Exempel på hur det ser ut när den bryter.

8abcdefghijklmnopqrstuvwxyzåäö 123456789
9abcdefghijklmnopqrstuvwxyzåäö 123456789
1abcdefghijklmnopqr
6abcdefghijklmnopqrstuvwxyzåäö 123456789
7abcdefghijklmnopqrstuvwxyzåäö 123456789

Som ni ser så skall första siffran vara 1,2,3,4,5,6,7,8,9,1,2,3,4 osv. Men efter 9 så börjar den på 1. Nästa siffra vi får se är 6, den har alltså kapat raderna 5,4,3,2 samt halva 1.

Medlem sedan dec. 19995 874 inlägg
#25

Jag har sniffat trafiken nu och det som den skickar in till mailservern är rätt. Det märkliga är att jag har provat två olika mailservrar. Dels exchange och dels Qmail, och den bryter på exakt samma ställe oavsett mailserver.

Medlem sedan dec. 19995 874 inlägg
#26

När jag skickar till min webmail (sqwebmail) blir det bara ett litet fel.

1abcdefghijklmnopqrstuvwxyzåäö 123456789
2abcdefghijklmnopqrstuvwxyzåäö 123456789
3abcdefghijklmnopqrstuvwxyzåäö 12345678! 9
4abcdefghijklmnopqrstuvwxyzåäö 123456789

Medlem sedan apr. 20012 266 inlägg
#27

puh, äntligen tillbaka online igen (telia strular)

testade följande och har inte upptäckt några tecken som saknas eller liknande. Jag skickade med SMTP servern i Windows Server 2003 och den skicka vidare till mitt webbhotell där jag hämtade mailet ifrån med outlook och allt verkar okej.

HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://renholm.mine.nu/default.aspx");
			WebResponse res = req.GetResponse();

			using(TextReader reader = new StreamReader(res.GetResponseStream(), System.Text.Encoding.GetEncoding("iso-8859-1")))
			{
				string page = reader.ReadToEnd();

				System.Web.Mail.MailMessage msg = new System.Web.Mail.MailMessage();
				msg.To			= "mail";
				msg.From		= "mail";
				msg.BodyFormat	= System.Web.Mail.MailFormat.Html;
				msg.Body		= page;
				msg.BodyEncoding = System.Text.Encoding.GetEncoding("iso-8859-1");
				msg.Subject		= "Test";

				System.Web.Mail.SmtpMail.SmtpServer = "yoda.renholm.local";
				System.Web.Mail.SmtpMail.Send(msg);

				lb.Text = page;
			}

			res.Close();
Medlem sedan dec. 19995 874 inlägg
#28

Ok, men jag ser ingen skillnad på din och min kod.

Vill du testa att sätta msg.Body till det som jag skrev förut?

string sBody = "<HTML><HEAD><META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=ISO-8859-1\"><title>Test</title></HEAD><BODY BGCOLOR=\"#495DA4\"><CENTER><br><br><img src=\"http://www.domain.se/gfx/layout/m_logga2.gif\"><br><table with=540 cellpadding=\"1\" cellspacing=\"0\" border=0><tr><td><img src=\"http://www.domain.se/gfx/layout/weekly_dates.gif\"></td></tr><tr><td bgcolor=\"#000000\"><table width=\"540\" cellspacing=\"0\" cellpadding=\"10\"><tr><td bgcolor=\"#FFFBE7\" width=\"540\"><CENTER><font size=\"3\" face=\"Verdana\"><B>Nya medlemmar i din &aring;lder!</B></font><br><br><font size=\"3\" face=\"Verdana\">1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br>2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789"; 
sBody = sBody + "<br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö "; 
sBody = sBody + "123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklnmopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> "; 
sBody = sBody + "7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö "; 
sBody = sBody + "123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 1abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 2abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 3abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 4abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 5abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 6abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 7abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 8abcdefghijklmnopqrstuvwxyzåäö 123456789 <br> 9abcdefghijklmnopqrstuvwxyzåäö 123456789 <br></font></CENTER></td></tr></table></td></tr></table></CENTER></BODY></HTML>";
Medlem sedan apr. 20012 266 inlägg
#29

Testat och det verkar funka som du vill att det ska fungera, vidarebefodrade mitt test mail till dig.

Medlem sedan dec. 19995 874 inlägg
#30

Det är tokkonstigt.
Kan jag få testa mot din mailserver?
Vad skall ja isåfall ange för from/to/smtp ? Så kan du skicka mig det mailet sedan.

Medlem sedan dec. 19995 874 inlägg
#31

Märkligt nog är det så att när jag kollar i meddelandekällan så finns ju både det när man ser det som icke html och som html. Det som är icke html har all text. Det med html visar 1023(!) tecken sedan bryter den rad (precis som notepad) och när den börjar på nästa rad så har den alltså missat massa tecken. Är det inte lite märkligt att det just är 1023-tecken?
Vad gör man?

Medlem sedan apr. 20012 266 inlägg
#32

Men hur var det, fungerade det när det sändes via min SMTP server och inte med din?

Medlem sedan dec. 19995 874 inlägg
#33

Nej, det var ingen skillnad

277 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
133 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
140 ms — ändringar (db)