用idftp控件上传一个文件到主机,如何得到即时的网络传输速度?
用idftp控件上传一个文件到主机,如何得到即时的网络传输速度?
[解决办法]
procedure TfrmFTPPRG.IdFTP1Work(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
begin
TotalTime := Now - STime;
DecodeTime(TotalTime, H, M, Sec, MS);
Sec := Sec + M * 60 + H * 3600;
DLTime := Sec + MS / 1000;
if DLTime > 0 then
AverageSpeed:= (AWorkCount / 1024) / DLTime;
end;
now是当前时间,stime是在IdFTP1的WorkBegin事件中记录的当前时间,两个相减就是间隔时间.
然后将间隔时间分解,变成秒.
利用Work事件中的AWorkCount参数计算速度.
这样可不可以?