begin process at 2012 02 09 18:13:38
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Réseau & Internet

 > 

Internet

 > 

Envoi mail avec header "Return-Receipt-To", pas d'accusé


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

Envoi mail avec header "Return-Receipt-To", pas d'accusé

vendredi 7 septembre 2007 à 17:10:56 | Envoi mail avec header "Return-Receipt-To", pas d'accusé

yoyo041080

Bonjour,

Je souhaite envoyer un mail et recevoir un accusé de réception (pas de lecture !). J'utilise donc le flag "Return-Receipt-To" que je mets dans le header du mail, comme ci dessous :



serveurSMTP = cbbServeurSMTP.Text

from = txtDe.Text

a = txtA.Text

cc = txtCC.Text

cci = txtCCi.Text

objet = txtObjet.Text

corps = txtCorps.Text

mail =

New MailMessage()

mail.From =

New MailAddress(from)

mail.To.Add(a)

If cc <> ""Then

mail.CC.Add(cc)

EndIf

If cci <> ""Then

mail.Bcc.Add(cci)

EndIf

mail.Subject = objet

mail.IsBodyHtml =

False

mail.BodyEncoding = System.Text.Encoding.UTF8

mail.Body = corps

 

' permet d'avoir une notification de réception
' je format mon e-mail sous la forme :  "XXX" xxx@domaine.fr

mail.Headers.Add(

"Return-Receipt-To", String.Format("""{0}"" <{1}>", from.Substring(0, from.IndexOf("@")).ToUpper, from))

mail.Headers.Add("Errors-To", from)

mail.Headers.Add(

"Return-Path", from)

 

Dim server AsNew SmtpClient(serveurSMTP)

server.Send(mail)

mail.Dispose()

mail =

Nothing

server =

Nothing

MessageBox.Show(

"Mail envoyé !")



Que je formate mon mail sous la forme "XXX" XXX@domaine.fr, ou que j'écrive directement l'adresse de retour dans le header, je ne reçois jamais les accusés de réception... Le flag est pourtant bien présent dans le mail que j'envoie; si je l'ouvre avec wordpad, on peut y lire (j'ai effacé les IP et noms de serveurs) :


Received: from xxx by xxx with Microsoft SMTPSVC(6.0.3790.1830);

Fri, 7 Sep 2007 16:18:57 +0200

Received: from xxx with Microsoft SMTPSVC(6.0.3790.1830);

Fri, 7 Sep 2007 16:21:15 +0200

return-receipt-to: "xxx" <xxx@domaine.fr>

disposition-notification-to: xxx@domaine.fr

errors-to: xxx@domaine.fr

return-path: xxx@domaine.fr

mime-version: 1.0

from: xxx@domaine.fr

to: destinataire@domaine.fr

cc: destinataire@domaine.fr

date: 7 Sep 2007 16:21:15 +0200

subject: Test 2

Message-ID: <wwwwwww>

X-OriginalArrivalTime: 07 Sep 2007 14:21:15.0598 (UTC) FILETIME=[599A3EE0:01C7F15A]


vendredi 7 septembre 2007 à 17:11:58 | Re : Envoi mail avec header "Return-Receipt-To", pas d'accusé

yoyo041080

Quelqu'un a-t-il une idée d'où pourrait venir cette non réception d'accusé ?

Merci

yoyo
samedi 8 septembre 2007 à 19:34:43 | Re : Envoi mail avec header "Return-Receipt-To", pas d'accusé

coq

Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

Tu es sur que le serveur n'est pas configuré pour ne pas les envoyer ?
Voir aussi si la propriété MailMessage.DeliveryNotificationOptions ne joue pas un rôle, même avec ajout manuel du header (d'ailleurs avec cette prorpiété tu pourrais peut être te passer de l'ajout si tu ne spécifie pas une adresse différente de celle de l'expéditeur, à vérifier).
Si tu spécifies une adresse différente, vérifier que ce scénario est supporté par le serveur.
Enfin, vérifier que tu ne te retrouves pas dans ce cas là : SMTPClient Not setting DeliveryNotificationOptions for each message sent


/*
coq
MVP Visual C#
CoqBlog
*/
lundi 10 septembre 2007 à 09:38:49 | Re : Envoi mail avec header "Return-Receipt-To", pas d'accusé

yoyo041080

Réponse acceptée !
Salut coq et merci pour tes éclaircissements

Dans l'ordre :

* je ne maitrise pas le paramètrage du serveur et ne sait donc pas si il est configuré pour ne pas les envoyer (mais c'est a priori ok, voir réponse suivante)
* MailMessage.DeliveryNotificationOptions : j'ai effectivement testé avant ta réponse cette option. Chose incompréhensible, ça n'a pas marché la première fois et ça a fonctionné ensuite ??? La seule chose dont je ne suis pas sûr, c'est de ne pas avoir mélangé l'ajout de header manuel et l'utilisation de cette option lors de mon premier essai.

=> Donc, ça semble fonctionner avec l'utilisation de MailMessage.DeliveryNotificationOptions seul sans les ajouts manuel "mail.Headers.Add"

* Pour ta dernière remarque, je ne suis pas dans ce cas (j'avais trouvé cet article), car j'envoie un seul mail

Merci


Pour info si quelqu'un d'autre à le souci, mon code final :

serveurSMTP = cbbServeurSMTP.Text

from = txtDe.Text

a = txtA.Text

cc = txtCC.Text

cci = txtCCi.Text

objet = txtObjet.Text

corps = txtCorps.Text

mail =

New MailMessage()

mail.From =

New MailAddress(from)

mail.To.Add(a)

If cc <> ""Then

mail.CC.Add(cc)

EndIf

If cci <> ""Then

mail.Bcc.Add(cci)

EndIf

mail.Subject = objet

mail.IsBodyHtml =

False

mail.BodyEncoding = System.Text.Encoding.UTF8

mail.Body = corps

mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess Or DeliveryNotificationOptions.Delay Or DeliveryNotificationOptions.OnFailure

Dim server AsNew SmtpClient(serveurSMTP)

server.Send(mail)

mail.Dispose()

mail =

Nothing

server =

Nothing

MessageBox.Show(

"Mail envoyé !")


Cette discussion est classée dans : mail, domaine, to, from, xxx


Répondre à ce message

Sujets en rapport avec ce message

Envoi de mail par Outlook 2000 [ par sebmafate ] Voilà, je suis en train de perdre un temps fou avec une connerie : envoyer un mail en utilisant Outlook...Quand on dit à son DSI... "oui, oui, c'est s Lire des mails via un netStream extremement lent. [ par sspizer ] Bonjour à tous. Je suis en train de développer une application qui lit mes mails sur un server. Le probleme c'est que lorsqu'il y a une pièce jointe d table link from Access to SQL Server [ par fricky1971 ] BonjourDepuis ma base de données Access, j'ai créé des liens vers des tables d'une database MS SQLJe peux ouvrir ces tables , mais je ne peux pas les c# envoi mail SmtpFailedRecipientException [ par mr_chafik ] bonjour a tousje suis entrains de développer une appli dont l une des fonctionnalité est d'envoyer un mail a l'aide    de SmtpClient et MailMessage po from xaml to c# [ par abrim ] Bonjour tout le monde est ce que je peu transformer ce code xaml en c# [code=autre] <Bind delete a row from a database where matricule = textbox value [ par boudour21 ] bonjour tout le monde je veux effacer un enregistrement de la base qui correspond au matricule saisie dans un textbox d'un formulaire! j'ai essayé se convertion to double [ par fl2010 ] Bonjour, Comment récupérer une valeur double d'un string. Par exemple: String titi="nj12.3iuj"; Je veux avoir comme résultat Double toto = 12.3; Merc string req = "select * from Reclamation where Date_rec='"+18/05/2011+"' "; ne marche pas en c# [ par adleni ] Salut! Comment afficher les données de dernier mois dans datagridview merci problème de configuration de fichier config.inc.php pour l'accès à phpmyadmin [ par maymouta ] bonjour à tous, j'ai un problème que je n'arrive pas à le résoudre convenablement j'utilise Mysql comme SGBD et c# pour le développement j'ai instal Load a data text file into a multidimentional array then copie the content into textboxes [ par omegarios ] Dear code project members, I'm a very beginer in Visual C# and I would like you to help me with this problem, which is too simple for a high level com


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 6,318 sec (3)

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