Bouts de codes de Landry SAÏZONOU - Webmaster

DotNet 2.0 Une classe pour l'envoi de mail (vb.net)

Une class contenant une fonction de validation d'adresse mail, et trois classes d'envoi de mail avec ou sans pièce jointe).

  1. Public Class MAIL
  2.         ''' <summary>
  3.         ''' Vérifie la validité de l'adresse mail
  4.         ''' </summary>
  5.         ''' <param name="str_mail">adresse email à valider </param>
  6.         ''' <returns>true si valide </returns>
  7.         Public Shared Function IsValideMail(ByVal str_mail As String) As Boolean
  8.             If (str_mail <> "") Then
  9.                 Dim RegexpEmail As New Regex("\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*")
  10.                 Dim bEmailValid As Boolean = RegexpEmail.IsMatch(str_mail)
  11.                 Return bEmailValid
  12.             Else
  13.                 Return False
  14.             End If
  15.         End Function
  16.  
  17.         ''' <summary>
  18.         ''' Envoi un mail sans fichier joint
  19.         ''' </summary>
  20.         ''' <param name="destinataire">destinataire</param>
  21.         ''' <param name="Expediteur">Expéditeur</param>
  22.         ''' <param name="sujet">Sujet</param>
  23.         ''' <param name="body">Corp du message</param>
  24.         ''' <returns>OK si tout va bien</returns>
  25.         ''' <remarks></remarks>
  26.         Public Overloads Shared Function EnvoiMail(ByVal destinataire As String, ByVal Expediteur As String, ByVal sujet As String, ByVal body As String) As String
  27.             Dim resultat As String = "OK"
  28.             Try
  29.                 Dim MessageMail As New Net.Mail.MailMessage
  30.  
  31.                 Dim mailAddressEXP As New Net.Mail.MailAddress(Expediteur)
  32.                 Dim mailAddressDEST As New Net.Mail.MailAddress(destinataire)
  33.  
  34.                 Dim SMPTserver_name As String = "ServerSMTP"
  35.                 MessageMail.From = mailAddressEXP
  36.                 MessageMail.To.Insert(0, mailAddressDEST)
  37.                 MessageMail.Subject = sujet
  38.                 MessageMail.Body = body
  39.                 Dim smtpClient1 As New Net.Mail.SmtpClient(SMPTserver_name)
  40.                 smtpClient1.Send(MessageMail)
  41.             Catch ex As Exception
  42.                 resultat = ex.Message
  43.             End Try
  44.             Return resultat
  45.         End Function
  46.         ''' <summary>
  47.         ''' Envoi un mail avec fichier (stream) joint
  48.         ''' </summary>
  49.         ''' <remarks>Aucune remarque</remarks>
  50.         Public Overloads Shared Function EnvoiMail(ByVal destinataire As String, ByVal Expediteur As String, ByVal sujet As String, ByVal body As String, ByVal fichier As Stream, ByVal fichierNom As String) As String
  51.             Dim resultat As String = "OK"
  52.             Dim SMPTserver_name As String = "ServerSMTP"
  53.             Try
  54.                 Dim MessageMail As New Net.Mail.MailMessage
  55.  
  56.                 Dim mailAddressEXP As New Net.Mail.MailAddress(Expediteur)
  57.                 Dim mailAddressDEST As New Net.Mail.MailAddress(destinataire)
  58.  
  59.                 MessageMail.From = mailAddressEXP
  60.                 MessageMail.To.Insert(0, mailAddressDEST)
  61.                 MessageMail.Subject = sujet
  62.                 MessageMail.Body = body
  63.  
  64.  
  65.  
  66.                 Dim File1 As New Net.Mail.Attachment(fichier, fichierNom)
  67.  
  68.  
  69.                 MessageMail.Attachments.Add(File1)
  70.                 Dim smtpClient1 As New Net.Mail.SmtpClient(SMPTserver_name)
  71.                 smtpClient1.Send(MessageMail)
  72.             Catch ex As Exception
  73.                 resultat = ex.Message
  74.             End Try
  75.             Return resultat
  76.         End Function
  77.         ''' <summary>
  78.         ''' Envoi un mail avec fichier (chemin serveur) joint
  79.         ''' </summary>
  80.         ''' <remarks>Aucune remarque</remarks>
  81.         Public Overloads Shared Function EnvoiMail(ByVal destinataire As String, ByVal Expediteur As String, ByVal sujet As String, ByVal body As String, ByVal fichier As String) As String
  82.             Dim resultat As String = "OK"
  83.             Dim SMPTserver_name As String = "ServerSMTP"
  84.             Dim MessageMail As New Net.Mail.MailMessage
  85.  
  86.             Dim mailAddressEXP As New Net.Mail.MailAddress(Expediteur)
  87.             Dim mailAddressDEST As New Net.Mail.MailAddress(destinataire)
  88.  
  89.             MessageMail.From = mailAddressEXP
  90.             MessageMail.To.Insert(0, mailAddressDEST)
  91.             MessageMail.Subject = sujet
  92.             MessageMail.Body = body
  93.  
  94.             Dim File1 As New Net.Mail.Attachment(fichier)
  95.  
  96.             MessageMail.Attachments.Add(File1)
  97.  
  98.             Try
  99.                 Dim smtpClient1 As New Net.Mail.SmtpClient(SMPTserver_name)
  100.                 smtpClient1.Send(MessageMail)
  101.             Catch ex As Exception
  102.                 resultat = ex.Message
  103.             End Try
  104.             Return resultat
  105.         End Function
  106.     End Class


Valid XHTML 1.0 Transitional Valid CSS!