关于ClickOnce我们要说的主要有一下两点:
  1. 什么是ClickOnce?
  2. ClickOnce的使用
一、什么是ClickOnce(来自百度)
        ClickOnce 是一种部署技术,使用该技术可创建自行更新的基于 Windows 的应用程序,这些应用程序能够通过最低程度的用户交互来安装和执行。
        使用ClickOnce部署有什么优势:
1.更新方便:使用Microsoft Windows Installer部署的话,每次程序更新用户都要又一次安装整个程序。而使用ClickOnce部署的话,则能够自己主动提供更新。仅仅有更改过的应用程序部分才会被下载,然后从新的并行目录又一次安装完整的、更新后的应用程序。
2.对计算机安全:使用 Windows Installer 部署时,应用程序通常依赖于共享组件,这便有可能发生版本号冲突。而使用 ClickOnce 部署时,每一个应用程序都是独立的,不会干扰其它应用程序。
3.权限安全:Windows Installer 部署要求管理员权限而且仅仅同意受限制的用户安装。而 ClickOnce 部署同意非管理用户安装应用程序并仅授予应用程序所须要的那些代码訪问安全权限。
二、ClickOnce的使用
        我们知道ClickOnce是一种部署技术,部署实际上就是我们所说的安装。所以我们能够说ClickOnce应用程序就是一类安装包装,它能够一步到位进行安装,而不像我们所使用的传统安装包那样,要N个"下一步",然后才是完毕。
        接下来我们先尝试公布一个Windows Forms应用程序。用我们之前制作的导表工具为例:
首先打开我们的项目project:
        打开"解决方式资源管理器",在项目节点上右击展开菜单,并选中【属性】打开属性窗体:
       在属性窗体中切换至【公布】窗体,我们能够看到两个公布位置:本地目录和IIS上的Webserver地址,当然也能够是FTP地址。

我们先尝试本地目录公布方式:

        
        直接在第一栏中填写一个目录地址,如:“D:\Unity3D\C#\Window Forms Applications”。

增加想仅仅公布到server上。仅仅需在第二栏中填入serverUrl地址,当两栏都填写的话。则会公布到server的同一时候在本地备份一份。然后,我们须要设置安装模式,分为两种。一般选择第二项:

        
        接下来,我们開始设置更新的參数,增加公布的为终于版并不再更新能够不设置此选项。但普通情况下都须要设置为了后期的改动更新:
        
        设置完成后。我们開始设置版本,为了方便,我们直接勾选自己主动递增选项:
        
全部參数都设置完毕之后。我们就能够点击“公布向导”,在向导里面我们能够再次改动刚刚设置过的一些參数,比如公布位置、更新IISserver地址以及是否联机状态下才干使用,假设无需改动则一直点击“下一步”就可以,引导完毕后点击完毕button,開始生成部署文件:
        
        部署过程中可在VS的输出窗体查看信息打印,部署顺利完毕的输出为“公布成功”:
        
        我们能够尝试安装刚刚公布的样例程序,找到设置的本地文件夹文件夹。能够看到生成的安装文件。点击.application或者setup.exe文件都能进行安装。
        

C# Window编程随记——ClickOnce程序部署相关推荐

  1. clickonce程序部署后,启动不成功的问题

    使用clickonce技术,发布的程序,在启动过程中,遇到退出的问题. 现象: 如下图所示,程序已经安装了,但是点击程序快捷方式,鼠标转几下,就没有任何反应了,也就是启动失败了. 第一步先看看是不是程 ...

  2. mongodb atlas_如何使用MongoDB Atlas将MERN应用程序部署到Heroku

    mongodb atlas 简介 (Introduction to MERN) In this article, we'll be building and deploying an applicat ...

  3. C#高级编程9 第18章 部署

    C#高级编程9 第18章 部署 使用 XCopy 进行部署 本主题演示如何通过将应用程序文件从一台计算机复制到另一台计算机来部署应用程序. 1.将项目中生成的程序集复制到目标计算机,生成的程序集位于项 ...

  4. vue.js部署_如何将安全Vue.js应用程序部署到AWS

    vue.js部署 本文最初发布在Okta开发人员博客上 . 感谢您支持使SitePoint成为可能的合作伙伴. 编写Vue应用程序直观,直接,快捷. Vue具有较低的进入门槛,基于组件的方法以及诸如热 ...

  5. 用 Hadoop 进行分布式并行编程, 第 2 部分 程序实例与分析

    前言 在上一篇文章:"用 Hadoop 进行分布式并行编程 第一部分 基本概念与安装部署"中,介绍了 MapReduce 计算模型,分布式文件系统 HDFS,分布式并行计算等的基本 ...

  6. QML 编程之旅 -- QML程序的基本结构概念

    文章目录 QML 文档的构成 QML基本语法 QML 编程之旅 – QML程序的基本结构概念 学习Qt编程快近一年了,的确是项目驱动,让我不得不咬紧牙关,需要快速的学习掌握一门新的技术.编程是一个非常 ...

  7. IIS安装与MVC程序部署

    最近在做访客系统,虽然说不是什么多大的项目,但麻雀虽小五脏俱全,使用EF Code First+Mysql+Frozenui响应式布局,感觉通过这个项目学到好多东西,Mysql的使用.EF映射Mysq ...

  8. Windows SDK编程之一 窗口示例程序

    /*Win32应用程序框架主要由"初始化窗口类","窗口注册类","窗口的创建"以"窗口消息函数"等组成*/ #incl ...

  9. heroku_如何使用Express.js和Heroku将应用程序部署到Web

    heroku If you are new to the world of web development, you will spend a lot of time learning how to ...

最新文章

  1. Docker容器中挂载NFS共享目录
  2. 当你学了现在的忘了前面的
  3. Animatable API介绍
  4. mysql增删查操作
  5. spring-boot-devtools
  6. nginx 下配置使用Thinkphp5解决跨目录活动并且设置网站根目录
  7. _Linux学习手册(二)—文件目录类命令
  8. linux php adodb,【原创】Linux下php使用adodb对sql Server访问配置
  9. 多变量微积分笔记10——二重积分的应用
  10. BZOJ2001 HNOI2010 城市建设
  11. spring-cloud 出现 No instances available for xxx的问题
  12. 国庆不出京!沉浸式high玩清凉谷
  13. python写酒店管理系统报告_酒店管理系统e-r图_酒店系统管理实验报告
  14. 对称数c语言,中心对称数 - Developmer的个人空间 - OSCHINA - 中文开源技术交流社区...
  15. 查看Ubuntu的版本号,并添加国内镜像源
  16. 那些年记忆深刻的技术书籍,你看过几本?
  17. 【期末复习】2021-20222南邮网络安全技术复习题
  18. java-php-python-ssm旅游产品网络销售系统计算机毕业设计
  19. 加粗、倾斜、下划线、删除线标签
  20. 计算机微课论文参考文献,计算机基础微课教学研究

热门文章

  1. 为图片添加半透明遮罩效果
  2. 【delphi】Byte数组与String类型的转换
  3. js 抛出异常 throw
  4. OpenCV 【十】——Gamma校正 ——图像灰度变化
  5. Linux下遍历指定目录的C++实现
  6. TensorRT Samples: GoogleNet
  7. 【linux】串口编程(一)——配置串口
  8. java 办公,中文JAVA技术网
  9. java 写入mysql blob_java 读取写入 mysql blob
  10. 软件项目管理大作业_案例|P6软件在水电项目施工管理中的应用