Enviar correo gmail desde vb.net

By | 2010/02/01

En muchas ocasiones no queremos utilizar nuestro servidor para enviar correos por lo que recurrimos a nuestro viejo amigo google.

He aqui como enviar un correo utilizando una cuenta de gmail:

Solución:

Imports System.Net.Mail ‘referencia

Public Sub enviar_mail(ByVal i_de As String, ByVal i_para As String, ByVal asunto As String, ByVal mensaje As String)

Dim insMail As New MailMessage(New MailAddress(i_de), New MailAddress(i_para))
With insMail

.Subject = asunto
.IsBodyHtml = True ‘envia el mensaje como html
.Body = mensaje
.From = New MailAddress(i_de)
.ReplyTo = New MailAddress(i_de)

End With
Dim smtp As New System.Net.Mail.SmtpClient
smtp.Host = “smtp.gmail.com”
smtp.Port = 587
smtp.EnableSsl = True
smtp.UseDefaultCredentials = False
smtp.Credentials = New System.Net.NetworkCredential(“cuentagmail”, “contraseñagmail”)

smtp.Send(insMail)

End Sub

14 thoughts on “Enviar correo gmail desde vb.net

  1. Pingback: Tweets that mention Enviar correo gmail desde vb.net | La esquina de Dunderio -- Topsy.com

  2. Bruno

    Buenas…
    Una consulta, se supone que con esto el gmail queda listo para ser usado ¿no hay que hacer algùn tipo de configuración especial en la cuenta de gmail para poder usarlo?

    Saludos!

  3. admin Post author

    No tienes que realizar ningún cambio en Gmail.

  4. Bruno

    O algún tipo de configuración en mi propio servidor (quiero mandar mails desde una pàgina que se encuentra, por ahora, en localhost)…

  5. admin Post author

    Si tu servidor tiene acceso a internet y el puerto 587 está abierto no debes tener ningún problema enviando correos a través de gmail utilizando una aplicación de vb.net

  6. Bruno

    Hola muchas gracias por la aclaración!! Lo he estado analizando un poco 😛 y creo entender un poco mejor ahora como funciona cada cosa, pero AUN NO ENTIENDO ALGO :(. Al correr el código me sale un error. El depurador (del visual web developer 2008) me muestra lo siguiente:

    an la penúltima línea, donde esta smtp.Send(insMail) me indica lo siguiente

    “Command not implemented. The server response was: 5.5.1 Unrecognized command. w6sm13772613ybe.17” (refiriéndose a smtp.Send(insMail)).

    Tengo avast como antivirus y me dice; “avast! has detected a seccure connection from you mail program (process WebDev.WebServer.EXE) to the SMTP server 74.125.157.109 (gmail.com)”

    Hasta el momento no se porqué me tira ese error!!! Si pudieras orientarme un poco porfa!!!

  7. admin Post author

    No he tenido ese problema pero tengo entendido que esto ocurre cuando tu ISP tiene bloquiado los puertos para evitar SPAM

  8. Chris Baltazar

    Ola, he encontrado el mismo codigo en varios lugares pero no me ha funcionado, estoy usando el smtp de gmail en el puerto 465 pero mi dominio es uno privado que me brinda el propio Gmail x ejem: user@midominiopersonal.com

    El error es “Tiempo de espera agotado”

    Alguien podria ayudarme por favor??

  9. admin Post author

    Es muy probable que tu proveedor de internet esté bloqueando el puerto 465. Deberías averiguarte con ellos al respecto

  10. cjosemaria

    Hola;

    tengo que hacer algo parecido, pero con mysql y vb.net,
    tengo que crear las tablas en mysql y un formulario en vb.net para la uni.
    (es un apractica que vaya practica)

    En realidad, nose como empezar cuantas tablas deberia de crear.

    podrias orientarme porfavor.

    Un Saludo.
    Jose Maria.

  11. Dunderio

    La verdad no te sigo, que tiene que ver mysql para enviar un correo?
    Si puedes ser más específico con mucho gusto podría darte una mano

  12. Giit

    Hola!
    Antes que nada, muchas gracias por el aporte. Lo probé y me pone “El servidor requiere una conexión segura o el cliente no se autenticó”.

    Gracias de antemanp

  13. javier

    muchas gracias, me sirvio para enviar correo en vwd 2010 con cuenta de prodigy

    salu2

Leave a Reply

Your email address will not be published. Required fields are marked *

This blog is kept spam free by WP-SpamFree.