大家好,我是沙漠尽头的狼。
.NET构建所有应用程序的开发人员平台是免费的、跨平台的、开源的。
今日介绍使用ClickOnce制作软件安装包首先要知道什么是ClickOne。
1. 什么是ClickOnce摘自微软文档:https://learn.microsoft.com/zh-cn/visualstudio/deployment/clickonce-security-and-deployment?view=vs-2022。
ClickOnce 它是一种基于自我更新的部署技术 Windows 这些应用程序可以通过最小的用户交互来安装和运行。
ClickOnce 部署克服了部署中固有的三个主要问题:
更新应电脑用程序的困难使用 Microsoft Windows Installer 每次应用程序更新,用户必须重新安装整个应用程序;使用 ClickOnce 可自动更新部署。只有更改的应用程序部分才会下载,然后从新的并行文件夹重新安装完整的更新应用程序。
对用户计算机的影响使用 Windows Installer 在部署过程中,应用程序通常依赖于共享组件,这可能导致版本冲突;使用 ClickOnce 每个应用程序都是独立的,不会干扰其他应用程序。
安全权限Windows Installer 部署要求管理员权限,只允许有限的用户安装; ClickOnce 允许非管理用户安装应用程序,并只授予应用程序所需的代码访问安全权限。
在过去,这些问题有时会使开发人员决定创建 Web 而不是基于应用程序 Windows 为便于安装而牺牲的应用程序 Windows用户界面和响应性丰富。对于使用 ClickOnce 您可以整合这两种技术的优势,部署应用程序。
2. 使用ClickOnce创建安装包2.1 需要服务器首先,我们需要一个在线网站来更新托管软件的文件,比如Dotnet创建9个网站的根目录WPFBlazorChat的目录,所以在线托管地址是https://dotnet9.com/WPFBlazorChat,目录如下:
2.2 开始制作安装包记住上面的在线地址,使用前几天介绍的WPFBlazorChat以安装包为例,仓库地址如下:https://github.com/dotnet9/WPFBlazorChat,因此,上述目录与项目名称相同:WPFBlazorChat。
选择WPFBlazorChat工程,右键发布选择弹出界面ClickOnce,点击下一步随意发布位置选择软件安装包获取地址设置可配置程序运行时自动检测更新、软件版本号等,如下图所示:如上图,如果检查【自动增加修订号】,每次点击发布,修订号都会增加(感觉是废话,主要方便版本号管理)。
点击应用程序文件,无需下载即可检查哪些文件,如下图所示:选择先决条件,即在选择程序运行时,默认支持程序.NET 6和.NET 7.于是站长勾选.NET 7 x64,win7 如有必要,32名学生按需选择:选项配置配置软件安装包信息,更重要的是,出版商的名称和套件的名称决定了软件程序的释放位置:
其中,部署文件配置Publish.html安装包装包下载页面
签名清单直接下一步:
程序发布配置根据情况选择,站长选择的.NET 7 64位发布,注意前面的选择.NET桌面运行时版本一致:
点击发布点击发布最后一个操作
发布完成后,点击发布位置路径:
2.3 上传上面做了软件安装包,还有一步,就是把安装包扔到网站上,这个比较简单,前提是网站已经部署好了。
2.4 安装、操作程序地址是:https://dotnet9.com/WPFBlazorChat/Publish.html
电脑如上图,显示了软件安装包的名称、版本号、出版商以及我们创建安装包配置所需的需要.NET单击安装按钮下载运行版本等setup.exe安装文件很小,666KB,好吉利数字:
运行setup.exe,上述服务器将自动从上述服务器开始(https://dotnet9.com/WPFBlazorChat/)检测版本号和文件更新,自动下载程序文件:
下图为服务器软件安装包信息:
下图为安装过程截图:
安装包下载完成后,程序自动运行,以下是测试程序运行界面,WPF Blazor开发哟,点击戳源码:
电脑3. Q&AClickOnce 工作原理的部署核心 ClickOnce 部署系统结构基于两个 XML 清单文件:应用程序清单和部署清单。 这些文件用于描述在哪里安装 ClickOnce 应用程序,如何更新这些应用程序,以及何时更新它们。
更多请访问微软文档:https://learn.microsoft.com/zh-cn/visualstudio/deployment/clickonce-security-and-deployment?view=vs-2022
本文结束,下一篇介绍WPF中如何使用Blazor开发应用。view=vs-2022
本文结束,下一篇介绍WPF中如何使用Blazor开发应用。电脑