Mostrando las entradas con la etiqueta Enviar correo con imágenes incrustadas. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Enviar correo con imágenes incrustadas. Mostrar todas las entradas

viernes, 10 de junio de 2016

Enviar correo con imágenes incrustadas

Hola a todos.
Por si alguna vez les piden que envíen correos con imágenes; acá les comparto una forma de poder realizarlo:

 
Public Sub CorreoNet(ByVal CorreoDestinatario As String, CorreoDestinatarioCopia As String, ByVal CorreoRemitente As String, ByVal Name As String, _
                     ByVal Asunto As String, ByVal Host As String)
        'Mensaje:
        Dim Mensaje = "Hola mundo... cargando imagen: "

        Dim reader = File.ReadAllBytes("D:\Demo\Imagenes\iGrupo.png")
        Dim image1 = New MemoryStream(reader)
        Dim av = AlternateView.CreateAlternateViewFromString(Mensaje, Nothing, System.Net.Mime.MediaTypeNames.Text.Html)

        Dim headerImage = New LinkedResource(image1, System.Net.Mime.MediaTypeNames.Image.Jpeg)
        headerImage.ContentId = "companyLogo"
        headerImage.ContentType = New Mime.ContentType("image/png")
        av.LinkedResources.Add(headerImage)

        'Configuracion Mensaje:
        Dim Correo = New Mail.MailMessage()
        Correo.To.Add(CorreoDestinatario)
        If Not CorreoDestinatarioCopia = "" Then Correo.CC.Add(CorreoDestinatarioCopia)
        Correo.From = New Mail.MailAddress(CorreoRemitente, Name, Encoding.UTF8)
        Correo.Subject = Asunto
        Correo.SubjectEncoding = Encoding.UTF8

        'Correo.Body = Mensaje
        Correo.AlternateViews.Add(av)
        Correo.BodyEncoding = Encoding.UTF8
        Correo.Priority = Mail.MailPriority.High
        Correo.IsBodyHtml = True

        'Configuracion SMTP:
        Dim Servidor = New Mail.SmtpClient
        Servidor.Host = Host

        'Enviar Correo:
        Try
            Servidor.Send(Correo)
        Catch ex As Mail.SmtpException
            Throw ex
        End Try
    End Sub
End Class

Ademas deberás incluir incluir los siguientes "Imports":
Imports System.Net
Imports System.Text
Imports System.IO
Imports System.Net.Mail
Saludos.