AutoUpdater.NET自动更新库使用

原文链接:https://blog.csdn.net/g313105910/article/details/112313695

.NET程序当部署很多的时候,每次手动下载升级麻烦,原来自己写了个自动升级的程序,独立运行,需要主程序来更新自动升级程序,自动升级程序升级主程序,功能运行正常,最近发现有AutoUpdater.NET库很方便,在此写下使用方法,重要说一点,程序作为服务运行时无法使用,会崩溃,想更新服务请看下面链接

https://blog.csdn.net/g313105910/article/details/112366756

NuGet安装Autoupdater.NET.Official

注意:.netframwork3.5以上版本,vs2010以上版本,我这边15也不行,19可以的。

 

程序中只需要引入,并开启更新2行代码即可,非常方便

using AutoUpdaterDotNET;

AutoUpdater.Start("http://10.0.0.7:7777/updates/AutoUpdater.xml");

 

http服务器使用上篇文章中的apache服务器

htdocs\updates目下新建AutoUpdater.xml和AutoUpdaterLoger.html,可以启用强制更新,也可以关闭MD5效验,关闭MD5的方法就是删掉这一行的配置

<?xml version="1.0" encoding="UTF-8"?>
<item>
    <version>1.0.0.4</version>
    <url>http://10.0.0.7:7777/downloads/NewAutoUpdater.zip</url>
    <changelog>http://10.0.0.7:7777/updates/AutoUpdaterLoger.html</changelog>
    <checksum algorithm="MD5">5D722E6F2CDECC2011CD31B4957C9AEE</checksum>
    <mandatory mode="2">false</mandatory>
</item>

  

<html><body><h1>这是一个重要的更新,从1.0.0.0到1.0.0.1</h1></body></html>

  htdocs\downloads目录放入NewAutoUpdater.zip更新文件,打包时不需要带根文件夹

 是不是很方便

 更新完自动替换并运行
如果不想自动监测程序版本可以指定程序版本

//指定程序版本
AutoUpdater.InstalledVersion = new Version(version);

  

手动处理退出逻辑

    AutoUpdater.ApplicationExitEvent += AutoUpdater_ApplicationExitEvent;

private static void AutoUpdater_ApplicationExitEvent()
{
     Console.WriteLine("关闭!");
     Thread.Sleep(5000);
     Process.GetCurrentProcess().Kill();
}

  

posted @ 2024-03-07 15:54  yinghualeihenmei  阅读(458)  评论(0编辑  收藏  举报