如何在Delphi 7中使用ICS THttpCli实现下载恢复工具?

时间:2013-05-07 06:48:58

标签: delphi

我想用HttpCli实现一个带有下载恢复功能的下载管理器,如FtpClient(ICS Components)中所示。在FtpClient中,这是使用RestGetAsync实现的。我遇到了两个属性ContentRangeBeginContentRangeEnd

我已将ContentRangeBegin = 192和ContentRangeEnd设置为500字节。我将网址设置为“http://www.google.com”。 我预计只会下载ContentRangeEnd - ContentRangeBegin。但是下载了完整的文件。

我将RcvdStream设置为      HttpCli1.RcvdStream := TFileStream.Create('c:\a.txt',fmCreate); //设置为OpenWrite模式只会将完整文件附加到现有文件中。

a.txt存在于C:\驱动器中,大小为197字节。

还需要做些什么?

提前致谢

1 个答案:

答案 0 :(得分:1)

代码很好。我将URL更改为“www.overbyte.be”,文件已部分下载。 这是我的代码,可以对其他人有所帮助。

   HttpCli2.URL := 'http://www.overbyte.be';
   HttpCli2.Proxy := 'xxxx';
   HttpCli2.ProxyPort := 'xxxx';

   Try
      HttpCli2.RcvdStream := TFileStream.Create('E:\sanj\t1.txt',fmCreate);

   Except 

   End;
    HttpCli2.ContentRangeBegin := '100';

   HttpCli2.ContentRangeEnd   := '232';
   Try
     HttpCli2.Get;
     httpCli1.RcvdStream.Free;
    httpCli1.RcvdStream := nil;
    ShowMessage('Status code  =' + IntToStr(HttpCli2.StatusCode) + ' , reason -> '   +HttpCli2.ReasonPhrase);


   Except
   End;