Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Enviar correos con visual basic 6.0

Estas en el tema de Enviar correos con visual basic 6.0 en el foro de Visual Basic clásico en Foros del Web. hola amigos, andaba yo en el foro que noera .. pero ya me reubicaron !!! Entonces tengo el tema de enviar correos con visual basic, ...
  #1 (permalink)  
Antiguo 09/08/2005, 15:17
 
Fecha de Ingreso: junio-2005
Mensajes: 95
Antigüedad: 18 años, 11 meses
Puntos: 0
Enviar correos con visual basic 6.0

hola amigos,

andaba yo en el foro que noera .. pero ya me reubicaron !!!
Entonces tengo el tema de enviar correos con visual basic, que necesito ? como debo hacer ?, estuve por ahi revisando un ejemplo que aun no he probado pero me llamo la atencion que por ningun lado aparecio el nombre del server de correo usando el cdo, tambien entiendo que se puede usar el cdonts, alguien puede darme una mano ???

gracias mil y feliz tarde
  #2 (permalink)  
Antiguo 09/08/2005, 22:59
 
Fecha de Ingreso: abril-2005
Mensajes: 351
Antigüedad: 19 años
Puntos: 3
hola e visto varias formas de mandar e-mail, con winsock y mapi pero la mejorsita que e visto hasta ahora es con "Cdonts" te explico masomenos, es una dll que envía mail no necesariamente utiliza pop3 puede enviarlos sin necesidad de indicar el servidor(ej: pop.mail.yahoo.com.ar, mail.hotmail.com etz)

La desventaja creo y no estoy muy seguro es que debes instalar "servicios de Internet Informacion Server(iis)"
bien yo te hablo en Windows xp no estoy muy al tanto de otros Windows pero bien como se instala esto, te vas a panel de control/ agregar o quitar programas , y luego a tu izquierda veras que dice "agregar quitar componentes de Windows" le das clic y te aparece un listado si "servicios de Internet Información Server(IIS)" esta seleccionado significa que ya lo tiene instalado sino lo seleccionas ,pon el CD de Windows y lo instalas desde esa pantalla


Luego ya para seguir debes descargarte la dll que la puedes
descargar desde aquí:
http://ar.geocities.com/leandroascierto/cdonts.zip
(biene con un archivo de texto para facilitar registrarla)

y para utilizarlo lo haces de esta manera (además puedes enviar adjuntos)

Private Sub Form_Load()
'Creamos el objeto de correo...
Set MSTG = CreateObject("CDO.Message")
'Definimos las propiedades del objeto de correo...
MSTG.From = "Remitente a mostar, ya sea texto o e-mail"
MSTG.To = "[email protected];puedenservarias@separadasco npuntoycoma.com"
MSTG.Cc = "[email protected];puedenservarias@separadasco npuntoycoma.com"
MSTG.Bcc = "[email protected];puedenservarias@separadasco npuntoycoma.com"
MSTG.Subject = "el asunto que se mostrará en el e-mail cuando llegue..."

' el mensage sera enviado en formato de texto enriquesido o lo pueden cambiar a plano ej:
'MSTG.HTMLbody = "hola esto es una prueva" 'en formato plano
MSTG.HTMLBody = "<p><font color=" & "#FF0000" & ">Hola esto </font><font color=" & "#0000FF" & ">es una prueba</font></p>"
MSTG.AddAttachment "C:\Favoritos.txt" ' cambien la ruta del adjunto
'Utilizamos el método correspondiente para enviar el e-mail...
MSTG.Send
'Destruimos el objeto de correo...
Set MSTG = Nothing

End Sub




bien creo que te ice un embrollo bastante grande y terminaras usando el correo de Hotmail (jejej) pero cualquier duda posteala que te explico ya que el tema es algo extenso y yo aun no lo termino de ver.
saludos
  #3 (permalink)  
Antiguo 10/08/2005, 11:12
 
Fecha de Ingreso: junio-2005
Mensajes: 95
Antigüedad: 18 años, 11 meses
Puntos: 0
Exclamación preguntas

hola Leandro, te agradezco mucho

mira segun entiendo el iis es porque es a traves del servicio smtp es que el correo se ira, pero en mi caso no necesito ese servicio pues ya tengo un servidor de correo x donde puede sarlir, pero adonde defino esto, gracias mil
  #4 (permalink)  
Antiguo 10/08/2005, 12:09
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
en las faq's hay un ejemplo..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #5 (permalink)  
Antiguo 11/08/2005, 07:11
Avatar de lop7  
Fecha de Ingreso: junio-2005
Ubicación: portuguesa (Venezuela)
Mensajes: 187
Antigüedad: 18 años, 11 meses
Puntos: 1
segui todos esos pasos pero...

hola a todos...
estoy muy interesado en esto de enviar correos desde visua basic y yo segui todos esos pasos que mencionaron pero no paso nada será que falta algo mas para porder enviar el correo
gracias
  #6 (permalink)  
Antiguo 11/08/2005, 23:00
 
Fecha de Ingreso: abril-2005
Mensajes: 351
Antigüedad: 19 años
Puntos: 3
Hola te figura esta ruta;
C:\Inetpub\mailroot\Queue
bien si te figura fijate si existen archivos .eml
si es asi luego vemos que pasa
  #7 (permalink)  
Antiguo 12/08/2005, 06:44
Avatar de lop7  
Fecha de Ingreso: junio-2005
Ubicación: portuguesa (Venezuela)
Mensajes: 187
Antigüedad: 18 años, 11 meses
Puntos: 1
hola efectivamente existe esa ruta y lei los mensajes que escribi pero
¿porque no llegan a sus destinarios? falta algo ?
y gracias por tu tiempo
  #8 (permalink)  
Antiguo 12/08/2005, 21:44
 
Fecha de Ingreso: abril-2005
Mensajes: 351
Antigüedad: 19 años
Puntos: 3
Hola borralos todos reinicia la pc y volve a intentar aver si se soluciona a mi me paso que quedaban ay es como si quedaran atascados, prova y contame que paso
  #9 (permalink)  
Antiguo 15/08/2005, 07:16
Avatar de lop7  
Fecha de Ingreso: junio-2005
Ubicación: portuguesa (Venezuela)
Mensajes: 187
Antigüedad: 18 años, 11 meses
Puntos: 1
hola... nada amigo no paso nada los sigue dejando en ese directorio y me aparece el mensaje de notificaion que siempre aparece cuando no puedes enviar un correo.. con las direcciones electronicas con que yo estaba probando..

otra idea....
  #10 (permalink)  
Antiguo 17/08/2005, 05:27
Avatar de aldo1982  
Fecha de Ingreso: noviembre-2004
Ubicación: Santa Fe (Argentina) Colon F.C
Mensajes: 1.362
Antigüedad: 19 años, 5 meses
Puntos: 6
mas claro imposible :P

'declaraciones
Dim Response As String, Reply As Integer, DateNow As String
Dim first As String, Second As String, Third As String
Dim Fourth As String, Fifth As String, Sixth As String
Dim Seventh As String, Eighth As String
Dim Start As Single, Tmr As Single
Sub SendEmail(MailServerName As String, FromName As String, FromEmailAddress As String, ToName As String, ToEmailAddress As String, EmailSubject As String, EmailBodyOfMessage As String)

Winsock1.LocalPort = 0 ' hay q poner el puerto a cero para poder mandar mas de 1 mail por cada vez q se abre el prog.

If Winsock1.State = sckClosed Then ' ver si el socket esta cerrado.
DateNow = Format(Date, "Ddd") & ", " & Format(Date, "dd Mmm YYYY") & " " & Format(Time, "hh:mm:ss") & "" & " -0600"
first = "mail from:" + Chr(32) + FromEmailAddress + vbCrLf ' Quien manda?
Second = "rcpt to:" + Chr(32) + ToEmailAddress + vbCrLf ' PAra quien es?
Third = "Date:" + Chr(32) + DateNow + vbCrLf ' fecha
Fourth = "From:" + Chr(32) + FromName + vbCrLf 'remitente
Fifth = "To:" + Chr(32) + ToNametxt + vbCrLf ' destinatario
Sixth = "Subject:" + Chr(32) + EmailSubject + vbCrLf ' asunto
Seventh = EmailBodyOfMessage + vbCrLf ' cuerpo del mail
Ninth = "X-Mailer: EBT Reporter v 2.x" + vbCrLf ' que programa lo manda? personalizá esto
Eighth = Fourth + Third + Ninth + Fifth + Sixth ' Combinar para un envío apropiado
Winsock1.Protocol = sckTCPProtocol ' Setear el protocolo para el envio
Winsock1.RemoteHost = MailServerName ' Setear la direccion del server
Winsock1.RemotePort = 25 ' Setear el puerto SMTP
Winsock1.Connect 'Iniciar conex.

WaitFor ("220")

StatusTxt.Caption = "Conectando...."
StatusTxt.Refresh

Winsock1.SendData ("HELO worldcomputers.com" + vbCrLf)
WaitFor ("250")
StatusTxt.Caption = "Connected"
StatusTxt.Refresh
Winsock1.SendData (first)
StatusTxt.Caption = "Sending Message"
StatusTxt.Refresh
WaitFor ("250")
Winsock1.SendData (Second)
WaitFor ("250")
Winsock1.SendData ("data" + vbCrLf)

WaitFor ("354")
Winsock1.SendData (Eighth + vbCrLf)
Winsock1.SendData (Seventh + vbCrLf)
Winsock1.SendData ("." + vbCrLf)
WaitFor ("250")
Winsock1.SendData ("quit" + vbCrLf)

StatusTxt.Caption = "Disconnecting"
StatusTxt.Refresh
WaitFor ("221")
Winsock1.Close
Else
MsgBox (Str(Winsock1.State))
End If

End Sub
Sub WaitFor(ResponseCode As String)
Start = Timer ' para q no se trabe en loop
While Len(Response) = 0
Tmr = Start - Timer
DoEvents ' deja el sistema esperando por una respuesta entrante **IMPORTANTE**
If Tmr > 50 Then ' tiempo para esperar (en segundos)
MsgBox "SMTP service error, timed out while waiting for response", 64, MsgTitle
Exit Sub
End If
Wend
While Left(Response, 3) <> ResponseCode
DoEvents
If Tmr > 50 Then
MsgBox "SMTP service error, impromper response code. Code should have been: " + ResponseCode + " Code recieved: " + Response, 64, MsgTitle
Exit Sub
End If
Wend
Response = "" ' Envia el codigo de respuesta en blanco. **IMPORTANTE**
End Sub
Private Sub Command1_Click()
SendEmail txtEmailServer.Text, txtFromName.Text, txtFromEmailAddress.Text, txtToEmailAddress.Text, txtToEmailAddress.Text, txtEmailSubject.Text, txtEmailBodyOfMessage.Text
'MsgBox ("Mail Sent")
StatusTxt.Caption = "Mail Enviado"
StatusTxt.Refresh
Beep

Close
End Sub
Private Sub Command2_Click()

End

End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Winsock1.GetData Response ' Revisa por respuesta entrante *IMPORTANTE*
End Sub
este programita usa:
7 txtboxs:
txtFromEmailAddress
txtFromName
txtToEmailAddress
ToNametxt
txtEmailSubject
txtEmailServer
txtEmailBodyOfMessage
label: StatusTxt
2 botones, 1 winsock y 7 labels nombrado todo por default.
Screencap:
__________________
LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA
  #11 (permalink)  
Antiguo 25/08/2005, 11:50
 
Fecha de Ingreso: agosto-2005
Ubicación: Peru-Lima
Mensajes: 225
Antigüedad: 18 años, 8 meses
Puntos: 0
hola soy nuevo aki en el e-mail server que debo poner?
por favor ayudenme
  #12 (permalink)  
Antiguo 25/08/2005, 13:42
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años, 1 mes
Puntos: 17
aldo1982, ¿no sabes otra cosa que mandar códigos copiados y chapuceros?

Porque en todos los posts haces lo mismo, pegar código en vez de dar pautas o páginas donde venga el código.
  #13 (permalink)  
Antiguo 17/10/2006, 13:37
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
Iniciado por MaxExtreme
Porque en todos los posts haces lo mismo
que curioso....

http://forums.devx.com/archive/index.php/t-131243.html

también estoy de acuerdo que es mejor poner la referencia
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #14 (permalink)  
Antiguo 17/10/2006, 13:40
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Cita:
Iniciado por RootK Ver Mensaje
que curioso....

http://forums.devx.com/archive/index.php/t-131243.html

también estoy de acuerdo que es mejor poner la referencia


Ya
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 06:38.