Comment utiliser smtp.gmail.com en VB.Net

Résolu/Fermé
Sam_Placi Messages postés 38 Date d'inscription mercredi 29 juin 2022 Statut Membre Dernière intervention 22 mai 2023 - Modifié le 29 juin 2022 à 08:14
Sam_Placi Messages postés 38 Date d'inscription mercredi 29 juin 2022 Statut Membre Dernière intervention 22 mai 2023 - 29 juin 2022 à 13:09
Bonjour,

J'utilisais quelques codes qui me permettaient d'envoyer des mails via smtp.gmail.com. Il fallait juste autoriser l'accès au compte gmail par les applications "moins sécurisée". GMail ne le permet plus, il faut obtenir un mot de passe d'application.
Mais même avec le mot de passe fourni par gmail, mon code ne fonctionne plus.

Quelqu'un peut-il me dire où est la faute ?

Merci d'avance,

Sam

Voici mon code de test :

 
Imports System.Net.Mail
Imports System.Text
Public Class Form1
 
    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
 
        Dim Mail As MailMessage = Nothing
        Dim smtp As SmtpClient = Nothing
        Dim Expediteur As String = CompteGmailDeLExpediteur
        Dim Destinataire As String = AdresseMailDestinataire
        Try
 
            Mail = New System.Net.Mail.MailMessage
            Mail.SubjectEncoding = UTF8Encoding.UTF8
            Mail.BodyEncoding = UTF8Encoding.UTF8
            Mail.Subject = "Test Smtp GMail"
            Mail.Body = "Message de Test Smtp GMail " & Now()
            Mail.From = New MailAddress(Expediteur)
            Mail.To.Add(New MailAddress(Destinataire))
 
            smtp = New SmtpClient()
            smtp.Host = "smtp.gmail.com"
            smtp.Port = 25
            smtp.EnableSsl = True
            smtp.Credentials = New System.Net.NetworkCredential(CompteGmailDeLExpediteur, MotDePasse) ' mot de passe d'application généré par Google 
 
            Try
                smtp.Send(Mail)
            Catch ex As Exception
                MessageBox.Show(ex.Message)
            End Try
            Mail.Attachments.Clear()
            Mail.Attachments.Dispose()
            Mail.Dispose()
 
        Catch ex As ApplicationException
            MessageBox.Show(ex.Message)
        Finally
            smtp = Nothing
            Try
                Mail.Dispose()
            Catch
            End Try
            Mail = Nothing
        End Try
 
    End Sub
 
End Class





Configuration: Configuration: Windows / Chrome 103.0.5060.66
A voir également:

4 réponses

barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905
29 juin 2022 à 09:25
Bonjour,

Vu que ton code active le SSL, tu devrais modifier le port en remplaçant le port 25 par le port 465.
Tu peux aussi essayer le port 587 correspondant à TLS/STARTTLS.

1
Whismeril Messages postés 19021 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 16 avril 2024 928
29 juin 2022 à 08:14
Bonjour

Ici quelqu'un qui a le même soucis (sans solution pour le moment)
https://codes-sources.commentcamarche.net/forum/affich-10108737-probleme-envoi-photos-par-mail-avec-gmail

Pour l'un et l'autre, avez vous contacté le support google?
0
Sam_Placi Messages postés 38 Date d'inscription mercredi 29 juin 2022 Statut Membre Dernière intervention 22 mai 2023
29 juin 2022 à 10:03
J'ai un peu de mal avec l'utilisation de ce forum, donc pardonne moi si je fais du redondant.

Je crois avoir communiqué la solution au post 10108737 et j'insite sur ce détail :
"autoriser les appli moins sécurisées" n'existe plus. Il faut demander un mot de passe d'application : voir la vidéo : https://www.youtube.com/watch?v=rlhtIz_Xl9g

Attention que le code soumis dans ce post du 26 juin est un peu différent de celui que je propose.

J'espère que chacun s'y retrouvera ...

Sam
0
Whismeril Messages postés 19021 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 16 avril 2024 928 > Sam_Placi Messages postés 38 Date d'inscription mercredi 29 juin 2022 Statut Membre Dernière intervention 22 mai 2023
29 juin 2022 à 12:16
En fait CodeS SourceS et CCM sont deux sites différents, donc y'a pas vraiment doublon.
Mais j'ai voulu regrouper pour mutualiser la solution et ça a marché.
Merci à toi d'avoir partagé sur l'autre sujet
0
Sam_Placi Messages postés 38 Date d'inscription mercredi 29 juin 2022 Statut Membre Dernière intervention 22 mai 2023
29 juin 2022 à 09:48
Merci pour ta réponse.
Avec port 25 sans SSL ou 465 avec SSL, rien n'y fait ....
Mais avec port 587 et avec SSL, ça marche nickel.
Très bonne journée à toi
0
barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024 4 905
29 juin 2022 à 11:11
Merci bonne journée également.
0
DANTOTO Messages postés 34 Date d'inscription mardi 21 juin 2022 Statut Membre Dernière intervention 5 juin 2023 1 > barnabe0057 Messages postés 14439 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 14 avril 2024
29 juin 2022 à 12:18
Bonjour à tous.
Pour ma part j'ai résolu tous les problèmes pour l'envoi de mail viens Gmail.
J'ai par contre des problèmes nouveaux pour l'envoi de mail via SFR ou Club–Internet.
Quelqu'un aurait-il une solution ou une explication.
Mon code fonctionnait parfaitement jusqu'à la faim du mois de mai.
Merci à tous de votre aide.
0
Sam_Placi Messages postés 38 Date d'inscription mercredi 29 juin 2022 Statut Membre Dernière intervention 22 mai 2023
29 juin 2022 à 13:09
Bonjour Dantoto,
Le non fonctionnement de mon code de ce matin a été résolu avec port 587 et ssl. Mais le compte pour lequel j'ai demandé le mot de passe d'application est un compte gmail imap. Il est possible que pour un compte pop, tu doives utiliser port 25 sans ssl. A tester, il y a des nuances de ce côté.
Mais quand tu dis avoir des problèmes depuis le mois de mai, je soupçonne que tu n'utilises pas le nouveau système de gmail. Il faut absolument obtenir un mot de passe d'application (j'ai laissé le lien vers une vidéo dans un de mes messages de ce matin). Cela change aussi un peu le code vb. Vois le code test dans mon premier message.
Ce qui est sûr, c'est que tous les providers ne fonctionnent pas de la même façon.
Dans une application réelle, j'utilise un code différent selon le smtp utilisé.
J'espère que ceci t'aidera ....
0