项目:https://github.com/iccfish/FSLib.App.SimpleUpdater

C/S程式一般需要部署在多台机器上,如果程式有变动,需要一台一台重新安装,相当麻烦,如果我们给程式加入自动升级功能,会方便许多

升级程式的思路可以参考:https://www.cnblogs.com/tuyile006/p/12699972.html

自己做程式比较麻烦,而且健壮性和时效性都不怎么样,使用现有的项目可以更快更好,有时间再自己研究研究怎么写吧

使用方法:

下载:https://www.fishlee.net/service/download/695/%e8%87%aa%e5%8a%a8%e6%9b%b4%e6%96%b0%e5%ba%93_4.3.0.0.7z

现在之后,里面有PDF文档,可以参考,这里做一个简单的介绍

1.项目中引入DLL

下载后在 .\自动更新库\客户端\DLL(.NET4.0-4.5)\ 目录下得到SimpleUpdater.dll文件

visual studio打开项目---》右键引用---》添加引用---》项目(浏览)

2.项目中加入代码

private void button1_Click(object sender, EventArgs e)
{
Updater.CheckUpdateSimple("http://xxx.xxx.xxx.xxx/soft/update/updatetest/{0}", "update_c.xml");
}

两个参数,第一个是更新地址,用{0}作为占位符,因为目录下可能有多个文件,第二个参数是更新配置文件,一般为update_c.xml或者update.xml,update_c.xml是压缩档

3.制作更新包

在解压的包 自动更新库\升级包工具\ 目录下可以找到 自动更新包生成工具.exe,双击更新包生成工具生成更新包

应用程序名称:即待升级的程序名称

当前版本:点击绑定,选择待升级的程序,可以自动读出版本。也可以手填

发布地址:如果填写,会在升级对话框中生成超链接,用户点击后会跳转

新版本目录:新版本程序所在的目录

升级包目录:生成的升级包存放目录

更新后执行:更新后要执行的程序,一般为待更新的程序

点击文件配置选项卡,可以对升级的文件进行单独控制

点击左侧导航栏的根目录,点击需要配置的目录,可以对单个文件控制,例如SimpleUpdater.dll忽略更新,updatetest.exe根据版本更新,配置文件根据MD5值进行更新。

4.上传更新包

点击创建升级包,之后将生成的升级包上传到对应的更新地址中即可。

使用SimpleUpdater实现现有程序升级功能的更多相关文章

  1. IOS应用程序升级

    IOS应用程序升级流程介绍:IOS手机端应用程序需要升级时,打开服务器端html文件(本文为ucab.html文件)->点击在线安装->打开plist文件(本文中为ucab.plist文件 ...

  2. (转)基于企业级证书的IOS应用打包升级功能介绍

    IOS应用程序升级流程介绍:IOS手机端应用程序需要升级时,打开服务器端html文件(本文为ucab.html文件)->点击在线安装->打开plist文件(本文中为ucab.plist文件 ...

  3. 强大的Flutter App升级功能

    注意:无特殊说明,Flutter版本及Dart版本如下: Flutter版本: 1.12.13+hotfix.5 Dart版本: 2.7.0 应用程序升级功能是App的基础功能之一,如果没有此功能会造 ...

  4. 小程序升级实时音视频录制及播放能力,开放 Wi-Fi、NFC(HCE) 等硬件连接功能

    “ 小程序升级实时音视频录制及播放能力,开放 Wi-Fi.NFC(HCE) 等硬件连接功能.同时提供按需加载.自定义组件和更多访问层级等新特性,增强了第三方平台的能力,以满足日趋丰富的业务需求.” 0 ...

  5. Delphi程序的自动升级功能的实现(AutoUpdate使用指南)

    在UtiMnid组件下,利用auAutoUpgrader实现自动升级(已经测试通过) 第一步:下载AutoUpgrader.Pro.v4.6.4. 第二步:打开AutoUpgrader.Pro.v4. ...

  6. 【干货】WordPress系统级更新,程序升级

    [干货]WordPress系统级更新,程序升级 网站技术日新月异,更新升级是维护工作之一,长时间不升级的程序,就如长时间不维护的建筑物一样,会加速老化.功能逐渐缺失直至无法使用.在使用WordPres ...

  7. NSIS:应用软件自动升级功能的探索与实践

    原文 NSIS:应用软件自动升级功能的探索与实践 记得以前轻狂曾分享过使用第三方软件实现应用软件自动升级功能 (详细http://www.flighty.cn/html/soft/20110106_1 ...

  8. Vs2008应用程序升级为vs2012

    Vs2008应用程序升级为vs2012 编写人:左丘文 2015-5-21 近来一直有想法,想将开发环境升级 vs2008到vs2012,在此做个小结,将自己碰到的一系统问题,分享出来,以供参考.有兴 ...

  9. nRF51822 看门狗和OTA (无线升级功能)的尴尬笔记

    很久没有记笔记了.今天要记点东西,不然以后又忘记了. 随着时代的发展,现在的SDK已经是13.0了.蓝牙5.0也就来了.废话就少说了,记笔记吧. 两年前搞过nRF51822 的无线升级功能,那时候用的 ...

随机推荐

  1. Java字节码中对应的JDK版本

    Java class vs. JDK version mapping Java SE 9 = 53,Java SE 8 = 52,Java SE 7 = 51,Java SE 6.0 = 50,Jav ...

  2. layui的基本使用

    打开官网https://www.layui.com/下载这个框架 官网首页 下载到 layui 的最新版,它经过了自动化构建,更适合用于生产环境.目录结构如下 ├─css //css目录 │ │─mo ...

  3. SQL注入fuzz字典

    length Length + handler likeLiKe selectSeleCT sleepSLEEp databaseDATABASe delete having oroR asAs -~ ...

  4. gcc编译阶段打印宏定义的内容

    背景 总所周知,代码量稍微大一点的C/C++项目的一些宏定义都会比较复杂,有时候会嵌套多个#if/#else判断分支和一堆#ifdef/#undef让你单看代码的话很难判断出宏定义的具体内容. 如果有 ...

  5. qs的工具方法讲解

    简单来说,qs 是一个增加了一些安全性的查询字符串解析和序列化字符串的库. 今天在学习同事的代码, 在学习过程中遇到了这样一句代码 研究了很久,只了解了个大概,后面慢慢的用熟练只会,想着做个总结,温习 ...

  6. 持久层之 MyBatis: 第二篇 :动态SQL And多表查询

    MyBatis入门到精通 完整CRUD UserDaoImpl 编写UserDao对应的UserDaoMapper.xml 添加UserDao的测试用例 编写UserDao的测试用例 解决数据库字段名 ...

  7. 不一样的资产安全 3D 可视化平台

    前言   数字经济时代,应用好数据是企业数字化转型的关键,基于前沿科学技术进行数据的有效管控,更是对数字增值服务的新趋势.近年来,整个安全行业对资产管理的重视程度正在提高.据IDC发布的相关数据显示, ...

  8. 持续提升程序员幸福指数——使用abp vnext设计一款面向微服务的单体架构

    可能你会面临这样一种情况,在架构设计之前,你对业务不甚了解,需求给到的也模棱两可,这个时候你既无法明确到底是要使用单体架构还是使用微服务架构,如果使用单体,后续业务扩展可能带来大量修改,如果使用微服务 ...

  9. 老板居然让我在Java项目中“造假”

    1. 前言 老板说,明天甲方要来看产品,你得造点数据,而且数据必须是"真"的,演示效果要好看一些,这样他才会买我们的产品,我好明年给你换个嫂子.一般开发接到这种过分要求都不会很乐意 ...

  10. freemarker读取session里面的值

    项目背景:springMVC+freemarker模板开发web 时代和信后台管理界面 代码示例: 后台服务: HttpSession session = request.getSession(); ...