Ver Mensaje Individual
  #13 (permalink)  
Antiguo 17/01/2013, 06:13
maialenlopez
 
Fecha de Ingreso: abril-2012
Mensajes: 449
Antigüedad: 12 años, 11 meses
Puntos: 7
Respuesta: Mandar email con un boton

Cita:
Iniciado por jhonjairo00 Ver Mensaje
Hola maialenlopez

Mira la SmtpClient() es una clase de .net que sirve para el envío de correos electrónicos de una forma "genérica" por llamarlo de alguna manera, aquí te dejo un link que te explica mejor que yo:

http://msdn.microsoft.com/en-us/libr...mtpclient.aspx

Con esta clase es mucho más sencillo el envío de correo electrónico desde tu aplicación ya que la configuración se hace en tiempo de ejecución y no usa extenciones de aplicaciones externas como outlook.

Ahora, en el código que pusiste tienes varias cosas que corregir:

1.
Código vb:
Ver original
  1. '* Creamos un Objeto tipo
  2. Dim objMail As Outlook.MailItem
  3.  
  4. '* Enviamos nuestro Mail y listo!
  5. smtp.Send(objMail)

si objMail es de tipo Outlook.MailItem no lo vas a poder enviar usando smtp.Send, porque el parámetro del método Send es un objeto de tipo MailMessage, es decir son objetos diferentes y te va a generar una excepción

Código vb:
Ver original
  1. 'Host=nombre del servidor de correo por el que queremos enviar el mensaje
  2.            Dim smtp As New System.Net.Mail.SmtpClient
  3.             smtp.Host = "192.168.1.131"

El Host es por ejemplo smtp.gmail.com para gmail, smtp.live.com para hotmail o smtp.mail.yahoo.com para yahoo

usa el ejemplo que te puse y que aquí te cito para que te funcione:




Si no te dejan configurar Outlook en el servidor, no creo que te pueda funcionar usando los objetos que tienes, prueba así como te indicó y me cuentas si tienes alguna duda
Hola,
He echo lo que me indicas pero sigue sin funcionarme. Te pongo el código para que veas como lo he echo.
Código vb.net:
Ver original
  1. Private Sub enviarEmail(ByVal email As String)
  2.  
  3.         Dim SmtpServer As New SmtpClient() 'Instancia de Servidor SMTP, proporcionada por System.Net.Mail
  4.  
  5.         Dim correo As New MailMessage() 'Instancia de mensaje de correo, proporcionada por System.Net.Mail
  6.  
  7.         Dim a, b, c, d, f, g, h As String
  8.  
  9.         'Dim attachment As New Net.Mail.Attachment("C:\Prueba.DOC") 'Adjuntar archivo
  10.  
  11.         Dim eTo, eNuestroCorreo As String
  12.  
  13.         'Comenzamos el envio del correo
  14.         'controlando si existiera algún error al envío
  15.         Try
  16.  
  17.             'Nuestro usuario de Correo electrónico, Ejemplo actual Hotmail, puede ser Gmail, Yahoo, etc...
  18.             eNuestroCorreo = CType(Session("email"), String)
  19.  
  20.             ''Nuestro contraseña de Correo electrónico
  21.             'eNuestraContraseña = "Nuestra Contraseña"
  22.  
  23.             'El Mensaje del correo
  24.             Dim values As String = ""
  25.             For i As Integer = 0 To CheckBoxRechazo.Items.Count - 1
  26.                 If CheckBoxRechazo.Items(i).Selected Then
  27.                     If CheckBoxRechazo.Items(i).Value = 1 Then
  28.                         a = uno
  29.                     End If
  30.                     If CheckBoxRechazo.Items(i).Value = 2 Then
  31.                         b = dos
  32.                     End If
  33.                     If CheckBoxRechazo.Items(i).Value = 3 Then
  34.                         c = tres
  35.                     End If
  36.                     If CheckBoxRechazo.Items(i).Value = 4 Then
  37.                         d = cuatro
  38.                     End If
  39.                     If CheckBoxRechazo.Items(i).Value = 5 Then
  40.                         f = cinco
  41.                     End If
  42.                     If CheckBoxRechazo.Items(i).Value = 6 Then
  43.                         g = seis
  44.                     End If
  45.                 End If
  46.             Next
  47.  
  48.             h = TextObservacionesLG.Text
  49.  
  50.             'Destinatario del Mensaje
  51.             'eTo = email
  52.             eTo = "[email protected]"
  53.  
  54.             ' Configuración para enviar el correo desde Gmail, si es por Hotmail es 25
  55.             '(que es el que viene por default), si usa Gmail quitar comentario
  56.             ' SmtpServer.Port = 587
  57.             ' Nombre del SMPTServer
  58.             SmtpServer.Host = "192.168.1.131"
  59.             'Habilitación de conexión segura
  60.             SmtpServer.EnableSsl = True
  61.  
  62.             ' Empezamos a configurar el correo a enviar
  63.             ' con los datos anteriores que pusimos
  64.  
  65.             'Le decimos que mail es un nuevo correo
  66.             correo = New MailMessage()
  67.             'Origen del correo
  68.             correo.From = New MailAddress(eNuestroCorreo)
  69.             'Destinatarios del correo
  70.             correo.To.Add(eTo)
  71.             'Asunto del correo
  72.             correo.Subject = "Hoja de gastos rechazada"
  73.             'cuerpo del mensaje
  74.             correo.Body = a + Chr(13) + b + Chr(13) + c + Chr(13) + d + Chr(13) + f + Chr(13) + g + Chr(13) + h
  75.             ''Texto en HTML del Mensaje
  76.             'correo.IsBodyHtml = True
  77.             ''Le decimos que queremos enviar el archivo que anteriormente indicamos
  78.             'mail.Attachments.Add(attachment)
  79.  
  80.             'Le decimos que envíe el correo
  81.             SmtpServer.Send(correo)
  82.  
  83.  
  84.         Catch ex As Exception
  85.             'Informamos si existiera algún error
  86.             Throw New Exception(ex.ToString)
  87.  
  88.         End Try
  89.     End Sub

Gracias
__________________
Gracias por todo;

Un saludo