public static string BackupFile(string file) { bool flag = false; string backupFile = VmcStudioUtil.GetBackupFile(file); if (!File.Exists(backupFile)) { Trace.TraceInformation("No backup of {0} exists, creating {1}.", (object)file, (object)backupFile); flag = true; } else { string fileVersion1 = VmcStudioUtil.GetFileVersion(backupFile); string fileVersion2 = VmcStudioUtil.GetFileVersion(file); if (fileVersion1 != fileVersion2) { Trace.TraceInformation("Version of {0} has changed ({1} to {2}), refreshing backup file {3}.", (object)file, (object)fileVersion1, (object)fileVersion2, (object)backupFile); VmcStudioUtil.TakeOwnership(backupFile); flag = true; } } if (flag) { Directory.CreateDirectory(Path.GetDirectoryName(backupFile)); File.Copy(file, backupFile, true); } return(backupFile); }
public static bool RestoreModifiedFiles() { if (!VmcStudioUtil.EnsureMediaCenterClosed(true)) { return(false); } VmcStudioUtil.Application.CommonResources.CloseResources(); try { foreach (string str in Directory.GetFiles(MediaCenterUtil.MediaCenterPath)) { string backupFile = VmcStudioUtil.GetBackupFile(str); if (File.Exists(backupFile)) { File.Copy(backupFile, str, true); } } } finally { VmcStudioUtil.Application.CommonResources.ResetResources(); } return(true); }