private static void fswGZPED_Created(object sender, FileSystemEventArgs e) { var gzfile = new FileInfo(e.FullPath); const int NumberOfRetries = 3000; const int DelayOnRetry = 10; for (var i = 1; i <= NumberOfRetries; ++i) { try { Unzip.Start(gzfile); File.Delete(e.FullPath); break; } catch (IOException) { if (i == NumberOfRetries) { throw; } Thread.Sleep(DelayOnRetry); } } }
private static void UnzipAndBackup(string fullpath, string filename) { var gzfile = new FileInfo(fullpath); Unzip.Start(gzfile); if (!Directory.Exists(DIR_ZIP_FOLDER)) { Directory.CreateDirectory(DIR_ZIP_FOLDER); } if (File.Exists(DIR_ZIP_FOLDER + filename)) { File.Delete(DIR_ZIP_FOLDER + filename); } File.Move(fullpath, DIR_ZIP_FOLDER + filename); }