国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

使用PB調用API自動更新(非FTP模式)(五、復制函數F_CONNECT_COPYFILE)

2024-07-21 02:09:52
字體:
來源:轉載
供稿:網友

五、復制函數f_connect_copyfile
需要控件:listbox(3個)
需要ini文件:autodown.ini
global type f_connect_copyfile from function_object
end type

forward prototypes
global function integer f_connect_copyfile (string as_path, hprogressbar hpb_1, long al_copycount, listbox lb_filecopy1, listbox lb_filecopy2, listbox lb_filecopy3)
end prototypes

global function integer f_connect_copyfile (string as_path, hprogressbar hpb_1, long al_copycount, listbox lb_filecopy1, listbox lb_filecopy2, listbox lb_filecopy3);
string ls_user
string ls_pass
string ls_directorya1,ls_directorya2
string ls_directoryb1,ls_directoryb2
string ls_directoryc1,ls_directoryc2

ls_directorya1 = as_path
ls_directorya2 = gs_application_path

string ls_filename,ls_file
string ls_filename1,ls_filename2

long ll_filecounta1,ll_filecounta2
long ll_filecountb1,ll_filecountb2
long ll_filecountc1,ll_filecountc2

long ll_cnt1
long ll_cnt2
long ll_cnt3
long ll_m
long ll_ret = 1

s_win32_find_data ss_file1,ss_file2
long ll_filehandle1,ll_filehandle2


ls_file = ls_directorya1 + '/*.*'
if not lb_filecopy1.dirlist(ls_file, 0+1+2+16) then
 return 0
end if
hpb_1.position = 0
ll_filecounta1 = lb_filecopy1.totalitems()
ll_m = 0
if al_copycount = 0 then al_copycount = 1
for ll_cnt1 = 1 to ll_filecounta1
 ls_file = lb_filecopy1.text(ll_cnt1)
 w_autodown_test.st_2.text = ls_file
 yield()
 if left(ls_file,1) = '[' then
  ls_filename = right(ls_file,len(ls_file) - 1)
  ls_filename = left(ls_filename,len(ls_filename) - 1)
  
  if ls_filename = '..' then continue
  
  ls_directoryb1 = ls_directorya1 + '/' + ls_filename
  ls_directoryb2 = ls_directorya2 + '/' + ls_filename
  if directoryexists(ls_directoryb2) = false then
   createdirectory(ls_directoryb2)
   ll_m++
   hpb_1.position = ll_m / al_copycount * 100
  end if
  
  ls_file = ls_directoryb1 + '/*.*'
  lb_filecopy2.dirlist(ls_file, 0+1+2+16)
  ll_filecountb1 = lb_filecopy2.totalitems()
  for ll_cnt2 = 1 to ll_filecountb1
   ls_file = lb_filecopy2.text(ll_cnt2)
   w_autodown_test.st_2.text = ls_file
   yield()
   if left(ls_file,1) = '[' then
    ls_filename = right(ls_file,len(ls_file) - 1)
    ls_filename = left(ls_filename,len(ls_filename) - 1)
    
    if ls_filename = '..' then continue
    
    ls_directoryc1 = ls_directoryb1 + '/' + ls_filename
    ls_directoryc2 = ls_directoryb2 + '/' + ls_filename
    if directoryexists(ls_directoryc2) = false then
     createdirectory(ls_directoryc2)
     ll_m++
     hpb_1.position = ll_m / al_copycount * 100
    end if
    
    ls_file = ls_directoryc1 + '/*.*'
    lb_filecopy3.dirlist(ls_file, 0+1+2+16)
    ll_filecountc1 = lb_filecopy3.totalitems()
    for ll_cnt3 = 1 to ll_filecountc1
     ls_file = lb_filecopy3.text(ll_cnt3)
     w_autodown_test.st_2.text = ls_file
     if ls_file = '[..]' then continue
     //判斷文件,比較和下載
     ls_filename1 = ls_directoryc1 + '/' + ls_file
     ls_filename2 = ls_directoryc2 + '/' + ls_file
     yield()
     if fileexists(ls_filename2) = false then
      copyfilea(ls_filename1,ls_filename2,0)
      ll_m++
      hpb_1.position = ll_m / al_copycount * 100
     else
      ll_filehandle1 = findfirstfilea(ls_filename1,ss_file1)
      findclose(ll_filehandle1)
      ll_filehandle2 = findfirstfilea(ls_filename2,ss_file2)
      findclose(ll_filehandle2)
      choose case comparefiletime(ss_file1.ftlastwritetime,ss_file2.ftlastwritetime)
       case 0
        //兩個時間相等,就返回零
       case 1
        //如lpfiletime2小于lpfiletime1,返回1
        //下載
        copyfilea(ls_filename1,ls_filename2,0)
        ll_m++
        hpb_1.position = ll_m / al_copycount * 100
       case -1
        //如lpfiletime1小于lpfiletime2,返回-1
      end choose
     end if
    next
   else
    //判斷文件,比較和下載
    ls_filename1 = ls_directoryb1 + '/' + ls_file
    ls_filename2 = ls_directoryb2 + '/' + ls_file
    if fileexists(ls_filename2) = false then
     copyfilea(ls_filename1,ls_filename2,0)
     ll_m++
     hpb_1.position = ll_m / al_copycount * 100
    else
     ll_filehandle1 = findfirstfilea(ls_filename1,ss_file1)
     findclose(ll_filehandle1)
     ll_filehandle2 = findfirstfilea(ls_filename2,ss_file2)
     findclose(ll_filehandle2)
     choose case comparefiletime(ss_file1.ftlastwritetime,ss_file2.ftlastwritetime)
      case 0
       //兩個時間相等,就返回零
      case 1
       //如lpfiletime2小于lpfiletime1,返回1
       //下載
       copyfilea(ls_filename1,ls_filename2,0)
       ll_m++
       hpb_1.position = ll_m / al_copycount * 100
      case -1
       //如lpfiletime1小于lpfiletime2,返回-1
     end choose
    end if
   end if
  next
 else
  //判斷文件,比較和下載
  ls_filename1 = ls_directorya1 + '/' + ls_file
  ls_filename2 = ls_directorya2 + '/' + ls_file
  if fileexists(ls_filename2) = false then
   copyfilea(ls_filename1,ls_filename2,0)
   ll_m++
   hpb_1.position = ll_m / al_copycount * 100
  else
   ll_filehandle1 = findfirstfilea(ls_filename1,ss_file1)
   findclose(ll_filehandle1)
   ll_filehandle2 = findfirstfilea(ls_filename2,ss_file2)
   findclose(ll_filehandle2)
   choose case comparefiletime(ss_file1.ftlastwritetime,ss_file2.ftlastwritetime)
    case 0
     //兩個時間相等,就返回零
    case 1
     //如lpfiletime2小于lpfiletime1,返回1
     //下載
     choose case lower(ls_file)
      case 'hbky_autodown.exe' //下載程序
       //filedelete(ls_filename2)
       
      case 'hbky_autodown.pbd'
       
      //case 'autodown.ini'
       
      case else
       copyfilea(ls_filename1,ls_filename2,0)
       ll_m++
       hpb_1.position = ll_m / al_copycount * 100
     end choose
    case -1
     //如lpfiletime1小于lpfiletime2,返回-1
   end choose
  end if
 end if
next
hpb_1.position = 0
return ll_ret
end function

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 三江| 新兴县| 霍州市| 合水县| 讷河市| 仙居县| 新干县| 松滋市| 诸暨市| 枞阳县| 长治市| 堆龙德庆县| 广德县| 沙河市| 永新县| 沿河| 中宁县| 略阳县| 印江| 天津市| 冷水江市| 汝城县| 河南省| 苗栗市| 镇平县| 怀柔区| 安岳县| 北辰区| 台北县| 贵州省| 龙井市| 东光县| 卢湾区| 柳河县| 沽源县| 陈巴尔虎旗| 玛沁县| 威远县| 漳州市| 太仓市| 福安市|