• Auto Updating the exe from a network location when application starts z


    http://www.codeproject.com/Tips/869588/Auto-Updating-the-exe-from-a-network-location-when?msg=4992189#xx4992189xx

    Using the code

    I wrote a simple console application in c# to accomplish this task

    In the Program.cs itself I wrote the code to check updates and then executed the updated application

    using System.Collections.Generic;
    using System.Diagnostics;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    namespace ShipitIntro
    {
        class Program
        {
            static void Main(string[] args)
            {
             //updatepath is the location where I upload updated exe 
                string UpdatePath = @"\testserverArtship itShipit.exe";
              //applocation is the location from where this console app runs.It will also be the location where the new file will be saved 
                string AppLocation = Directory.GetCurrentDirectory() + @"shipit.exe";
              
              
              
                try
                {
                    FileInfo info1 = null;
                    FileInfo info2 = null;
                    if (File.Exists(UpdatePath))
                    {
                  //If there is a file in the update location info1 will get the fileinfo of that file 
                        info1 = new FileInfo(UpdatePath);
                    }
    
                    if (File.Exists(AppLocation))
                    {
    //if the exe is already present in the aplocation get its information also
                        info2 = new FileInfo(AppLocation);
    
                    }
                    else
                    {
                        File.Copy(UpdatePath, AppLocation, true);
                        ExecuteApp(AppLocation);
                        return;
                    }
                    if (info1.LastWriteTime > info2.LastWriteTime)
                    {
                        File.Copy(UpdatePath, AppLocation, true);
                    }
    
                }
                catch (Exception ex)
                {
                    Debug.WriteLine(ex.Message);
                }
                ExecuteApp(AppLocation);
    
            }
            static void ExecuteApp(string location)
            {
                if (File.Exists(location))
                {
                    try
                    {
                        Process.Start(location);
                    }
                    catch (Exception ex)
                    {
                        Debug.WriteLine(ex.Message); return;
                    }
                }
                else
                {
                   
                }
            }
           
        }
    }

     The  function executeApp() will help in starting the exe from the location .thus it makes sure that the user always use the latest exe

  • 相关阅读:
    [译]微服务-Martin Fowler(转)
    SpringBoot注解最全详解(整合超详细版本)(转)
    操作系统中的句柄是什么?(转)
    用户态和核心态(转)
    进程、线程、协程(转)
    IO中同步与异步,阻塞与非阻塞区别(转)
    HTML5常见的取值与单位
    C++实现词法分析器
    用C语言编写一个简单的词法分析程序
    Java面向对象详解
  • 原文地址:https://www.cnblogs.com/zeroone/p/4281951.html
Copyright © 2020-2023  润新知