C# SMTP d'envoi de courrier code échoue pour Yahoo Mail mais qui fonctionne bien pour les autres serveurs, quelqu'un peut-il aider?

Je suis en utilisant ce code pour envoyer un e-mail SMTP via le serveur SMTP de yahoo, c'est pour un projet personnel, je suis en train d'écrire.

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

SmtpClient theClient = new SmtpClient("smtp.mail.yahoo.com", 465);
theClient.UseDefaultCredentials = false;
theClient.Credentials = new NetworkCredential("username", "password");
theClient.EnableSsl = true;

MailMessage theMessage = new MailMessage("[email protected]", 
                                         "[email protected]");

theMessage.Subject = "Dave test from C# subject";
theMessage.Body = "Dave test from C# body";

theClient.Send(theMessage);

C'est assez standard code pour l'envoi d'e-mail SMTP, mais... le serveur semble jeter une erreur. Force met fin à la connexion. Cela ne se produit pas si je peux utiliser d'autres serveurs SMTP comme Gmail, Windows Live ou divers autres FAI serveurs Smtp.

C'est l'exception et la trace de la pile:

System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host.
at System.Net.Mail.SmtpClient.Send(MailMessage message)
at ConsoleApplication1.Program.Main(String[] args) in E:\dev\ARCSoftware.FTPProcessor\ConsoleApplication1\Program.cs:line 28

Je sais que le problème n'est pas l'environnement mais comme je peut envoyer le même serveur avec ces paramètres à l'aide d'Outlook Express. Je me demande si j'ai besoin d'envoyer un certificat ou quelque chose?

Si vous, ou quelqu'un que vous savez où a des idées sur ce que j'apprécierais un peu d'aide.

  • Yahoo a probablement (différents) anti-spam politiques en place. Vous aurez à consulter les règles.
  • Sont les NetworkCredential paramètres corrects? nom d'utilisateur étant l'adresse e-mail complète
  • Merci pour l'entrée chaps. Oui, j'ai vérifié leur documentation et ils spécifier le nom d'utilisateur sans le @yahoo.com. Comme je l'ai dit il fonctionne bien Outlook Express avec le extact mêmes paramètres.
  • Est-il un Yahoo compte Plus, ou tout simplement une gratuitement? Je sais que POP3 est seulement disponible pour le Yahoo, Plus les comptes et à se demander si la même chose s'applique pour le SMTP côté trop?
  • Êtes-vous absolument sûr que vous pouvez envoyer des e-mail dans Outlook? J'avais cru comprendre que vous aviez à la mise à niveau vers Yahoo Mail Plus d'utiliser un client tiers.
  • C'est un gratuit. Je sais que je peux envoyer par e-mail SMTP si mon compte comme il fonctionne par le biais d'Outlook Express.
  • de vérifier et de comparer le protocole et le port des paramètres dans Outlook Ex. Mais Yahoo pourrait encore intéresser à d'autres fonctions.
  • Grâce Henk. Phil, oui, je suis sûr que j'ai envoyé un mail via OE, j'ai reçu des e-mails via mon compte Gmail donc je sais que ça fonctionne. Les châteaux de statto du post ci-dessous peut être la réponse si!

InformationsquelleAutor David Honess | 2011-02-23