Un saludo primero que nada,me gustaria saber que es lo que le falta a este programa para que funcione la barra de progreso al estar trabajando con el componente FTP de Indy, he visto varios post en este foro y no encuentro la solucion, asi como esta el programa lo compilo, lo ejecuto y me lo envia al servidor de forma correcta pero la barra de progreso no me indica cuando termino de subir el archivo, simplemente no hace nada, les dejo aqui elcódigo del programa esperando puedan ayudarme, gracias.
Código Delphi
[-]
procedure TForm1.BitBtn1Click(Sender: TObject);
var
FTP: TIdFTP;
F: File of byte;
begin
FTP := TIdFTP.Create( nil );
FTP.OnWork := FTPWork;
FTP.Username := 'username@dominio';
FTP.Password := 'pass';
FTP.Host := 'ftp.host.com';
FTP.Port:=21;
try
FTP.Connect;
except
ShowMessage( 'No se ha podido conectar con el servidor ' + FTP.Host );
end;
if FTP.Connected then
begin
FTP.ChangeDir( '/dirtest/' );
barra.Position:=0;
AssignFile( F, 'C:\miarchivo.txt' );
Reset( F );
Barra.Max := FileSize( F ) div 1024;
CloseFile( F );
FTP.Put( 'C:\miarchivo.txt', ExtractFileName( 'miarchivo.txt' ), False );
FTP.Disconnect;
FTP.Free;
end
else
showmessage('No conectado');
end;
procedure TForm1.FTPWork(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
begin
Barra.Position := AWorkCount;
end;