changer l'adresse de l'expéditeur lors de l'envoi du courrier via gmail en C #
-
28-09-2019 - |
Question
J'ai utilisé le code suivant pour envoyer du courrier de mon application Web à l'aide d'un compte gmail. Ma question est, puis-je changer l'adresse de l'expéditeur à une autre adresse autre que l'adresse de l'expéditeur d'origine (gmail)? Mon code est le suivant:
System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage();
System.Net.NetworkCredential cred = new System.Net.NetworkCredential("sample@gmail.com", "*******");
Tout ce que je fais est inutile que je reçois toujours le courrier de sample@gmail.com
. Est-il possible de le changer?
Je l'ai changé
mail.From = new System.Net.Mail.MailAddress("sample@yahoo.com");
mais j'ai reçu le mail avec l'adresse de sample@gmail.com
et non de la nouvelle adresse « De ». Je pense que gmail smtp écrasements l'adresse avec de l'information d'identification d'origine.
La solution
Gmail ne vous permet pas de changer le FROM à quelque chose de différent de votre compte gmail.
Peu importe ce que vous utilisez, ils trop écrire, avant qu'ils ne relaient sur. Cette spamming éviter / usurpation d'identité.
Autres conseils
Ceci est la solution:
- utilisez les codes ci-dessus pour ensemble mail.From = new MailAddress (adresse, nom d'affichage)
- dans Gmail, allez sur Paramètres de messagerie >> Comptes et importation.
- Ajoutez le compte de messagerie que vous utiliserez comme expéditeur « Envoyer en tant que ». (Cocher la case Alias)
Cela fonctionne pour moi
Oui il suffit d'utiliser le De de MailMessage
par exemple.
mail.From = "newemail@email.com";
EDIT : Voir aussi ce message pour plus d'informations plus détaillées sur des e-mails via gmail en C #
Envoi d'e-mail dans .NET à Gmail
EDIT: Bien que cela fonctionne pour le courrier en général, il semble que cela ne fonctionnera pas pour gmail comme google le remplacer avant son Sent (voir la réponse de wanta @ Dave)
Si vous avez un nombre limité d'expéditeurs que vous pouvez faire comme @philip suggéré. Par exemple, vous pouvez avoir customerservice@example.com
, simon@example.com
et philip@example.com
ou même alias@example.com
. Tant qu'ils sont approuvés expéditeurs sur le site Web de gmail.com
réel que vous pouvez envoyer d'eux.
Gmail.com: Envoi de courrier à partir d'une adresse différente
Si vous prévoyez d'envoyer d'un utilisateur arbitraire (comme une forme de service à la clientèle sur un site Web où l'utilisateur entre dans leur e-mail et que vous ne voulez pas vous envoyer directement) sur le mieux que vous pouvez faire est la suivante:
msg.ReplyToList.Add(new System.Net.Mail.MailAddress(email, friendlyName));
Si vous êtes dans un environnement contrôlé cela fonctionne très bien, mais veuillez noter que je l'ai vu certains clients email envoyer à l'adresse de même lorsque la réponse à est spécifiée (je ne sais pas qui).
Vérifier # 56 et # 58. Ils pourraient être pertinents à ce que vous voulez faire https://code.google.com/p / google-apps-script questions / problèmes / détail? id = 172