title: Download, pause and resume an download using Indy components
body: <p>Actually i'm using the TIdHTTP component for download a file from internet. i'm wondering if is possible pause and resume the download using this component o maybe another indy component.</p>
  
  <p>this is my current code, this works ok for download a file (without resume), but . now i want pause the download close my app ,and when my app restart then resume the download from the last position saved.</p>
  
  <pre><code>var
    Http: TIdHTTP;
    MS  : TMemoryStream;
  begin
    Result:= True;
    Http  := TIdHTTP.Create(nil);
    MS    := TMemoryStream.Create;
    try
  
      try
        Http.OnWork:= HttpWork;//this event give me the actual progress of the download process
        Http.Head(Url);
        FSize := Http.Response.ContentLength;
        AddLog('Downloading File '+GetURLFilename(Url)+' - '+FormatFloat('#,',FSize)+' Bytes');
        Http.Get(Url, MS);
        MS.SaveToFile(LocalFile);
      except
        on E : Exception do
        Begin
         Result:=False;
         AddLog(E.Message);
        end;
      end;
    finally
      Http.Free;
      MS.Free;
    end;
  end;
  </code></pre>