C#Winform实现自动更新

服务端:

  [WebMethod]
        public string GetNewService(string version)
        {
            //通过版本号进行比较
            if (version == "v1.0")
            {
                return "没有新版本!";
            }
            else
            {
                return @"E:\QMDownload\CashTest.exe"; //返回一个地址,这个里面存有新版本!
            }
        }
View Code

 

客户端:

  //自动更新开始
            Juran.CenterCash.WebService.UpdateService.WebService server = new WebService.UpdateService.WebService();
            string path = server.GetNewService("v1.x");
            if (path == "没有新版本!")
            {
            }
            else
            {
                try
                {
                    WebClient wClient = new WebClient();
                    wClient.DownloadFile(path, "D:\\1.exe"); //下载服务器的文件到本地,取名为1.exe
                    Process pro = new Process();
                    string fileName = @"D:\\1.exe";
                    string para = "";
                    ProcessStartInfo myProcessStartInfo = new ProcessStartInfo(fileName, para);
                    pro.StartInfo = myProcessStartInfo;
                    pro.Start();
                    while (!pro.HasExited)
                    {
                        pro.WaitForExit();
                    }

                    int returnValue = pro.ExitCode;
                    if (returnValue == 0)
                    {
                        MessageBox.Show("更新成功,请启动程序!");
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }
            //自动更新结束
View Code

 

转载于:https://www.cnblogs.com/hometown/p/4630640.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、软件开发环境以及开发工具: 框架:.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下来用);

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值