示例#1
0
        private static List<string> CheckFile(ConfigInfo config)
        {
            List<string> newFileNames = new List<string>();
            foreach (var assInfo in config.AssemblyInfos)
            {
                string fileName = assInfo.FileName;
                FileInfo rFileinfo = new FileInfo(config.BaseUrl + fileName);
                FileInfo lFileInfo = new FileInfo(fileName);
                if (!rFileinfo.Exists)
                {
                    try
                    {
                        File.Delete(assInfo.FileName);
                        File.Delete(assInfo.FileName.ToUpper().Replace("ZIP", "DLL"));
                        File.Delete(assInfo.FileName.Replace("ZIP", "EXE"));
                    }
                    catch (Exception ex)
                    {

                    }
                }
                if (!lFileInfo.Exists || lFileInfo.LastWriteTime < rFileinfo.LastWriteTime)
                {
                    try
                    {
                        newFileNames.Add(assInfo.FileName);
                        rFileinfo.CopyTo(assInfo.FileName, true);
                    }
                    catch (Exception ex)
                    {
                    }
                }
            }
            return newFileNames;
        }
示例#2
0
 public static void RunFiles(ConfigInfo configInfo)
 {
     foreach (var assInfo in configInfo.AssemblyInfos)
     {
         if (assInfo.IsEntry)
         {
             RunExeFile(assInfo.FileName);
         }
         else
         {
             ExecuteDLLFile(assInfo.FileName);
         }
     }
 }
示例#3
0
 /// <summary>
 /// 检查更新新文件
 /// </summary>
 /// <param name="configInfo"></param>
 public static void CheckUpdate(ConfigInfo configInfo)
 {
     string targetDirectory = Directory.GetCurrentDirectory();
     List<string> newFileNames = CheckFile(configInfo);
     newFileNames.ForEach(fileName =>
     {
         try
         {
             Unpackage(fileName, targetDirectory);
             Console.WriteLine(string.Format("更新文件:{0}",fileName));
         }
         catch (Exception ex)
         {
         }
     });
 }
示例#4
0
 public static ConfigInfo GetConfigInfo()
 {
     ConfigInfo configInfo = new ConfigInfo
     {
         BaseUrl = @"E:\WorkSpace\Sample\Packges\",
         AssemblyInfos = new List<AssemblyInfo>
         {
             new AssemblyInfo
             {
                 FileName = "multiplication table.zip",
                 IsEntry = true
             },
             new AssemblyInfo
             {
                 FileName = "MyCore.zip"
             }
         }
     };
     return configInfo;
 }
示例#5
0
        public static ConfigInfo GetConfigInfo()
        {
            ConfigInfo configInfo = new ConfigInfo
            {
                BaseUrl       = @"E:\WorkSpace\Sample\Packges\",
                AssemblyInfos = new List <AssemblyInfo>
                {
                    new AssemblyInfo
                    {
                        FileName = "multiplication table.zip",
                        IsEntry  = true
                    },
                    new AssemblyInfo
                    {
                        FileName = "MyCore.zip"
                    }
                }
            };

            return(configInfo);
        }