1、组件介绍
C/S构的特点是能充分发挥客户端的处理能力,很多工作可以由客户端处理后再提交给服务器,对应的优点就是客户端响应速度快模式客户端以其强大的功能,丰富的表现力受到相当大部分用户的青睐,但是客户端布署,维护升级的成本却是非常的高的。
C/S客户端需要安装专用的客户端软件及运行环境。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。
SNFAutoupdater组件就是为了解决C/S在维护升级方面的问题而存在的,本组件可以快速建立升级部署应用,完全控制整个升级部署过程,全功能的、快速、易于使用,设立发布你的客户端应用。
本组件以最简单的模式提供给客户端在线布署和自动升级功能,彻底解决升级部署方面的后顾之忧。组件中提供的的接口以最简单的方式来对升级过程提供完全控制。SNFAutoupdater组件为你的软件集成稳定/高效的自动升级功能,是本升级组件的宗旨。
SNFAutoupdater组件四步完成升级工作:检查新版本、下载到临时目录、检查本地文件、拷贝或覆盖到工作目录。
无需特被的服务器,传统的Web服务即可,如IIS等。服务器部署最新版的软件文件(文件列表保存在一个XML文件中),SNFAutoupdater组件对比分析服务器和客户端的XML对比配置文件,不同就更新。
SNFAutoupdater组件采用C#语言编写,可应用于目前大多流行语言开发的软件之中,不依赖任何类库,稳定,高效。
2、组件升级原理及过程
3、服务端部署。
<?xml version="1.0" encoding="gb2312"?> <AutoUpdater> <description>Application autoUpdate</description> <Updater> <Url>http://10.0.0.1/SNFSoftUpdate/</Url> <LastUpdateTime>2016-07-07</LastUpdateTime> </Updater> <Application applicationId="SNF"> <EntryPoint>SNF.exe</EntryPoint> <Location>.</Location> <Version>1.0.0.0</Version> </Application> <Files> <File Ver="1.0.0.0" Name="SNF.exe" /> <File Ver="1.0.0.0" Name="Reports\test.txt"/> <File Ver="1.0.0.0" Name="Interop.grproLib.dll"/> <File Ver="1.0.0.0" Name="Reports\test.grf"/> </Files> </AutoUpdater>
可以看到,其中配置了更新地址,更新日期,主程序,需要更新的文件列表 。
如果上面文件不愿意自己写,用下面工具可以进行生成:
4、客户端部署。
完成之后会自动打开主程序。
注意:是主程序的 Load事件要加上调整自动更新程序的代码。要以模式打开窗口。如果没有差异会自动关闭升级窗口显示主窗口。