C# Window编程随记——ClickOnce程序部署
- 什么是ClickOnce?
- ClickOnce的使用
ClickOnce 是一种部署技术,使用该技术可创建自行更新的基于 Windows 的应用程序,这些应用程序能够通过最低程度的用户交互来安装和执行。
Windows Installer 部署时,应用程序通常依赖于共享组件,这便有可能发生版本号冲突。而使用 ClickOnce 部署时,每一个应用程序都是独立的,不会干扰其它应用程序。
Installer 部署要求管理员权限而且仅仅同意受限制的用户安装。而 ClickOnce 部署同意非管理用户安装应用程序并仅授予应用程序所须要的那些代码訪问安全权限。
我们知道ClickOnce是一种部署技术,部署实际上就是我们所说的安装。所以我们能够说ClickOnce应用程序就是一类安装包装,它能够一步到位进行安装,而不像我们所使用的传统安装包那样,要N个"下一步",然后才是完毕。
接下来我们先尝试公布一个Windows Forms应用程序。用我们之前制作的导表工具为例:
打开"解决方式资源管理器",在项目节点上右击展开菜单,并选中【属性】打开属性窗体:
在属性窗体中切换至【公布】窗体,我们能够看到两个公布位置:本地目录和IIS上的Webserver地址,当然也能够是FTP地址。
我们先尝试本地目录公布方式:
直接在第一栏中填写一个目录地址,如:“D:\Unity3D\C#\Window Forms Applications”。
增加想仅仅公布到server上。仅仅需在第二栏中填入serverUrl地址,当两栏都填写的话。则会公布到server的同一时候在本地备份一份。然后,我们须要设置安装模式,分为两种。一般选择第二项:
接下来,我们開始设置更新的參数,增加公布的为终于版并不再更新能够不设置此选项。但普通情况下都须要设置为了后期的改动更新:
设置完成后。我们開始设置版本,为了方便,我们直接勾选自己主动递增选项:
部署过程中可在VS的输出窗体查看信息打印,部署顺利完毕的输出为“公布成功”:
我们能够尝试安装刚刚公布的样例程序,找到设置的本地文件夹文件夹。能够看到生成的安装文件。点击.application或者setup.exe文件都能进行安装。
C# Window编程随记——ClickOnce程序部署的更多相关文章
- 实验十五 GUI编程练习与应用程序部署
实验十五 GUI编程练习与应用程序部署 实验时间 2018-12-6 一:理论部分 1.Java 程序的打包:编译完成后,程序员将.class 文件压缩打包为 .jar 文件后,GUI 界面序就可以 ...
- C#高级编程9 第18章 部署
C#高级编程9 第18章 部署 使用 XCopy 进行部署 本主题演示如何通过将应用程序文件从一台计算机复制到另一台计算机来部署应用程序. 1.将项目中生成的程序集复制到目标计算机,生成的程序集位于项 ...
- IIS安装与MVC程序部署
最近在做访客系统,虽然说不是什么多大的项目,但麻雀虽小五脏俱全,使用EF Code First+Mysql+Frozenui响应式布局,感觉通过这个项目学到好多东西,Mysql的使用.EF映射Mysq ...
- ClickOnce的部署(.appref-ms)在软件限制策略中的解决方案
为了防止百度.360以及一些小厂商在妈妈的电脑里乱安装各种程序,在域中开启了软件限制策略. 今天在用Github的Windows客户端时发现由于软件限制策略无法运行. Github在Windows中采 ...
- winform/wpf 程序部署
(1):一些发布方式 ClickOnce是什么玩意儿,这个问题嘛,在21世纪的互联网严重发达的时代,估计也没有必要大费奏章去介绍了,弄不好的话,还有抄袭之嫌.因此,有关ClickOnce的介绍,各位朋 ...
- Socket编程指南及示例程序(转)
1 前言 在一些常用的编程技术中,Socket网络编程可以说是最简单的一种.而且Socket编程需要的基础知识很少,适合初学者学习网络编程.目前支持网络传输的技术.语言和工具繁多,但是 ...
- 将 Django 应用程序部署到生产服务器
原文出自: http://www.ibm.com/developerworks/cn/opensource/os-django/ 比较有启发性质的一篇文章,会避免很多弯路 Django 是一个基于 P ...
- 学习ASP.NET Core(11)-解决跨域问题与程序部署
上一篇我们介绍了系统日志与测试相关的内容并添加了相关的功能:本章我们将介绍跨域与程序部署相关的内容 一.跨域 1.跨域的概念 1.什么是跨域? 一个请求的URL由协议,域名,端口号组成,以百度的htt ...
- .net程序部署(mono方式)
某一次 我同事用了这个词 ,说这样才显得够专业 擦.把某某项目 部署到服务器上 .擦 不就是拷个文件过去运行么.月亮 还是绵羊 我搞不清楚了 咱英文不好,绵羊叫的声音?.你就叫我山寨程序猿 随意 一 ...
随机推荐
- Spring Cloud(2.0)能力大致列表
微服务九大特性 出自Martin Fowler的<Microservices> 服务组件化 按业务组织团队 做"产品"的态度 智能端点与哑管道 去中心化治理 去中心化管 ...
- 聊聊、Java Keytool P12 转 JKS
最近公司合作机构需要更改服务证书,总共给了 3 个文件过来.openapi-cert.p12.openapi-cert.key.openapi-cert.crt. openapi-cert.crt - ...
- Python的内存管理、命名规则、3个特性讲解
理解变量: 变:现实世界中的状态是会发生改变的 量:衡量/记录现实世界中的状态,让计算机能够像人一样去识别世间万物(例如:一个人的身高.体重等这些信息) 为什么要变量: 程序执行的本质就是一系列状态的 ...
- 理解Tomcat架构、启动流程及其性能优化
PS:but, it's bullshit ! 备注:实话说,从文档上扒拉的,文档地址:在每一个Tomcat安装目录下,会有一个webapps文件夹,里面有一个docs文件夹,点击index.html ...
- Dropbox面向第三方开发者推出全新的Datastore API
Dropbox今天推出了全新的高级的同步API,开发者可以使用Dropbox的技术同步跨设备app的数据. Datastore API在现有的Dropbox Sync API基础上进行了扩展,允许开发 ...
- iOS-----openGL--openGL ES iOS 入门篇3---> 纹理贴图(texture)
在这篇文章中,我们将学习如何在openGL中使用纹理贴图. penGL中纹理可以分为1D,2D和3D纹理,我们在绑定纹理对象的时候需要指定纹理的种类.由于本文将以一张图片为例,因此我们为我们的纹理对象 ...
- 学习 WebService 第一步:体系结构、三元素SOAP/WSDL/UDDI
原文地址:爱军的博客——WebService简介 一.为什么需要Web Service 笔记: WebService 可以实现 跨(硬件.服务器.开发工具.平台.应用程序.程序语言……)共享数据和应用 ...
- P1023 税收与补贴问题 (模拟)
题目链接 Solution 比较恶心的模拟题(主要是难看懂题意其实) 题意戳这里 然后根据一些简单的数学常识,可以知道这是一个二次函数. 所以我们每次枚举一个值,然后判定政府给出的价格是否是顶点即可. ...
- javaweb之Filter详解
一.概念:Filter也称之为过滤器,它是Servlet技术中比较激动人心的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或 ...
- Django自定义User模型和登录验证
用户表已存在(与其他App共用),不能再使用Django内置的User模型和默认的登录认证.但是还想使用Django的认证框架(真的很方便啊). 两个步骤: 1)自定义Use模型,为了区分系统的Use ...