FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Bajar ficheros desde una conexi贸n FTP.
Posts: 1445
Joined: Mon Oct 10, 2005 02:38 PM
Bajar ficheros desde una conexi贸n FTP.
Posted: Sat Feb 24, 2018 10:48 PM

Hola a todos,

驴Algui茅n tiene una rutina para bajarse ficheros desde una conexi贸n FTP?

Gracias,

Un Saludo

Carlos G.



FiveWin 25.12 + Harbour 3.2.0dev (r2502110321), BCC 7.7 Windows 11 Home

Posts: 143
Joined: Fri Oct 07, 2005 03:14 PM
Re: Bajar ficheros desde una conexi贸n FTP.
Posted: Tue Feb 27, 2018 03:56 PM

// BD铆a, esto funciona para mi, en servidores FTP, con SFTP es otra historia.

*--// Conexi贸n con SFTP
oInternet:=TInternet():New()
oFTP :=TFTP():New('www.miftp.com.mx', oInternet, cUser:='Joel', cPassword:='123456', lFTPPAsivo:=.f., nPuerto:=21)
if empty(oFTP:hFTP)
oInternet:End()
retu .f.
endi

cFileOrigen:='c:\respaldo\Archivo.txt'
hSource :=FOpen(cFileOrigen)
cFileFTP:='httpdocs/Clientes/Archivo.txt'

oFile :=TFtpFile():New(cFileFTP, oFTP)
oFile:OpenWrite()
FSeek(hSource, 0, 0)
nBufSize:=2000000
cBuffer :=space(nBufSize)

do while ( nBytes:=FRead( hSource, @cBuffer, nBufSize ) ) > 0
oFile:Write( SubStr( cBuffer, 1, nBytes ) )
endd
FClose( hSource )
oFile:End()

Posts: 1445
Joined: Mon Oct 10, 2005 02:38 PM
Re: Bajar ficheros desde una conexi贸n FTP.
Posted: Tue Feb 27, 2018 04:37 PM

Muchas gracias Joel,

Ahora estoy acabando de modificar seg煤n me conviene la rutina de Biel Maimo (gracias Biel), finalmente substituyendo funciones que no me compilaban he obtenido algo que parece funcionar; adem谩s el copiado es como el c贸digo que has mostrado.

Muchas gracias,

Un Saludo

Carlos G.



FiveWin 25.12 + Harbour 3.2.0dev (r2502110321), BCC 7.7 Windows 11 Home

Posts: 37
Joined: Tue May 12, 2009 08:45 PM
Re: Bajar ficheros desde una conexi贸n FTP.
Posted: Wed Feb 28, 2018 07:16 PM

Hola Joel Buen dia....

Es muy pactico tu funcion de subir a ftp gracias por tu contribucion..

podrias poner la funcion de bajar de ftp...

Gracias....

Posts: 143
Joined: Fri Oct 07, 2005 03:14 PM
Re: Bajar ficheros desde una conexi贸n FTP.
Posted: Fri Mar 02, 2018 04:11 PM
Claro que si, espero te ayude.

Code (fw): Select all Collapse
// Conexi贸n con SFTP
 oInternet:=TInternet():New()
 oFTP     :=TFTP():New(cCtaFTP, oInternet, cUsuFTP, cPassFTP, op:lPavFTP, op:nPuertoFTP)
 if empty(oFTP:hFTP)
    mensaje('Imposible Conectarse al Servidor FTP...')
    oInternet:End()
    retu .f.
 endi

 cCarpDes:='c:\descargas'
 cCarpOri:='Archivos\XML'

 *--// Lee los archivos de una determinada carpeta del FTP
 aFiles:=oFTP:Directory(cCarpOri+'\*.*')
 if len(aFiles)=0
    retu.f.
 endi

 *--// Carpeta Default donde est谩n los XML (s贸lo para bajar)
 FtpSetCurrentDirectory(oFTP:hFTP,  cCarpOri )
 for nArc:=1 to len(aFiles)
     cFileFte:=alltrim(aFiles[nArc,1])
     msgwait('Bajando archivo '+cFileFte, 'Espere por favor...', 1)

     nBufSize:=4096
     cBufSize:=space(nBufSize)
     hTarget :=FCreate(cCarpDes+cFileFte)
     oFile   :=TFtpFile():New(cFileFte, oFTP)
     oFile:OpenRead()
     do whil (nBytes:=len(cBuffer:=oFile:Read(nBufSize)))>0
        FWrite(hTarget, cBuffer, nBytes)
        lEnvio:=.t.
     endd
     fClose(hTarget)
     oFile:end()
 next


saludos
JAAM
Posts: 37
Joined: Tue May 12, 2009 08:45 PM
Re: Bajar ficheros desde una conexi贸n FTP.
Posted: Sat Mar 03, 2018 01:19 PM

Muchas gracias Joel,

Ahoya ya puedo actualizar los programas de mis clientes ...

Continue the discussion