delphi自动更新程序
来源:互联网 发布:sqlserver视图创建 编辑:程序博客网 时间:2024/06/07 00:02
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,fmShareDenyNone);
FileDateTime:=FileDateToDateTime(FileGetDate(iFileHandle)); //取得文件时间
FileClose(iFileHandle);
//是否要下载文件
if FileDateTime,’DATETIME’,’1900-1-1’))&NBSP;THEN
begin
result:=true;
break;
end;
except
end;
finally
AppIni.free;
files.Free;
end;
end;
取得files后文件下载!httpfiles为TNMHTTP
HTTPFiles.InputFileMode := true;
HTTPFiles.OutputFileMode := FALSE;
HTTPFiles.ReportLevel := Status_Basic;
HTTPFiles.Body:=g_path+’update/’+files;
HTTPFiles.Get(url);
把下载后的文件复制到原程序,并备份出一份
for i:=0 to files.Count-1 do //备份文件
begin
//备份一份文件出来
copyfile(pchar(g_path+files),pchar(g_path+files+’.bak’),false);
end;
for i:=0 to files.Count-1 do //从update复制新文件
begin
copyfile(pchar(g_path+’update/’+files),pchar(g_path+files),false);
end;
- delphi自动更新程序
- 自动更新程序
- 程序自动更新
- DELPHI 2010自动更新问题
- Delphi做的软件自动更新
- Delphi做的软件自动更新
- 自动更新程序需求
- 自动更新程序需求
- 自动更新程序的制作方法
- JAVA自动更新程序
- C#示例 自动更新程序
- Winform 程序自动更新
- 程序的自动更新
- 简单局域网自动更新程序
- android自动更新程序
- Android程序自动更新
- C#程序自动更新
- Android 程序自动更新
- [转]中断
- 悲剧的四月份月赛
- socket编程 tcp/udp两种模式笔记
- 周总结
- 用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联'。错误代码:18452 解决办法
- delphi自动更新程序
- Ubuntu编译安装boost并在eclipse C/C++中使用
- ACE入门-VS2008下配置ACE
- C /C++经典书籍
- Predator:比微软Kinect更强的视频追踪算法-来自捷克博士论文(转)
- Peaver
- C++ 拷贝控制
- 关于计算机系统的死锁
- [转]U-boot的环境变量: bootcmd 和bootargs