ClickOnce部署 I - 应用程序发布

 在某个项目后期维护时,发现该项目是将CS程序发布到IIS上,以WEB访问方式,将代码修改后,编译后,发现自己不知道怎么更新到服务器上了,通过网上相关查阅,才知道这是ClickOnce部署。现做简单记录,以便今后查阅。

ClickOnce简介
    ClickOnce 部署使您可以将基于 Windows 的应用程序发布到 Web 服务器或网络文件共享以简化安装。Visual Studio 对通过 ClickOnce 部署的应用程序的发布和更新提供完全支持。ClickOnce 部署可用于使用 Visual Basic、Visual C# 和 Visual J# 创建的项目,但不能用于使用 Visual C++ 创建的项目。

ClickOnce的好处
    使用ClickOnce发布Windows应用程序可以使用户方便地更新应用程序,可以起到B/S的效果,当程序更新了不必每一个用户重新安装更新。程序发布者只需要把新版本放到服务器,程序使用者在启动软件或退出软件时即可更新软件。
    当然,要使安装过程更可视化、在安装过程加入更多操作则应该自己制作安装程序。

ClickOnce发布过程

1. 代码发布

打开"解决方案资源管理器",在项目节点上右击,从弹出的快捷菜单中选择【属性】,打开项目属性窗口,切换到"发布"选项卡。


  • 发布位置
也就是程序发布生成的文件存放在哪里。这些路径可以是URL、共享文件夹、本机绝对路径。
  • 安装URL 
也就是当用用户需要安装此软件时应该访问的路径,将在这里下载文件进行安装。这里路径必须是URL。此路径一般为服务器的IIS站点路径。例如你发布的程序存放在本机IIS站点http://localhost:8000/AnthorTest/。但发布后的程序要放到客户的服务器里,如果客户的服务器的IIS站点在局域网里的路径为http://192.168.1.174:8012/Setup 。则安装URL应该输入这路径。
当客户需要安装软件时,只需要访问此路径,点击“安装”后即会有安装的过程提示。
  • 安装模式和设置
一般选择“可以脱机使用”。否则必须与“更新路径”所在机器连通才能使用软件。
  • 发布版本
发布版本号,勾选"随每次发布自动递增修订号"。这样一来,我们既可以自己填写版本号,如果忘记修改,也可以自动更新。

2. 应用程序文件

这里罗列了发布程序时,将包括(发布)的文件。
注意:VS的此功能并不十分完善,如果程序引用了OFFICE组件,它会把stdole.dll、Office.dll以及Microsoft.Vbe.Interop.dll作为系统必备,当在客户机安装时就有可能出现的版本不同的错误(因为安装的office版本不同,而这一般不影响程序使用),此时,你应该把这些DLL的“发布状态”更改为“包括”,这样就不会出再错误。




3. 系统必备

主要选择软件在安装时将自动安装的组件。开发者可以根据开发所用到的组件进行选择。例如使用了水晶报表,则应该把“水晶报表查看器”组件选上。
还有需要注意的是,为了使用客户安装软件时更方便,一般选择“从与我的应用程序相同的位置下载系统必备组件”。这样,安装程序的相同路径下将包括这些组件。当客户安装软件时,如果计算没有必备的组件,将从这些路径下载组件进行安装。




4.更新

这里是程序的更新选项。开发者可根据需要选择。
选择ClickOnce更新策略
设计 ClickOnce 应用程序时,需要确定应用程序将使用何种策略来检查可用的更新。有三种基本策略可以使用:在应用程序启动时检查更新、在应用程序启动后检查更新(在后台线程中运行)或是提供进行更新的用户界面。此外,还可以确定应用程序检查更新的时间间隔,并且可以强制必须执行更新。




注意:如果“更新路径”和“安装路径”不同,则在“更新路径”所在的机器要作同样的配置。这两个路径一般相同,如有不同开发人员将与部署人员协商一致。

5.发布选项

在这里可以设置一些高级的选项或输入一些高级信息。如选择“发布语言”等。
发布路径有可能选择在本机,而服务器部署并不一定在本机,例如在开发者的机器发布,而需要把文件拷贝到客户的服务器进行部署,这要求“发布路径”与“安装路径”、“更新路径”不同外,最好此时把“验证上载到Web服务器的文件”这项的选定取消,因为“安装路径”和“更新路径”很有可能不存在,如果取消此项的选定,会大大加快发布速度。
同时,也可以把“部署网页”改成不是“publish.html”。这也可以在一定程序度上防此别人恶意访问网站。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值