Una forma de enviar un email desde VFP sin lidiar con los problemas de MAPI, Outlook, OE, etc, es usar un componente de 3ros. Existe uno sumamente funcional y gratuito llamado w3JMail, de la empresa DIMAC (http://www.dimac.net/), el cual funciona perfecto en VFP y no requiere de ningún otro componente instalado.
El componente puede ser descargado desde esta dirección:
http://www.dimac.net/FreeDownloads/v3DlStart.asp?ProductID=5
La ayuda la encontrarán aquí:
http://www.dimac.net/default2.asp?M=Products/MenuCOM.asp&P=Products/w3JMail/start.htm
Y adicionalmente les anexo un pequeño ejemplo de como enviar un email con attachments desde VFP usando el w3JMail.
* Ejemplo de como enviar un email con * adjuntos usando el componente * w3JMail de DIMAC * * Por: Victor Espina * CLOSE ALL CLEAR ALL CLEAR * *-- Se instancia el componente * LOCAL oEmail oEmail = CREATEOBJECT("JMail.Message") * *-- Se activa el logging interno del componente * y se desactiva la notificacion de errores * oEmail.Logging = .T. oEmail.Silent = .T. * *-- Remitente * oEmail.From = "remitente@server.com" oEmail.FromName = "Nombre del Remitente" * *-- Destinatario(s). El 2do parametro es opcional. Se puede * invocar el metodo AddRecipient las veces que sea necesario. * oEmail.AddRecipient("destinatario@server.com","Nombre del Destinatario") * *-- Asunto * oEmail.Subject = "Email de prueba con w3JMail" * *-- Texto. La propiedad Body es de lectura/escritura. Adicionalmente * se puede usar el metodo AppendText() para anadir texto al final * del mensaje. * * Para enviar un mensaje en formato HTML, use la propiedad HTMLBody * y/o el metodo AppendHTML() * oEmail.Body = "Este es un email de prueba enviado programáticamente " + ; "usando el componente w3JMail de DIMAC." * *-- Adjuntos. Se puede invocar el metodo AddAttachment() tantas veces * como sea necesario. El 2do parámetro indica si el archivo adjunto * sera incluido dentro del mensaje (in-line Attachment) o no. * oEmail.AddAttachment(FULLPATH("mail1.prg"),.F.) * *-- Se envia el mensaje. El metodo Send() devuelve .T. si se envio * el mensaje correctamente o .F. en caso de un error. La propiedad * Log contiene el log del problema ocurrio (si Logging = .T.) * * El metodo Send() acepta como parametro una lista de uno o mas * servidores SMTP separados por coma. Es posible indicar un * usuario/pwd para cada servidor, usando la sintaxis: * * user:pwd@server * LOCAL lOk lOk = oEmail.SEND("smtp.server.com") IF lOk MESSAGEBOX("Mensaje enviado!") ELSE MESSAGEBOX(eMail.Log) ENDIF *
Saludos.
Victor Espina
Buen día, requiero descargar el archivo para realizar pruebas pero me al darle click, a la liga, me dice que no se puede
ResponderBorraraccesar al sitio. Donde pudiera descargar el archivo. si puedes enviarme algun link a gab_rod26@hotmail.com, te lo agradeceria. Saludos,
buen dia , alguien que me pase el archivo, gabrielsiordia@hotmail.com, el link dice que esta cerrado, o roto, mil gracias, saludos
ResponderBorrarbuen dia alguien que me pase el archivo, mi correo garielsiordia@hotmail.com, este link esta roto, milgracias saludos
ResponderBorrarBuenas tardes Alguien que me pueda pasar el link de la libreria para hacer una prueba
ResponderBorrara la cuenta rubend_07@hotmail.com
buenos días. alguien me podría enviar el archivo o algún link actualizado. gracias horaciotumbaya@gmail.com
ResponderBorrar