Posteado por: irodriguezm | enero 21, 2011

Email desde VB.Net

Hola amigos, hoy traigo algo sumamente necesario para cualquier programador, busque mucha información en internet y este codigo fue el que se me funciono de mejor forma.
bueno lo primero es crear un nuevo form, agregamos 2 textbox (TextAsunto y TextPara), 1 RichTextBox1, RadioButton1, RadioButton2, RadioButton3 (q aunque no es necesario, servira para ver la funcionalidad de prioridad) y obviamente un botón.
agregamos
la referencia a System.web

y ponemos en nuestro codigo

Imports System.Net.Mail
Dim miCorreo As New System.Net.Mail.MailMessage

el codigo para el botón:

Private Sub BtnEnviaEmail_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnEnviaEmail.Click
        If Me.TextAsunto.Text = "" Then
            MsgBox("Ingrese el asunto")
        ElseIf Me.TextPara.Text = "" Then
            MsgBox("Ingrese un destinatario")
        ElseIf Me.RichTextBox1.Text = "" Then
            MsgBox("Ingrese un Mensaje")
        Else

            Dim correo As New MailMessage
            correo.From = New MailAddress(Me.TextDe.Text)
            correo.To.Add(Me.TextPara.Text)
            'Asunto
            correo.Subject = Me.TextAsunto.Text


            If Me.RadioButton1.Checked = True Then
                correo.Priority = MailPriority.High
            ElseIf Me.RadioButton2.Checked = True Then
                correo.Priority = MailPriority.Normal
            ElseIf Me.RadioButton3.Checked = True Then
                correo.Priority = MailPriority.Low

            End If


            'Cuerpo del correo
            If Me.CheckBox1.Checked = True Then
                correo.Body = Me.RichTextBox1.Text & vbCrLf & "" & vbCrLf & "Tu nombre" & vbCrLf & "Tu Institución" & vbCrLf & "Tu Fono"
            Else
                correo.Body = Me.RichTextBox1.Text
            End If

            'Mostrar como HTML
            correo.IsBodyHtml = False
            'Prioridad de el correo
            correo.Priority = MailPriority.Normal
            'acto seguido le indicamos cual servidor utilizaremos
            'aquì usaremos por default a gmail y su puerto SMTP
            'pero en una futura entrega les mostraré como hacerlo
            'cn cualquier servidor

            Dim smtp As New SmtpClient()

            smtp.Host = "xxx.xxx.x.x"
            ' puerto de correo 25
            smtp.Port = 25
            smtp.Credentials = New System.Net.NetworkCredential("xxxxxx", "xxxxx")
            smtp.EnableSsl = False
            Try


                'listo tenemos la estructura de nuestro mensaje armada ahora enviemosla a nuestro destinatario y listo
                smtp.Send(correo)
                MsgBox("Mensaje enviado satisfactoriamente")

               
                Me.Close()

            Catch ex As Exception

                MsgBox("ERROR: " & ex.Message)

            End Try
        End If
    End Sub
  

algunas a considerar: el puerto, el host y las credenciales (usuario y password)

y eso seria saludos


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Categorías

A %d blogueros les gusta esto: