zoukankan      html  css  js  c++  java
  • DELPHI IDHTTP下载

    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;

  • 相关阅读:
    Android开发:系统自动实现开机启动
    Android高手进阶教程【转】
    android 各种控件颜色值
    Android开发博客国内最大的移动开发博客eoe移动开发者社区
    异步图片加载工具类
    Android中shape的使用
    Android的asset/res资源框架结构
    winddows 运行指令 (2)
    使用activeMQ实现jms
    ActiveMQ在C#中的应用
  • 原文地址:https://www.cnblogs.com/chengxin1982/p/1576946.html
Copyright © 2011-2022 走看看