Je viens de remarquer que certaines opérations de messagerie dans mon code ont échoué et j'essaie de le réparer, mais je reçois toujours l'erreur suivante:Impossible de passer des emails via l'échange: Une connexion existante a été fermée par l'hôte distant
System.Net.Mail.SmtpException: Failure sending mail. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host.
---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
--- End of inner exception stack trace ---
at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
at System.Net.DelegatedStream.Read(Byte[] buffer, Int32 offset, Int32 count)
at System.Net.BufferedReadStream.Read(Byte[] buffer, Int32 offset, Int32 count)
at System.Net.Mail.SmtpReplyReaderFactory.ReadLines(SmtpReplyReader caller, Boolean oneLine)
at System.Net.Mail.SmtpReplyReaderFactory.ReadLine(SmtpReplyReader caller)
at System.Net.Mail.SmtpConnection.GetConnection(String host, Int32 port)
at System.Net.Mail.SmtpTransport.GetConnection(String host, Int32 port)
at System.Net.Mail.SmtpClient.GetConnection()
at System.Net.Mail.SmtpClient.Send(MailMessage message)
--- End of inner exception stack trace ---
at System.Net.Mail.SmtpClient.Send(MailMessage message)
Mon code est assez simple:
MailMessage mail = new MailMessage();
mail.To.Add(email_to);
mail.From = new MailAddress(email_from);
mail.Subject = email_subject;
mail.Body = email_body;
var client = new SmtpClient(smtp_server_url);
client.Credentials = new NetworkCredential(username, password, domain);
client.Timeout = 30000;
client.Send(mail);
est-ce que quelqu'un a des idées ce qui pourrait se passer? Notre administrateur de serveur d'échange dit qu'elle ne peut rien voir dans le journal.
Aussi, pas que ce soit une surprise, mais la même chose arrive quand j'essaye d'envoyer un message de powershell.
Merci, mais ce n'est pas ça, je peux envoyer de perspectives très bien. C'est seulement avec l'envoi de code .NET que j'ai un problème –
Je suis également méfiant des problèmes de configuration/auth. Cela fonctionne-t-il si email_from et email_to sont définis sur votre adresse e-mail (la même que celle que vous utilisez pour l'échange)? – jsight
Vous savez peut-être déjà, pardonnez-moi si je suppose, mais je ne voudrais pas ignorer les paramètres du serveur Exchange juste parce que vous pouvez envoyer un courriel via Outlook, Envoi de courrier à partir d'un ordinateur utilise le System.net. SmtpClient, qui se connecte via SMTP. C'est différent de la façon dont Outlook se connecte. Les administrateurs doivent autoriser spécifiquement la machine à utiliser le serveur comme relais pour le courrier SMTP. Cette cabine doit être par l'IP de la machine et les informations d'identification du client ou les deux. – David