Envoi d'emails avec les classes .net - mail message

Description

Cette source montre comment utiliser les classes du .net framework 2.0 pour envoyer des emails bien structurés.

Source / Exemple :


using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Mail;
using System.Net.Sockets;
using System.IO;
using System.Collections;

/* Cette classe va être la classe de notre application */

namespace MailNetClass
{
    class Mailer
    {
        private MailAddress adrMail; // Adresse mail de expéditeur 
        private MailMessage mail; // le mail lui même 
        private SmtpClient smtp; // une variable pour gérer le serveur SMTP
        private Attachment att; // une variable attachement pour ajouter des fichiers joints
        

        public Mailer()
        {
            // initialisation des variables
            mail = new MailMessage(); 
            smtp = new SmtpClient();
        }
        
        /* Fonction qui permet d'envoyer les mails */

        public void sendMail(String Destinataires,String CC, String CCC, String Subject, ArrayList joints, String Body)
        {
           // On lit le fichier de configuration qui contient l'adresse mail de l'expéditeur ainsi que @ du serverur smtp
           // stockés comme sui  nom_user@domaine.com%ip_serveur_smtp

            String str = File.ReadAllText("C:\\mail.ini"); ;
            String[] f = str.Split('%');
            
            adrMail = new MailAddress(f[0], f[2]);
            smtp = new SmtpClient(f[1]);
            
            int i = 0;
            
            // La fonction admet comme paramètre un arraylist qui contient les noms des fichiers joints, on les rajoute au attachements du mail message

            for (i = 0; i <= joints.Count - 1; i++)
            {
                att = new Attachment((String)joints[i]);
                mail.Attachments.Add(att);
            }

            // Test sur les adresses des destinataires si elle est vide

            if (Destinataires ==string.Empty )
            {
                throw new Exception("La liste des destinataires ne peut pas être vide !");
            }
            mail.To.Add(Destinataires);
            mail.Subject = Subject;
            if (CC != String.Empty)
            { 
                mail.CC.Add(CC); 
            }
            if (CCC != String.Empty)
            {
                mail.Bcc.Add(CCC);
            }
            mail.Body = Body;
            mail.From = adrMail;

            // Envoi du mail

            smtp.Send(mail);
        }
    }
}

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.