indy GET下载速度

mar*_*arc 5 delphi lazarus indy10 idhttp

欢迎,

我必须使用indy http get compontent在我的应用程序中创建有关下载速度的信息的标题.

在我看来,我找到了简单的解决方案

在onwork活动中,我将获得下载(大小)的实际进度,并将其与之前的阅读进行比较.(例如每5秒钟).curent size减去之前的(5秒钟,存储在全局变量中)除以5秒*8,我将获得速度.如果实际尺寸等于之前,则速度始终为0.

所以我想开始编码,但我发现了一个叫做odwork的简单功能问题.

procedure TForm1.HttpWork(ASender: TObject; AWorkMode: TWorkMode;
  AWorkCount: Int64);
  begin
    showmessage('hello im herre');
end;  

问题是,该功能不被称为......我不知道为什么.

我正在下载100 MB的文件,我看不到任何showmessage ...

有什么想法吗?问候

Mar*_*ort 0

您是否也将 httpwork 分配给该组件?onprogress 或 onwork 无论它叫什么?

另外,请使用标签,而不是单击后才会返回的模态组件,因为这可能会中断下载流程。