begin process at 2012 02 10 03:36:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Réseau & Internet

 > 

Protocoles

 > 

Mail C# Reprise sur erreur


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Mail C# Reprise sur erreur

mardi 2 juin 2009 à 12:19:05 | Mail C# Reprise sur erreur

chinois0013

Bonjour, J'ai écrit un petit executable en c# (voir ci-dessous) qui me permet d'envoyer des analyses à ma direction qutodiennement via un batch planifié. Tout fonctionne correctement, mais... Lorsque la connexion internet tombe ou bien le serveur de mail est down, les envois ne fonctionnent pas. Et du coup rien n'est envoyé. Comment puis je faire pour que l'envoi se fasse plus tard si la connexion ou le serveur de mail ne fonctionne pas ? Merci d'avance using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net.Mail; namespace EnvoiAnalyseMail { class Program { static void Main(string[] args) { string Destinataire = ""; string Mois = DateTime.Today.Month.ToString(); string Jour = DateTime.Today.Day.ToString(); if (int.Parse(Mois) < 10) Mois = "0" + Mois; if (int.Parse(Jour) < 10) Jour = "0" + Jour; string Date = DateTime.Today.Year.ToString() + Mois + Jour; bool Dest=false; List Rapports = new List(); int i = 0; foreach (string s in args) { if (s.Equals("-")) { Dest = true; } else { if (Dest.Equals(true)) { if (Destinataire.Equals("")) Destinataire = s; else Destinataire = Destinataire + "," + s; } else { Rapports.Add(s); i++; } } } EnvoieMail(Rapports, Destinataire,Date); } private static void EnvoieMail(List Rapports, string Destinataire,string date) { System.Net.Mail.MailMessage email = new System.Net.Mail.MailMessage(); foreach (string s in Rapports) { Attachment PieceJointe = new Attachment(s+"-"+date+".PDF"); email.Attachments.Add(PieceJointe); } email.From = new MailAddress("informatique@texto-france.fr"); email.To.Add(Destinataire); email.Subject = "Analyses Quotidiennes"; email.Body = "Bonjour, \nVoici les analyses quotidiennes.\nCordialement,\n\nLe Service Informatique"; SmtpClient client = new SmtpClient("smtp.fr.oleane.com"); client.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials; client.Send(email); } } }
mardi 2 juin 2009 à 12:20:24 | Re : Mail C# Reprise sur erreur

chinois0013

Oups désolé pour la mise en page !!
mardi 2 juin 2009 à 15:39:38 | Re : Mail C# Reprise sur erreur

krimog

Administrateur CodeS-SourceS
Salut.
Une solution simple, c'est de faire ton client.Send(email); dans un try / catch. Puis, dans ce catch, tu sauvegardes, dans un fichier à part, les données de ton email.
Et au lancement de ton programme, tu regardes si ces fichiers existent, tu récupères ses données, tu envoies ton mail, et si l'envoi a fonctionné, tu supprime les fichier.

Donc pour résumer (très simplifié) :

foreach(fichier d'email non envoyé)
{
  try
  {
    création d'un nouvel email à partir des données du fichier
    envoi de l'email
    suppression du fichier
  }catch { }
}

création d'un nouvel email à partir des données de la journée
try
{
  envoi de l'email
}catch{
  création d'un fichier à partir du contenu de ton email
}



Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
mercredi 3 mars 2010 à 17:39:04 | Re : Mail C# Reprise sur erreur

supcomiene

bonjour
J'ai une question en ce qui concerne l'envoie d'un mail par un code c#
est ce que je peux utilisé comme adresse de l'expéditeur une adreesse gmail
avec cette adresse du serveur smtp "smtp.gmail.com"
Bon, j'ai essayé mais ça ne marche pas
j'obtient l'erreur suivant "Échec d'envoi du courrier."
J'ai pas compris pourquoi ça ne marche pas.
Est ce que je dois configurer un serveur smtp propre à moi?
Merci d'avance


Cette discussion est classée dans : mail, string, system, email, destinataire


Répondre à ce message

Sujets en rapport avec ce message

[c#]WinForms pb envoi mail smtp [ par ludo27600 ] bonjour,j'essaie d'envoyer un mail stmp en WinForms.Je ne retrouve pas les objets System.Web.Mail en WinForms (que j'ai utilisés en WebForms); J'arriv [Debutant] Classes [ par shadow1779 ] Bonsoir,j'ai décidé de me mettre au C# etant donné que cela est fiable et assez proche du VB.NET , langage avec lequel je commence a etre assez initié Envoi d'un seul email avec FileSystemWatcher (Aide svp) [ par specialgirl ] [size=100][size=200]Bonjour tout le monde j'éspère que vous allez bien [^^clinoeil1] Je suis entrain de developper une application Console qui permet Probleme C# BDD OutOfRange [ par KrqcS ] Bonjour à vous, j'essaye désesperemment de mettre le contenu de la colonne d'une table dans une combobox mais pas moyen. [code=cs]OleDbConnection Cal [Mail] Champs CC et Bcc récalcitrants [ par Ikki2504 ] Bonjour à tous,Ma question est probablement stupide, mais ça fait des heures que je bute là dessus, et la msdn ainsi que la bonne douzaine de forums v affichage des chaines dans un panel [ par fayrous ] Salut, dans mon forme j'ai un bouton . private void button4_Click(object sender, EventArgs e) { if (radioButton1.Checked) { panel Sql. c#. formulaire [ par Kleino ] Bjr á ts,et bonne fete de paques en avance.j´essaye de comprendre comment pourrais je selectioner les données d´une base de donnés sql et introduire d Dur le c# ! [ par theflayer ] Pour commencé Bonjour a tous !! Alors, bon je viens tous juste de commencer le c# pour un petit projet d'école et je dois avouer que je rame un peu l HyperTerminal pour Windows CE [ par chindji ] Bonjour! Je suis un débutant en C# et Windows CE. Actuellement je programme un HyperTerminal pour Windows CE . Mais je ne comprends pas grand chose.


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,090 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales