WinForm 基于 ClickOnce 实现程序发布、更新、升级

WinForm 基于 ClickOnce 实现程序发布、更新、升级

参考

豆包

https://learn.microsoft.com/zh-cn/visualstudio/deployment/clickonce-security-and-deployment?view=vs-2022

https://www.bilibili.com/video/BV15y4y1s73f

https://blog.csdn.net/newbie_xymt/article/details/111546350

https://blog.csdn.net/qingyou2006/article/details/126390543

环境

软件/系统

版本

说明

Windows

windows 10 专业版 22H2 64 位操作系统, 基于 x64 的处理器

Microsoft Visual Studio

Community 2022 (64 位) - Current 版本 17.13.6

.NET Framework

4.8

步骤

升级不会删除客户机电脑上已有用户数据

Microsoft Visual Studio Installer Projects 可以制作更完善的安装包,包含安装位置、开始菜单等

首次发布

创建窗体应用程序 WindowsFormsApp2

编写一个简单的界面,如下:

在顶部菜单栏->项目->WindowsFormsApp2和属性 内可以配置应用的相关参数:

应用程序:图标、清单

生成事件:生成事件,生成事件前命令、生成事件后命令。

调试:启动命令行参数

签名

发布:发布位置、安装模式、系统必备组件(与设置组件的下载位置)、更新选项(升级周期)、选项(说明:发行者、名称、URL等。部署:部署网页(需要发布一次后才能设置,默认是publish.htm)等。清单:设置桌面快捷方式等)

在顶部菜单栏->生成->发布 WindowsFormsApp2 内配置发布

发布位置,这里使用默认publish\。

用户从网站安装应用程序,这里使用http://127.0.0.1

应用程序是否脱机使用,这里使用可以联机或脱机使用

准备就绪

发布以后会在开发目录/publish下生成升级相关文件,控制台会显示警告: 无法查看位于 http://127.0.0.1/publish.htm 的已发布应用程序。类似内容(无需担心,下一步进行解决)

将开发目录/publish内容放到服务器可被访问的位置,这里先放到WEB根目录下,对应http://127.0.0.1。(你的不一定要放到根目录,看实际需求来即可)

访问http://127.0.0.1显示应用信息、应用环境信息、安装按钮(此处如果你是第一次发布,版本号应为1.0.0.0,每次发布会自动更新)

点击安装按钮,会自动下载setup.exe文件,双击安装即可,可能会提示阻止了无法识别的应用启动,点击更多信息就会显示运行按钮了)

点击运行按钮后,会闪过一个联网检测窗口,然后提示是否确实安装此应用程序,点击安装即可。这样应用程序就安装完毕,并且在开启程序里面显示应用、桌面也会显示快捷方式。

后续升级

应用有功能调整以后,重复4、5、6步骤即可

将最新生成的开发目录/publish所有内容放到WEB根目录下即可,每次打开应用程序时都会自动检测更新。(你的不一定要放到根目录,看实际需求来即可)

卸载

在控制面板->程序->程序和功能内找到对应的软件,右键->卸载即可。

相关推荐