Ver Mensaje Individual
  #12 (permalink)  
Antiguo 16/01/2013, 09:22
Avatar de jhonjairo00
jhonjairo00
 
Fecha de Ingreso: noviembre-2010
Ubicación: Bogotá D.C.
Mensajes: 31
Antigüedad: 14 años, 4 meses
Puntos: 6
Respuesta: Mandar email con un boton

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/library/system.net.mail.smtpclient.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:

Cita:
Iniciado por jhonjairo00 Ver Mensaje
Hola

Para hacer el envío de correo electrónico desde .net puedes usar el namespace System.Net.Mail, Aquí lo que haces es crear un método en donde le pases la información del envío, es decir el mail del destinatario, el cuerpo del mensaje, incluso los adjuntos si los tiene, aquí te paso un ejemplo desde el evento de un botón:

Código vb:
Ver original
  1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  2.  
  3.         Dim SmtpServer As New SmtpClient() 'Instancia de Servidor SMTP, proporcionada por System.Net.Mail
  4.  
  5.         Dim mail As New MailMessage() 'Instancia de mensaje de correo, proporcionada por System.Net.Mail
  6.  
  7.         Dim eMensaje1, eMensaje2, ePie As String
  8.  
  9.         Dim attachment As New Net.Mail.Attachment("C:\Prueba.DOC") 'Adjuntar archivo
  10.  
  11.         Dim eTo, eNuestroCorreo, eNuestraContraseña 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 = "[email protected]"
  19.  
  20.             'Nuestro contraseña de Correo electrónico
  21.            eNuestraContraseña = "Nuestra Contraseña"
  22.  
  23.             'El Mensaje del correo
  24.            eMensaje1 = " Envío de mensaje electrónico "
  25.             eMensaje2 = "desde Visual Basic .NET "
  26.  
  27.             'El Footer del Mensaje
  28.            ePie = "Aquí va la firma o el texto de advertencia de seguridad, etc."
  29.  
  30.             'Destinatario del Mensaje
  31.            eTo = "[email protected]"
  32.  
  33.             ' Configuración para enviar el correo desde Gmail, si es por Hotmail es 25
  34.            '(que es el que viene por default), si usa Gmail quitar comentario
  35.            ' SmtpServer.Port = 587
  36.            ' Nombre del SMPTServer
  37.            SmtpServer.Host = "smtp.live.com"
  38.             'Habilitación de conexión segura
  39.            SmtpServer.EnableSsl = True
  40.             'Credenciales para abrirla sesión y poder enviar el mail
  41.            SmtpServer.Credentials = New Net.NetworkCredential _
  42.             (eNuestroCorreo, eNuestraContraseña)
  43.  
  44.             ' Empezamos a configurar el correo a enviar
  45.            ' con los datos anteriores que pusimos
  46.  
  47.             'Le decimos que mail es un nuevo correo
  48.            mail = New MailMessage()
  49.             'Origen del correo
  50.            mail.From = New MailAddress(eNuestroCorreo)
  51.             'Destinatarios del correo
  52.            mail.To.Add(eTo)
  53.             'Asunto del correo
  54.            mail.Subject = "Prueba Asunto"
  55.             'Texto del Mensaje
  56.            mail.Body = eMensaje1 + eMensaje2 + ePie
  57.             'Texto en HTML del Mensaje
  58.            mail.IsBodyHtml = True
  59.             'Le decimos que queremos enviar el archivo que anteriormente indicamos
  60.            mail.Attachments.Add(attachment)
  61.  
  62.             'Le decimos que envíe el correo
  63.            SmtpServer.Send(mail)
  64.            
  65.  
  66.         Catch ex As Exception
  67.             'Informamos si existiera algún error
  68.            Throw New Exception(ex.ToString)
  69.  
  70.         End Try
  71.     End Sub

Igual esto lo puedes configurar en un método y pasar los parámetros que estás recuperando...

Saludos...

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