• C# winform自动更新 (附 demo下载)


    随着需求的变化,如果Server每次更新出新的内容,Client都要重新安装的话。 太过于复杂化。  所以自动更新是很有必要的。

    一、.NET自带的更新方式    以服务器端为主  (自动更新,微软爸爸肯定是有的。 有点:简单方便,便于维护; 缺点:用户没有自己的选择权,一切以服务端为主,每次更新之后,都是全新,继承不了上版本的配置;文件安装位置不可控 )

    实现步骤: 编辑——发布到服务器——客户端以版本号为判断标准——自动更新

    操作: 正常的发布项目,设置个人配置一下   解决方案里设置版本号 

     

    生成的文件

    接着配置服务器,自动更新就是从这比较下载    配置一个Server就好了  在我之前写的Webservice里有配置方式 

     

    大功告成,把 setup.exe 给客户端运行。第一次是运行setup.exe 安装你的软件,以后直接运行应用程序就行了。自动检查更新,并提示自动更新。开发者每次只需要把新版本上传到服务器就好了

     二、以客户端为主的自动更新(优点:简单快捷,可部分更新,耦合性不强,可以选择保留客户端的个性化配置   缺点: 第一次还是需要按部就班的安装,暂时还没感觉到缺点)

    是由一个叫鱼的大佬所开发的,下面写写我自己使用的经验

    操作步骤: 生成好的项目 ——发布工具整理——生成新的发布文件——配置到服务器——客户端安装(第一次得自己安装,以后每次可自动更新安装)

      

     项目里设置好版本号,当前版本可直接绑定exe文件。发布地址可不填   生成好的文件可自行放到服务器 

     如果需要保留用户的配置文件, 请在文件设置里设置忽略。如config,xml等配置文件。 创建生成文件。 然后同第一种方法一样放到

    服务器上。注意版本号的区分。建议设成自动生成。

    可以看到是成功的。好啦

    通过简单的两句代码,慢慢发现编程的乐趣

    分类: .NET
  • 相关阅读:
    其实天很蓝,阴云终要散;其实海不宽,此岸连彼岸;其实泪也甜,当你心如愿。
    三大杀手,是不是杀到了你的内心深处呢?
    “天才就是1%的灵感加上99%的汗水”还有后半句
    oracle中的exists in 和not exists 用法详解
    toString()方法的作用
    oracle学习笔记——视图、索引(转载)
    serialVersionUID的作用
    pageEncoding和charset有什么区别
    equal(),hashcode(),toString()方法的作用
    库函数&linux下的系统调用 对比
  • 原文地址:https://www.cnblogs.com/yidanda888/p/15584288.html
Copyright © 2020-2023  润新知