Bonjour,
j'utilise un formulaire infopath avec connexion de données et je veux envoyer via une connexion par adresse électronique mais je veux que ça ce passe en arrière plan(aucune boite de dialogue ne s'affiche)
Comment faire ?
Merci








Bonjour,
j'utilise un formulaire infopath avec connexion de données et je veux envoyer via une connexion par adresse électronique mais je veux que ça ce passe en arrière plan(aucune boite de dialogue ne s'affiche)
Comment faire ?
Merci
Salut,
Si tu veux faire ca va valoir utiliser du code car avec l'assistant Infopath tu as toujours un message de confirmation qui te dit qu'un mail a été envoyé!
Quelle code utilise-tu? As-tu un serveur SMTP dispo pour l'envoi de ces mail?
++
Thierry








merci pour le conseil
mais quel code (vbscript?)
j'utilise un serveur de mesagerie outlook
sinon je programme aussi avec vb.net2005 et asp
Bonjour,
Je n'ai jamais utilisé ce genre d'envoi.
Mais ce que je sais c'est que tu peux jouer avec les options que tu as sur les boutons envoyer pour ne plus avoir de pop-up.
Si tu vas dans les options d'envoi du bouton de type "Envoyer", tu peux envoyer un mail via ta connexion de données.
Ensuite tu cliques sur "Avancées" et tu peux enlever les messages de confirmation et d'échec d'envoi...
Donc à voir si ça répond à tes besoins.
Cordialement.
Rémi








j'ai pas trouver ce qui ressemble dans l'onglet "avancés"
moi ce que je veux est lier ce msg a un champ; une fois on introduit une valeur fausse, je reçoi um msg dans ma boite au lettre outlook
mais avec l'affichage de la boite de dialogue, on peut annuler l'envoi
Voici ma solution en C#:
La Classe Mail:
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Mail.Mail NewMail = new Mail.Mail("Nom de la personne qui envoie", "adresse mail qui envoie", "nom de la personne de réception", "adresse mail de la personne qui doit le recevoir", "Titre", "Contenue du mail", true); //true défini si le contenu du mail est en HTML ou pas bool Sending = NewMail.Send(); if (Sending == true) { //Cela veut dire que le mail a bien été envoyé }
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 using System; using System.Collections.Generic; using System.Text; using System.Web; namespace Mail { public class Mail { private System.Net.Mail.MailMessage _mail = new System.Net.Mail.MailMessage(); public Mail(string fromName, string fromMail, string toName, string toMail, string subject, string body, bool isHtml) { this._mail.Subject = subject; this._mail.Body = body; this._mail.From = new System.Net.Mail.MailAddress(fromMail, fromName); this._mail.To.Add(new System.Net.Mail.MailAddress(toMail, toName)); this._mail.IsBodyHtml = isHtml; this._mail.BodyEncoding = System.Text.Encoding.GetEncoding("iso-8859-1"); this._mail.SubjectEncoding = System.Text.Encoding.GetEncoding("iso-8859-1"); } public bool Send() { try { System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("mail.serveur.com"); // Mettre le serveur smtp ici smtp.Send(this._mail); return true; } catch (Exception) { return false; } } } }
Et le tour est joué! Je te conseil de faire une classe mail comme ca tu pourras l'utiliser de facon générique dans un autre formulaire.
++
Thierry








merci virgul pour le code
mais j'avais déja essayer avec un code (jscript) que j'ai trouver dans l'aide
le problème c qu'il fonctionne avec un bouton(click) et moi j'exécute à l'aide d'une règle et j'ai pas trouver le moyen de lier cette règle avec le code
De toute facon la régles est éxécuté avant le code ...
Alors je vois pas le problème tu mets la même condition (if) dans ton événement onafterchange et ca passera dedans???








Bonjour,
dans l'options d'envoi du bouton, tu clique sur le bouton avancées et tu décoche l'option "Afficher les messages de réussite et d'échec". Comme ca tu n'auras plus de message de confirmation
Je complete la class Mail de Virgul (Qui est vraiment super pratique) en ajoutant un fichier joint.
Dans l'appel de la classe, j'ajoute le fichier à joindre : string file = "monfichier.ext":
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Mail.Mail NewMail = new Mail.Mail("Nom de la personne qui envoie", "adresse mail qui envoie", "nom de la personne de réception", "adresse mail de la personne qui doit le recevoir", "Titre", "Contenue du mail", true, "file"); // string file = "monfichier.ext" // Si file = "", alors pas de fichier joint.
Dans la classe Mail
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 public Mail(string fromName, string fromMail, string toName, string toMail,string subject, string body, bool isHtml, string file) { this._mail.Subject = subject; this._mail.Body = body; this._mail.From = new System.Net.Mail.MailAddress(fromMail, fromName); this._mail.To.Add(new System.Net.Mail.MailAddress(toMail, toName)); this._mail.IsBodyHtml = isHtml; if (file != "") { // Ajoute le fichier attaché au message de l'e-mail System.Net.Mail.Attachment Data = new System.Net.Mail.Attachment(file, System.Net.Mime.MediaTypeNames.Application.Octet); this._mail.Attachments.Add(Data); } this._mail.BodyEncoding = System.Text.Encoding.GetEncoding("iso-8859-1"); this._mail.SubjectEncoding = System.Text.Encoding.GetEncoding("iso-8859-1"); }
Partager