SharpUpdater是什么
SharpUpdater是一套C#桌面应用自动更新解决方案。基本上,所有自动更新程序的原理都一样:生成一份文件清单,将本地清单与云上清单对比后进行全量更新或增量更新。本方案的特点是集成了一套完整的工具链,从开发到发布。
版本历史
V1-3 (2016之前)
简单版本,通过各个文件版本逐一对比更新。优点是可以增量更新,缺点是所有文件都要上传到服务器,没有打包,还要允许IIS下载dll.
V4 (2017-2018)
这一版我们技巧性地采用了NuGet的技术方案,生成更新包,并扩展NuGet.Server作为我们的包管理仓库。优点是包管理,缺点是暂时失去了增量更新的能力。但作为以企业内部部署为主的方案我们认为相较于优点,这个缺点可以忽略不计。
组件
产品名
说明
NuGet/VSIX URL
源码
SharpUpdater.Server
服务端,基于NuGet.Server
https://www.nuget.org/packages/SharpUpdater.Server
Github
Updater.exe
客户端
暂不发布包,建议下载源码定制
Github
SharpUpdater VSIX
VS扩展,用于打包、发布
https://marketplace.visualstudio.com/items?itemName=CnSharpStudio.SharpUpdater
Github
SharpUpdater.CLI
命令行工具,用于打包、发布
https://www.nuget.org/packages/SharpUpdater.CLI
Github
本版亮点
SharpUpdater5有哪些更新
基于.NET Standard重构了Core代码,为日后实现跨平台打下基础
重写了VSIX,与VS2022对齐
重写了服务端,与NuGet.Server 3.4.2对齐
新增了CLI,为喜欢命令行的用户提供简洁强大的dotnet tool
源码
https://github.com/cnsharp/SharpUpdater
喜爱桌面应用开发的朋友们可以关注一下。