
Emails desde FoxPro
Publicado por Delio Andres Perez (46 intervenciones) el 02/04/2011 22:18:41
Necesito una rurina prg para enviar correos desde FoxPro. gracias
Valora esta pregunta


0
=enviaremail("TUCORREO@HOTMAIL.com","tu contraseña","panchimancuso@hotmail.com","titulo del mail","tttttttttttt","")
Procedure ENVIAREMAIL
LParameters EmailRemitente, Contrasena, EmailDestinatario, Titulo, Texto, ArchivosAdjuntos
* URL: http://www.portalfox.com/index.php?name=News&file=article&sid=2626&mode=nested&order=0&thold=0
if Empty(ArchivosAdjuntos)
Wait Window "Estoy tratando de enviar el e-mail a: " + EmailDestinatario NoWait
else
Wait Window "Estoy tratando de enviar el e-mail a: " + EmailDestinatario + ". Paciencia, esto puede tardar varios minutos..." NoWait
endif
Try
Local Esquema, oCDO, oMsg, oError
Esquema = "http://schemas.microsoft.com/cdo/configuration/"
oCDO = CreateObject("CDO.Configuration")
with oCDO.Fields
do case
case "GMAIL" $ Upper(EmailRemitente)
.Item(Esquema + "smtpserver") = "smtp.gmail.com"
.Item(Esquema + "smtpserverport") = 465
.Item(Esquema + "sendusing") = 2
.Item(Esquema + "smtpauthenticate") = .T.
.Item(Esquema + "smtpusessl") = .T.
case "HOTMAIL" $ Upper(EmailRemitente)
.Item(Esquema + "smtpserver") = "smtp.live.com"
.Item(Esquema + "smtpserverport") = 25
.Item(Esquema + "sendusing") = 2
.Item(Esquema + "smtpauthenticate") = .T.
.Item(Esquema + "smtpusessl") = .T.
case "YAHOO" $ Upper(EmailRemitente)
.Item(Esquema + "smtpserver") = "smtp.mail.yahoo.com"
.Item(Esquema + "smtpserverport") = 25
.Item(Esquema + "sendusing") = 2
* .Item(Esquema + "smtpauthenticate") = .T.
* .Item(Esquema + "smtpusessl") = .T.
otherwise
Wait Window "No puedo enviar este e-mail. No conozco los parámetros necesarios del servidor de correo"
endcase
.Item(Esquema + "sendusername") = EmailRemitente
.Item(Esquema + "sendpassword") = Contrasena
.Update()
endwith
oMsg = CreateObject("CDO.Message")
with oMsg
.Configuration = oCDO
.From = EmailRemitente
.To = EmailDestinatario
.Subject = Titulo
.TextBody = Texto
if !Empty(ArchivosAdjuntos)
.AddAttachment(ArchivosAdjuntos)
* .AddAttachment() && Hay que agregar una línea AddAttachment() por cada archivo adjunto
endif
.Fields("urn:schemas:mailheader:disposition-notification-to") = .From
.Fields("urn:schemas:mailheader:return-receipt-to") = .From
.Fields.Update
.Send()
Wait Window 'El e-mail con título: "' + AllTrim(Titulo) + '" fue enviado exitosamente.'
endwith
catch to oError
=MessageBox("No pudo enviarse el e-mail" + Chr(13) + "Error Nº: " + Transform(oError.ErrorNo) + Chr(13) + "Mensaje: " + oError.Message)
finally
Release oCDO, oMsg
oCDO = .NULL.
oMsg = .NULL.
endtry
Return
*
*