在Form1中添加控件:
两个Indy控件:IdAntiFreeze1,IdHTTP1;
一个按钮
:Button1;
一个进度条 :ProgressBar1
显示下载速度
procedure TForm1.Button1Click(Sender:
TObject);
var
MyStream:TMemoryStream;
begin
IdAntiFreeze1.OnlyWhenIdle:=False;//设置使程序有反应.
MyStream:=TMemoryStream.Create;
try
//http://www.delphitop.com/
IdHTTP1.Get(‘http://www.appcontrols.com/demos/exe/HTTPDemo.exe‘,MyStream);
except
Showmessage(‘没有下载成功!‘);
MyStream.Free;
Exit;
end;
MyStream.SaveToFile(ExtractFilePath(paramstr(0))+‘HTTPDemo.zip‘);
MyStream.Free;
Showmessage(‘OK‘);
end;
procedure
TForm1.IdHTTP1WorkBegin(Sender: TObject; AWorkMode:
TWorkMode;
const AWorkCountMax:
Integer);
begin
//开始下载前,将ProgressBar1的最大值设置为需要接收的数据大小.
ProgressBar1.Max:=AWorkCountMax;
ProgressBar1.Min:=0;
ProgressBar1.Position:=0;
end;
procedure
TForm1.IdHTTP1Work(Sender: TObject; AWorkMode:
TWorkMode;
const AWorkCount:
Integer);
begin
//接收数据的时候,进度将在ProgressBar1显示出来.
ProgressBar1.Position:=ProgressBar1.Position+AWorkCount;
end;
相关文章
- 12-04apache安全配置---禁止访问特定文件,防止日志、压缩包被下载
- 12-04delphi压缩后使用http协议base64上传下载6G超大文件
- 12-04Delphi IdHTTP1下载文件防止假死 (
- 12-04struts2文件上传、下载、防止重复提交
- 12-04js下载文件防止白屏
- 12-04防止apche列出目录以及下载文件
- 12-04DB2 8.2 9.1 9.5 9.7 下载地址(用迅雷防止官方下线文件)
- 12-04Delphi阿里云对象存储OSS【支持上传文件、下载文件、删除文件、创建目录、删除目录、Bucket操作等】
- 12-04Delphi单元文件之-防止程序重复执行
- 12-04js下载文件防止白屏