引用: |
【Guardian的贴子】我个人认为 ,这个有点困难,因为升级程序的不预知性太高,同时还有一些重启不是因为升级的程序,而是因为当前的操作系统状态以及其他诸多的原因。
不过,你倒是可以将及时升级改称其他的升级方式,这样也可以变通的达到目的 ……………… |
感觉应该可行吧?比如,由瑞星公司自己先测试,如果该新版本的某前一个版本安装了新版本后需要重新启动的话,那它之前的所有版本都需要重新启动。用户客户端下载升级信息,检查自己的版本是否属于会重启的版本,如果不需要,那就通知用户有新版本,但安装后无需重启;如果需要,那就告诉用户,新版本在安装后需要重启,请用户自行斟酌。
检测版本的话,就从最新的开始积累记录。假如今天升级的是A1版本,如果上一个版本A0升级到A1需要重启,那就记录上,A0-A1需要重启;如果从A1升级到A2不需要升级,那仍然使用原先的A0-A1需要重启的记录,当A2遇到A0以下的版本,就全部需要重启;如果从A2升级到A3需要重启,那就把原先的记录改写为A2-A3需要重启,那么,升级A3时,所有A2以下的版本则都需要重启。
这种逻辑看起来似乎还是可行的~呵呵