EvilGost
Messages postés235Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention16 mai 2011
-
19 juil. 2007 à 15:30
EvilGost
Messages postés235Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention16 mai 2011
-
19 juil. 2007 à 17:06
Bonjour à tous,
Je
suis actuellement en train de développer une application qui doit lire
les mails reçus, télécharger les fichier joints et supprimer ces
emails, grâce à une connexion POP SSL.
Le problème, c'est que j'ai
beau parcourir le web, je ne trouve pas le code que je cherche. J'ai
reussi à me fabriquer un début de code grâce à une source, pour la
connexion, en y insérant une connexion SSL (ne faites pas attention au
nommage des variables ou autre, j'ai repris une partie du code et ce
n'est que pour le test):
Public Function Connection
NbMails = 0
Dim retServer As String
Try
' Initialisation
co = New TcpClient(Server, ServerPort)
'ssl
pop3Stream = New SslStream(co.GetStream(), False)
pop3Stream.ReadTimeout = 30
pop3Stream.AuthenticateAsClient(Server)
ns = co.GetStream()
sr = New StreamReader(pop3Stream)
MsgBox(sr.ReadLine)
Dim sOut As String = "USER " & User & vbCrLf
' Envoi du login
SendStream(sOut)
retServer = sr.ReadLine
MsgBox(sr.Readline) 'génère une erreur car sr.Readline=nothing
RaiseEvent ConnectionStatus(retServer)
' Envoi du mot de passe
sOut = "PASS " & PWord & vbCrLf
SendStream(sOut)
retServer = sr.ReadLine
RaiseEvent ConnectionStatus(retServer)
If retServer.Substring(0, 4) <> "-ERR" Then
NbMails = RecupMsgInfo(1)
RaiseEvent ConnectionStatus("Nombre de mails: " & NbMails.ToString())
Return True
Else
RaiseEvent ConnectionStatus("Identification refusée !")
Return False
End If
Catch ex As Exception
RaiseEvent ConnectionStatus(ex.ToString())
Return False
End Try
End Function
' Envoi des commandes
Private Sub SendStream(ByVal s As String)
Dim FluxSortant() As Byte
FluxSortant = EncodeByte(s)
Try
ns.Write(FluxSortant, 0, FluxSortant.Length)
Catch ex As Exception
RaiseEvent ConnectionStatus(ex.Message)
End Try
End Sub
' Encodage des commandes pour POP3
Private Function EncodeByte(ByVal s As String) As Byte()
Return System.Text.ASCIIEncoding.ASCII.GetBytes(s.ToCharArray())
End Function
Premier problème:
- Le premier MsgBox me ramène bien le message d'accueil du serveur "+OK wee01s Cyrus POP3 Murder v2.3.7 server ready", en revanche, le second me manène "nothing" et me génère une erreur, au lieu de me retourner "+OK password". Le problème vient peut-être de mon implémentation pour le SSL, je ne sais pas
- 2ème
soucis, je ne trouve pas de code pour télécharger les pièces jointes.
et je suis vraiment coincé, car c'est le but premier de mon
application.
Je m'en remets donc à vous car je suis vraiment
coincé, impossible de passer le login, et impossible de trouver le code
pour télécharger les fichiers joints;