Hei
Osaako joku kerota mitä pitäisi tehdä/missä vikaa kun lähetän vb:llä gmailin kautta sähköpostin ja luen sen vb:n kautta niin, jos spostissa on scandinaavisia merkkejä niin koko viesti on täynnä ihmeellisiä merkkejä, eikä saa selvää. Jos luen viestin Outlook expressin kautta niin on täysin luettavissa.
Jos scandinaavisia merkkejä ei ole niin on täysin luettavissa...
t. jokke
Näillä lähtötiedoilla voin lähinnä sanoa, että teit jotain väärin.
Kuulostaa siltä että mahdollisesti luet UTF8-enkoodatun viestin Latin1-merkistöllä jossain vaiheessa. Tarkemmin on vaikea sanoa, koska kaikki toteutuksesi yksityiskohdat ovat hämärän peitossa.
Miten/millä funktiolla lähetätä postin? Minulla kävi niin, että en pystynyt enkoodaamaan äätä, öötä enkä ååta ja niistä tuli "q".
Näin lähetän
Dim MyMailMsg As New MailMessage Try MyMailMsg.From = New MailAddress("sposti@gmail.com", "Postia") MyMailMsg.To.Add(emailVastaanottaja) MyMailMsg.Subject = emailOtsikko MyMailMsg.Body = emailViesti MyMailMsg.IsBodyHtml = True Dim SMTP As New SmtpClient("smtp.gmail.com") SMTP.Port = 587 SMTP.EnableSsl = True SMTP.Credentials = New System.Net.NetworkCredential("sposti@gmail.com", "salasana") SMTP.Send(MyMailMsg) Catch ex As Exception End Try
ja näin luen
Muuta niistä skandinavimerkeistä joitain merkkipötköjä. Tällöin pysyt lukemaan viestiä vain vastaanotinhärvelillä. Tai voithan tietysti kokeilla laittaa bodyn alkuun jotain kieli/koodausmääritelmää. Purkkaratkaisuna ehkä sopii ä (ä), ö (ö) ja joku muu.
Lähetin outlookin kautta viestin, jossa mm. ö ja ä kirjaimia.
vb lukee sen ja laittaa ö ja ä kirjaimien tilalle vain jonkun epämääräisen merkin, mutta ei sotke koko viestiä.
vb:n lähettämässä viestissä, jossa ö ja ä kirjaimia näyttää taas tältä:
vähän viestin alkua... :
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQoqKiogS0VSVEFSRVRLSSA
KioNCjI0LjkuMjAxMQ0KMTc6NDYNCjQxDQpIYW5uZWxlDQpQQUkNCkhhbm5lbGU
Voisiko vika olla kuitenkin lähettämisessä?
Pliis, joku Teistä taitavista koodaajista, auttakaa.
Kiitos
Vika on siinä, että tuo naivistinen pop3-esimerkki mitä käytät ei ymmärrä mitään sähköpostin koodausstandardeista, eikä se näin ollen sovellu kuin 7-bittistä merkistöä käyttävien viestien lukemiseen.
Voit lukea sen viestin tuolla ja hoitaa Base64-dekoodaamisen itse. Kuitenkin on mahdollista että viestit tulee Quoted Printableina, eli pitäisi lukea ne mime-otsikot ja niistä päätellä pitääkö käyttää base64-dekoodausta vai palauttaa quoted-printabled takaisin. Tai sitten voit käyttää jotain parempaa koodia, joka hoitaa käsittelyn automaattisesti.
Tuolla on esimerkiksi hieman monipuolisempi Pop3-clientti
http://www.codeproject.com/KB/IP/despop3client.
Kiitos Grez
Aihe on jo aika vanha, joten et voi enää vastata siihen.