none
Envío de emails con VB RRS feed

  • Pregunta

  • Buenas tardes.

    Estoy intentando enviar correos desde una aplicación de Visual Basic y estoy teniendo problemas para hacerlo... Mi código es:

    Dim correo As New MailMessage
            Dim smtp As New SmtpClient()

            correo.From = New MailAddress("XXX@gmail.com", "XXX", System.Text.Encoding.UTF8)
            correo.To.Add("XXX")
            correo.SubjectEncoding = System.Text.Encoding.UTF8
            correo.Subject = "Test Mail"
            correo.Body = "This is for testing SMTP mail from GMAIL"
            correo.BodyEncoding = System.Text.Encoding.UTF8
            correo.IsBodyHtml = False
            correo.Priority = MailPriority.High

            smtp.Credentials = New Net.NetworkCredential("XXX", "XXX")
            smtp.Port = 465
            smtp.Host = "smtp.gmail.com"
            smtp.EnableSsl = True
            smtp.UseDefaultCredentials = False
            smtp.Send(correo)

    El error que me aparece es: 

    Excepción no controlada del tipo 'System.Net.Mail.SmtpException' en System.dll
    Información adicional: Se excedió el tiempo de espera de la operación.

    ¿Qué estoy haciendo mal?

    martes, 21 de abril de 2015 11:37

Respuestas

  • Buenos dias, el codigo lo tienen inconvenientes, pero si existe una restriccion para realizar envios desde ubicaciones y aplicaciones desconocidas  en gmail, 

    1. Verifica y habilita el acceso a aplicaciones desconocidas en gmail a traves del este link:

     https://www.google.com/settings/security/lesssecureapps

    2. Utiliza el puerto 25 en tu configuracion SMTP

    Te envio la correccion de tu codigo, no hace falta utilizar codificacion UTF8, ya que gmail lo hace por nosotros.

      Dim correo As New MailMessage
            Dim smtp As New SmtpClient()

            correo.From = New MailAddress("cualquier@correo.com", "nombredeusuario")
            correo.To.Add("destinatario@correo.com")

            correo.Subject = "Test Mail"
            correo.Body = "This is for testing SMTP mail from GMAIL"

            correo.Priority = MailPriority.Normal
            correo.IsBodyHtml = False

            smtp.Host = "smtp.gmail.com"
            smtp.Port = 25
            smtp.EnableSsl = True
            smtp.UseDefaultCredentials = False
            smtp.Credentials = New Net.NetworkCredential("xxx@gmail.com", "contraseña")
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network
            smtp.Send(correo)

    Saludos

    :)

    • Marcado como respuesta fnavarrov martes, 21 de abril de 2015 15:20
    martes, 21 de abril de 2015 14:55

Todas las respuestas

  • Buenos dias, el codigo lo tienen inconvenientes, pero si existe una restriccion para realizar envios desde ubicaciones y aplicaciones desconocidas  en gmail, 

    1. Verifica y habilita el acceso a aplicaciones desconocidas en gmail a traves del este link:

     https://www.google.com/settings/security/lesssecureapps

    2. Utiliza el puerto 25 en tu configuracion SMTP

    Te envio la correccion de tu codigo, no hace falta utilizar codificacion UTF8, ya que gmail lo hace por nosotros.

      Dim correo As New MailMessage
            Dim smtp As New SmtpClient()

            correo.From = New MailAddress("cualquier@correo.com", "nombredeusuario")
            correo.To.Add("destinatario@correo.com")

            correo.Subject = "Test Mail"
            correo.Body = "This is for testing SMTP mail from GMAIL"

            correo.Priority = MailPriority.Normal
            correo.IsBodyHtml = False

            smtp.Host = "smtp.gmail.com"
            smtp.Port = 25
            smtp.EnableSsl = True
            smtp.UseDefaultCredentials = False
            smtp.Credentials = New Net.NetworkCredential("xxx@gmail.com", "contraseña")
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network
            smtp.Send(correo)

    Saludos

    :)

    • Marcado como respuesta fnavarrov martes, 21 de abril de 2015 15:20
    martes, 21 de abril de 2015 14:55
  • Hola.

    Gracias por la respuesta. He probado lo que me pones arriba y me sigue pasando lo mismo después de activar las aplicaciones desconocidas... Se excedió el tiempo de espera u_u

    martes, 21 de abril de 2015 15:09
  • Si copias y pegas el codigo te sale lo mismo??  porque lo he probado y funciona.
    martes, 21 de abril de 2015 15:15
  • tiene la version visual basic 6
    Saludos.Guadalajara Mexico
    martes, 21 de abril de 2015 15:16
  • Hola.

    Gracias por la respuesta. He probado lo que me pones arriba y me sigue pasando lo mismo después de activar las aplicaciones desconocidas... Se excedió el tiempo de espera u_u

    Que version de VS estas utilizando y con que framework?
    martes, 21 de abril de 2015 15:19
  • No me hagas ni caso a lo ultimo... el puerto no lo habia cambiado al 25... Jajaja.

    Gracias a todos por vuestras respuestas

    martes, 21 de abril de 2015 15:20