예제 #1
0
 public void SaveRegistryChanges()
 {
     SetupRegistryHive.UnloadHive(true);
     if (IsTargetContainsTemporaryInstallation)
     {
         FileSystemUtils.ClearReadOnlyAttribute(BootDirectory + SetupRegistryHiveFile.FileName);
         try
         {
             ProgramUtils.CopyCriticalFile(SetupDirectory + SetupRegistryHiveFile.FileName,
                                           BootDirectory + SetupRegistryHiveFile.FileName);
         }
         catch
         {
             Console.WriteLine("Error: failed to copy '{0}' to '{1}' (setup boot folder)", SetupRegistryHiveFile.FileName,
                               BootDirectory);
             Program.Exit();
         }
     }
 }