以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 跨版本升级!有新版本时通过自动升级.exe来下载和更新 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=49714) |
||||
-- 作者:ysq128 -- 发布时间:2014/4/23 9:06:00 -- 跨版本升级!有新版本时通过自动升级.exe来下载和更新 跨版本升级是一个麻烦的事情。我也看过论坛其它朋友的处理方式也不太适合我。所以就自己处理了一个: 我说说我的方式,可以供大家参考! 升级配置.ini 这个文件的内容由狐表完成 我是将升级地址和NewVersion放入的数据库。每次登陆的时候检查! [system] UpdatePath=http://dldir1.qq.com/qqfile/qq/QQ5.3/10702/QQ5.3.exe Version=2014-4-20 NewVersion=2014-4-21 Start=我的程序.exe 狐表检查新版本后。写入INI配置文件,并启动自动升级.exe。 _UpdatePath="http://dldir1.qq.com/qqfile/qq/QQ5.3/10702/QQ5.3.exe" Dim Version As String = FileSys.ReadAllText(ApplicationPath & "\\Catch\\Version.txt") \'客户端Version.txt If _UpdatePath<>"" Then If Version <> _NewVersion Then Dim Ini As String = "[system]" & vbcrlf & "UpdatePath=" & _UpdatePath & vbcrlf & "Version=" & Version & vbcrlf & "NewVersion=" & _NewVersion & vbcrlf & "Start=我的程序.exe" FileSys.WriteAllText(ApplicationPath & "升级配置.INI", Ini, False, Encoding.Default) Dim Result As DialogResult Result = MessageBox.Show("系统发现有新版本!建议您升级后再使用!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If Result = DialogResult.Yes Then Dim Proc As New Process Proc.File = ApplicationPath & "自动升级.exe" Proc.Start Syscmd.Project.Exit(False) End If End If End If 自动升级.exe的源代码:{用的aau软件编写的} import fsys; import fsys.unrar; import fsys.ini; import process; import inet.downBox; ini=fsys.ini("/升级配置.ini") system = ini.getSection("system") //如果版本不一致则下载升级文件 if(system.Version!=system.NewVersion){
inet.downBox(winform,"检查新的软件版本...",1).download(system.UpdatePath,"/update.rar") //最后一个参数autoClosed
fsys.unrar.extract("/update.rar","/") } process(system.Start)
以下文件是应11楼的需求。解压的是ZIP文件。以及更新后删除配置文件。 [此贴子已经被作者于2014-4-23 23:12:46编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2014/4/23 9:09:00 -- 呵呵,百花齐放啊。
谢楼主。
|
||||
-- 作者:Bin -- 发布时间:2014/4/23 9:11:00 -- 顶一下. |
||||
-- 作者:有点甜 -- 发布时间:2014/4/23 9:54:00 -- 顶,收藏。 |
||||
-- 作者:有点甜 -- 发布时间:2014/4/23 9:55:00 -- 以下是引用狐狸爸爸在2014-4-23 9:09:00的发言:
呵呵,百花齐放啊。
谢楼主。
是不是要做一下跨版本了? |
||||
-- 作者:狐狸爸爸 -- 发布时间:2014/4/23 9:57:00 -- 以下是引用有点甜在2014-4-23 9:55:00的发言:
是不是要做一下跨版本了?
让大家继续百花齐放一段时间再说。 |
||||
-- 作者:blackzhu -- 发布时间:2014/4/23 10:03:00 -- 与时俱进 |
||||
-- 作者:逛逛 -- 发布时间:2014/4/23 10:40:00 -- 收藏,备用。
谢谢! |
||||
-- 作者:ido -- 发布时间:2014/4/23 12:02:00 -- 学习~~~~~~~~ |
||||
-- 作者:pc005637 -- 发布时间:2014/4/23 20:52:00 -- 楼主能否提供一个不是用rar格式的自动升级.exe 因为狐表自带的压缩格式是zip格式。 你的自动升级下载的格式是rar的。 另外,自动升级.exe能够升级后,自动删除"升级配置.INI"就更加好了。 涉及服务器安全的问题。 这个文件可以自动生成。升级后删除,应该没影响的。
[此贴子已经被作者于2014-4-23 20:55:14编辑过]
|