Не удалось отправить электронное письмо с использованием делового электронного письма с вложением в формате PDF. ⇐ C#
Не удалось отправить электронное письмо с использованием делового электронного письма с вложением в формате PDF.
Я отправляю электронное письмо, используя деловой адрес электронной почты с вложением в формате PDF, которое я создал во время выполнения с использованием строковых данных.
Но там написано
SMTP-серверу требуется безопасное соединение, или клиент не прошел аутентификацию. Ответ сервера был: 5.7.0 Требуется аутентификация. Узнайте больше на
Или
Не удалось отправить письмо
Мой код следующий:
protected void BtnSendEmail_Click(отправитель объекта, EventArgs e) { Send_Email("[email protected]","Это письмо с вложением!","Привет, хорошего дня. Я отправил вам письмо с вложением!"); } защищенная строка Bind_Invoice() { строка оп = ноль; пытаться { con = новый SqlConnection(CommonClass.Get_DB_Path); con.Открыть(); cmd = новый SqlCommand("BIND_PURCHASE_INVOICE", con); cmd.ТипКоманды = ТипКоманды.СохраненнаяПроцедура; cmd.CommandTimeout = 10000; cmd.Parameters.AddWithValue("@USER", Session["username"].ToString()); SqlParameter RuturnValue = новый SqlParameter("@RETVAL", SqlDbType.VarChar, 18000); РутурнЗначение.Направление = Направление Параметра.Вывод; cmd.Parameters.Add(RuturnValue); cmd.ExecuteNonQuery(); op = cmd.Parameters["@RETVAL"].Value.ToString(); cmd.Dispose(); con.Закрыть(); } поймать (Исключение ex) { если (например, сообщение! = ноль) { оп = ex.Сообщение; con.Закрыть(); } } возврат оп; } protected void Send_Email (строка ToAddress, строка MailSubject, строка MailBody) { пытаться { Сообщение MailMessage = новое MailMessage(); message.To.Add(ToAddress);// Email-ID получателя message.Subject = MailSubject;// Тема письма message.From = new System.Net.Mail.MailAddress("MYUSERNAME");// Идентификатор электронной почты отправителя message.IsBodyHtml = правда; строка PDFdata = Bind_Invoice(); Файл MemoryStream = новый MemoryStream(PDFGenerate(PDFdata, Server.MapPath("img/bg.jpg")).ToArray()); file.Seek(0, SeekOrigin.Begin); Данные вложения = новое вложение (файл, «RunTime_Attachment.pdf», «application/pdf»); Расположение ContentDisposition = data.ContentDisposition; расположение.Дата создания = System.DateTime.Now; расположение.ДатаМодификации = System.DateTime.Now; Disposition.DispositionType = DispositionTypeNames.Attachment; message.Attachments.Add(data);//Прикрепляем файл message.Body = MailBody; SmtpClient SmtpMail = новый SmtpClient(); SmtpMail.Host = "МОЙ АДРЕС ХОСТА";//имя или IP-адрес хоста, используемого для SMTP-транзакций SmtpMail.Port = 465;//Порт для отправки почты SmtpMail.Credentials = new System.Net.NetworkCredential("MYUSERNAME", "MYPASS");//имя пользователя/пароль сети, если применимо SmtpMail.DeliveryMethod = SmtpDeliveryMethod.Network; SmtpMail.EnableSsl = правда; SmtpMail.UseDefaultCredentials = ложь; SmtpMail.ServicePoint.MaxIdleTime = 0; SmtpMail.ServicePoint.SetTcpKeepAlive(правда, 2000, 2000); message.BodyEncoding = Кодировка.По умолчанию; message.Priority = MailPriority.High; SmtpMail.Send (сообщение); //Smtpclient для отправки почтового сообщения Response.Write("Электронное письмо отправлено!"); } поймать (Исключение ex) { Response.Write("Ошибка!"); } } частный MemoryStream PDFGenerate (строковое сообщение, строка ImagePath) { Выход MemoryStream = новый MemoryStream(); Документ pdfDoc = новый документ(PageSize.A4, 25, 10, 25, 10); PdfWriter pdfWriter = PdfWriter.GetInstance(pdfDoc, вывод); pdfДок.Открыть(); Текст абзаца = новый абзац (сообщение); pdfDoc.Добавить(Текст); байтовый [] файл; файл = System.IO.File.ReadAllBytes(ImagePath); iTextSharp.text.Image jpg = iTextSharp.text.Image.GetInstance(файл); jpg.ScaleToFit(550F, 200F); pdfDoc.Добавить(jpg); pdfWriter.CloseStream = ложь; //pdfДок.Закрыть(); вывод.Позиция = 0; обратный вывод; } Будем благодарны за любую помощь.
Я отправляю электронное письмо, используя деловой адрес электронной почты с вложением в формате PDF, которое я создал во время выполнения с использованием строковых данных.
Но там написано
SMTP-серверу требуется безопасное соединение, или клиент не прошел аутентификацию. Ответ сервера был: 5.7.0 Требуется аутентификация. Узнайте больше на
Или
Не удалось отправить письмо
Мой код следующий:
protected void BtnSendEmail_Click(отправитель объекта, EventArgs e) { Send_Email("[email protected]","Это письмо с вложением!","Привет, хорошего дня. Я отправил вам письмо с вложением!"); } защищенная строка Bind_Invoice() { строка оп = ноль; пытаться { con = новый SqlConnection(CommonClass.Get_DB_Path); con.Открыть(); cmd = новый SqlCommand("BIND_PURCHASE_INVOICE", con); cmd.ТипКоманды = ТипКоманды.СохраненнаяПроцедура; cmd.CommandTimeout = 10000; cmd.Parameters.AddWithValue("@USER", Session["username"].ToString()); SqlParameter RuturnValue = новый SqlParameter("@RETVAL", SqlDbType.VarChar, 18000); РутурнЗначение.Направление = Направление Параметра.Вывод; cmd.Parameters.Add(RuturnValue); cmd.ExecuteNonQuery(); op = cmd.Parameters["@RETVAL"].Value.ToString(); cmd.Dispose(); con.Закрыть(); } поймать (Исключение ex) { если (например, сообщение! = ноль) { оп = ex.Сообщение; con.Закрыть(); } } возврат оп; } protected void Send_Email (строка ToAddress, строка MailSubject, строка MailBody) { пытаться { Сообщение MailMessage = новое MailMessage(); message.To.Add(ToAddress);// Email-ID получателя message.Subject = MailSubject;// Тема письма message.From = new System.Net.Mail.MailAddress("MYUSERNAME");// Идентификатор электронной почты отправителя message.IsBodyHtml = правда; строка PDFdata = Bind_Invoice(); Файл MemoryStream = новый MemoryStream(PDFGenerate(PDFdata, Server.MapPath("img/bg.jpg")).ToArray()); file.Seek(0, SeekOrigin.Begin); Данные вложения = новое вложение (файл, «RunTime_Attachment.pdf», «application/pdf»); Расположение ContentDisposition = data.ContentDisposition; расположение.Дата создания = System.DateTime.Now; расположение.ДатаМодификации = System.DateTime.Now; Disposition.DispositionType = DispositionTypeNames.Attachment; message.Attachments.Add(data);//Прикрепляем файл message.Body = MailBody; SmtpClient SmtpMail = новый SmtpClient(); SmtpMail.Host = "МОЙ АДРЕС ХОСТА";//имя или IP-адрес хоста, используемого для SMTP-транзакций SmtpMail.Port = 465;//Порт для отправки почты SmtpMail.Credentials = new System.Net.NetworkCredential("MYUSERNAME", "MYPASS");//имя пользователя/пароль сети, если применимо SmtpMail.DeliveryMethod = SmtpDeliveryMethod.Network; SmtpMail.EnableSsl = правда; SmtpMail.UseDefaultCredentials = ложь; SmtpMail.ServicePoint.MaxIdleTime = 0; SmtpMail.ServicePoint.SetTcpKeepAlive(правда, 2000, 2000); message.BodyEncoding = Кодировка.По умолчанию; message.Priority = MailPriority.High; SmtpMail.Send (сообщение); //Smtpclient для отправки почтового сообщения Response.Write("Электронное письмо отправлено!"); } поймать (Исключение ex) { Response.Write("Ошибка!"); } } частный MemoryStream PDFGenerate (строковое сообщение, строка ImagePath) { Выход MemoryStream = новый MemoryStream(); Документ pdfDoc = новый документ(PageSize.A4, 25, 10, 25, 10); PdfWriter pdfWriter = PdfWriter.GetInstance(pdfDoc, вывод); pdfДок.Открыть(); Текст абзаца = новый абзац (сообщение); pdfDoc.Добавить(Текст); байтовый [] файл; файл = System.IO.File.ReadAllBytes(ImagePath); iTextSharp.text.Image jpg = iTextSharp.text.Image.GetInstance(файл); jpg.ScaleToFit(550F, 200F); pdfDoc.Добавить(jpg); pdfWriter.CloseStream = ложь; //pdfДок.Закрыть(); вывод.Позиция = 0; обратный вывод; } Будем благодарны за любую помощь.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Ошибка, пытаясь отправить электронное письмо с помощью электронного письма Bootspring
Anonymous » » в форуме JAVA - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Ошибка, пытаясь отправить электронное письмо с помощью электронного письма Bootspring
Anonymous » » в форуме JAVA - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-
-
-
POCO libs: невозможно отправить электронное письмо в формате HTML с вложением
Anonymous » » в форуме JAVA - 0 Ответы
- 31 Просмотры
-
Последнее сообщение Anonymous
-