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
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
// 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()
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
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....
// 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()
nextMuchas gracias Joel,
Ahoya ya puedo actualizar los programas de mis clientes ...