Salut,
J'ai trouvé une classe qui envoi un mail via smpt que j'ai un peu modifié:
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
39
40
41
42
Public Class Mail
    Shared mSendingMailError As String
    Shared ReadOnly Property SendingMailError() As String
        Get
            Return mSendingMailError
        End Get
    End Property
    Shared Function Envoi(ByVal server As String, ByVal De As String, ByVal A As String, ByVal Sujet As String, ByVal Corps As String, ByVal Fichier As String, ByVal Utilisateur As String, ByVal MotDePasse As String, ByVal avecLogin As Boolean)
        'On essaye, tres pratique en vb
        Try
            'Creer un Message par surcharge avec De et A
            Dim message As Net.Mail.MailMessage = New Net.Mail.MailMessage(New Net.Mail.MailAddress(De), New Net.Mail.MailAddress(A))
 
            message.Subject = Sujet 'Definir Sujet
            message.Body = Corps ' Definir corps
 
            If (Not (Fichier = String.Empty)) Then
                Dim data As Net.Mail.Attachment = New Net.Mail.Attachment(Fichier) 'Creer la piece jointe
                Dim disposition As Net.Mime.ContentDisposition = data.ContentDisposition 'Ajouter le Time Stamp du fichier
                disposition.CreationDate = System.IO.File.GetCreationTime(Fichier) '   'Date de Création
                disposition.ModificationDate = System.IO.File.GetLastWriteTime(Fichier) '   'Date de Dernière Modification
                disposition.ReadDate = System.IO.File.GetLastAccessTime(Fichier) '   'Date de Dernièr Accès
                message.Attachments.Add(data) 'Ajoute la piece jointe au message
            End If
 
            Dim client As New Net.Mail.SmtpClient(server) 'Ouvrir la Connexion vers le serveur SMTP
 
 
            If avecLogin Then
                client.Credentials = New System.Net.NetworkCredential(Utilisateur, MotDePasse) 'Avec Login, soit... 
            End If
 
            client.Send(message) 'On Envoie le Message
 
            Return True  'On Retourne Vrai comme résultat de la Fonction
        Catch ex As Exception
 
            mSendingMailError = ex.Message
            Return False  'On Retourne le message d'erreur comme résultat de la Fonction
        End Try
    End Function
End Class
Je l'utilise ainci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
   If (Mail.Envoi("smtp.gmail.com", "MonMail@gmail.com", "Destinataire@domaine.com", "Sujet", "Blablablablab", "c:\MonFichierJoint.txt", "", "", False)) Then
            MsgBox("Email envoyé.")
        Else
            MsgBox("Email non envoyé!" & vbCrLf & Mail.SendingMailError)
        End If
Cela plante l'application au niveau de de la classe Mail (l'application ne répond plus)...
J'ai essayer ainci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
If (Mail.Envoi("smtp.gmail.com", "MonMail@gmail.com", "Destinataire@domaine.com", "Sujet", "Blablablablab", "c:\MonFichierJoint.txt", "MonMail@gmail.com", "MonMotDePasse", True)) Then
            MsgBox("Email envoyé.")
Else
            MsgBox("Email non envoyé!" & vbCrLf & Mail.SendingMailError)
End If
mais pareil...
Une idée..?