Voici mon problème: je l'ai écrit whe programme suivant pour tester si je peux envoyer des e-mail:C# l'authentification SMTP a échoué, mais les informations d'identification sont corrects
class Program
{
static void Main(string[] args)
{
try {
Console.WriteLine("Mail To");
MailAddress to = new MailAddress("[email protected]");
Console.WriteLine("Mail From");
MailAddress from = new MailAddress("[email protected]");
MailMessage mail = new MailMessage(from, to);
Console.WriteLine("Subject");
mail.Subject = "test";
Console.WriteLine("Your Message");
mail.Body = "test";
SmtpClient smtp = new SmtpClient();
smtp.Host = "mail.domain.it";
smtp.Port = 25;
smtp.Credentials = new NetworkCredential(
"username", "password");
smtp.EnableSsl = false;
Console.WriteLine("Sending email...");
smtp.Send(mail);
}catch(Exception e)
{
Console.WriteLine(e.Message);
Console.WriteLine(e.StackTrace);
}
}
}
Les informations d'identification sont corrects (je les ai testés à l'aide telnet, les perspectives et la application k9mail dans Android fonctionne correctement), le programme fonctionne si je mets le réglage smtp gmail. Je ne peux vraiment pas comprendre la cause de cette erreur.
En utilisant Wireshark J'ai découvert ce qui se passe: S: 220 server1.business.it serveur SMTP prêt
C: EHLO PC14
S: 250 server1.stargatenet.it Bonjour [87.28.219.65] | 250 PIPELINING | 250 TAILLE 25000000 | 250 8BITMIME | 250 BINARYMIME | 250 CHUNKING | 250 AUTH LOGIN CRAM-MD5 DIGEST-MD5 | 250 Ok
C: AUTH Connexion utilisateur: UsernameBase64
S: 334 VXNlcm5hbWU6
C: Pass: PasswordBase64
S: 334 UGFzc3dvcmQ6
Il semble que le programme ne pénètre pas dans les pouvoirs lorsqu'on lui a demandé. Comment est-ce possible?
@janina Je n'utilise pas gmail. J'utilise un autre hôte. – silviagreen
Le port 25 est-il bloqué par votre pare-feu? et pourquoi EnableSsl est-il faux? –
pourriez-vous utiliser smtp .UseDefaultCredentials = false; Vous avez également activer Enable SSL. Assurez-vous que SSL n'est pas activé par le domaine –