Re: [vfp] Bajar archivos via ftp con VFP9

1,324 views
Skip to first unread message

Ricardo Pina

unread,
Oct 15, 2013, 8:16:10 AM10/15/13
to Grupo VFP
Hola Oscar
 
Hay un nuevo dicho que dice
 
Lo que natura no dá
Google proveerá.
 
Saludos


El 15 de octubre de 2013 02:24, Oscar Quiros Coto <os...@ssoqc.com> escribió:
Buenas noches, alguno de ustedes tienen un ejemplo de como bajar un archivo via ftp con VFP.
Les explico como lo hago yo, pero tengo un cliente donde no se baja el archivo, el procedimiento lo hago en varias computadoras con un buen resultado, pero este clietne no puede, tengo que hacerlo manual, o enviarlo por correo, pero no es los que se quiere.

Asi es como lo hago:
Set Procedure To ftp.prg Additive
sz_ftp = Createobject('ftp_service')
If !sz_ftp.OpenInternet(nuser, npass, sftp, "21")
=Messagebox('No me puedo conectar al servidor de internet',64,'Error en conexion')
Else
f2=sz_ftp.GetFtpFile('anon_ftp/archivo.zip', "archivo.zip")
ENDIF
Empieza a bajar el archivo, pero se detiene, y al final lo borra, repito tengo otros clientes que bajan el mismo archivo con el mismo procedimiento y desde el mismo servidor.
Tal vez hay alguna version mejorada del ftp.prg, o alguien tenga algun codigo mejor, y hasta con barra de progreso, no se, si me pueden ayudar.

Saludos.




--
            

                   Ricardo Pina

Desarrollo y Servicios Informáticos

                  Profesionales
               www.dsip.com.ar

 

 

Ariel D'Alfeo

unread,
Oct 15, 2013, 8:18:12 AM10/15/13
to publice...@googlegroups.com
yo uso ifox, es muy bueno!

IF !EMPTY(l_carpeta)

    IF  !DIRECTORY(FULLPATH("") +"dirftp\"+ l_carpeta)
        MKDIR(FULLPATH("") +"dirftp\"+ l_carpeta)

    ENDIF
    l_carpeta=FULLPATH("") +"dirftp\"+ l_carpeta

    oftp = CREATEOBJECT("iFox.DirectFTP")
    oftp.setlicensecode("****************************")
      IF oftp.CONNECT("ftp.ftp.com","usuario","pass",21)
        larch=oftp.DIR("directorioftp/")
        IF larch<1
            MSGinformacion("No Hay Archivos para descargar")
            RETURN
        endif
        FOR i=1 TO larch
            lnomarch=oftp.dirfiles(i).filename
            IF RIGHT(lnomarch,3)="zip"
                IF oftp.startdownload("directorioftp/"+ lnomarch,l_carpeta+"\"+lnomarch)

                    DO WHILE !oftp.eot
                        IF oftp.downloadnextpart()
                            msgespera("Descargando Archivo: "+ ALLTRIM(STR(i)) +" de " + ALLTRIM(STR(larch))+ " -- ARCHIVO:"+ lnomarch +"  Transferido: " + STR(oftp.transferredbytes))

                        ELSE
                            msgespera(  "Error1")
                        ENDIF
                    ENDDO
                    msgespera("Extrayendo...")

                ELSE
                    msgespera( "Error2")
                ENDIF
                oftp.enddownload()
            ENDIF
            objzip.UNPACK (l_carpeta +"\" +lnomarch, l_carpeta )
            l_descargados=l_descargados+1
        ENDFOR
        oftp.CLOSE()
    ELSE
        msgerror("No Se pudo conectar al servidor FTP")
    ENDIF




ENDIF


-- 
Ariel D'Alfeo
Córdoba, Argentina


El 15/10/2013 02:24, Oscar Quiros Coto escribió:

Staff de Desarrollos EfiMax

unread,
Oct 15, 2013, 10:45:51 AM10/15/13
to publice...@googlegroups.com

Deshabilita el firewall en ese equipo y realiza la prueba.

 

El firewall de Windows cambia el contenido de los paquetes cuando es por vía FTP en ciertos escenarios.

 

____________________________________

Carlos Omar Figueroa López

Ingeniero Industrial y de Sistemas

http://www.efimax.com.mx

Luis Mata

unread,
Oct 15, 2013, 4:36:42 PM10/15/13
to publice...@googlegroups.com
pruede ser el firewall, un proxy, un antivirus(que tenga proxy).. un virus...
Reply all
Reply to author
Forward
0 new messages