IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Contribuez .NET Discussion :

Tutorial pop3 et vb.net


Sujet :

Contribuez .NET

  1. #1
    Membre averti
    Avatar de alex61
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2010
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2010
    Messages : 378
    Points : 392
    Points
    392
    Par défaut Tutorial pop3 et vb.net
    bonjour

    voila ca fait une semaine que je cherche comment gérer le pop3 avec vb.net

    et j'ai enfin trouver ca grâce au forum


    donc je pense qu'il serait bon d'écrire un tutoriel la dessus car le framework.net ne gère pas le pop3 et donc il faut passer par les socket si on veut l'utiliser , ce qui devient très vite une usine a gaz ...

    je précise qu'aucun tutoriel la dessus n'existe sur developpez.net

    donc si vous souhaiter que j'en écrive un , vous n'avez qu'a me contacter et m'ajouter les droit


    cordialement

    si tu es perdu clique ici
    langage connus : xhtml/css , ASP.NET/VB.NET , JS, JQuery , PHP , SQL, PL/SQL, JAVA,
    BI : DataStage ,Essbase , BO , Microsoft BI , SAS, Talend, Cognos, Qliqview

  2. #2
    Expert éminent sénior

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Points : 12 465
    Points
    12 465
    Par défaut
    Bonjour,

    cela peut effectivement être très intéressant !

    Ce que je te propose, en terme de processus, c'est que tu commences une première version de l'article, pour avoir une base de travail, et on voit comment avancer à partir de la (site web, relecture, et tout le toutim )

    Mon Blog

    The Cake is still a lie !!!



    Vous voulez contribuer à la rubrique .NET ? Contactez-moi par MP.
    Vous voulez rédiger des articles pour la rubrique .NET ? Voici la procédure à suivre.

  3. #3
    Membre averti
    Avatar de alex61
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2010
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2010
    Messages : 378
    Points : 392
    Points
    392
    Par défaut
    d'accord

    je penser a un plan pour l'article


    -introduction : pourquoi utilisé une Dll pour gérer le pop3
    -paramétrer la connexion au serveur
    -récupérer ses mail
    -afficher ses mail
    - enregistrer ses mail


    voila je vous fournirai tout ca au plus vite

    je le poste sur le forum ou vous l'envoie par mail ?

    cordialement

    si tu es perdu clique ici
    langage connus : xhtml/css , ASP.NET/VB.NET , JS, JQuery , PHP , SQL, PL/SQL, JAVA,
    BI : DataStage ,Essbase , BO , Microsoft BI , SAS, Talend, Cognos, Qliqview

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par alex61 Voir le message
    je précise qu'aucun tutoriel la dessus n'existe sur developpez.net
    Tu as mal cherché
    http://lgmorand.developpez.com/dotnet/mail/

    C'est pas vraiment complet, mais ça fait un bon point de départ

  5. #5
    Membre averti
    Avatar de alex61
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2010
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2010
    Messages : 378
    Points : 392
    Points
    392
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Tu as mal cherché
    http://lgmorand.developpez.com/dotnet/mail/

    C'est pas vraiment complet, mais ça fait un bon point de départ
    oui ca permet de gérer le POP3 mais au niveau des socket, ce qui est long a coder

    alors que openPOP.dll simplifie tout ca

    si tu es perdu clique ici
    langage connus : xhtml/css , ASP.NET/VB.NET , JS, JQuery , PHP , SQL, PL/SQL, JAVA,
    BI : DataStage ,Essbase , BO , Microsoft BI , SAS, Talend, Cognos, Qliqview

  6. #6
    Membre averti
    Avatar de alex61
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2010
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2010
    Messages : 378
    Points : 392
    Points
    392
    Par défaut
    bonjour

    je place ci-dessous la première version de mon tutoriel

    a vous de me donné vos avis

    ----------------------------------------------------------------------------

    TUTORIEL OPENPOP

    I Introduction

    Openpop.dll est une DLL pour .net permettant de gérer les connexions à un serveur POP3 avec ou sans connexion SSL

    Elle est téléchargeable sur http://sourceforge.net/projects/hpop/ et des documentation pour le développeur son disponible sur http://hpop.sourceforge.net/


    II Ouvrir une connexion

    C#

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    using(Pop3Client client = new Pop3Client())
        {
            // Connexion au serveur 
            client.Connect(hostname, port, useSsl);
     
            // Authentification SSL 
            client.Authenticate(username, password);
    	}

    VB.NET

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Using client As New Pop3Client()
    	' Connexion au serveur 
    	client.Connect(hostname, port, useSsl)
     
    	' Authentification SSL 
    	client.Authenticate(username, password)
    End Using
    Pour ouvrir une connexion au serveur il faut instancier Pop3Client()
    Ensuite, utiliser la méthode connect avec le serveur (ex : pop.gmail.com) , le port ( 110,995), et si l’on utilise le SSL
    Si c’est le cas on doit utiliser la méthode Authenticate avec son adresse ou login et sn mot de passe

    Ceci ne sert qu’a la connexion et a rien d’autre.


    III Télécharger ses mails

    VB.NET

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    Public Shared Function FetchAllMessages(ByVal hostname As String, ByVal port As Integer, ByVal useSsl As Boolean, ByVal username As String, ByVal password As String) As List(Of Message)
     
            Using client As New Pop3Client()
     
                client.Connect(hostname, port, useSsl)
     
                client.Authenticate(username, password)
                ' obtient le nombre de message sur le serveur
                Dim messageCount As Integer = client.GetMessageCount()
                ' decalration de la varible contenant la liste de message
                Dim allMessages As New List(Of Message)(messageCount)
                'début de la boucle recuperant les message un a un 
                For i As Integer = 1 To messageCount
                    allMessages.Add(client.GetMessage(i))
                    Form1.Text = "telechargement des messages .... " & i & "/" & messageCount
                Next
                Form1.Text = "Message Telecharger"
                Dim nb As Integer = allMessages.Count
                nb = nb - 1
                ' Now return the fetched messages
                MsgBox("mail chargé")
                Return allMessages
            End Using
     
        End Function
    C#

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    public static List<Message> FetchAllMessages(string hostname, int port, bool useSsl, string username, string password)
    {
     
    	using (Pop3Client client = new Pop3Client()) {
     
    		client.Connect(hostname, port, useSsl);
     
    		client.Authenticate(username, password);
    		// obtient le nombre de message sur le serveur
    		int messageCount = client.GetMessageCount();
    		// decalration de la varible contenant la liste de message
    		List<Message> allMessages = new List<Message>(messageCount);
    		//début de la boucle recuperant les message un a un 
    		for (int i = 1; i <= messageCount; i++) {
    			allMessages.Add(client.GetMessage(i));
    			Form1.Text = "telechargement des messages .... " + i + "/" + messageCount;
    		}
    		Form1.Text = "Message Telecharger";
    		int nb = allMessages.Count;
    		nb = nb - 1;
    		// Now return the fetched messages
    		Interaction.MsgBox("mail chargé");
    		return allMessages;
    	}
     
    }
    Cette fonction permet de retourner la liste des messages récupérer (allMessages)

    IV Lire le corps de ses mails

    Pour la lecture des mail j’ai placer une listbox qui contient la liste des sujet des mail er une richtextbox qui contient le corps du mail sélectionner dans la listbox
    Je précise que j’ai fait retourner la liste des message dans une variable global appelé lstmsg

    VB.NET

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Public Sub affichage(ByVal malstmsg As List(Of Message))
            Dim nb As Integer = malstmsg.Count
            For i As Integer = 0 To nb - 1
                ListBox1.Items.Add(lstmsg(i).Headers.Subject)
            Next
        End Sub
     
    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
            ' MsgBox(ListBox1.Text)
            For i As Integer = 0 To lstmsg.Count - 1
                If lstmsg(i).Headers.Subject = ListBox1.Text Then
     
                    'RichTextBox1.Text = lstmsg(i).MessagePart.Body.ToString
                    ' RichTextBox1.Text = lstmsg(i).MessagePart.GetBodyAsText.ToString
     
                    RichTextBox1.Text = lstmsg(i).ToMailMessage.Body
     
                End If
     
     
            Next
    C#

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Public Sub affichage(ByVal malstmsg As List(Of Message))
            Dim nb As Integer = malstmsg.Count
            For i As Integer = 0 To nb - 1
                ListBox1.Items.Add(lstmsg(i).Headers.Subject)
            Next
        End Sub
     
    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
            ' MsgBox(ListBox1.Text)
            For i As Integer = 0 To lstmsg.Count - 1
                If lstmsg(i).Headers.Subject = ListBox1.Text Then
     
                    'RichTextBox1.Text = lstmsg(i).MessagePart.Body.ToString
                    ' RichTextBox1.Text = lstmsg(i).MessagePart.GetBodyAsText.ToString
     
                    RichTextBox1.Text = lstmsg(i).ToMailMessage.Body
     
                End If
     
     
            Next

    si tu es perdu clique ici
    langage connus : xhtml/css , ASP.NET/VB.NET , JS, JQuery , PHP , SQL, PL/SQL, JAVA,
    BI : DataStage ,Essbase , BO , Microsoft BI , SAS, Talend, Cognos, Qliqview

  7. #7
    Membre averti
    Avatar de alex61
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2010
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2010
    Messages : 378
    Points : 392
    Points
    392
    Par défaut
    aucun retour ?

    comment dois-je faire pour publier ce tutoriel ?

    si tu es perdu clique ici
    langage connus : xhtml/css , ASP.NET/VB.NET , JS, JQuery , PHP , SQL, PL/SQL, JAVA,
    BI : DataStage ,Essbase , BO , Microsoft BI , SAS, Talend, Cognos, Qliqview

  8. #8
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2013
    Messages : 57
    Points : 40
    Points
    40
    Par défaut
    Bonjour,

    Je viens de lire et de mettre en pratique ton programme. Cependant dans mon cas, le logiciel ne peut reconnaître qu'une fois les mails. Je m'explique si j’arrête l'application et un nouveau test les derniers mails ne s'affiche pas . Aurais - tu une explication ?

    J'ai essayer de faire client.disconnect , vider la lister clore le client TCP mais cela n'a rien donné.

    cdt,
    kevin

Discussions similaires

  1. Réponses: 3
    Dernier message: 20/12/2007, 14h27
  2. Livres, tutorials et cours sur C# .net 3.0 WPF WCF
    Par anisb dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 21/09/2007, 13h38
  3. [.NET][PPC] Class POP3 gratuite pour pocket pc / Win CE
    Par freddyboy dans le forum Windows Mobile
    Réponses: 5
    Dernier message: 19/12/2005, 11h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo