Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Envio de mails a traves de una cuenta de gmail

10 views
Skip to first unread message

cmoli...@gmail.com

unread,
Jul 31, 2014, 10:10:10 AM7/31/14
to
Mi nombre es Carlos Molina y he leído un artículo del 2008 de Luis María Guayan en Portalfox sobre el envío de mails a través de una cuenta google con el componente CDO. Estuve usando ese código con éxito mucho tiempo en un sistema hecho en VFP 9 bajo Win XP, pero ahora el usuario decidió cambiar a windows 7 (en XP funciona perfectamente) y cuando quiere enviar el mail, falla. De mas está decir que el error se produce en la linea cuando ejecuta .send(). Si es necesario puedo mostrarle cual es el error, aunque el try/endtry muestra tres pantallas.
Desde ya muchas gracias.

Adjunto código utilizado (es el mismo que publicó Luis María en PortalFox

LOCAL loCfg, loMsg, lcFile, loErr
TRY
loCfg = CREATEOBJECT("CDO.Configuration")
WITH loCfg.Fields
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465 && ó 587
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = .T.
.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = .T.
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "jos...@gmail.com"
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
.Update
ENDWITH
loMsg = CREATEOBJECT ("CDO.Message")
WITH loMsg
.Configuration = loCfg
*-- Remitenete y destinatarios
.From = "Jose Fox <jos...@gmail.com>"
.To = "Usuario Uno <us...@gmail.com>"
.Cc = "Usuario Dos <us...@gmail.com>"
*- Notificación de lectura
.Fields("urn:schemas:mailheader:disposition-notification-to") = .From
.Fields("urn:schemas:mailheader:return-receipt-to") = .From
.Fields.Update
*-- Tema
.Subject = "Ejemplo del " + TTOC(DATETIME())
*-- Formato HTML desde la Web
.CreateMHTMLBody("http://www.portalfox.com/articulos/archivos/correo.htm", 0)
*-- Archivo adjunto
lcFile = GETFILE()
IF NOT EMPTY(lcFile)
.AddAttachment(lcFile)
ENDIF
*-- Envio el mensaje
.Send()
ENDWITH
CATCH TO loErr
MESSAGEBOX("No se pudo enviar el mensaje" + CHR(13) + ;
"Error: " + TRANSFORM(loErr.ErrorNo) + CHR(13) + ;
"Mensaje: " + loErr.Message , 16, "Error")
FINALLY
loMsg = NULL
loCfg = NULL
ENDTRY
0 new messages