C#使用 AutoUpdater.NET 实现程序自动更新

写在前面

开发桌面应用程序的时候,经常会因为新增功能需求或修复已知问题,要求客户更新应用程序,为了更好的服务客户,通常会在程序启动时判断版本变更情况,如发现新版本则自动弹出更新对话框,提醒客户更新成最新版本。在.Net体系中采用 AutoUpdater.NET 组件可以非常便捷的实现这一功能。

老规矩从NuGet获取 AutoUpdater.NET 组件:

参考官方示例

代码实现

新建WinForm示例程序,主要代码如下:

cs 复制代码
namespace AutoUpdaterWinFormsApp
{
    using AutoUpdaterDotNET;

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            AutoUpdater.InstalledVersion = new Version("1.2");
            System.Timers.Timer timer = new System.Timers.Timer
            {
                Interval = 1 * 30 * 1000,
                SynchronizingObject = this
            };
            timer.Elapsed += delegate
            {
                AutoUpdater.Start("https://rbsoft.org/updates/AutoUpdaterTest.xml");
            };
            timer.Start();
        }
    }
}

xml配置:

XML 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<item>
	<version>2.0.0.0</version>
	<url>https://rbsoft.org/downloads/AutoUpdaterTest.zip</url>
	<changelog>https://github.com/ravibpatel/AutoUpdater.NET/releases</changelog>
	<mandatory>false</mandatory>
</item>

调用示例

相关推荐
helloworld工程师20 分钟前
Java实现PDF加水印功能:技术解析与实践指南
java·开发语言·pdf
码观天工33 分钟前
.NET 原生驾驭 AI 新基建实战系列(八):总结篇 ── 数据库技术的革命:从结构化到非结构化再到智能化的演进
ai·c#·.net·向量数据库
五花肉村长38 分钟前
Linux-进程信号
linux·运维·服务器·开发语言·网络·c++
开发者小天1 小时前
React中startTransition的使用
前端·react.js·c#
半青年1 小时前
Qt读取Excel文件的技术实现与最佳实践
c语言·c++·python·qt·c#·excel
AA-代码批发V哥1 小时前
Java-List集合类全面解析
java·开发语言·list
羚羊角uou1 小时前
【C++】map和multimap的常用接口详解
开发语言·c++
Q_Q19632884751 小时前
python动漫论坛管理系统
开发语言·spring boot·python·django·flask·node.js·php
举一个梨子zz1 小时前
Java—— IO流 第一期
java·开发语言
Toby_0092 小时前
go 数据类型转换
开发语言·golang