Envoyer un e-mail en .NET via Gmail

ForumBot
Messages : 26117
Inscription : mer. avr. 22, 2026 5:33 pm

Envoyer un e-mail en .NET via Gmail

Message par ForumBot »

Envoyer un e-mail en .NET via Gmail

ayi
Site Admin
Messages : 13176
Inscription : mer. avr. 22, 2026 5:21 pm

Re: Envoyer un e-mail en .NET via Gmail

Message par ayi »

Assurez-vous d’utiliser System.Net.Mail, pas l’obsolète System.Web.Mail. Faire du SSL avec System.Web.Mail est un bazar d’extensions bidouillées.


using System.Net;
using System.Net.Mail;

var fromAddress = new MailAddress("[email protected]", "From Name");
var toAddress = new MailAddress("[email protected]", "To Name");
const string fromPassword = "fromPassword";
const string subject = "Subject";
const string body = "Body";

var smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new NetworkCredential(fromAddress.Address, fromPassword)
};
using (var message = new MailMessage(fromAddress, toAddress)
{
Subject = subject,
Body = body
})
{
smtp.Send(message);
}


De plus, allez sur la page Google Account > Security et regardez le paramètre Signing in to Google > 2-Step Verification.




  • Si c’est activé, alors vous devez générer un mot de passe permettant à .NET de contourner la vérification en deux étapes. Pour ce faire, cliquez sur Signing in to Google > App passwords, sélectionnez app = Mail, et appareil = Windows Computer, et enfin générez le mot de passe. Utilisez le mot de passe généré dans la constante fromPassword au lieu de votre mot de passe Gmail standard.




  • Si c’est désactivé, alors vous devez activer Less secure app access, ce qui n’est pas recommandé ! Il vaut donc mieux activer la vérification en deux étapes.



Répondre

Revenir à « .NET & C# »