C# ClickOnce部署WinForm程序
之前做过ClickOnce部署应用程序的项目,今天做一次全面的总结。那么这些都是微软提供方便分布式部署的相关解决方法,这种方法既有弊端,也有优点。
最大的缺点:
远程部署,不能更换安装目录;并且每次安装或更新都是C盘"C:\Documents and Settings\Administrator\Local Settings\Apps\2.0" 的路径。
较好的优点:
远程部署很方便,可维护性强,简单可靠。
下面讲讲如何ClickOnce部署您的应用程序:
一、发布前,设置属性选项
右键点击您的Windows Application,选择“属性”,点击“发布”选项页。填写要发布的本地路径和安装文件夹的路径(一般是URL),如下图所示:

点击“应用程序文件(I)...”按钮,选择下载时,是否必须下载项,弹出如下窗体所示:

下载时,是否包括该文件哈希值,弹出如下窗体所示:

点击“系统必备(Q)...”按钮,弹出如下窗体:

点击“更新(U)...”按钮,弹出如下窗体:

点击“选项(S)...”按钮,弹出如下窗体,选择“说明”选项,可以填写关于该软件的发布参数。

点击“部署”选项,可以填写设置安装的部署网页,如下图所示:

设置上述步骤完成后,可以点击下图“发布向导(Z)...”或“立即发布(N)”按钮,发布我们的程序,如下图:

下面我们看看“D:\tmp\Set\”路径下生成了什么,如下图所示:

打开“Application Files”文件夹看看里面有什么,如下图所示:

下图是生成目录下的文件列表:

二、部署我们的应用程序
我们以IIS7服务器来做设置,打开IIS7,右键点击“网站”-〉“添加网站”,如下图所示:

启动我们的网站:

三、ClickOnce部署我们的程序
打开IE浏览器,输入“http://127.0.0.1/rfid.htm”网址,如下所示:

点击“安装”按钮,出现下图:


出现上述错误,经过检查是路径不对。现在我们在rfid.htm同目录下新建一个“rfid”文件夹,把rfid.htm同目录下的Application Files文件夹、xxx.apllication和setup.msi文件拷贝到rfid目录下。现在我们重试一下。

点击“安装”按钮,进行安装,下图所示:

安装完成后,自动启动应用程序,如下图:

四、升级我们的应用程序
如果我们的程序更新,当启动我们的客户端应用程序时,出现如下更新进度条:


点击“确定”按钮,进行更新程序。程序更新完毕,自动启动我们的客户端应用程序。
自此,我们的ClickOnce部署程序讲完了,是不是很简单啊?那大家就试试吧。
原文地址:http://swanmsg.blog.sohu.com/162994305.html
C# ClickOnce部署WinForm程序的更多相关文章
- 转:ClickOnce部署Winform程序的方方面面
1. ClickOnce简介 微软官方对ClickOnce的解释是:ClickOnce 是一项部署技术,您可以利用这项技术来创建基于 Windows 的自行更新的应用程序,并且安装和运行这类应用程序所 ...
- 【转】ClickOnce部署Winform程序的方方面面
源地址:http://www.cnblogs.com/parry/archive/2012/10/30/ClickOnce_Winform_Deployment.html
- ClickOnce部署winform
1.完成winform程序. 示例: 2.项目->属性->发布. 有关ftp在iis中的配置,请参考:IIS中添加ftp站点 :url也需在iis中配置.flashfxp中显示ftp成功 ...
- VS2012打包部署Winform程序
打包前的准备工作: 新建一个打包部署项目,点OK,如果是第一次使用的话,会打开一个网页,按照提示的步骤来做, 点击上面的step2的网址,进入到另一个网页: 填写完右边的信息,点击“download ...
- ClickOnce部署疑难杂症:更新时部署与应用程序标识不一致问题。要安装此应用程序,请修改此文件的清单版本或卸载之前存在的应用程序。
使用ClickOnce部署winform应用程序.无论是安装或者自动更新都极为方便,但有时候一些疑难杂症也令人头疼 1.注意每次部署完成之后 setup.exe无需覆盖,只需要在Application ...
- Winform程序部署方式总结一——ClickOnce发布
针对Winform程序,介绍两种常用打包方式:ClickOnce和Windows Installer 应用程序如下: 一.ClickOnce发布 1.找到需要发布的项目文件,右击,从弹出的快捷菜单中找 ...
- 获取使用ClickOnce部署的应用程序的版本号
引子 在编写使用ClickOnce部署的应用程序时,需要在程序的标题栏.软件变更记录.软件关于等页面读取显示当前的版本号. 之前很傻瓜的做法就是在Resource中维护一个string值,在使用到的地 ...
- 以管理员身份启动ClickOnce部署的应用程序
ClickOnce方式部署应用简单方便,估计很多人都用过,但这种方式存在一定的“缺陷”,即以管理员方式启动应用的问题,虽然出于安全考虑可以理解,但给需要管理员权限才能正常运行的程序带来了一定的麻烦,这 ...
- 为通过ClickOnce部署的应用程序进行数字签名
为通过ClickOnce部署的应用程序进行数字签名 ClickOnce是.NET用于Windows应用程序的一种便捷部署方式.不过由于便捷,导致缺少自定义操作的空间.比如需要对通过ClickOnce部 ...
随机推荐
- MySQL 字符串 分割 多列
mysql如何进行以,分割的字符串的拆分 - 我有一个梦想 - CSDN博客https://blog.csdn.net/u012009613/article/details/52770567 mysq ...
- 接口请求,上传byte数组byte[]数据异常,负数变正数/负数变63
一.背景 最近项目中有个需求,就是需要把一个byte[]数组上传到服务端.但是我发现发送的byte数组和服务端接收的数组不一样,所有的正数在传递时正确,数组长度也没变化,但是负数变成了63或者负数全部 ...
- js 实现的页面图片放大器以及 event中的诸多 x
背景: 淘宝.天猫等电商网站浏览图片时可以查看大图的功能: 思路: 思路很简单,两张图片,一张较小渲染在页面上,一张较大是细节图,随鼠标事件调整它的 left & top; 需要的知识点: o ...
- ADT SDK Manager启动时一闪而过
原因为使用了Android Studio的绿色JRE,必须要安装安装版JDK或者JRE,绿色版JRE放在ADT目录虽然能启动ADT但是不能启动SDK Manager
- 作业二:分布式版本控制系统Git的安装与使用
作业要求来自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 1.下载安装配置用户名和邮箱. (1)下载安装Github配置 ...
- WebView 安全之 addJavascriptInterface
WebView是Android平台下的一个重要组件,通常用来在Activity中嵌入一个简单的浏览器,实现在线网页浏览的功能.比如下面代码实现访问Google页面: WebView webView = ...
- [转载:Q1mi]Bootstrap和基于Bootstrap的登录验证示例
转载自:Q1mi Bootstrap介绍 Bootstrap是Twitter开源的基于HTML.CSS.JavaScript的前端框架. 它是为实现快速开发Web应用程序而设计的一套前端工具包. 它支 ...
- 「CF1154F」Shovels Shop【背包DP】
题目链接 [洛谷传送门] 题解 非常简单的背包. \(f[i]\)表示购买\(i\)个物品所需要最少的花费. 不考虑免费的限制条件,那么一定是选择前\(k\)个双鞋子. 那么加入免费的条件,那么还是要 ...
- Django分布式任务队列celery的实践
不使用数据库作为 Broker Broker 的选择大致有消息队列和数据库两种,这里建议尽量避免使用数据库作为 Broker,除非你的业务系统足够简单.在并发量很高的复杂系统中,大量 Workers ...
- 第三十九篇-RecyclerView的使用
RecyclerView介绍 RecyclerView的出现可以替代ListView,并且比ListView更高级且更具灵活性.如果有数据集合,其中的元素将因用户操作或网络事件而在运行时发生改变,请使 ...