今天给大家分享一下winform利用visual studio进行发布程序进行自动更新,在日常开发工作中当程序新增功能之后我们需要对程序进行升级,那么怎么让程序自动检测自动升级呢,下边一块学习一下。

这里我创建一个winform应用程序写个测试用例:

一.发布

右击项目选择发布

发布的方式有三种
1.发布到本地的物理路径,比如D或E盘的指定路径
2.发布到共享文件
3.发布到FTP服务(在服务器创建一个ftp服务,把服务地址输在下边 鉴于在上传过程中密码会暴露不建议使用)

我这里选择发布到本地

下载安装地址
这里我选择在网络路径下载、安装、更新(由于没使用ftp,上一步完成后需要将发布后的文件复制到网络路径中)
下边的网络地址是在iis创建的网站,上一步的发布的文件直接复制到iis创建的网站中即可

下载更新的iis网站

下一步选择第一项

最后一步会将发布的地址和下载的地址罗列出来供检查

完成后控制台

我们在本地的发布路径中找到发布后的文件拷贝到iis中

然后去访问iis的网站地址即可下载程序

当我们每次代码有更新或功能更新就可以进行发布,发布后将文件拷贝到iis网站中。

每次打开程序时程序将会自动更新,无需再去访问iis网站重新下载程序

二.不允许跳过升级

在发布第一个版本后,我们系统以后可能会有升级。升级时有两个选项,一个是确定升级、一个时跳过
一般来说升级是为了修复bug或者是升级功能,不能允许用户跳过


怎么不让用户跳过呢,一起看一下

首先右键选择项目——属性——发布

让这两个版本一致就不会再跳出提示升级的窗体,程序会自动升级至最新版本

winform发布(应用程序自动更新)、不允许跳过升级相关推荐

  1. SharpUpdater:开源的.NET桌面程序自动更新组件

    SharpUpdater开源了! http://sharpupdater.codeplex.com/ 简  介 SharpUpdater是一个开源的.NET Windows桌面程序自动更新的组件.它提 ...

  2. 使用GeneralUpdate实现.NET客户端程序自动更新

    .NET客户端程序自动更新 当我们在日常开发中编写的客户端程序需要部署在多台主机上时,如果程序需要升级,那么一台台升级会非常麻烦,此时就可以使用本文的.NET客户端程序自动更新技术. 本文所述的自动更 ...

  3. Android 程序自动更新功能模块实现

    2019独角兽企业重金招聘Python工程师标准>>> Android 程序自动更新功能模块实现 在程序启动的时候检测服务器上有没有对应版本更新,如果有更新,提示用户是否更新. 在程 ...

  4. android自动更新demo,Android程序自动更新功能模块的实现方法【附完整demo源码下载】...

    本文实例讲述了Android程序自动更新功能模块的实现方法.分享给大家供大家参考,具体如下: 在程序启动的时候检测服务器上有没有对应版本更新,如果有更新,提示用户是否更新. 在程序启动的时候首先调用更 ...

  5. 手机android怎么关闭自动更新,如何停止Android手机上的应用程序自动更新

    有几个原因可以阻止Play Store自动更新应用程序. 也许新的更新破坏了功能,或者您需要跟踪您的数据使用情况,并且不想通过蜂窝数据LIM. 不管是什么原因,这里是如何阻止自动更新发生在你的Andr ...

  6. 微信小程序自动更新版本

    PS: 小程序发布版本后正常老用户是不能直接看到的新版本的, 需要通过:删除小程序浏览记录.从我的小程序中移除.退出微信账号重新登录这些办法才能看到新版本内容 这是因为小程序有静默更新机制: 未启动时 ...

  7. 客户端程序自动更新(升级)的方式

    from:https://blog.csdn.net/woaitingting1985/article/details/72954652 一.C/S自动更新原理 C/S程序自动升级是一个很重要的功能, ...

  8. 用计算机升级ipad系统软件,iPad怎么设置软件程序自动更新?

    现在各种软件也是推陈出新,为了适应最新的系统.潮流,每隔一段时间都会有更新.不想错过的朋友,可以在你的iPad上设置自动更新. 1.看到iPad上面的app store常年有个右上角的数字,强迫症的人 ...

  9. 如何实现已发布app的自动更新

    要实现app的自动更新,做两件事情就可以搞定 1.获取当前手机中的app版本号 我们可以通过查询mainbundle中的获取CFBundleVersion NSDictionary *infoDict ...

最新文章

  1. 使用回调函数实现图像阈值分析。程序运行后在屏幕中输入阈值,通过改变滑动条实现不同类型的二值化图。
  2. Linux基础命令---修改用户信息usermod
  3. SQL优化基础 使用索引(一个小例子)
  4. 斑能不能彻底去掉_小龙虾的头、虾黄到底能不能吃?赶紧告诉身边人......
  5. 服务注册发现consul之五:Consul移除失效服务的正确姿势
  6. x64 stack walking、调用约定、函数参数识别
  7. alertmanager 告警恢复_Prometheus配置企业微信告警
  8. MongoDB数据库的删除与重建 - 精简篇
  9. 火车票能不能选座_在火车站买火车票可以选座位吗?
  10. kubernetes安装_在 Kubernetes 上安装 Gitlab CI Runner
  11. python识别视频中火焰_监控视频中火焰检测算法
  12. 小胡学python【1】
  13. c#把word文档转换为html页面
  14. JavaScript几种原生函数
  15. 1、蓝牙核心技术了解(蓝牙协议、架构、硬件和软件笔记)
  16. 2020-12-10 MATLAB学习小结(十九)
  17. linux路径跟踪命令,Linux基础命令---tracepath追踪路由信息
  18. 二维vector的创建
  19. teams测试性分析软件官网,复杂电子系统的TEAMS测试性研究.pdf
  20. 对CentOS服务器上正使用MRTG进行移机操作

热门文章

  1. 固件逆向中常用的小工具
  2. flac是什么格式?怎么转成mp3?
  3. 三十六计之瞒天过海(第一计)
  4. 毫无基础的人如何入门 Python 【看这一篇就够了】
  5. pip 更新国内源以及官方源
  6. 深度解析源码strcpy函数
  7. 斐讯,这家借壳上市的路由器公司被疑自融,京东265万人已中招
  8. 有什么软件可以测试自己性格,怎样测试自己的性格
  9. 掘金 php,[稀土掘金日报] PHP7 来了 后端语言学习合集
  10. 模型训练技巧——warm up