一、软件开发环境以及开发工具:
框架:.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下来用);
1