Nelfasis
Messages postés5Date d'inscriptionvendredi 5 octobre 2007StatutMembreDernière intervention11 mars 2009
-
10 mars 2009 à 16:35
mrpropre57
Messages postés8Date d'inscriptionvendredi 27 août 2004StatutMembreDernière intervention16 avril 2014
-
16 avril 2014 à 09:59
Bonjour,
Me revoici, avec de nouveau un problème asses simple mais pas moyens de trouver une solution.
Je réalise un mini programme qui effectue une requête, sur un serveur ldap, afin récupérer des données sur les collaborateurs de l'entreprise. Ces données sont placées dans une DataGridView. Dans ces données, il y a leur adresse de messagerie, hors où je travail, tout le monde utilise Outlook qui est toute la journée actif chez tout le monde.
Mon problème est super simple, je cherche le moyens de faire en sorte que lorsque je clique sur la cellule qui contient le mail (oh pas besoin de se casse la tête sur le moyens de lancer l'action, je trouverais) => de en sorte que la fenêtre "Nouveau message" de Outlook s'ouvre avec dedans déjà placée l'adresse de messagerie que j'ai sélectionnée.
Enfaite je ne trouve comment faire le simple fait de Ouvrir la page Nouveau message de Outlook à partir de mon application.
Nelfasis
Messages postés5Date d'inscriptionvendredi 5 octobre 2007StatutMembreDernière intervention11 mars 20091 11 mars 2009 à 10:05
Bonjour,
J'ai finalement réussi à mettre la main sur quelque chose et ça fonctionne nickel :).
Voici ma solution :
Ajout de l'espace de nom "Diagnostics" :
using System.Diagnostics;
Implantation de ce petit bout de code qui permet d'ouvrir le client de messagerie par défaut et d'y insérer certaines données :
string filename = "mailto:Adresse@test.com";
Process myProcess = new Process();
myProcess.StartInfo.FileName = filename;
myProcess.StartInfo.UseShellExecute = true;
myProcess.StartInfo.RedirectStandardOutput = false;
myProcess.Start();
Il y a moyens d'y insérer d'autres informations encore, mais dans mon cas, l'adresse du destinataire suffisait :
string
filename =
"mailto:Adresse@test.com?subject=Hello&boby=Hello&cc=Adresse2@test.com&bcc=Adresse3@test.com&Attach=@C:\\test.txt";
J'espère que ce petit bout servira à d'autres, merci et bonne continuation.
dimad01
Messages postés5Date d'inscriptionlundi 27 avril 2009StatutMembreDernière intervention20 octobre 2010 15 oct. 2010 à 14:38
Un tres Grand Merci, simple et Utile...
j'aimerai savoir comment prendre des données à partir du textbox et les implimenté dans les zones de nouveau message de outlook, comme le sujet, le massage....
Où
textbox1 contient le sujet
textbox2 contient le message du mail
textbox3 contient l'adr mail en copie
textbox4 contient l'adr mail en copie cachée
Pour le message en textbox2, je pense qu'il faut effectivement que ce soit un textbox, mais pas un richtextbox car la mise en forme du texte ne passera pas.
Et, s'il y a des retour ligne dans le textbox (WordWrap à true), je ne suis pas sûre que ça passe non plus. (ou faire un replace du "\r\n" par ". " par ex ?)
LunaPurple
Théorie de la Relativité : C'est moi ou les autres qui sont fous...?
Vous n’avez pas trouvé la réponse que vous recherchez ?
LunaPurple
Messages postés19Date d'inscriptiondimanche 15 avril 2007StatutMembreDernière intervention20 octobre 2010 16 oct. 2010 à 12:50
Je n'ai pas la solution pour les retours ligne en envoyant un mail de cette manière...
(son exemple répondait à mon besoin du moment, ouvrir le mail avant envoi, avec très peu de choses dedans...)
Par contre, si ça vous intéresse, j'ai une autre procédure que j'utilise pour envoyer les mail directement (sans passer par le mode ouverture du mail), et qui utilise le contenu d'un textbox (ou richtextbox, mais ne garde que les retours lignes, pas les couleur, gras, etc...)
MailMessage mail = new MailMessage();
mail.To.Add(this.TxtBx_AdrMailDest.Text);// "adrDest@provider.fr"; // l'adresse du destinataire
mail.From = new MailAddress("monadr@monprovider.fr"); // l'adresse de l'expéditeur
mail.Subject = this.TxtBx_ObjetMail.Text;
mail.Body = this.RtBox_Affich.Text;
mail.Attachments.Add(new Attachment("D:\\MonRepertoire\\MonFichier.txt")); //ou bien this.TxtBx_FichAEnvoyer.Text qui contient D:\\MonRepertoire\\MonFichier.txt
string MonSmtp;
MonSmtp = "smtp.free.fr"; // nom du smtp du provider de la machine d'où est envoyé le mail
SmtpClient MonSmtpClient = new SmtpClient(MonSmtp);
MonSmtpClient.Send(mail);
}
Avec cette méthode, l'envoi du mail se fait de façon 'silencieuse', l'utilisateur ne le voit pas.
Mais il peut tout paramétrer à partir de votre formulaire, dans vos textbox ou richtextbox (la mise en page du texte est gardée (retour ligne, tabulation...), mais pas la mise en forme du texte (couleur, gras, italique...).
Ça fonctionne avec VS2008. Je crois qu'avec le 2005 c'est un autre Using, et donc, une utilisation différente (question de Framework utilisé il me semble).
Luna.
~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
Théorie de la Relativité : C'est moi ou les autres qui sont fous...?
26 mars 2014 à 16:42