Para poder enviar un correo desde nuestra aplicación windows en Visual Basic .NET utilizaremos la clase System.Net.Mail.MailMessage.
Para el ejemplo siguiente vamos a crear un formulario, tres cajas de texto para escribir el correo hacia donde vamos enviar el correo, el Asunto y el Mensaje y dos botones para enviar para enviar el e-mail y otro para salir.
El siguiente código se pone en el botón enviar:
| vb.net | | copy code | | ? |
- Dim _Message As New System.Net.Mail.MailMessage()
- Dim _SMTP As New System.Net.Mail.SmtpClient
- 'CONFIGURACIÓN DEL STMP
- _SMTP.Credentials = New System.Net.NetworkCredential("cuenta de correo", "contraseña")
- _SMTP.Host = "smtp.gmail.com"
- _SMTP.Port = 587
- _SMTP.EnableSsl = True
- ' CONFIGURACION DEL MENSAJE
- _Message.[To].Add(Me.txtPara.Text.ToString) 'Cuenta de Correo al que se le quiere enviar el e-mail
- _Message.From = New System.Net.Mail.MailAddress("cuenta de correo", "nombre", System.Text.Encoding.UTF8) 'Quien lo envÃa
- _Message.Subject = Me.txtAsunto.Text.ToString 'Sujeto del e-mail
- _Message.SubjectEncoding = System.Text.Encoding.UTF8 'Codificacion
- _Message.Body = Me.txtMensaje.Text.ToString 'contenido del mail
- _Message.BodyEncoding = System.Text.Encoding.UTF8
- _Message.Priority = System.Net.Mail.MailPriority.Normal
- _Message.IsBodyHtml = False
- 'ENVIO
- Try
- _SMTP.Send(_Message)
- MessageBox.Show("Mensaje enviado correctamene", "Exito!", MessageBoxButtons.OK)
- Catch ex As System.Net.Mail.SmtpException
- MessageBox.Show(ex.ToString, "Error!", MessageBoxButtons.OK)
- End Try
Si ponemos la propiedad IsBodyHtml en True, podremos llenar el cuerpo con código HTML para que nuestro mensaje llegué con un mejor look.
Puedes bajar el ejemplo de Aca. Requisitos (Microsoft Visual Studio 2010)












hola, gracias por su obsequio
De nada, espero te sirva de algo. Saludos.
Buenas, la presente es para informarle que en el código me sale un error y es:
Me.txtPara.
Me.txtAsunto.
Me.txtMensaje.
Dice que no son un miembro de ‘pdf.form1′
Espero me pueda ayudar, gracias
Buen dia Juan, gracias por tu comentario, Estas haciendo desde cero el proyecto o bajaste el que deje aca?
A esas propiedades agregale lo siguiente .text
Osea para que me entiendas
me.txtpara.text
me.txtasunto.text
me.txtasunto.text
y listo ya no tendra por que marcarte error
Buen dia, sale un error al momento de enviarlo, the smtp server a secure connection or the client wa not authenticated
Como puedo conectar una base de datos en mysql con Vb, con que herramientas.
hola, excelente aporte, lo probé y funciono al 100 %, tengo una duda como hago para adjuntarle archivos
Viejo te felicito y te agradezco muchisimo! funciono 100% luego de horas y horas de google por fin encontré a alguien que hizo las cosas sencillas y utiles! muchas gracias por el aporte!
Hola necesito configurar el envio de email pero para outlook 2010.
¿Cómo se hace?
TE FELICITO !! MUCHAS GRACIAS POR ESTOS APORTES! SIGUE ASI! MUY BUEN TRABAJO!!
Excelente! Me vino como anillo al dedo!
Muchas gracias.
Saludos.
working !
Excelente aporte Rolyn sigue asÃ!
Excelente, funciona perfectamente. Como se puede hacer para adjuntar un archivo?
Muchas gracias me sirvió de mucho este ejemplo!
quisiera saber si necesariamente el _SMTP.Host tiene q corresponder con el nombre luego del arroba por q probe con hotmail, yahoo y no me da pero el di gmail si
_SMTP.Host= “smtp.hotmail.com” asi no anda
_SMTP.Host= “smtp.gmail.com” asi si anda
Excelente Porte. Me es de gran ayuda para un proyecto en desarrollo.