FoxPro/Visual FoxPro - mail desde vfox 6

 
Vista:
sin imagen de perfil

mail desde vfox 6

Publicado por eduardo (139 intervenciones) el 06/04/2008 18:13:40
Hola :

Bajé este ejemplo de aplicación de envío de mail desde outlook.
lo adapte y ejecutandolo logro llegar a la pantalla de envio de mail.
lo que no me hace es hacer el attach de los archivos.
en la compilacion me dio 5 errores ,con los comando catch ,fynally y una linea que pregunta por un type='A'.
pregunto:esos comandos son de vfp 9?,de ser asi como podria adaptar el programa paar que tome los attach con vfp 6? a continuacion pego el codigo.
desde ya gracias.

*******************************
*!* Ejemplo de utilización de SendViaOutlook
*******************************
#DEFINE olImportanceLow 0
#DEFINE olImportanceNormal 1
#DEFINE olImportanceHigh 2
DIMENSION aryAttach(2)
aryAttach(1) = "C:xcursos.dbf" && cambie a un archivo real que existe en su PC
aryAttach(2) = "C:mysql.bat" && cambie a un archivo real que existe en su PC
LOCAL lcTo, lcSubject, lcBody, lcCC, lcBCC, llHTMLFormat, llOpenEmail, lcErrReturn
lcTo = "[email protected]"
lcSubject = "Hey, ¿Ha intentado enviar un email con VFP?"
*!* Enviando el cuerpo en formato HTML
llHTMLFormat = .T.
lcBody = "<a href='http://www.sweetpotatosoftware.com/SPSBlog/default.aspx'>" + ;
"Hey, ¿Ha intentado enviar un email con VFP?" + ;
"</a>"
lcCC = "[email protected]"
*lcBCC = "[email protected]"
*!* para enviar correo automáticamente haga llOpenEmail igual a .F.
llOpenEmail = .T. && Si el correo se abrió o no, en el cliente de correo Outlook
SendViaOutlook(@lcErrReturn, lcTo, lcSubject, lcBody, @aryAttach, lcCC, lcBCC, llHTMLFormat, olImportanceHigh, llOpenEmail)
IF EMPTY(lcErrReturn)
MESSAGEBOX("'" + lcSubject + "'" + IIF(llOpenEmail, " abierto ", " enviado ") + "satisfactoriamente.", ;
64, "Envía email via Outlook")
ELSE
MESSAGEBOX("'" + lcSubject + "' falló al enviar. Causa:" + CHR(13) + lcErrReturn, 64, "Envía email via Outlook")
ENDIF

*******************************************
PROCEDURE SendViaOutlook(tcReturn, tcTo, tcSubject, tcBody, taFiles, tcCC, tcBCC, tlHTMLFormat, tnImportance, tlOpenEmail)
*******************************************
LOCAL loOutlook, loItem, lnCountAttachments

loOutlook = CREATEOBJECT("outlook.application")
loItem = loOutlook.CreateItem(0)
WITH loItem
.Subject = tcSubject
.TO = tcTo
IF tlHTMLFormat
.HTMLBody = tcBody
ELSE
.Body = tcBody
ENDIF
IF TYPE("tcCC") = "C"
.CC = tcCC
ENDIF
IF TYPE("tcBCC") = "C"
.BCC = tcBCC
ENDIF
IF TYPE("tnImportance") != "N"
tnImportance = 1 && importancia normal
ENDIF
.Importance = tnImportance
*!* IF TYPE("tafiles",1) = "A"
*!* FOR lnCountAttachments = 1 TO ALEN(taFiles)
*!* .Attachments.ADD(taFiles(lnCountAttachments))
*!* ENDFOR
*!* ENDIF
IF tlOpenEmail
.DISPLAY()
ELSE
.SEND()
ENDIF
ENDWITH
*CATCH TO loError
*!* tcReturn = [Error: ] + STR(loError.ERRORNO) + CHR(13) + ;
*!* [LineNo: ] + STR(loError.LINENO) + CHR(13) + ;
*!* [Message: ] + loError.MESSAGE + CHR(13) + ;
*!* [Procedure: ] + loError.PROCEDURE + CHR(13) + ;
*!* [Details: ] + loError.DETAILS + CHR(13) + ;
*!* [StackLevel: ] + STR(loError.STACKLEVEL) + CHR(13) + ;
*!* [LineContents: ] + loError.LINECONTENTS
*FINALLY
RELEASE oOutlook, oItem
STORE .NULL. TO oOutlook, oItem
*ENDTRY
ENDPROC
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:mail desde vfox 6

Publicado por Cesar Fuenzalida (4 intervenciones) el 07/04/2008 17:11:19
Enviame un correo, y te adjunto el código con ejemplo que te puede ayudar.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:mail desde vfox 6

Publicado por William Amao (1 intervención) el 09/07/2008 00:26:02
Puedes enviarme el codigo por favor...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar