Невозможно прочитать данные из транспортного соединения существующее соединение было принудительно закрыто удаленным хостом
Я разработал программу c# для отправки электронной почты вместе с вложением pdf-файла. когда я запускаю программу, она выдает ошибку "невозможно прочитать данные из транспортного соединения, существующее соединение было принудительно закрыто удаленным хостом". Я искал справку об этой ошибке в интернете, но не смог решить эту проблему. У меня также есть менее безопасный вариант учетной записи gmail. Пожалуйста, предложите любое средство.
Что я уже пробовал:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Net; using System.Net.Mail; using System.Web; namespace MailMessaje { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void btnSend_Click(object sender, EventArgs e) { try { MailMessage mail = new MailMessage(); SmtpClient client = new SmtpClient(); mail.From = new MailAddress("<email>"); mail.To.Add(this.txtToMailAddress.Text); mail.Subject = this.txtSubjectMail.Text; mail.Body = this.txtBodyMail.Text; System.Net.Mail.Attachment attachFile = new Attachment("D:\\exp1.pdf"); mail.Attachments.Add(attachFile); client.Port = 587; client.Host = "smtp.gmail.com"; client.DeliveryMethod = SmtpDeliveryMethod.Network; client.EnableSsl = true; client.Credentials = new System.Net.NetworkCredential("<email>", "<password>"); System.Net.ServicePointManager.Expect100Continue = false; client.Send(mail); MessageBox.Show("Message Send Successfully"); } catch (Exception ex) { MessageBox.Show(ex.InnerException.Message); } } }}
Afzaal Ahmad Zeeshan
Никогда не делитесь своей электронной почтой/паролем в интернете. Это небезопасное место для обмена такой информацией. Нам требуется только тот код, который вы используете, и мы можем опробовать его с помощью нашего собственного имени пользователя/пароля, если это необходимо для теста.
F-ES Sitecore
Этот вопрос задают почти каждый день. Google для того, чтобы узнать, как отправлять электронную почту через gmail, и вы найдете тысячи результатов, которые объяснят проблемы, с которыми вы можете столкнуться. В конечном счете, вы вообще не должны отправлять электронную почту через gmail, вы должны использовать smtp-сервер, поставляемый вашим веб-хостингом.