envoyer mail : Le serveur SMTP requiert une connexion sécurisée
Bonjour,
Je suis perdu, je voudrais envoyer un mais depuis mon application. On m'a donné une classe que j'ai modifié très légèrement et j'ai toujours le même message :
Code:
Le serveur SMTP requiert une connexion sécurisée ou le client n'était pas authentifié. La réponse du serveur était*: 5.5.1 Authentication Required.
Je cherche depuis hier, j'ai tenté plusieurs solutions et j'ai toujours ce même message. :arf:
J'envoie le mail à une adresse gmail.com
server="smtp.gmail.com"
port = 587
mailto = mailfrom = user = xxxx@gmail.com
Voici mon code :
Code:
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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| public void CreateTestMessage1(string server, int port,
string mailTo, string mailFrom,
string user, string password,
string objet,
string corps)
{
try
{
SmtpClient client = new SmtpClient(server, port); //587 ou 465
client.Credentials = new System.Net.NetworkCredential(user, password);
client.UseDefaultCredentials = false;
client.Credentials = new NetworkCredential(user, password);
client.EnableSsl = true;
client.UseDefaultCredentials = false;
client.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback);
MailMessage mail = new MailMessage();
mail.From = new MailAddress(mailFrom);
mail.To.Add(mailTo);
mail.CC.Add(mailFrom);
mail.Subject = objet;
mail.Body = corps;
mail.IsBodyHtml = true;
client.Send(mail);
mail.Dispose();
MessageBox.Show("mail envoyé");
}
catch (Exception ex)
{
EcritureLog.enregistrementLog("Envoie de mail", ex, true);
}
}
public void SendCompletedCallback(object sender, AsyncCompletedEventArgs e)
{
// Get the unique identifier for this asynchronous operation.
String token = (string)e.UserState;
if (e.Cancelled)
{
MessageBox.Show(String.Format("[{0}] Envoie annuler.", token));
}
else if (e.Error != null)
{
MessageBox.Show(String.Format("[{0}] {1}", token, e.Error.ToString()));
}
else
{
MessageBox.Show(String.Format("Message envoyé."));
}
} |
Merci pour votre aide :ave:
PS que j'utilise la procédure "SendCompletedCallback" ou non d’ailleurs je ne la comprends du tout :boulet: