none
Enviar Email a hotmail

    Question

  • Necesito enviar un correo adjunto a hotmail desde mi aplicacion windows forms estoy utilizando vb net 2003 el codigo que utilizo es el siguiente:

            Dim oMsg As New System.Web.Mail.MailMessage
            Dim sFile As String = "c:\Importar.txt"
            Dim oAttch As MailAttachment = New MailAttachment(sFile, MailEncoding.Base64)

            oMsg.From = "g_joseignacio@hotmail.com"
            oMsg.Subject = "Prueba Mail"
            oMsg.Fields("http://schemas.microsoft.com/cdo/configuration/smtsperver") = "pop3.live.com"
            oMsg.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
            oMsg.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

            oMsg.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
            oMsg.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = "g_joseignacio@hotmail.com"
            oMsg.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "xxxx"
            oMsg.To = "g_joseignacio@hotmail.com"
            oMsg.Attachments.Add(oAttch)

            oMsg.Body = "CORREO GENERADO AUTOMATICAMENTE"

            'Servidor smtp
            SmtpMail.SmtpServer = "smtp.live.com"
            SmtpMail.Send(oMsg)

    Wednesday, September 22, 2010 4:30 PM

Answers

  • hola

    analzia estos link

     

    Send Email with Gmail

    How to Send Mails from your GMAIL Account through VB.NET or C#. Windows Programming, with a Bit of Customization

     

    veras que alli no se definen Field para especificar las propeidades de envio

    sino que se usa la clase SmtpClient, la cual no veo estes usando, alli es donde especificas el puerto y el smtp

    que en el caso de hotmail seria: smtp.live.com

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marked as answer by Orus17 Thursday, September 23, 2010 1:33 AM
    Wednesday, September 22, 2010 4:51 PM
  • Hola,

    porque no pruebas usando algo como esto, funciona con gmail pero para hotmail solo cambias los parametros de conexión:

        Imports System.Net.Mail

        Dim correo As New MailMessage
        Dim oEmpresa As String = "NombreEmpresa"
        Dim oAddress As String = "xxxx@gmail.com"
        Dim oPassword As String = "xxxxxx"
        Dim oPort As Integer = 587
        Dim oHost As String = "smtp.gmail.com"
        Dim oSSL As Boolean = True

        Public Function Mail()
            Dim EstadoEnvio As Boolean
            Dim Asunto As String = "asunto del mail"
            Dim Cuerpo As String = "Cuerpo"

            correo.From = New MailAddress(oAddress, oEmpresa, System.Text.Encoding.UTF8)
            correo.To.Add(xxxx@xxxx.com)
            correo.Subject = Asunto
            correo.SubjectEncoding = System.Text.Encoding.UTF8
            correo.BodyEncoding = System.Text.Encoding.UTF8
            correo.Priority = MailPriority.Normal
            correo.IsBodyHtml = True
            correo.Body = Cuerpo
            correo.Attachments.Clear()

            Dim getInfo As System.IO.FileInfo
            getInfo = My.Computer.FileSystem.GetFileInfo(Archivo)

            Dim fs As FileStream = New FileStream(Archivo, FileMode.Open, FileAccess.Read)

            correo.Attachments.Add(New Attachment(fs, getInfo.Name, "application/pdf")) >>> acá adjunto archivos de tipo PDF.

            Dim smtp As New SmtpClient()
            smtp.Credentials = New System.Net.NetworkCredential(oAddress, oPassword)
            smtp.Port = oPort
            smtp.Host = oHost
            smtp.EnableSsl = oSSL

            Try
                smtp.Send(correo)
                EstadoEnvio = True
            Catch ex As Exception
                EstadoEnvio = False
            Finally
                correo.To.Clear()
                fs.Close()
            End Try

            Return EstadoEnvio
        End Function

    • Marked as answer by Orus17 Thursday, September 23, 2010 1:27 AM
    • Unmarked as answer by Orus17 Thursday, September 23, 2010 1:28 AM
    • Marked as answer by Orus17 Thursday, September 23, 2010 1:32 AM
    Wednesday, September 22, 2010 4:53 PM
  • La clase utilizada para mandar correos en visual studio 2003 es System.Web.Mail

    aqui les dejo una guia excelente para todos aquellos que necesiten enviar un correo

    http://jms32.eresmas.net/tacticos/programacion/VBNet/VBN02/sendMail.html

     

    ahora me encuentro tratando de resolver el siguiente error:

    "No se puede obtener acceso al objeto CDO.Message"

    • Marked as answer by Orus17 Thursday, September 23, 2010 1:31 AM
    Thursday, September 23, 2010 1:31 AM
  • Para solucionar la mensaje de error "No se pudo crear 'CDO.Message'"

    http://support.microsoft.com/kb/910360/es

    • Marked as answer by Orus17 Thursday, September 23, 2010 1:38 AM
    Thursday, September 23, 2010 1:38 AM

All replies

  • hola

    analzia estos link

     

    Send Email with Gmail

    How to Send Mails from your GMAIL Account through VB.NET or C#. Windows Programming, with a Bit of Customization

     

    veras que alli no se definen Field para especificar las propeidades de envio

    sino que se usa la clase SmtpClient, la cual no veo estes usando, alli es donde especificas el puerto y el smtp

    que en el caso de hotmail seria: smtp.live.com

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marked as answer by Orus17 Thursday, September 23, 2010 1:33 AM
    Wednesday, September 22, 2010 4:51 PM
  • Hola,

    porque no pruebas usando algo como esto, funciona con gmail pero para hotmail solo cambias los parametros de conexión:

        Imports System.Net.Mail

        Dim correo As New MailMessage
        Dim oEmpresa As String = "NombreEmpresa"
        Dim oAddress As String = "xxxx@gmail.com"
        Dim oPassword As String = "xxxxxx"
        Dim oPort As Integer = 587
        Dim oHost As String = "smtp.gmail.com"
        Dim oSSL As Boolean = True

        Public Function Mail()
            Dim EstadoEnvio As Boolean
            Dim Asunto As String = "asunto del mail"
            Dim Cuerpo As String = "Cuerpo"

            correo.From = New MailAddress(oAddress, oEmpresa, System.Text.Encoding.UTF8)
            correo.To.Add(xxxx@xxxx.com)
            correo.Subject = Asunto
            correo.SubjectEncoding = System.Text.Encoding.UTF8
            correo.BodyEncoding = System.Text.Encoding.UTF8
            correo.Priority = MailPriority.Normal
            correo.IsBodyHtml = True
            correo.Body = Cuerpo
            correo.Attachments.Clear()

            Dim getInfo As System.IO.FileInfo
            getInfo = My.Computer.FileSystem.GetFileInfo(Archivo)

            Dim fs As FileStream = New FileStream(Archivo, FileMode.Open, FileAccess.Read)

            correo.Attachments.Add(New Attachment(fs, getInfo.Name, "application/pdf")) >>> acá adjunto archivos de tipo PDF.

            Dim smtp As New SmtpClient()
            smtp.Credentials = New System.Net.NetworkCredential(oAddress, oPassword)
            smtp.Port = oPort
            smtp.Host = oHost
            smtp.EnableSsl = oSSL

            Try
                smtp.Send(correo)
                EstadoEnvio = True
            Catch ex As Exception
                EstadoEnvio = False
            Finally
                correo.To.Clear()
                fs.Close()
            End Try

            Return EstadoEnvio
        End Function

    • Marked as answer by Orus17 Thursday, September 23, 2010 1:27 AM
    • Unmarked as answer by Orus17 Thursday, September 23, 2010 1:28 AM
    • Marked as answer by Orus17 Thursday, September 23, 2010 1:32 AM
    Wednesday, September 22, 2010 4:53 PM
  • La clase utilizada para mandar correos en visual studio 2003 es System.Web.Mail

    aqui les dejo una guia excelente para todos aquellos que necesiten enviar un correo

    http://jms32.eresmas.net/tacticos/programacion/VBNet/VBN02/sendMail.html

     

    ahora me encuentro tratando de resolver el siguiente error:

    "No se puede obtener acceso al objeto CDO.Message"

    • Marked as answer by Orus17 Thursday, September 23, 2010 1:31 AM
    Thursday, September 23, 2010 1:31 AM
  • Para solucionar la mensaje de error "No se pudo crear 'CDO.Message'"

    http://support.microsoft.com/kb/910360/es

    • Marked as answer by Orus17 Thursday, September 23, 2010 1:38 AM
    Thursday, September 23, 2010 1:38 AM
  • Al final Cual funciono porque hay artas respuestas con respuesta efectiva 
    Thursday, September 23, 2010 1:06 PM