martes, 16 de abril de 2013

Enviar Mails con Visual Basic .Net

En esta ocasión les mostrare un ejemplo de como enviar un mensaje de correo  , utilizando System.Net.Mail, a traves de un servidor SMTP. En este ejemplo agrego un archivo adjunto

Aqui va el codigo Fuente:

Public Sub EnviarMail()

'Creamos las variables para los parametros del mensaje de correo a enviar
Dim SMTP As String = "mail.midominio.com"
Dim Usuario As String = "usuario@midominio.com"
Dim Password As String = "elpassworddelusuario"
Dim Destinatario As String = "unadireccion@mail.com"
Dim Contenido As String="Aqui va el cuerpo del mensaje"
Dim Asunto As String = "Aqui va el asunto del mensaje"

Dim ArchivoAdjuntar as New Attachment("C:\prueba.txt")

Dim Puerto As Integer = 26 'Depende del puerto de salida de su servidor SMTP

'Se crea el mensaje
Dim correo As New System.Net.Mail.MailMessage()
correo.From = New System.Net.Mail.MailAddress(Usuario)
correo.To.Add(Destinatario)
correo.Subject = Asunto
correo.Body = Contenido
'Adjuntamos el archivo
correo.Attachments.Add(ArchivoAdjuntar)

'Configuramos el servidor smtp antes de enviar, pasandole las variables que ya tenemos

Dim Servidor As New System.Net.Mail.SmtpClient
Servidor.Host = SMTP
Servidor.Port = Puerto
Servidor.EnableSsl = False 'Depende si su servidor usa SSL
Servidor.Credentials = New System.Net.NetworkCredential(Usuario, Password)
'Enviamos el mail dentro de un try, para atrapar un posible error
Try

       Servidor.Send(correo)
        MsgBox("Correo enviado Satisfactoriamente", MsgBoxStyle.Information)
Catch ex As Exception
        MsgBox("Error al enviar mail :" + ex.Message)
End Try
End Sub