Array
(
)

taxa de transferencia ftp - como monitorar?

Anderh
   - 23 nov 2005

meu aplicativo envia e recebe arquivos para uma conta ftp. gostaria de colocar um pregressbar informando o quanto já foi enviado, e o tempo restante. estou usando indy IdFTP. como monitorar a velocidade da transferência?


Emerson
   - 23 nov 2005

você pode fazer isso nos eventos OnWorkBegin e OnWork do componente.
no OnWorkBegin você inicializa a barra de progresso e a hora de início do processo:
HoraInicio := Time;
ProgressBar.Position := 0;
ProgressBar.Max := AWorkCountMax;

no OnWork você incrementa:
ProgressBar.Position := AWorkCount;
TaxaTransferencia := AWorkCount / SecondsBetween(Time,HoraInicio);

HoraInicio e TaxaTransferencia são variáveis private.
depois basta mostrar a TaxaTransferencia num label.