分享
 
 
 

在VS.NET 2005中体验clickonce技术

王朝c#·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

做为程序员,我们经常要面对的是对开发模式的选择,比如C/S模式和b/s模式。现在,很多人都似乎比较喜欢选择B/S模式进行web的开发,这其中的原因是很多的。但其中一点很重要的原因,那就是因为B/S开发的话,部署非常之容易,因为这样很容易实现"瘦客户端",客户端只需要使用浏览器就可以运行应用了。但B/S模式下开发的WEB应用,也有其不足之处,主要是由于功能实现起来,是没办法和传统的C/S模式下的winform应用相比的,很多winform下要实现的优秀功能,在Web上都很难实现,或者说有的根本没办法实现。但传统的winform,在部署上也有自己的困难之处,如果客户端多的话,每次部署和版本升级都十分麻烦。

在.net 2.0里,微软新推出了一项叫clickonce(一次点击)的应用程序部署技术,可以很好的解决上面的这个矛盾。在vs.net 2005 beat 2中,已经整合了clickonce的技术,使到用户可以很方便地部署WINFORM开发的程序,很容易地管理其升级部署。本文,将一步步介绍在vs.net 2005中,如何使用clickonce技术来部署windows应用程序。

clickonce能带给我们什么

首先,通过clickonce技术,我们可以实现如下的部署方式:

1) 在设计完winform程序后,可以选择将程序发布到如下的存贮位置:文件系统,本地的Web服务器,FTP站点,远程Web站点。

2) 当应用程序部署到相应的位置后,用户可以通过浏览器浏览一个叫publish.htm的文件,点击下载的链接,将应用程序下载到本机安装。这个publish.htm是部署应用程序的一个入口文件,在下文会继续讨论。

3) 当用户安装完程序后,会自动产生快捷方式到桌面,并且在控制面版的增加删除中会找到该程序。

4) 当用户启动程序时,系统可以首先去检查服务端是否有新的程序版本,如果有的话,则会自动连接服务端,查看是否有新的版本,如果有新的版本的话,则自动下载新的版本到本机并安装

一个简单的clickonce程序部署的例子

首先,我们打开visual studio 2005 beta 2,用C#建立一个叫clickoncedemo的windows应用程序。之后拖放一个按钮到窗体中,在该按钮的click事件中写入如下代码:

private void btnClick_Click(object sender, EventArgs e)

{

MessageBox.Show(System.Reflection.Assembly.GetExecutingAssembly().Location);

}

当运行上面的程序,系统会输出当前应用程序所在的位置,如下图所示:

接下来,我们可以对其进行发布了。我们首先看下在vs.net 2005中,其中的发布选项卡是怎么样的。鼠标右击clickoncedemo工程,选其中的"properties"属性菜单,如下图所示

上图是项目的属性页,其中有许多选项。我们着重介绍其中的"publish"发布选项卡的配置。在最上面的"publish location"选项框中,允许你指定将项目发布的位置。可以点旁边的"…"按钮,进一步浏览确定发布的位置,如下图:

这里,我们可以设定项目要发布的位置,比如文件系统,本地服务器,FTP站点,远程站点等。

接着,我们在"install mode and setting"选项组中,可以点选"Prerequisites..."按钮,这里可以设置要运行该应用程序时,需要额外安装的库文件或其他必须的文件,如下图所示。默认必须安装的是.net framework 2.0。

同时,我们可以选择"install mode and setting"选项卡中的update选项,这个选项卡如下图所示:

其中,默认是采用启动应用程序时检查更新的选项的。当然,你也可以选择,是在应用程序连接上网时自动检查是否有更新的版本,或者是选择当应用程序启动后,以后台进程的方式,自动检查是否有新的版本。

最后,我们选择"installl mode and setting"选项卡中的"options"选项卡,如下图,填入一些关于应用程序的信息。

最后,我们已经设置完毕,可以开始进行部署了。我们使用其中的"publish wizard"发布向导进行发布。首先选定要发布的位置,如下图所示:

点"NEXT"后,出现如下图,这里,可以选择你的应用是在离线或是可以同时运行在离线和在线状态下的

当应用是可以在在线或者离线状态下都可以运行时,发布成功后,应用程序可以在桌面出现快捷方式。当应用程序只能在在线状态下运行时,应用程序只能通过发布页面通过浏览器执行。

最后再选NEXT后,就成功完成了发布了,系统并自动打开IE浏览器,转到publish的页面。我们先来看下,在该应用程序发布到的目的目录下,我们会发现有如下图的文件。

现在我们可以看到我们已经成功将clickoncedemo应用程序发布到当前IIS的根目录下了(d:\inetpub\wwwroot\clickoncedemo),版本是1.0.0.0,并且带了dotnetframework的安装包。而通过浏览器,可以看到如下的安装部署窗口:

此时,按INSTALL CLICKONCEDEMO的链接,就可以进行安装了,IE会打开如下窗口以提示你,目前正在下载一个应用程序安装

此时,选INSTALL就可以进行安装了。

总结

在vs.net 2005中,对winform应用程序的安装部署更加方便了,是采用了所谓的smartclient的方式实现的,使的winform的应用程序也可以通过IE进行部署,并且可以很容易的获得应用程序最新的版本。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有