亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sws_update.pas

?? 本程序是在網友vagrant的升級程序上增加了SQL數據庫的更新升級功能
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
unit Sws_update;

interface

uses
  filectrl, Variants,Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Menus,   db,
   Buttons, Grids, ToolWin, ExtCtrls, ImgList, ExtDlgs,IdBaseComponent, IdComponent,shellapi, IdTCPConnection, IdTCPClient, IdHTTP,
  Gauges,inifiles,ScktComp, RzButton, RzLabel, RzBckgnd, RzTabs, RzPanel,
  ADODB, RzPrgres;
  type
 Tbuf_char = array[0..4095] of char;
  Tbuf_byte = array[0..4095] of byte;
type
  TForm_Update = class(TForm)
    HTTPFiles: TIdHTTP;
    z: TImageList;
    RzPanel8: TRzPanel;
    RzPanel9: TRzPanel;
    RzPanel10: TRzPanel;
    Image1: TImage;
    RzPanel11: TRzPanel;
    RzPanel12: TRzPanel;
    RzPageControl1: TRzPageControl;
    TabSheet1: TRzTabSheet;
    RzPanel4: TRzPanel;
    RzBackground2: TRzBackground;
    RzLabel1: TRzLabel;
    RzPanel7: TRzPanel;
    Label2: TLabel;
    Edt_url: TEdit;
    ListBox_servers: TListBox;
    TabSheet2: TRzTabSheet;
    RzPanel1: TRzPanel;
    ListView_files: TListView;
    RzPanel2: TRzPanel;
    Gauge_process: TGauge;
    RzPanel3: TRzPanel;
    RzBackground1: TRzBackground;
    RzPanel5: TRzPanel;
    RzBackground3: TRzBackground;
    TabSheet3: TRzTabSheet;
    Memo1: TMemo;
    RzPanel6: TRzPanel;
    RzBackground4: TRzBackground;
    RzLabel2: TRzLabel;
    RzLabel3: TRzLabel;
    RzBackground5: TRzBackground;
    btn_pre: TRzBitBtn;
    btn_next: TRzBitBtn;
    RzBackground6: TRzBackground;
    RzBackground7: TRzBackground;
    RzLabel4: TRzLabel;
    TabSheet4: TRzTabSheet;
    Memo2: TMemo;
    ADOQuery1: TADOQuery;
    ADOConnection1: TADOConnection;
    RzPanel13: TRzPanel;
    RzBackground8: TRzBackground;
    RzLabel5: TRzLabel;
    RzPanel16: TRzPanel;
    RzBackground11: TRzBackground;
    Button1: TRzBitBtn;
    Button2: TRzBitBtn;
    TabSheet5: TRzTabSheet;
    RzPanel17: TRzPanel;
    RzBackground12: TRzBackground;
    RzLabel6: TRzLabel;
    Memo3: TMemo;
    RzBitBtn1: TRzBitBtn;
    ADOTable1: TADOTable;
    RzPanel14: TRzPanel;
    RzProgressBar1: TRzProgressBar;
    procedure FormCreate(Sender: TObject);
    procedure ListBox_serversClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure RzPageControl1Change(Sender: TObject);
    procedure btn_preClick(Sender: TObject);
    procedure btn_nextClick(Sender: TObject);
    procedure RzBitBtn1Click(Sender: TObject);
  private
    { Private declarations }
    
    g_path: string;
    sys_id: string;
    AppIni: TIniFile;
    files: TStringList;
    function ExistNewFile: Boolean;
  public
    { Public declarations }
   // Ep:integer;
    ClientSocket1: TClientSocket;
    filename1: string;
    serfilename: string;
    serhost1: string;
    can_rec1: boolean;
    stop1: boolean;
    sj:boolean;
  end;

var
  Form_Update: TForm_Update;
  root:string;
  pos1: longint;
implementation



{$R *.dfm}


procedure TForm_Update.FormCreate(Sender: TObject);
var i,j:integer;
servers: TStrings;
begin
    root:= ExtractFilePath(ParamStr(0));
   self.sj:=true;
  ClientSocket1 := TClientSocket.create(application);
  ClientSocket1.ClientType := ctBlocking;
  files := TStringList.Create;
  ListBox_servers.Items.Clear;
  try
    g_path := ExtractFilePath(application.ExeName);
    if copy(g_path, length(g_path), 1) <> '\' then g_path := g_path + '\';
    AppIni := TIniFile.Create(g_path + 'chis.ini');
    sys_id := AppIni.ReadString('chis', 'SubSys', '');
    servers := TStringList.Create;
    AppIni.ReadSectionValues('update', servers);
    for i := 0 to servers.Count - 1 do
    begin
      ListBox_servers.Items.Add(copy(servers[i], 1, pos('=', servers[i]) - 1));
      if i = 0 then Edt_url.Text := copy(servers[i], pos('=', servers[i]) + 1, length(servers[i]));
    end;
  finally
    AppIni.Free;
end;
end;


function getfiledate(const filename2: string; var d: TDateTime): Boolean;
var
  DosFileTime: integer;
begin
  result := false;
  DosFileTime := FileAge(filename2);
  if DosFileTime <> -1 then //返回-1表示文件不存在
  begin
    d := FileDateToDateTime(DosFileTime);
    result := true;
  end;
end;
function socket_rec_line1(socket1: TCustomWinSocket; timeout1: integer; crlf1: string = #13#10): string;
var
  buf1: Tbuf_char;
  r1: integer;
  ts1: TStringStream;
  FSocketStream: TWinSocketStream;
begin
  ts1 := TStringStream.Create('');
  FSocketStream := TWinSocketStream.create(Socket1, timeout1);
  while (socket1.Connected = true) do
  begin
    if not FSocketStream.WaitForData(timeout1) then break;
    zeromemory(@buf1, sizeof(buf1));
    r1 := FsocketStream.Read(buf1, 1);
    if r1 = 0 then break; //test
    ts1.Write(buf1, r1);
    if pos(crlf1, ts1.DataString) <> 0 then
    begin
      break;
    end;
  end;
  result := ts1.DataString;
  if pos(crlf1, result) = 0 then
  begin
    result := '';
  end;
  ts1.Free;
  FSocketStream.Free;
end;

function get_host1(in1: string): string;
begin
  in1 := trim(in1);
  if pos('http://', lowercase(in1)) = 1 then
  begin
    in1 := copy(in1, length('http://') + 1, length(in1));
  end;
  if pos('/', in1) <> 0 then
  begin
    in1 := copy(in1, 0, pos('/', in1) - 1);
  end;
  result := in1;
end;

function get_file1(in1: string): string;
begin
  in1 := trim(in1);
  if pos('http://', lowercase(in1)) = 1 then
  begin
    in1 := copy(in1, length('http://') + 1, length(in1));
  end;
  if pos('/', in1) <> 0 then
  begin
    in1 := copy(in1, pos('/', in1) + 1, length(in1));
  end;
  result := in1;
end;

function Download(var host1, file1: string): Boolean;
var
  url1: string;
  buf1: Tbuf_byte;
  rec1: longint;
  f1: file;
  cmd1: string;
  reclen1, real_reclen1: longint;
  value1: string;
  total_len1: longint;
begin
  try
    assignfile(f1, file1);
    Form_Update.can_rec1 := false;
    Form_update.stop1 := false;
    if FileExists(file1) = true then
    begin
      reset(f1, 1);
      pos1 := filesize(f1);
    end
    else
    begin
      rewrite(f1, 1);
      pos1 := 0;
    end;
    seek(f1, pos1);
    Form_Update.ClientSocket1.Active := false;
    Form_Update.ClientSocket1.Host := get_host1(host1);
    Form_Update.ClientSocket1.Port := 80;
    url1 := '';
    Form_Update.serfilename := get_file1(host1);
    Form_Update.serhost1 := get_host1(host1);

    Form_Update.ClientSocket1.Active := false;
    Form_Update.ClientSocket1.Active := true;
    url1 := '';
    url1 := url1 + 'HEAD /' + Form_Update.serfilename + ' HTTP/1.1' + #13#10;

    url1 := url1 + 'Pragma: no-cache' + #13#10;

    url1 := url1 + 'Cache-Control: no-cache' + #13#10;

    url1 := url1 + 'User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)' + #13#10;
    url1 := url1 + 'Host: ' + Form_Update.serhost1 + #13#10;
    url1 := url1 + #13#10;
    Form_Update.ClientSocket1.Socket.SendText(url1);
    while Form_Update.ClientSocket1.Active = true do
    begin
      if Form_Update.stop1 = true then break;
      cmd1 := socket_rec_line1(Form_Update.ClientSocket1.Socket, 60 * 1000);

      if pos(lowercase('Content-Length: '), lowercase(cmd1)) = 1 then
      begin
        value1 := copy(cmd1, length('Content-Length: ') + 1, length(cmd1));
        total_len1 := strtoint(trim(value1));
      end;

      if cmd1 = #13#10 then break;
    end;
    Form_Update.clientsocket1.Active := false;
    Form_Update.clientsocket1.Active := true;
    url1 := '';
    url1 := url1 + 'GET /' + Form_Update.serfilename + ' HTTP/1.1' + #13#10;
    url1 := url1 + 'Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*' + #13#10;
    url1 := url1 + 'User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)' + #13#10;
    url1 := url1 + 'RANGE: bytes=' + inttostr(pos1) + '-' + #13#10;
    url1 := url1 + 'Host: ' + Form_Update.serhost1 + #13#10;
    url1 := url1 + #13#10;
    Form_Update.ClientSocket1.Socket.SendText(url1);
    while Form_Update.ClientSocket1.Active = true do
    begin
      if Form_Update.stop1 = true then break;
      cmd1 := socket_rec_line1(Form_Update.ClientSocket1.Socket, 60 * 1000);
      if pos(lowercase('Content-Range:'), lowercase(cmd1)) = 1 then
      begin
        Form_Update.can_rec1 := true;
      end;
      if pos(lowercase('Content-Length: '), lowercase(cmd1)) = 1 then
      begin
        value1 := copy(cmd1, length('Content-Length: ') + 1, length(cmd1));
        reclen1 := strtoint(trim(value1));
      end;
      if cmd1 = #13#10 then break;
    end;
    real_reclen1 := 0;
    while Form_Update.ClientSocket1.Active = true do
    begin
      if Form_Update.stop1 = true then break;
      if Form_Update.can_rec1 = false then break;
      if filesize(f1) >= total_len1 then
      begin
        //showmessage('文件已經下載完畢了!');
        result := true;
        Form_Update.Memo1.Lines.Add(file1 + '文件下載完成' + #13#10);
        break;
      end;
      zeromemory(@buf1, sizeof(buf1));

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产福利91精品一区二区三区| 精品视频免费看| 在线精品视频免费播放| 欧美一二三区精品| 亚洲嫩草精品久久| 国产一区二三区好的| 欧美日韩一区二区欧美激情 | 成人欧美一区二区三区在线播放| 天天综合色天天综合色h| 国产99久久久国产精品免费看| 欧美美女一区二区| 亚洲欧美日韩国产综合| 国产精品一区二区三区乱码| 日韩一区二区免费视频| 亚洲一区成人在线| 99久久精品久久久久久清纯| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 91麻豆精品国产91久久久久久 | 久久伊人蜜桃av一区二区| 一区二区在线观看av| 国产91在线观看丝袜| 久久综合狠狠综合久久综合88| 亚洲成人资源在线| 欧美综合久久久| 亚洲少妇最新在线视频| 成人一区二区视频| 国产欧美视频一区二区三区| 美腿丝袜亚洲三区| 欧美一区二区网站| 日韩国产欧美视频| 4hu四虎永久在线影院成人| 免费高清在线一区| 日韩欧美色电影| 精品一区二区三区欧美| 日韩美一区二区三区| 另类中文字幕网| 久久先锋影音av| 国产麻豆一精品一av一免费| 久久麻豆一区二区| 粉嫩久久99精品久久久久久夜| 精品国产免费一区二区三区四区| 狠狠色伊人亚洲综合成人| 欧美精品一区视频| 国产不卡高清在线观看视频| 国产精品网友自拍| 日本大香伊一区二区三区| 亚洲一区二区综合| 日韩一区二区影院| 国产精品一区在线观看你懂的| 国产精品成人网| 欧美午夜电影在线播放| 日韩在线卡一卡二| 久久久久亚洲蜜桃| 99久久精品一区二区| 午夜精品久久久久久| 欧美一级在线免费| 成人毛片视频在线观看| 伊人色综合久久天天| 91精品国产综合久久久久久漫画| 精品写真视频在线观看| 国产精品福利一区二区| 欧美日韩的一区二区| 精品一区二区三区免费视频| 日韩一区欧美一区| 欧美一区二区三区在线| 粉嫩久久99精品久久久久久夜| 一区二区三区精品视频在线| 日韩精品一区二| 99精品视频在线免费观看| 日韩一区精品字幕| 国产欧美日韩激情| 欧美日韩欧美一区二区| 国产成人免费视频精品含羞草妖精| |精品福利一区二区三区| 欧美一区国产二区| 97精品电影院| 国产在线国偷精品产拍免费yy| 亚洲人妖av一区二区| 欧美大片免费久久精品三p| 色综合一区二区三区| 九色porny丨国产精品| 亚洲线精品一区二区三区| 久久久午夜精品理论片中文字幕| 91福利资源站| 高清成人在线观看| 麻豆一区二区三| 亚洲一区在线观看免费| 国产精品久久久久三级| 日韩免费高清视频| 欧美日韩一区二区在线观看| 春色校园综合激情亚洲| 免费观看30秒视频久久| 日本成人在线网站| 日韩理论片网站| 久久久美女毛片| 91精品国产色综合久久不卡电影| 色悠悠亚洲一区二区| 国产一区二区电影| 免费成人在线观看| 首页亚洲欧美制服丝腿| 亚洲精品va在线观看| 国产精品九色蝌蚪自拍| 国产日韩视频一区二区三区| 欧美大黄免费观看| 欧美久久久久久久久中文字幕| 色美美综合视频| 一本色道久久综合亚洲91| av中文字幕不卡| 成人黄色在线视频| 成人av在线资源网站| 国产精品综合av一区二区国产馆| 久久精品999| 奇米影视一区二区三区| 免费一级片91| 美腿丝袜一区二区三区| 日本成人中文字幕在线视频 | 久久精品久久精品| 麻豆91在线看| 国产一区二区调教| 国产成人免费视频网站| av电影在线观看一区| 波波电影院一区二区三区| www.欧美日韩| 色综合天天综合网国产成人综合天| 波波电影院一区二区三区| 91丨九色丨国产丨porny| 在线亚洲免费视频| 欧美日韩五月天| 4438成人网| 久久免费精品国产久精品久久久久| 久久一夜天堂av一区二区三区| 久久久久久久久久久99999| 中文字幕国产一区| 亚洲精品美腿丝袜| 亚洲午夜一区二区三区| 免播放器亚洲一区| 色狠狠一区二区三区香蕉| 欧美日韩一区二区三区不卡| 日韩一级大片在线| 中文字幕的久久| 亚洲 欧美综合在线网络| 老司机午夜精品99久久| 成人免费视频播放| 欧美日韩精品久久久| 欧美大片一区二区三区| 1000精品久久久久久久久| 亚洲影视在线播放| 国内精品嫩模私拍在线| 成人黄色国产精品网站大全在线免费观看| 99re66热这里只有精品3直播 | 一区二区三区不卡视频在线观看 | 欧美三级在线视频| 日韩免费视频一区二区| 中文字幕一区二区三区在线观看| 一区二区三区四区高清精品免费观看 | 国产精品麻豆一区二区| 亚洲成人777| 国产成人综合在线| 欧美视频日韩视频在线观看| 久久―日本道色综合久久| 一区二区久久久久久| 国产一区激情在线| 欧美日韩美少妇| 国产精品美女久久久久久久久| 亚洲chinese男男1069| 成人免费毛片片v| 日韩欧美电影在线| 亚洲综合视频网| 欧美三级日韩三级| 久久久久久久av麻豆果冻| 亚洲v日本v欧美v久久精品| www.色精品| 国产欧美日韩另类一区| 午夜视频久久久久久| av成人老司机| 国产午夜精品久久久久久久| 蜜臀av一区二区在线观看 | 日韩欧美专区在线| 亚洲国产乱码最新视频| 丁香亚洲综合激情啪啪综合| 日韩精品一区二区三区在线播放| 亚洲欧洲日产国产综合网| 国产精品一级在线| 精品国产一区二区在线观看| 五月天亚洲精品| 欧美日免费三级在线| 综合久久一区二区三区| 国产精品一区二区在线播放 | 欧美亚洲综合久久| 国产拍揄自揄精品视频麻豆| 麻豆91在线看| 日韩女优毛片在线| 欧美aaa在线| 日韩一级大片在线| 男男视频亚洲欧美| 日韩欧美视频在线| 蜜桃av一区二区| 欧美videossexotv100| 美腿丝袜在线亚洲一区| 国产三区在线成人av|