0

FtpClient (ICS コンポーネント) に存在するダウンロード再開機能を備えた HttpCli を使用して、ダウンロード マネージャーを実装したいと考えていました。FtpClient では、これは を使用して実現されRestGetAsyncます。と の 2 つのプロパティに出会いましContentRangeBeginContentRangeEnd

ContentRangeBegin= 192ContentRangeEndを 500 バイトに設定しました。URL を " http://www.google.comContentRangeEnd " に設定しました。ダウンロードされるのは-だけだと思っContentRangeBeginていましたが、ファイル全体がダウンロードされました。

RcvdStream を HttpCli1.RcvdStream := TFileStream.Create('c:\a.txt',fmCreate); // OpenWrite モードに設定すると、完全なファイルが既存のファイルに追加されるだけです。

a.txt は C:\ ドライブに 197 バイトのサイズで存在していました。

さらに何をする必要がありますか?

前もって感謝します

4

1 に答える 1

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;
于 2013-05-07T10:16:43.327 に答える