开发者论坛

 找回密码
 注册 (请使用非IE浏览器)
查看: 132006|回复: 273

C#Winform程序实现软件自动更新-源码展示

  [复制链接]

0

精华

5

贡献

107

赞扬

帖子
44
软币
404
在线时间
31 小时
注册时间
2018-12-15
发表于 2019-11-18 17:46:46 | 显示全部楼层 |阅读模式
本帖最后由 zgm4617 于 2019-11-18 17:49 编辑

一、软件开发环境以及开发工具:
框架:.NET Framework 4.0
工具:Visual Studio 2017
插件:DevExpress 18.1.7
环境:IIS 7
二、实现步骤
(1)在项目中创建一个名为WinformAutoUpdate.APP的Winform窗体应用工程,并将默认的Form1.cs窗体文件重命名为MainFrm.cs作为主程序窗体

创建主程序窗体


(2)在项目中再创建一个名为AutoUpdateTask的Winform应用程序工程,并将默认的Form1.cs窗体文件重命名为AutoUpdateTaskFrm.cs作为更新程序窗体

创建更新程序窗体


(3)在更新程序窗体中放入图上所示的相关控件;
进度条控件用于显示更新进度,放入一个Button按钮控件用于用户根据提示进行操作!
实现思路:
1、将更新程序放入磁盘的目录下面,并将其放在已经发布了的IIS中
当用户在运行主程序窗体并点击左上角的更新按钮时,弹出程序更新窗体,并先自动从IIS中拉取updateList.xml文件,然后与本地程序作对比,检测是否需要升级软件;
如果有新版本发布,则点击“立即更新”按钮,程序将从IIS中拉取新发布的ZIP软件包,并自动解压到主程序目录中,覆盖主程序目录中的相关文件(这里值得注意的是,在解压程序之前,我们需要先结束主程序的进程,不然会因主程序进程正在使用而导致报错,另外,我们用到的插件是ICSharpCode.SharpZipLib.dll第三方动态链接库,网上有现成的,可以直接Down下来用);
2、点击“更新完成”按钮后,重启主程序


程序的实现代码如上面图片所示,本人几乎每行都加了注释,这里再不做详细介绍!本次程序的自动升级功能介绍完毕,可能肯定会有更好的实现方法,可在下方评论
源代码请在百度网盘中下载:链接: https://pan.baidu.com/s/1ouxG9tV2p7D_ZjftFQAOoQ   
游客,如果您要查看本帖隐藏内容请回复

评分

参与人数 4赞扬 +4 收起 理由
hussainzagzoug + 1
Michael.Qian + 1
我来拾豆豆 + 1 很给力
cctvfan90 + 1 赞一个

查看全部评分

回复

使用道具 举报

0

精华

0

贡献

34

赞扬

帖子
34
软币
421
在线时间
60 小时
注册时间
2019-9-4
发表于 2019-11-19 08:38:17 | 显示全部楼层
赶紧学习一下
回复

使用道具 举报

0

精华

0

贡献

240

赞扬

帖子
19
软币
914
在线时间
109 小时
注册时间
2019-9-17
发表于 2019-11-20 22:42:12 | 显示全部楼层
赶紧学习一下
回复

使用道具 举报

0

精华

0

贡献

428

赞扬

帖子
103
软币
3079
在线时间
347 小时
注册时间
2013-6-10
发表于 2019-11-21 15:13:31 | 显示全部楼层
感谢楼主分享!
回复

使用道具 举报

0

精华

601

贡献

95

赞扬

帖子
32
软币
432
在线时间
34 小时
注册时间
2018-11-6
发表于 2019-11-25 15:22:25 | 显示全部楼层
学习学习,学习学习
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
19
软币
134
在线时间
8 小时
注册时间
2017-6-12
发表于 2019-11-25 16:05:02 | 显示全部楼层
感谢楼主,学习了
回复

使用道具 举报

0

精华

-8

贡献

17

赞扬

帖子
38
软币
238
在线时间
18 小时
注册时间
2017-11-27
发表于 2019-11-26 09:53:42 | 显示全部楼层
感觉学习一下啊
回复

使用道具 举报

0

精华

0

贡献

56

赞扬

帖子
63
软币
458
在线时间
41 小时
注册时间
2015-4-22
发表于 2019-11-29 10:50:09 | 显示全部楼层
学习一下,谢谢
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
10
软币
161
在线时间
14 小时
注册时间
2019-9-21
发表于 2019-12-6 19:57:21 | 显示全部楼层
这个帖子很有帮助,但是为什么不直接用ClickOnce呢?
回复

使用道具 举报

0

精华

0

贡献

140

赞扬

帖子
133
软币
287
在线时间
15 小时
注册时间
2019-5-3
发表于 2019-12-8 05:19:48 | 显示全部楼层
非常牛逼,好好学习
回复

使用道具 举报

0

精华

-16

贡献

27

赞扬

帖子
27
软币
172
在线时间
11 小时
注册时间
2017-9-26
发表于 2019-12-11 13:44:54 | 显示全部楼层
赶紧学习一下
回复

使用道具 举报

0

精华

0

贡献

947

赞扬

帖子
88
软币
3077
在线时间
313 小时
注册时间
2017-5-17
发表于 2019-12-12 16:20:45 | 显示全部楼层
感谢楼主分享!
回复

使用道具 举报

0

精华

629

贡献

290

赞扬

帖子
62
软币
1282
在线时间
115 小时
注册时间
2017-9-26
发表于 2019-12-13 14:53:02 | 显示全部楼层
感谢楼主分享!学习学习
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
6
软币
186
在线时间
14 小时
注册时间
2019-10-21
发表于 2019-12-13 16:06:29 | 显示全部楼层
赞一个 非常需要这个 谢谢
回复

使用道具 举报

0

精华

153

贡献

5665

赞扬

正版授权组

Rank: 14Rank: 14Rank: 14Rank: 14

帖子
220
软币
12999
在线时间
2830 小时
注册时间
2013-8-15
发表于 2019-12-14 21:45:15 | 显示全部楼层
C#Winform程序实现软件自动更新-源码展示
回复

使用道具 举报

0

精华

595

贡献

196

赞扬

赞助者组

Rank: 14Rank: 14Rank: 14Rank: 14

帖子
95
软币
660
在线时间
64 小时
注册时间
2016-12-2
发表于 2019-12-15 15:07:22 | 显示全部楼层
赶紧学习一下
回复

使用道具 举报

0

精华

0

贡献

277

赞扬

帖子
184
软币
2067
在线时间
247 小时
注册时间
2014-4-22
发表于 2019-12-17 14:34:36 | 显示全部楼层
谢谢共享学习!
回复

使用道具 举报

0

精华

2

贡献

150

赞扬

帖子
131
软币
1220
在线时间
137 小时
注册时间
2014-12-29
发表于 2019-12-21 21:48:21 | 显示全部楼层
赶紧学习一下
回复

使用道具 举报

0

精华

0

贡献

220

赞扬

帖子
73
软币
1143
在线时间
126 小时
注册时间
2019-3-30
发表于 2019-12-25 22:39:57 | 显示全部楼层
学习一下自动更新
回复

使用道具 举报

0

精华

0

贡献

32

赞扬

帖子
63
软币
348
在线时间
23 小时
注册时间
2014-12-17
发表于 2019-12-27 16:52:11 | 显示全部楼层
ok  正需要
回复

使用道具 举报

0

精华

0

贡献

114

赞扬

帖子
59
软币
729
在线时间
70 小时
注册时间
2013-6-14
QQ
发表于 2019-12-27 23:26:48 | 显示全部楼层
感谢楼主,学习了
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
3
软币
98
在线时间
4 小时
注册时间
2019-4-28
发表于 2019-12-30 17:10:26 | 显示全部楼层
XUEXIEUXIE~~~~
回复

使用道具 举报

Archiver|手机版|小黑屋|开发者网 ( 苏ICP备08004430号-2 )
版权所有:南京韵文教育信息咨询有限公司

GMT+8, 2024-12-22 09:31

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表