Fórum Pegar tamanho do arquivo #354869
05/03/2008
0
procedure TForm1.IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer); var TamanhoAtualArquivo: Longint; Arquivo: file of Byte; begin AssignFile(Arquivo, ´c:\temp\Arquivo.exe´); Reset(Arquivo); TamanhoAtualArquivo := FileSize(Arquivo); Gauge1.Progress := TamanhoAtualArquivo; end;
Repare que é no evento IdFTP1Work do Componente da indy
na linha Reset(Arquivo) ele da um erro:
I/O error 32.
eu teria que mudar?
Oq daria p fazer para corrigir?
vlw!!!
Luiz_aquino
Curtir tópico
+ 0Posts
06/03/2008
Paullsoftware
with IdFTPAtualiza do begin Host := ´ftp.sitedaempresa.com.br´; // Port := 21; Username := ´nomeusuario´; Password := ´senhausuario´; Passive := False; if not Connected then Connect; if Connected then begin // desabilito os eventos OnWork OnWork := nil; OnWorkBegin := nil; ChangeDir(APastaRemota); // Retorno o tamanho do arquivo kTamanho := Size(AArqDown) div 1024; (* Tamanho_Arquivo, usado para barra de progresso *) Tamanho_Arquivo := Size(AArqDown); lblTamanho.Caption := ´Tamanho da Aproximado: ´ + FormatFloat(´0.00 Kb´,kTamanho); lblTamanho.Font.Color := clBlue; lblTamanho.Font.Style := [fsBold]; lblTamanho.Refresh; lblTamanho.Update; ANewVersao.Position := 0; Get(AVersaoRemota, ANewVersao, True);
Gostei + 0
06/03/2008
Luiz_aquino
with IdFTPAtualiza do begin Host := ´ftp.sitedaempresa.com.br´; // Port := 21; Username := ´nomeusuario´; Password := ´senhausuario´; Passive := False; if not Connected then Connect; if Connected then begin // desabilito os eventos OnWork OnWork := nil; OnWorkBegin := nil; ChangeDir(APastaRemota); // Retorno o tamanho do arquivo kTamanho := Size(AArqDown) div 1024; (* Tamanho_Arquivo, usado para barra de progresso *) Tamanho_Arquivo := Size(AArqDown); lblTamanho.Caption := ´Tamanho da Aproximado: ´ + FormatFloat(´0.00 Kb´,kTamanho); lblTamanho.Font.Color := clBlue; lblTamanho.Font.Style := [fsBold]; lblTamanho.Refresh; lblTamanho.Update; ANewVersao.Position := 0; Get(AVersaoRemota, ANewVersao, True);
Ajudou sim, fiz dessa forma, q no meu caso está bom
procedure TDownloadFTP.OnFTPWork(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer); begin frmProgresso.PosicaoAtual := frmProgresso.PosicaoAtual + AWorkCount; end;
Tenho mais uma dúvida, não sei se vc sabe como fazer, em minha ferramenta o usuário pode parar o download e reiniciar, para parar eu fiz Ftp.Abort e para reiniciar eu não sei oq fazer, tem ideia?
Gostei + 0
06/03/2008
Paullsoftware
http://forum.devmedia.com.br/viewtopic.php?t=93169
:wink:
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)