小型软件自动更新库是一款简单实用的自动更新程序,小型软件自动更新库是快速简单地为现有的.net应用程序添加上比较简单的自动更新功能。
官方介绍:
在发布应用程序时,我们经常会需要给自己的程序加上自动升级功能。.Net Framework自带的ClickOnce中有自动升级的功能,但是往往不太好用,比如必须用ClickOnce发布,安装的文件夹一个版本一个等等,我们会想要一个比较简单、甚至绿色软件也能使用的自动升级功能,这个自动升级程序就是基于这个目的而制作的。为了让使用起来更加简单快捷,我对内置的功能进行了大幅度的精简和集成,最简单的情况下只需要你只需要一行代码即可实现自动更新
需要填写如下信息:
应用程序名
当前的版本(也就是更新后的版本)
发布地址可选(如果填写了,在更新提示框上会有个链接可以链接到这个网址)
新程序目录(选择最新版本程序的发布目录,在版本 1.5.0.0 之后你可以直接从资源管理器中拖放目标文件夹到目录的文本框来快速选择了!)
升级包路径:选择一个路径用来保存升级包(*.zip),同时自动更新信息 *.xml 也会保存在这个目录下
更新前执行:在下载完成、即将安装更新前会执行这里选择的程序。这里有点BUG一旦选择了就不能取消,所以请注意下;
更新后执行:在安装完成后、即将退出前执行的操作。需要注意的BUG同上。通常选择需要运行的主程序。
执行时间限制:用于限制6中选择的程序的执行时间,超过设置的时间后进程将会被强行结束。
更新说明:用于提示更新的时候显示的文本消息内容。
创建:按照填写的信息生成升级包
打开:打开一个已有的升级信息文件,用于下次更新版本时直接修改信息即可,其它的不需要变化(在1.5.0.0之后,你可以通过直接拖放以前保存的升级XML文件到窗体上直接打开了!)。
整个自动升级工作的流程
注意事项:
注意:自动升级程序取当前程序文件的版本,是以当前运行的程序集版本作为识别依据的。
首先在VS中为当前的主程序项目添加引用,引用“客户端”中的“SimpleUpdater.exe”。
更新日志:
小型软件自动更新库 V4.2.0.0
增加组件ID检测事件
增加同步检测更新以及任务检测更新方式
增加“不存在则跳过”的文件更新逻辑
修正下载时进度显示的bug
变更当前主程序模块以及信息监测方式
变更行为,最低版本达不到要求也视作错误
部分逻辑调整,提升特定情况下检测更新的速度
加入组件ID支持
变更文件列表编辑方式,新增组件ID编辑以及“不存在则跳过”逻辑
新增打包选项,支持使用随机包名
新增打包前清空目标目录的选项
小型软件自动更新库 V4.0.0.0
【客户端】增加自定义引用接口 IUpdateNotify 以及 UsingAssembly() 函数,可在正式更新后依然调用自己的处理事件
【客户端】增加 UsingFormUI() 函数以及更新对话框基类,可以使用自己的更新界面完全替换内置界面
【客户端】修改WebClient初始化流程,避免后续下载包时发出的请求没有UserAgent标头
【客户端】修正丢失的资源文件,避免导致命令行版无法使用
【客户端】变更config文件配置
【客户端】安装文件各操作中也支持报告进度
小型软件自动更新库 V3.0.14290.0
【客户端】升级包支持“不提示直接自动启动升级”选项
【客户端】升级包支持“自动结束进程”选项
【客户端】升级包支持“自动结束同目录下进程”选项
【客户端】升级包支持“强制更新否则退出软件选项”选项
【客户端】升级包支持“启动更新后自动解除当前进程”选项
【客户端】升级包支持“检测遇到错误时是否按照有更新处理”选项
【客户端】自动升级不再强制要求管理员权限,改为自动检测,仅在需要时才请求管理员权限
【客户端】升级文件安装逻辑,降低因文件安装速度过快导致出错的失败率
【客户端】增加多服务器支持,允许使用多个服务器地址进行更新,失败后自动切换服务器
【客户端】增加确保更新函数,支持在确保是最新版的情况下才继续运行
【客户端】多国语言资源完善
【客户端】其它细节调整和BUG修复
【包工具】增加对新增选项的支持,修复已知BUG