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

Windows Forms Discussion :

Envoyer des mails avec System.Net.Mail.MailMessage & System.Net.Mail.SmtpClient


Sujet :

Windows Forms

  1. #1
    Membre du Club
    Inscrit en
    septembre 2006
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : septembre 2006
    Messages : 76
    Points : 50
    Points
    50
    Par défaut Envoyer des mails avec System.Net.Mail.MailMessage & System.Net.Mail.SmtpClient
    Bonjour à tous,

    Je veux faire une fonction qui permet d'envoyer des mails.
    J'utilise VS2005 et Windows XP comme environnement de développement.
    Voici dans ce qui suit le code que j'ai développé. je veux utiliser le serveur SMTP de Gmail pour l'envoi des mails.

    Merci de m'indiquer les correctifs à faire sur le code pour pouvoir envoyer les mails.

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
       Private Function EnvoyerMail() As Boolean
     
     
     
            Dim objMessage As System.Net.Mail.MailMessage
            Dim objAdrExp As System.Net.Mail.MailAddress
            Dim objAdrRec As System.Net.Mail.MailAddress
            Dim objSMTPClient As System.Net.Mail.SmtpClient
     
     
            Try
                objMessage = New System.Net.Mail.MailMessage()
     
                objAdrExp = New System.Net.Mail.MailAddress("xxx@hotmail.com")
     
                objAdrRec = New System.Net.Mail.MailAddress("xxx@gmail.com")
     
                ' ADRESSE MAIL DE L EXPEDITEUR
                objMessage.From = objAdrExp
     
                ' ADRESSE MAIL DU DESTINATAIRE
                objMessage.To.Add(objAdrRec)
     
                objMessage.Subject = "Salut c VB.Net qui envoi ce mail"
                objMessage.IsBodyHtml = False
     
                objSMTPClient = New System.Net.Mail.SmtpClient()
                objSMTPClient.Host = "???" ' Quoi mettre ici ??
                objSMTPClient.Port = 25
                objSMTPClient.Send(objMessage)
                MsgBox("Ok")
     
            Catch ex As Exception
                MsgBox("Exception : " & ex.Message)
            End Try
     
     
        End Function

  2. #2
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Quelle est la question précise ?
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  3. #3
    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 : 40
    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 710
    Points
    39 710
    Par défaut
    Le serveur SMTP de GMail est smtp.gmail.com, et il nécessite une authentification. Pas mal de gens ont eu des problèmes pour l'envoi via GMail, fait une recherche sur "gmail smtp" dans le forum .NET, il y a pas mal de discussions qui en parlent

  4. #4
    Membre du Club
    Inscrit en
    mars 2006
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : mars 2006
    Messages : 61
    Points : 41
    Points
    41
    Par défaut
    bonjour,

    voilàa la modif que tu dois faire pour envoyer des mails à l'aide du serveur smpt Gmail et de ton compte sur Gmail :

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     Private Function EnvoyerMail() As Boolean
     
     
     
            Dim objMessage As System.Net.Mail.MailMessage
            Dim objAdrExp As System.Net.Mail.MailAddress
            Dim objAdrRec As System.Net.Mail.MailAddress
            Dim objSMTPClient As System.Net.Mail.SmtpClient
     
     
            Try
                objMessage = New System.Net.Mail.MailMessage()
     
                objAdrExp = New System.Net.Mail.MailAddress("xxx@hotmail.com")
     
                objAdrRec = New System.Net.Mail.MailAddress("xxx@gmail.com")
     
                ' ADRESSE MAIL DE L EXPEDITEUR
                objMessage.From = objAdrExp
     
                ' ADRESSE MAIL DU DESTINATAIRE
                objMessage.To.Add(objAdrRec)
     
                objMessage.Subject = "Salut c VB.Net qui envoi ce mail"
                objMessage.IsBodyHtml = False
     
                objSMTPClient = New System.Net.Mail.SmtpClient("smtp.gmail.com", 587)
                objSMTPClient .EnableSsl = True
                objSMTPClient .Credentials = New NetworkCredential("ton adresse gmail", "ton mot de pass")
                objSMTPClient.Send(objMessage)
                MsgBox("Ok")
     
            Catch ex As Exception
                MsgBox("Exception : " & ex.Message)
            End Try
     
        End Function
    j'espére que ça va t'aider


    Mehdi,

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    août 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : août 2004
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Salut,

    ce code fonctionne très bien, je recherche le procédé inverse qui permet de récupérer la liste des messages d'un compte smtp (pas forcement gmail) (juste les expéditeurs et objets) ?

    merci d'avance,

    franck

  6. #6
    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 : 40
    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 710
    Points
    39 710
    Par défaut
    Citation Envoyé par Jimfire Voir le message
    je recherche le procédé inverse qui permet de récupérer la liste des messages d'un compte smtp (juste les expéditeurs et objets) ?
    Ca risque d'être difficile, vu que le protocole SMTP ne sert qu'à envoyer des mails, pas à les recevoir... Pour accéder au contenu d'une boite mail, le protocole le plus utilisé est POP3. Le framework ne contient pas de classes dédiées à ce protocole, mais en cherchant sur google tu devrais trouver quelques bouts de code pour faire ça. Le protocole est assez simple, donc il n'y a pas de grosses difficultés, surtout si tu ne veux que l'expéditeur et le sujet. Par contre le décodage du corps du message est un peu plus complexe à cause de la multitude de formats possibles...

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    août 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : août 2004
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    honte à moi, je pensais bien sur à POP3 mais mes doigts ont fourchés !!!
    par contre, tu as indirectement répondu à ma question : pas de classe dédiée à pop dans le framework !!!
    merci pour ta réponse rapide.

    Franck

  8. #8
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    décembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : décembre 2007
    Messages : 42
    Points : 19
    Points
    19
    Par défaut
    Bonjour

    vous utiliser ce code comment ? vous le mettez sur un bouton ??

    qui y'a t'il comme contrôler ?

    Merci

  9. #9
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    décembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : décembre 2007
    Messages : 42
    Points : 19
    Points
    19
    Par défaut
    je suis arriver a faire marcher , mais quand j'envoie

    sur ma boite mail sa me mais notfication Failure.

  10. #10
    Membre averti Avatar de roster
    Profil pro
    Inscrit en
    décembre 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : décembre 2008
    Messages : 397
    Points : 426
    Points
    426
    Par défaut
    Citation Envoyé par AcideBlood Voir le message
    je suis arriver a faire marcher , mais quand j'envoie

    sur ma boite mail sa me mais notfication Failure.
    Peut-être un problème de nom d'utilisateur et/ou mot de passe?!

    Il faut évidement un compte Gmail actif pour pouvoir utiliser leur SMTP.

  11. #11
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    décembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : décembre 2007
    Messages : 42
    Points : 19
    Points
    19
    Par défaut
    bonjour

    la boite mail que j'utilise et hotmail. quelqun et arriver a le faire marcher ? ou
    sinon pourait me donner un code qui marche.

    Merci

  12. #12
    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 : 40
    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 710
    Points
    39 710
    Par défaut
    Hotmail/Live mail ne propose pas de service POP ou SMTP, il y a juste un protocole propriétaire utilisé par Outlook et Windows Mail. Donc tu peux pas envoyer de mail automatiquement avec Hotmail...

  13. #13
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    décembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : décembre 2007
    Messages : 42
    Points : 19
    Points
    19
    Par défaut
    ok Merci , je vient de me faire un compte gmail , mais pareil

    mail Failure

  14. #14
    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 : 40
    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 710
    Points
    39 710
    Par défaut
    mais tu le vois où ce message "notification failure" ?? ça ressemble à ce qu'on reçoit quand on envoie un mail à une adresse qui n'existe pas...

  15. #15
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    décembre 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : décembre 2007
    Messages : 42
    Points : 19
    Points
    19
    Par défaut
    bonjour

    je le voie dans ma boite gmail

    de Mail Delivery Subsystem <mailer-daemon@googlemail.com>
    à 00000@gmail.com
    date 7 mai 2009 17:15
    objet Delivery Status Notification (Failure)

    Follow up message
    This is an automatically generated Delivery Status Notification

    Delivery to the following recipient failed permanently:

    xxxxx@hotmail.com

    voila.

  16. #16
    Membre averti Avatar de roster
    Profil pro
    Inscrit en
    décembre 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : décembre 2008
    Messages : 397
    Points : 426
    Points
    426
    Par défaut
    Je pense que ton code marche et que le problème vient de chez Hotmail.
    Essais d'envoyer un message sur une boite yahoo par exemple.

  17. #17
    Membre averti Avatar de roster
    Profil pro
    Inscrit en
    décembre 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : décembre 2008
    Messages : 397
    Points : 426
    Points
    426
    Par défaut
    Je ne suis pas sûr d'avoir bien compris, tu envois de Gmail vers Hotmail ou l'inverse?

  18. #18
    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 : 40
    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 710
    Points
    39 710
    Par défaut
    ce message indique juste que le destinataire n'existe pas... le fait que tu aies reçu ça prouve même que ton code fonctionne sans problème

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 10/03/2013, 14h31
  2. Envoyer des email avec PHP
    Par dolf13 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 12/07/2006, 11h49
  3. [PHP-JS] envoyer des données avec un boutton hidden
    Par moonia dans le forum Langage
    Réponses: 22
    Dernier message: 23/06/2006, 17h30
  4. Réponses: 1
    Dernier message: 15/05/2006, 19h05
  5. envoyer des images avec access
    Par dan664 dans le forum Access
    Réponses: 6
    Dernier message: 13/10/2005, 22h16

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