关于ClickOnce我们要说的主要有一下两点:
- 什么是ClickOnce?
- ClickOnce的使用
一、什么是ClickOnce(来自百度)
ClickOnce 是一种部署技术,使用该技术可创建自行更新的基于 Windows 的应用程序,这些应用程序可以通过最低程度的用户交互来安装和运行。
使用ClickOnce部署有什么优势:
1.更新方便:使用Microsoft Windows Installer部署的话,每次程序更新用户都要重新安装整个程序,而使用ClickOnce部署的话,则可以自动提供更新。只有更改过的应用程序部分才会被下载,然后从新的并行文件夹重新安装完整的、更新后的应用程序。
2.对计算机安全:使用
Windows Installer 部署时,应用程序通常依赖于共享组件,这便有可能发生版本冲突;而使用 ClickOnce 部署时,每个应用程序都是独立的,不会干扰其他应用程序。
3.权限安全:Windows
Installer 部署要求管理员权限并且只允许受限制的用户安装;而 ClickOnce 部署允许非管理用户安装应用程序并仅授予应用程序所需要的那些代码访问安全权限。
二、ClickOnce的使用
我们知道ClickOnce是一种部署技术,部署实际上就是我们所说的安装,所以我们可以说ClickOnce应用程序就是一类安装包装,它可以一步到位进行安装,而不像我们所使用的传统安装包那样,要N个"下一步",然后才是完成。
接下来我们先尝试发布一个Windows Forms应用程序,用我们之前制作的导表工具为例:
首先打开我们的项目工程:
打开"解决方案资源管理器",在项目节点上右击展开菜单,并选中【属性】打开属性窗口:
在属性窗口中切换至【发布】窗口,我们可以看到两个发布位置:本地文件夹和IIS上的Web服务器地址,当然也可以是FTP地址。我们先尝试本地文件夹发布方式:
直接在第一栏中填写一个文件夹地址,如:“D:\Unity3D\C#\Window Forms Applications”。加入想只发布到服务器上,只需在第二栏中填入服务器Url地址,当两栏都填写的话,则会发布到服务器的同时在本地备份一份。然后,我们需要设置安装模式,分为两种,一般选择第二项:
接下来,我们开始设置更新的参数,加入发布的为最终版并不再更新可以不设置此选项,但一般情况下都需要设置为了后期的修改更新:
设置完毕后,我们开始设置版本号,为了方便,我们直接勾选自动递增选项:
所有参数都设置完毕之后,我们就可以点击“发布向导”,在向导里面我们可以再次修改刚刚设置过的一些参数,例如发布位置、更新IIS服务器地址以及是否联机状态下才能使用,如果无需修改则一直点击“下一步”即可,引导完成后点击完成按钮,开始生成部署文件:
部署过程中可在VS的输出窗口查看打印信息,部署顺利完成的输出为“发布成功”:
我们可以尝试安装刚刚发布的例子程序,找到设置的本地文件夹目录,可以看到生成的安装文件,点击.application或者setup.exe文件都能进行安装。