Foros del Web » Programación para mayores de 30 ;) » .NET »

Error de conexion en servidores smtp?

Estas en el tema de Error de conexion en servidores smtp? en el foro de .NET en Foros del Web. Hola les traigo otro problema aver si me pueden ayudar ya termine el programa de envio de correos con adjunto el problema es el siguiente: ...
  #1 (permalink)  
Antiguo 12/04/2011, 13:32
 
Fecha de Ingreso: abril-2011
Ubicación: rosario
Mensajes: 7
Antigüedad: 13 años
Puntos: 0
Pregunta Error de conexion en servidores smtp?

Hola les traigo otro problema aver si me pueden ayudar ya termine el programa de envio de correos con adjunto el problema es el siguiente:

Yo con el smtp de gmail me anda perfecto pero con el de arnet y el de un dominio k tngo k se llama gtinet me tirar error de espera o conexion no se por que.
Tengo un programita echo en consola muy sencillo que no se que difrencia tiene que el smtp de arnet y gtinet me lo toma bien ahi les muestro los dos codigos !

Este es el que quiero que ande bien esta completo y listo pero no me agarra los smtp de arnet y gtinet solo los de mi gmail

Código:
'Espacio de nombres necesario
Imports System.Net.Mail
Imports System.Threading

Public Class FrmMail

    'variable array para adjuntos
    Dim Adjuntos() As String

    'instanciar la hebra
    Dim oHebra As Thread
    'Objeto SMTP
    Dim SMPT As New SmtpClient

    'Procedimiento
    Private Sub EnviarMail(ByVal StrDe As String, ByVal StrPara As String, _
                           ByVal StrAsunto As String, ByVal sAdjunto() As String, _
                           ByVal StrMensaje As String)
        Try

            'variable tipo mensaje con parametros De: Para:
            Dim Msg As New MailMessage(New MailAddress(StrDe), New MailAddress(StrPara))
            'asunto
            Msg.Subject = StrAsunto
            'mensaje
            Msg.Body = StrMensaje

            'ADJUNTOS
            For Each FAdjunto As String In sAdjunto
                If Not FAdjunto = "" Then
                    'Objeto tipo attachment
                    Dim Adjunto As New Attachment(FAdjunto)
                    'agregar adjunto al objeto mensaje
                    Msg.Attachments.Add(Adjunto)
                End If
            Next

            'DATOS SMTP
            
            'Credenciales
            SMPT.Credentials = New System.Net.NetworkCredential _
            ("[email protected]", "**********")
            'Host, Puerto, autenticacion
            SMPT.Host = "smtp.gmail.com"
            SMPT.Port = 587
            SMPT.EnableSsl = True
            SMPT.Timeout = 10
            'Enviar
            SMPT.Send(Msg)

            'regresar cursor y controles a modo normal
            Me.Cursor = Cursors.Default
            btnEnviar.Enabled = True
            ProgressBar1.Visible = False
            Label6.Visible = False

        Catch ex As Exception
            'regresar cursor y controles a modo normal
            Me.Cursor = Cursors.Default
            btnEnviar.Enabled = True
            ProgressBar1.Visible = False
            Label6.Visible = False
            MsgBox(ex.Message)
        End Try
    End Sub

    'función para validar formato de dirección Email
    Function ValidateEmail(ByVal email As String) As Boolean
        Dim emailRegex As _
            New System.Text.RegularExpressions.Regex( _
            "^(?<user>[^@]+)@(?<host>.+)$")
        Dim emailMatch As  _
            System.Text.RegularExpressions.Match = emailRegex.Match(email)
        Return emailMatch.Success
    End Function


    Private Sub TxtDe_Validating(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles TxtDe.Validating
        'si la validación no pasa se visualiza el errorprovider
        If ValidateEmail(TxtDe.Text.Trim) Then
            e.Cancel = False
            ErrorProvider1.SetError(TxtDe, "")
        Else
            e.Cancel = True
            ErrorProvider1.SetError(TxtDe, "La dirección de correo no es válida. Presione F1 para obtener ayuda.")
        End If
    End Sub
    Private Sub TxtPara_Validating(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles TxtPara.Validating
        If ValidateEmail(TxtPara.Text.Trim) Then
            e.Cancel = False
            ErrorProvider1.SetError(TxtPara, "")
        Else
            e.Cancel = True
            ErrorProvider1.SetError(TxtPara, "La dirección de correo no es válida. Presione F1 para obtener ayuda.")
        End If
    End Sub
    Private Sub FrmMail_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ' se establece el texto de ayuda al pulsar F1 en los textboxs
        HelpProvider1.SetHelpString(TxtDe, "Una dirección de correo válida debe tener el formato: [email protected]")
        HelpProvider1.SetHelpString(TxtPara, "Una dirección de correo válida debe tener el formato: [email protected]")
    End Sub

    Private Sub BtnAdjuntos_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAdjuntos.Click
        'para obtener adjuntos
        'establecemos filtros para mostrar todos los archivos
        OpenFileDialog1.Filter = "Todos los archivos|*.*"
        'mostramos el dialogo
        OpenFileDialog1.ShowDialog()
        'agregamos la ruta del adjunto
        CboAdjunto.Items.Add(OpenFileDialog1.FileName)
        'visualizamos la ruta
        CboAdjunto.SelectedIndex = CboAdjunto.Items.Count - 1
    End Sub

    Private Sub btnEnviar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEnviar.Click
        'obtenemos los adjuntos
        ReDim Preserve Adjuntos(0 To CboAdjunto.Items.Count - 1)
        For i As Integer = 0 To Adjuntos.Length - 1
            Adjuntos(i) = CboAdjunto.Items.Item(i).ToString
        Next
   
        Me.Cursor = Cursors.WaitCursor
        btnEnviar.Enabled = False

        'poner en marcha la hebra
        oHebra = New Thread(AddressOf Envio)
        ProgressBar1.Visible = True
        Label6.Visible = True
        oHebra.Start()

    End Sub

    Private Sub Envio()
        'al finalizar el envío, abortar la hebra
        Control.CheckForIllegalCrossThreadCalls = False
        EnviarMail(TxtDe.Text.Trim, TxtPara.Text.Trim, TxtAsunto.Text, Adjuntos, TxtMensaje.Text)
        oHebra.Abort()
    End Sub

    Private Sub BtnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnCancel.Click
        'cancelamos la operación
        SMPT.SendAsyncCancel()
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Me.Close()
    End Sub

    Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar1.Click

    End Sub
End Class
ESTE ME FUNCINAN TODOS LOS SMTP PERO ES SIMPLE Y EN CONSOLA

Código:
Imports System
Imports System.Net
Imports System.Net.Mail
Module Email
    Sub Main()
        'datos del servidor…
        Dim host As String = "smtp.arnet.com.ar" 'ingreso el servidor smtp
        Dim puerto As Integer = 25                    'indico en que puerto hay que conectarse al servidor
        'datos de la cuenta…
        Dim usuario As String = "[email protected]"            'indico mi nombre de usuario
        Dim contrasenia As String = "*******"        'indico mi password
        'datos del mensaje en si mismo…
        Dim de As String = "[email protected]"    'ingreso el mail de origen (mi cuenta)
        Dim para As String = "[email protected]" 'ingreso el mail del destinatario
        Dim asunto As String = "una purefghfghfghfghfgbaaa con adjunto"   'indico cual es el asunto del mensaje
        Dim cuerpo As String = "lagopara vhfghfghfghfghfghfghfger"   'escribo el mensaje en si

        Try
            Dim mensaje As MailMessage = New MailMessage(de, para, asunto, cuerpo) 'creo el mensaje
            Dim clienteSMTP As SmtpClient = New SmtpClient(host, puerto)           'creo la conexion con el servidor
            clienteSMTP.UseDefaultCredentials = False                                        'no hay que usar las credenciales por defecto
            clienteSMTP.Credentials = New System.Net.NetworkCredential(usuario, contrasenia) 'hay que usar mis propias credenciales
            clienteSMTP.Send(mensaje) 'envio el mensaje y listo!
            clienteSMTP.EnableSsl = True
            'Aviso que ya lo envié…
            Console.WriteLine("Mensaje enviado exitosamente.")
        Catch ex As Exception
            Console.WriteLine("Ha ocurrido un error: " + ex.Message)
        Finally
            Console.WriteLine("Presione ENTER para salir…")
            Console.ReadLine()
        End Try
    End Sub
End Module

Desde ya muchas gracias !
  #2 (permalink)  
Antiguo 12/04/2011, 14:36
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: Error de conexion en servidores smtp?

que error te bota? debes colocar el mensaje de error para tener referencia del error que puede estar afectando tu codigo. Saludos!

PDT: No todos las smtpclient necesitan del "clienteSMTP.EnableSsl = True", pues algunos no tienen seguridad SSL.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Última edición por Aquaventus; 12/04/2011 a las 15:46
  #3 (permalink)  
Antiguo 13/04/2011, 03:11
 
Fecha de Ingreso: marzo-2011
Mensajes: 35
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Error de conexion en servidores smtp?

haberigua bien sobre los puertos amigos!!! que tiene ese servidor
__________________
El Conocimiento Humano Le Pertenece Al Mundo
  #4 (permalink)  
Antiguo 13/04/2011, 17:31
 
Fecha de Ingreso: abril-2011
Ubicación: rosario
Mensajes: 7
Antigüedad: 13 años
Puntos: 0
Respuesta: Error de conexion en servidores smtp?

el error el el siguiente le muestro una imagen y todo los puertos k uso estan bien

  #5 (permalink)  
Antiguo 13/04/2011, 17:33
 
Fecha de Ingreso: abril-2011
Ubicación: rosario
Mensajes: 7
Antigüedad: 13 años
Puntos: 0
Respuesta: Error de conexion en servidores smtp?

[/URL]

Uploaded with [URL=http://imageshack.us]ImageShack.us[/URL]

EN ENLACE LA IMAGEN MEJOR LES DEJO

[URL=http://img23.imageshack.us/i/problemapc.jpg/]
  #6 (permalink)  
Antiguo 13/04/2011, 17:41
 
Fecha de Ingreso: abril-2011
Ubicación: rosario
Mensajes: 7
Antigüedad: 13 años
Puntos: 0
Respuesta: Error de conexion en servidores smtp?

[URL=http://img864.imageshack.us/i/problemaj.jpg/][IMG]http://img864.imageshack.us/img864/5327/problemaj.jpg[/IMG][/URL]

Uploaded with [URL=http://imageshack.us]ImageShack.us[/URL]
  #7 (permalink)  
Antiguo 13/04/2011, 18:02
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: Error de conexion en servidores smtp?

El error es claro, justo lo que te mencione del SSL:

Código vb.net:
Ver original
  1. 'O lo quitas
  2. 'clienteSMTP.EnableSsl = True
  3.  
  4. 'O lo pones en false
  5. clienteSMTP.EnableSsl = False

Ese servidor smtp no acepta autenticacion SSL.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Última edición por Aquaventus; 13/04/2011 a las 18:20
  #8 (permalink)  
Antiguo 13/04/2011, 19:16
 
Fecha de Ingreso: abril-2011
Ubicación: rosario
Mensajes: 7
Antigüedad: 13 años
Puntos: 0
Respuesta: Error de conexion en servidores smtp?

muchas gracias Aquaventus me sirvió !

Etiquetas: conexion, servidores, smtp
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:05.