j'ai essayer de faire une application en c# qui a pour but est d'envoyer des mail.
j'ai essayer avec ce code mais il m'affiche toujours "Echec d'envoi du courrier"
j'ai fait des recherches dans des différent forum mais j'ai trouver des choses paraille
private void button1_Click(object sender, EventArgs e)
{
MailMessage email = new MailMessage();
email.From = new System.Net.Mail.MailAddress("source@gmail.com");
email.To.Add(new MailAddress("destination@gmail.com"));
email.IsBodyHtml = true;
email.Subject = "objet du mail";
email.Body = " contenu du mail";
System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.Credentials = new System.Net.NetworkCredential("source", "mot-de-passe");
try
{
smtp.Send(email);
MessageBox.Show("email est envoyer");
}
catch (SmtpException ex)
{
MessageBox.Show(ex.Message);
}
}
Chez moi, cette ligne suffit (pas besoin de spécifier ni credentials, ni port) : SmtpClientsmtpClient=newSmtpClient("smtp.free.fr");
Mais ça dépend peut-être du FAI.
public static void CreateTestMessage1(string server, int port)
{
string to = "jane@contoso.com";
string from = "ben@contoso.com";
string subject = "Using the new SMTP client.";
string body = @"Using this new feature, you can send an e-mail message from an application very easily.";
MailMessage message = new MailMessage(from, to, subject, body);
SmtpClient client = new SmtpClient(server, port);
// Credentials are necessary if the server requires the client
// to authenticate before it will send e-mail on the client's behalf.
client.Credentials = CredentialCache.DefaultNetworkCredentials;
try
{
client.Send(message);
}
catch (Exception ex)
{
Console.WriteLine(
"Exception caught in CreateTestMessage1(): {0}",
ex.ToString());
}
}
Au pire tu essaies avec le port par défaut (donc tu n'en spécifies pas) et avec les credentials par défaut:
SmtpClient client = new SmtpClient(server);
client.Credentials = CredentialCache.DefaultNetworkCredentials;
Le serveur SMTP sert juste à envoyer les messages, normalement il n'y a pas besoin de s'authentifier avec son login/pass pour y accéder sauf s'il est en SMTP-Auth.
Pour te connecter au serveur SMTP de gmail (SSL) :
IP : smtp.gmail.com
PORT : 465
@LoupSolitaire:
Je me suis mal exprimé, je comprends qu'il fasse ça vu qu'il ne connaît pas son FAI. Mais ça me paraissait bizarre d'utiliser n'importe quel SMTP pour envoyer des mails.
En tout cas, je pense qu'avec celui de son FAI il aura moins de soucis.
@enarouge:
Bizarre, moi j'ai plus de détails. Là je sais pas quel est ton FAI. Tente la solution n°2 stp !
il ne m'affiche plus le message précédent"Echec d'envoi du courrier" mais il m'envoie ce message d'erreur"le serveur ne prend pas en charge les connexions sécurisées "
Alors essaie en enlevant cette ligne : smtp.Credentials=newSystem.Net.NetworkCredential("source","mot-de-passe"); !
Je pense que c'était une bêtise de ma part. L'authentification n'a pas de lien avec les "connexions sécurisées". Si je ne dis pas de bêtise, "sécurisées" = "cryptées" et non pas "sans authentification"...
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Blond, bouclé, toujours le sourire aux lèvres...
Blond, bouclé, toujours le sourire aux lèvres...
Blond, bouclé, toujours le sourire aux lèvres...
Blond, bouclé, toujours le sourire aux lèvres...
Blond, bouclé, toujours le sourire aux lèvres...
Blond, bouclé, toujours le sourire aux lèvres...