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);
}
}
}
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.