首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >一款基于 .NET 开源、跨平台应用程序自动升级组件

一款基于 .NET 开源、跨平台应用程序自动升级组件

作者头像
追逐时光者
发布2026-03-26 08:11:09
发布2026-03-26 08:11:09
730
举报
文章被收录于专栏:编程进阶实战编程进阶实战

前言

今天大姚给分享分享一款基于 .NET 开源免费、跨平台应用程序自动升级组件:GeneralUpdate。

项目介绍

GeneralUpdate 是一个基于 .NET Standard 2.0 的跨平台应用程序自动升级组件(桌面客户端自动升级解决方案),项目遵循 Apache 2.0 协议开源。该组件不依赖任何 UI 框架,旨在减少更新产生的资源消耗。通过提供一键启动示例,帮助开发者快速理解如何将自动升级功能集成到自己的应用程序中。

应用场景

GeneralUpdate 适用于需要自动更新功能的各类应用程序,包括但不限于:

  • 桌面应用程序:如 WPF、WinForms、Avalonia、MAUI(仅支持 Android 平台)等开发的桌面软件。
  • 控制台应用程序:需要定期或按需更新的后台服务或工具。
  • 跨平台应用:支持 Windows、Linux、macOS 等多平台的应用程序更新。

支持功能

基础更新策略

功能

说明

断点续传

更新失败后下次启动可继续下载未完成包,提升大文件更新稳定性。

逐版本更新

多版本差距时按发布日期顺序逐步升级,避免跳跃式更新导致兼容问题。

二进制差分更新

通过差值算法生成补丁文件,仅传输变更部分,节省带宽与时间。

增量更新功能

仅更新修改过的文件并删除废弃文件,实现最小化变更集。

强制更新

客户端启动即触发更新,确保用户始终使用最新合规版本。

分支与推送机制

功能

说明

多分支更新

支持产品多分支并行开发,各分支独立配置更新内容。

最新版本推送

基于 SignalR 实时推送当前最新版通知,实现主动更新提醒。

用户体验与控制

功能

说明

跳过更新

允许用户弹窗选择是否更新本次发布;服务端强制更新时此选项失效。

相互升级

主程序与升级程序可互相更新,形成闭环自洽的更新体系。

黑名单

更新过程中自动跳过指定文件或扩展名列表,防止误覆盖关键资源。

部署与运维增强

功能

说明

OSS 极简更新

只需在服务器放置 version.json 配置文件,组件自动识别并下载对应版本。

回滚/备份

更新前本地备份,若启动失败或崩溃则自动恢复至上一稳定版本。

驱动更新

基于 GeneralUpdate.Drivelution 实现跨平台驱动自动更新(Win/Linux/macOS),含签名验证、权限管理等完整流程。

扩展与高级特性

功能

说明

扩展管理

类似 VS Code 插件系统,支持目录管理、远程查询、依赖解析、事件通知等。

自定义方法列表

注入自定义方法集合,在更新前执行预处理逻辑,异常时订阅通知。

AOT 编译支持

支持 Ahead-of-Time 编译发布,适配高性能或受限环境需求。

身份认证

HTTP 请求中传递 token 进行资源访问控制,保障更新源安全性。

支持框架

.NET 框架支持情况

.NET框架名称

是否支持

.NET Core 2.0

支持

.NET 5 ... to last version

支持

.NET Framework 4.6.1

支持

UI 框架支持情况

UI框架名称

是否支持

WPF

支持

UWP

商店模式下不可更新

MAUI

目前仅支持Android平台

Avalonia

支持

WinUI

支持

Console

支持

WinForms

支持

支持操作系统

操作系统名称

是否支持

Windows

支持

Android (.NET MAUI)

支持

麒麟V10(飞腾S2500)

支持

麒麟V10(飞腾FT-2000)

支持

麒麟V10(x64)

支持

Ubuntu 24.04.1 LTS

支持

龙芯(Loongnix LoongArch 3A6000)

支持

华为欧拉(EulerOS-鲲鹏Kunpeng)

支持

Apple Mac (M1)

支持

统信UOS (x64)

支持

项目效果演示

image
image

项目源码地址

更多项目实用功能和特性欢迎前往项目开源地址查看👀,别忘了给项目一个Star支持💖。

优秀项目和框架精选

该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没🤞)。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2026-03-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 项目介绍
  • 应用场景
  • 支持功能
    • 基础更新策略
    • 分支与推送机制
    • 用户体验与控制
    • 部署与运维增强
    • 扩展与高级特性
  • 支持框架
    • .NET 框架支持情况
    • UI 框架支持情况
  • 支持操作系统
  • 项目效果演示
  • 项目源码地址
  • 优秀项目和框架精选
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档