扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
function ExistNewfile&:boolean; var i,iFileHandle:integer; FileDateTime:TDateTime; AppIni:TiniFile; g_path:string; url:string; files:TStrings; begin result:=false; url:='http://yousoft.hi.com.cn/update.htm/'; //要升级的服务器 g_path:=ExtractFilePath(application.ExeName); //升级程序的路径 if copy(g_path,length(g_path),1)<>'\' then g_path:=g_path+'\'; if copy(url,length(url),1)<>'/' then url:=url+'/'; //下载升级信息文件 try HTTPFiles.InputFileMode := true; HTTPFiles.OutputFileMode := FALSE; HTTPFiles.ReportLevel := Status_Basic; HTTPFiles.Body:=g_path+'update/update.ini'; //下载后保存到程序的update目录下 HTTPFiles.Get(url); except result:=false; //'取得升级信息出错!,不用再继续 exit; end; try files:=TStringlist.Create; //有哪些文件? AppIni := TIniFile.Create(g_path+'\update\update.ini'); AppIni.ReadSections(files); for i:=0 to files.Count-1 do try iFileHandle :=FileOpen(g_path+files[i],fmShareDenyNone); FileDateTime:=FileDateToDateTime(FileGetDate(iFileHandle)); //取得文件时间 FileClose(iFileHandle); //是否要下载文件 if FileDateTime<strtodatetime(Appini.ReadString(files[i],'datetime','1900-1-1')) then begin result:=true; break; end; except end; finally AppIni.free; files.Free; end; end; |
HTTPFiles.InputFileMode := true; HTTPFiles.OutputFileMode := FALSE; HTTPFiles.ReportLevel := Status_Basic; HTTPFiles.Body:=g_path+'update/'+files[i]; HTTPFiles.Get(url); |
for i:=0 to files.Count-1 do //备份文件 begin //备份一份文件出来 copyfile(pchar(g_path+files[i]),pchar(g_path+files[i]+'.bak'),false); end; for i:=0 to files.Count-1 do //从update复制新文件 begin copyfile(pchar(g_path+'update\'+files[i]),pchar(g_path+files[i]),false); end; |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者