Cita:
Iniciado por jhonjairo00
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'* Creamos un Objeto tipo
Dim objMail As Outlook.MailItem
'* Enviamos nuestro Mail y listo!
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'Host=nombre del servidor de correo por el que queremos enviar el mensaje
Dim smtp As New System.Net.Mail.SmtpClient
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 originalPrivate Sub enviarEmail(ByVal email As String)
Dim SmtpServer As New SmtpClient() 'Instancia de Servidor SMTP, proporcionada por System.Net.Mail
Dim correo As New MailMessage() 'Instancia de mensaje de correo, proporcionada por System.Net.Mail
Dim a, b, c, d, f, g, h As String
'Dim attachment As New Net.Mail.Attachment("C:\Prueba.DOC") 'Adjuntar archivo
Dim eTo, eNuestroCorreo As String
'Comenzamos el envio del correo
'controlando si existiera algún error al envío
Try
'Nuestro usuario de Correo electrónico, Ejemplo actual Hotmail, puede ser Gmail, Yahoo, etc...
eNuestroCorreo = CType(Session("email"), String)
''Nuestro contraseña de Correo electrónico
'eNuestraContraseña = "Nuestra Contraseña"
'El Mensaje del correo
Dim values As String = ""
For i As Integer = 0 To CheckBoxRechazo.Items.Count - 1
If CheckBoxRechazo.Items(i).Selected Then
If CheckBoxRechazo.Items(i).Value = 1 Then
a = uno
End If
If CheckBoxRechazo.Items(i).Value = 2 Then
b = dos
End If
If CheckBoxRechazo.Items(i).Value = 3 Then
c = tres
End If
If CheckBoxRechazo.Items(i).Value = 4 Then
d = cuatro
End If
If CheckBoxRechazo.Items(i).Value = 5 Then
f = cinco
End If
If CheckBoxRechazo.Items(i).Value = 6 Then
g = seis
End If
End If
Next
h = TextObservacionesLG.Text
'Destinatario del Mensaje
'eTo = email
' Configuración para enviar el correo desde Gmail, si es por Hotmail es 25
'(que es el que viene por default), si usa Gmail quitar comentario
' SmtpServer.Port = 587
' Nombre del SMPTServer
SmtpServer.Host = "192.168.1.131"
'Habilitación de conexión segura
SmtpServer.EnableSsl = True
' Empezamos a configurar el correo a enviar
' con los datos anteriores que pusimos
'Le decimos que mail es un nuevo correo
correo = New MailMessage()
'Origen del correo
correo.From = New MailAddress(eNuestroCorreo)
'Destinatarios del correo
correo.To.Add(eTo)
'Asunto del correo
correo.Subject = "Hoja de gastos rechazada"
'cuerpo del mensaje
correo
.Body = a
+ Chr(13) + b
+ Chr(13) + c
+ Chr(13) + d
+ Chr(13) + f
+ Chr(13) + g
+ Chr(13) + h
''Texto en HTML del Mensaje
'correo.IsBodyHtml = True
''Le decimos que queremos enviar el archivo que anteriormente indicamos
'mail.Attachments.Add(attachment)
'Le decimos que envíe el correo
SmtpServer.Send(correo)
Catch ex As Exception
'Informamos si existiera algún error
Throw New Exception(ex.ToString)
End Try
End Sub
Gracias