private void Form1_Load(object sender, EventArgs e) { if (copylist.Count <= 0) { this.Close(); return; } letdo = async_status; letdo.BeginInvoke("正在分析需要备份的文件***", null, null); for (int i = 0; i < copylist.Count; i++) { Update_File uf = copylist[i] as Update_File; string url = servicespath + uf.Fileurl; FileInfo fi = null; fi = new FileInfo(url); if (fi.Exists) { TotalSize += (int)fi.Length; letdo.BeginInvoke("INFO:文件正常!将被覆盖。" + url, null, null); baklist.Add(url); } else { letdo.BeginInvoke("WARNING:文件不存在!将以更新包内文件插入。" + url, null, null); } } letdo.BeginInvoke("INFO:检查完毕,总共需要备份" + baklist.Count + "个文件,总共大小" + TotalSize, null, null); letdo.BeginInvoke("INFO:开始备份", null, null); this.progressBar1.Minimum = 0; this.progressBar1.Maximum = TotalSize; copyCircle(); }
private void Form1_Load(object sender, EventArgs e) { if (copylist.Count <= 0) { this.Close(); return; } letdo = async_status; letdo.BeginInvoke("正在检查需要打包的文件***", null, null); for (int i = 0; i < copylist.Count; i++) { FileInfo fi = null; fi = new FileInfo(this.frompath + copylist[i] as string); if (fi.Exists) { TotalSize += (int)fi.Length; } //有可能是一个空文件夹 else if (Directory.Exists(this.frompath + copylist[i] as string)) { NullFileFolderlist.Add(copylist[i] as string); copylist.RemoveAt(i); } else { copylist.RemoveAt(i); letdo.BeginInvoke("ERROR:文件" + copylist[i] as string + "不存在", null, null); } } letdo.BeginInvoke("INFO:检查完毕,总共需要打包" + copylist.Count + "个文件,总共大小" + TotalSize, null, null); letdo.BeginInvoke("INFO:开始打包", null, null); this.progressBar1.Minimum = 0; this.progressBar1.Maximum = TotalSize; //为空文件夹创建文件夹,及复制 for (int i = 0; i < NullFileFolderlist.Count; i++) { AutoCreateFolder(System.Environment.CurrentDirectory + @"\" + GobalParameters.UpdateFolder + NullFileFolderlist[i]); } copyCircle(); }