.NET 4.x Отправка писем в формате HTML с рисунками (не отображая их во вложении) - Visual Basic .NET
Формулировка задачи:
Доброго всем дня.
Возник вопрос: как отправить письмо HTML содержания с изображениями, не отображая эти изображения как вложения).
Встретил вот такое решение, на C#, но не разобрался еще в самом решении этой задачи.
Может кто-то решал подобную задачу и поделится?
С уважением и всех благ
Решение задачи: «.NET 4.x Отправка писем в формате HTML с рисунками (не отображая их во вложении)»
textual
Листинг программы
Imports System.Net
Imports System.Net.Mail
Imports System.Net.Mime
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim htmlBody As String = "<html><body><h1>Picture</h1><br><img src=""cid:Pic1""></body></html>"
Dim avHtml As AlternateView = AlternateView.CreateAlternateViewFromString(htmlBody, Nothing, MediaTypeNames.Text.Html)
Dim pic1 As New LinkedResource("C:\Users\username\Pictures\cyberforum\22135612674l.jpg", MediaTypeNames.Image.Jpeg)
pic1.ContentId = "Pic1"
avHtml.LinkedResources.Add(pic1)
Dim m As MailMessage = New MailMessage()
m.AlternateViews.Add(avHtml)
Dim fromAddress = New MailAddress("fhdhdhgdgdgfds@gmail.com", "From Name")
Dim toAddress = New MailAddress("fhgfhgfgjhf@bk.ru", "To Name")
Const fromPassword As String = "gjgjgffjhhfgj"
Dim smtp = New SmtpClient() With {
.Host = "smtp.gmail.com",
.Port = 587,
.EnableSsl = True,
.DeliveryMethod = SmtpDeliveryMethod.Network,
.Credentials = New NetworkCredential(fromAddress.Address, fromPassword),
.Timeout = 20000
}
m.From = New MailAddress("gjkgjkgjj@gmail.com", "From Name")
m.[To].Add(New MailAddress("ghjgjfjghf@bk.ru", "To Name"))
m.Subject = "картинка не как вложение"
smtp.Send(m)
MsgBox("")
End Sub
End Class