Delphi7 安装ICS,与简单使用

官网 http://www.overbyte.be/

下载 OverbyteIcsV816 完成后解压到E:Delphi7OverbyteIcsV816


1、在library里加入E:Delphi7OverbyteIcsV816Source目录。
2、从File->Open中打开E:Delphi7OverbyteIcsV816InstallD7Install.bpg文件。(文件名在其它Delphi版本略有不同)
3、在项目管理器中,右键OverbyteIcsD7Design.bpl选择Build和Install---要把BPL输出目录也加入 1、在library里
64位系统
4、将D:软件Delphi777777plOverbyteIcsD7Design.bpl
       D:软件Delphi777777plOverbyteIcsD7Run.bpl
拷贝到 C:WindowsSysWOW64下

5、E:Delphi7OverbyteIcsV816PackagesOverbyteIcsD7Design.dpk可视化组件

就安装完成了!


uses  OverbyteIcsHttpProt;
//单个网址,返回网页源代码
function
HttpGet(const Url: string; var Html: string): Boolean; var HttpClient: THttpCli; DataLen: Int64; FailMsg: string; begin Result := False; HttpClient := THttpCli.Create(nil); HttpClient.URL := Url; HttpClient.NoCache := True; HttpClient.RcvdStream := TMemoryStream.Create; try try HttpClient.Get; DataLen := HttpClient.RcvdStream.Size; SetLength(Html, DataLen); HttpClient.RcvdStream.Position := 0; HttpClient.RcvdStream.Read(PChar(Html)^, DataLen); Result := True; except on E: EHttpException do begin FailMsg := Format('Failed : %d %s', [HttpClient.StatusCode, HttpClient.ReasonPhrase]); end else raise; end; finally HttpClient.RcvdStream.Free; HttpClient.RcvdStream := nil; HttpClient.Free; end; end;

uses  OverbyteIcsHttpProt;
//用一个THttpCli访问多个网址,以节省资源,
返回网页源代码

procedure TForm1.Button1Click(Sender: TObject);var aURL,aHtml:string;
i:Integer;
var  HttpClient:THttpCli;
  DataLen: Int64;
var
    StartTime: Longword;
    Duration: integer;

begin
  i:=1;
   HttpClient := THttpCli.Create(nil);
   HttpClient.NoCache := True;
    StartTime := GetTickCount;
  while i<1100 do begin
//    aURL:= 'http://chengyu.t086.com/cy0/'+inttostr(i)+'.html';
aURL:='http://chengyu.t086.com/cy0/'+inttostr(i)+'.html';
  HttpClient.URL := aURL;
  HttpClient.RcvdStream := TMemoryStream.Create;
    try
      HttpClient.Get;
      DataLen := HttpClient.RcvdStream.Size;
      SetLength(aHtml, DataLen);
      HttpClient.RcvdStream.Position := 0;
      HttpClient.RcvdStream.Read(PChar(aHtml)^, DataLen);

      ParserHtmlSaveToSQlite(aHtml);
      Memo1.Lines.Add(aURL);
      Button1.Caption:=IntToStr(i);

    HttpClient.RcvdStream.Free;
    HttpClient.RcvdStream := nil;
    i:=i+1;

    except
    HttpClient.RcvdStream.Free;
    HttpClient.RcvdStream := nil;
    i:=i+1;  
     end;
  end;
            Duration := GetTickCount - StartTime;
            Label1.Caption := IntToStr(Duration div 1000) + '';
 HttpClient.Free;
end;
uses  OverbyteIcsHttpProt;
//读取网页上的多张图片,并保存在 程序文件夹内
procedure TForm1.Button1Click(Sender: TObject);
var aURL,aHtml:string;
i:Integer;
var
  HttpClient: THttpCli;
  DataLen: Int64;
var
    StartTime: Longword;
    Duration: integer;

begin
  i:=1;

   HttpClient := THttpCli.Create(nil);
   HttpClient.NoCache := True;
    StartTime := GetTickCount;
  while i<59 do begin

aURL:='http://img1.mm131.com/pic/2408/'+inttostr(i)+'.jpg';
  HttpClient.URL := aURL;
//  HttpClient.RcvdStream := TMemoryStream.Create;
 HttpClient.RcvdStream := TFileStream.Create(inttostr(i)+'.jpg', fmCreate);
    try
      HttpClient.Get;
      Memo1.Lines.Add(aURL);
      Button1.Caption:=IntToStr(i);

    HttpClient.RcvdStream.Free;
    HttpClient.RcvdStream := nil;
    i:=i+1;

    except
    HttpClient.RcvdStream.Free;
    HttpClient.RcvdStream := nil;
    i:=i+1;  
     end;


  end;
            Duration := GetTickCount - StartTime;
            Label1.Caption := IntToStr(Duration div 1000) + '';
 HttpClient.Free;

end;

 运行程序下载

原文地址:https://www.cnblogs.com/tulater/p/6155387.html