Håller på att göra ett program som skall hämta ner epost från ett pop3 konto. Jag använder mig utav Indy.Sockets för att åstakomma det hela och det fungerar fint förutom en sak.
Jag får problem med att bokstäverna å ä ö förvandlas till =E5 =E4 =F6, någon som vet hur jag skall göra för att få det att fungera riktigt? Kanske skall jag byta från Indy till någonting annat? Några idéer?
Anledningen till att tecknen blir så är att de lagras som Quoted Printable i mailen, enligt standard. Använd en POP3-komponent i stället, så slipper du den huvudvärken, och får sannolikt en stabilare mailhantering på köpet.
Tackar, det fungerade utmärkt. Använde mig utav Lesnikowski's komponent.
Tänkte dock att jag skulle testa att skicka mail med komponenten också men lyckas inte med det, har gjort efter det exempel man kan ladda ner från sidan.
SimpleMailMessage sm = new SimpleMailMessage();
sm.Subject = "Test";
sm.From.Add(new MailBox("alice@mail.com", "Alice"));
sm.To.Add(new MailBox("bob@mail.com", "Bob"));
sm.TextDataString = "This is plain text message.";
SmtpMail mail = new SmtpMail(sm.CreateMail());
Smtp smtp = new Smtp();
try
{
smtp.Connect("smtp.domän.se");
smtp.Helo("domän.se");
smtp.SendMessage(mail);
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
finally
{
smtp.Close(true);
}
Det första felet jag får är:
System.NullReferenceException: Object reference not set to an instance of an object.
På raden:
sm.Subject = "Test";
Tar jag bort den raden och testar igen får jag följande:
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
På raden:
SmtpMail mail = new SmtpMail(sm.CreateMail());
Är det någon som har testat att skicka epost med Lesnikowski's komponent och fått det att fungera och kanske har några tips?
Hat testat lite andra komponenter (Indy.Sockets och System.Net.Mail) för att skicka och det har fungerat förutom att det blir problem med vissa tecken.