DELPHI IDHTTP下载
2009-09-30 14:57
495 查看
type
THttpThread = class(TThread)
private
FIdHTTP: TIdHTTP;
FUrl: string;
FSavePath: string;
procedure Down(Url: string; SavePath: string);
public
constructor Create(CreateSuspended: Boolean; Url: string; SavePath: string);
destructor Destroy; override;
procedure Execute; override;
end;
{ THttpThread }
constructor THttpThread.create(CreateSuspended: Boolean; Url: string; SavePath: string);
begin
inherited Create(CreateSuspended);
FreeOnTerminate := True;
FUrl := Url;
FSavePath := SavePath;
FIdHTTP := TIdHTTP.Create(nil);
end;
destructor THttpThread.Destroy;
begin
FIdHTTP .Free;
inherited;
end;
procedure THttpThread.Down(Url: string; SavePath: string);
var
Stream: TMemoryStream;
begin
BegTime := GetTickCount;
Stream := TMemoryStream.Create;
try
try
FIdHTTP.Get(Url, Stream);
finally
DeleteUrlCacheEntry(PChar(Url));
end;
except
MessageBox(0, '网络出错', '提示', MB_ICONQUESTION);
Stream.Free;
Exit;
end;
Stream.SaveToFile(SavePath);
Stream.Free;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
HttpThread1: THttpThread;
UrlPath: string;
begin
UrlPath := 'http://mirror1.2ccc.com/downloads/general/multimedia/Money2ChineseCapitalaovi888.rar';
HttpThread1 := THttpThread.Create(False, UrlPath, 'C:\Test\1.Rar');
end;
procedure THttpThread.Execute;
begin
inherited;
Down(FUrl, FSavePath);
end;
THttpThread = class(TThread)
private
FIdHTTP: TIdHTTP;
FUrl: string;
FSavePath: string;
procedure Down(Url: string; SavePath: string);
public
constructor Create(CreateSuspended: Boolean; Url: string; SavePath: string);
destructor Destroy; override;
procedure Execute; override;
end;
{ THttpThread }
constructor THttpThread.create(CreateSuspended: Boolean; Url: string; SavePath: string);
begin
inherited Create(CreateSuspended);
FreeOnTerminate := True;
FUrl := Url;
FSavePath := SavePath;
FIdHTTP := TIdHTTP.Create(nil);
end;
destructor THttpThread.Destroy;
begin
FIdHTTP .Free;
inherited;
end;
procedure THttpThread.Down(Url: string; SavePath: string);
var
Stream: TMemoryStream;
begin
BegTime := GetTickCount;
Stream := TMemoryStream.Create;
try
try
FIdHTTP.Get(Url, Stream);
finally
DeleteUrlCacheEntry(PChar(Url));
end;
except
MessageBox(0, '网络出错', '提示', MB_ICONQUESTION);
Stream.Free;
Exit;
end;
Stream.SaveToFile(SavePath);
Stream.Free;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
HttpThread1: THttpThread;
UrlPath: string;
begin
UrlPath := 'http://mirror1.2ccc.com/downloads/general/multimedia/Money2ChineseCapitalaovi888.rar';
HttpThread1 := THttpThread.Create(False, UrlPath, 'C:\Test\1.Rar');
end;
procedure THttpThread.Execute;
begin
inherited;
Down(FUrl, FSavePath);
end;
相关文章推荐
- delphi idHttp下载文件
- delphi idHttp下载文件
- [DELPHI]idHTTP设置VContinue不能中断下载的原因
- delphi做的idhttp下载具体某个网站资源的程序(希望大家多看看,多给小弟指点指点,有利于小弟学习)
- delphi IdHTTP实现Get方法下载文件,断点续传
- delphi idHttp下载文件
- idhttp下载函数
- Delphi-idHttp-JSON用法
- idHttp下载文件
- delphi fmx idhttp post 案列,android测试通过
- 多线程idhttp下载文件源代码
- Android实例-IdHTTP下载(并实现自动安装)(XE10+小米2)
- Delphi Idhttp Post提交 Aspx/Asp.net 时 500错误的解决办法。
- delphi idhttp post
- Delphi IDHTTP用法详解(六种用法)
- Delphi IDHTTP控件:GET/POST 请求
- ftp和http断点续传及下载的Delphi实现
- Delphi的idhttp报508 Loop Detected错误的原因
- delphi idhttp 使用方法
- [url=http://bbs.exue.com.cn/plugin.php?identifier=adcom&module=adcom&action=entry&id=377899]E学论坛——英语学习、考试指导、资料下载、出国留学专业论坛[/url]