Selaa lähdekoodia

Maintenance v16.7 update

deadmoon 9 kuukautta sitten
vanhempi
sitoutus
46e056f6a9
43 muutettua tiedostoa jossa 5284 lisäystä ja 5370 poistoa
  1. 1 0
      AUTOMATION.md
  2. 5 0
      CHANGELOG.md
  3. 5179 5357
      Optimizer/Forms/MainForm.Designer.cs
  4. 26 5
      Optimizer/Forms/MainForm.cs
  5. 1 1
      Optimizer/Forms/MainForm.resx
  6. 1 0
      Optimizer/Models/Options.cs
  7. 3 0
      Optimizer/Models/SilentConfig.cs
  8. 18 0
      Optimizer/OptimizeHelper.cs
  9. 1 0
      Optimizer/OptionsHelper.cs
  10. 1 1
      Optimizer/Program.cs
  11. 2 1
      Optimizer/Resources/i18n/AR.json
  12. 1 0
      Optimizer/Resources/i18n/BG.json
  13. 1 0
      Optimizer/Resources/i18n/CN.json
  14. 1 0
      Optimizer/Resources/i18n/CZ.json
  15. 1 0
      Optimizer/Resources/i18n/DE.json
  16. 1 0
      Optimizer/Resources/i18n/EL.json
  17. 2 1
      Optimizer/Resources/i18n/EN.json
  18. 1 0
      Optimizer/Resources/i18n/ES.json
  19. 1 0
      Optimizer/Resources/i18n/FA.json
  20. 1 0
      Optimizer/Resources/i18n/FR.json
  21. 1 0
      Optimizer/Resources/i18n/HR.json
  22. 1 0
      Optimizer/Resources/i18n/HU.json
  23. 1 0
      Optimizer/Resources/i18n/ID.json
  24. 1 0
      Optimizer/Resources/i18n/IT.json
  25. 1 0
      Optimizer/Resources/i18n/JA.json
  26. 1 0
      Optimizer/Resources/i18n/KO.json
  27. 1 0
      Optimizer/Resources/i18n/KU.json
  28. 1 0
      Optimizer/Resources/i18n/NE.json
  29. 1 0
      Optimizer/Resources/i18n/NL.json
  30. 1 0
      Optimizer/Resources/i18n/PL.json
  31. 1 0
      Optimizer/Resources/i18n/PT.json
  32. 1 0
      Optimizer/Resources/i18n/RO.json
  33. 1 0
      Optimizer/Resources/i18n/RU.json
  34. 1 0
      Optimizer/Resources/i18n/TR.json
  35. 1 0
      Optimizer/Resources/i18n/TW.json
  36. 1 0
      Optimizer/Resources/i18n/UA.json
  37. 1 0
      Optimizer/Resources/i18n/UR.json
  38. 1 0
      Optimizer/Resources/i18n/VN.json
  39. 12 0
      Optimizer/SilentOps.cs
  40. 3 3
      README.md
  41. 1 0
      templates/template-windows10.json
  42. 1 0
      templates/template-windows11.json
  43. 1 1
      version.txt

+ 1 - 0
AUTOMATION.md

@@ -93,6 +93,7 @@ To automate a range of operations using a provided template, follow these steps:
 - `UnlockAllCores`: Leave `null` or `false`.
 - `DisableHPET`: Enable or disable High Precision Event Timer.
 - `EnableLoginVerbose`: Enable or disable Detailed Login Screen.
+- `EnableRegistryBackups`: Enable periodic backups of Registry.
 
 #### SvchostProcessSplitting
 - Mark `true` to reduce svchost.exe processes for optimal memory.

+ 5 - 0
CHANGELOG.md

@@ -1,3 +1,8 @@
+## [16.7] - 2024-08-18
+- New: Disable Edge and Chrome telemetry options now extends Manifest v2 support
+- New: Enable Registry Periodic Backups
+- Hotfix: Various UI bugs
+
 ## [16.6] - 2024-07-06
 - New: System Variables editor in Integrator
 - New: Disable Copilot + Recall feature

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 5179 - 5357
Optimizer/Forms/MainForm.Designer.cs


+ 26 - 5
Optimizer/Forms/MainForm.cs

@@ -111,6 +111,11 @@ namespace Optimizer
         bool _disableIntegrator;
         bool _disablePinger;
 
+        private int GetItemPadding()
+        {
+            return Program.DPI_PREFERENCE / 2;
+        }
+
         private string NewDownloadLink(string latestVersion)
         {
             return string.Format("https://github.com/hellzerg/optimizer/releases/download/{0}/Optimizer-{0}.exe", latestVersion);
@@ -293,6 +298,7 @@ namespace Optimizer
             modernStandbySw.ToggleClicked += ModernStandbySw_ToggleClicked;
             newsInterestsSw.ToggleClicked += NewsInterestsSw_ToggleClicked;
             enableUtcSw.ToggleClicked += EnableUtcSw_ToggleClicked;
+            regBackupSw.ToggleClicked += RegBackupSw_ToggleClicked;
 
             PMB.ToggleClicked += PMB_ToggleClicked;
             SSB.ToggleClicked += SSB_ToggleClicked;
@@ -303,6 +309,19 @@ namespace Optimizer
             AddOwnerB.ToggleClicked += AddOwnerB_ToggleClicked;
         }
 
+        private void RegBackupSw_ToggleClicked(object sender, EventArgs e)
+        {
+            if (regBackupSw.ToggleChecked)
+            {
+                OptimizeHelper.EnablePeriodicRegistryBackup();
+            }
+            else
+            {
+                OptimizeHelper.DisablePeriodicRegistryBackup();
+            }
+            OptionsHelper.CurrentOptions.EnableRegistryBackups = regBackupSw.ToggleChecked;
+        }
+
         private void EnableUtcSw_ToggleClicked(object sender, EventArgs e)
         {
             if (enableUtcSw.ToggleChecked)
@@ -804,6 +823,7 @@ namespace Optimizer
                 hideSearchSw.Label.Tag = OptionsHelper.TranslationList["hideSearchSw"].ToString();
                 newsInterestsSw.Label.Tag = OptionsHelper.TranslationList["newsInterestsSw"].ToString();
                 enableUtcSw.Label.Tag = OptionsHelper.TranslationList["enableUtcSw"].ToString();
+                regBackupSw.Label.Tag = OptionsHelper.TranslationList["regBackupSw"].ToString();
             }
             catch (Exception err)
             {
@@ -2340,19 +2360,19 @@ namespace Optimizer
                             switch (x.Group)
                             {
                                 case "SystemTools":
-                                    appCard.Location = new Point(0, groupSystemTools.Controls.Count * (Program.DPI_PREFERENCE / 3));
+                                    appCard.Location = new Point(0, groupSystemTools.Controls.Count * GetItemPadding());
                                     groupSystemTools.Controls.Add(appCard);
                                     break;
                                 case "Internet":
-                                    appCard.Location = new Point(0, groupInternet.Controls.Count * (Program.DPI_PREFERENCE / 3));
+                                    appCard.Location = new Point(0, groupInternet.Controls.Count * GetItemPadding());
                                     groupInternet.Controls.Add(appCard);
                                     break;
                                 case "Coding":
-                                    appCard.Location = new Point(0, groupCoding.Controls.Count * (Program.DPI_PREFERENCE / 3));
+                                    appCard.Location = new Point(0, groupCoding.Controls.Count * GetItemPadding());
                                     groupCoding.Controls.Add(appCard);
                                     break;
                                 case "GraphicsSound":
-                                    appCard.Location = new Point(0, groupSoundVideo.Controls.Count * (Program.DPI_PREFERENCE / 3));
+                                    appCard.Location = new Point(0, groupSoundVideo.Controls.Count * GetItemPadding());
                                     groupSoundVideo.Controls.Add(appCard);
                                     break;
                                 default:
@@ -2489,6 +2509,7 @@ namespace Optimizer
         {
             hpetSw.ToggleChecked = OptionsHelper.CurrentOptions.DisableHPET;
             loginVerboseSw.ToggleChecked = OptionsHelper.CurrentOptions.EnableLoginVerbose;
+            regBackupSw.ToggleChecked = OptionsHelper.CurrentOptions.EnableRegistryBackups;
         }
 
         private void LoadUniversalToggleStates()
@@ -2697,7 +2718,7 @@ namespace Optimizer
                     }
                 }
 
-                appCard.Location = new Point(0, panelUwp.Controls.Count * (Program.DPI_PREFERENCE / 3));
+                appCard.Location = new Point(0, panelUwp.Controls.Count * GetItemPadding());
                 panelUwp.Controls.Add(appCard);
             }
 

+ 1 - 1
Optimizer/Forms/MainForm.resx

@@ -761,7 +761,7 @@ any application only by typing your desired keyword.</value>
         AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
         LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
         ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC0
-        GgAAAk1TRnQBSQFMAgEBCQEAASABEAEgARABIAEAASABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAGA
+        GgAAAk1TRnQBSQFMAgEBCQEAASgBEAEoARABIAEAASABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAGA
         AwABYAMAAQEBAAEgBgABwP8A/wD/AP8A/wD/AP8A/wAeAANHAYB0//8AiQADRwGAdP//AIkAAyoBQANH
         AYADRwGAA0cBgANHAYADRwGAA0cBgANHAYADRwGAA0cBgANHAYADRwGAA0cBgANHAYADRwGAA0cBgANH
         AYADRwGAA0cBgANHAYADRwGAA0cBgANHAYADRwGAA0cBgANHAYADRwGAA0cBgANHAYADRwGA/wD/AP8A

+ 1 - 0
Optimizer/Models/Options.cs

@@ -161,5 +161,6 @@ namespace Optimizer
         /// </summary>
         public bool DisableHPET { get; set; }
         public bool EnableLoginVerbose { get; set; }
+        public bool EnableRegistryBackups { get; set; }
     }
 }

+ 3 - 0
Optimizer/Models/SilentConfig.cs

@@ -49,6 +49,9 @@ namespace Optimizer
         [JsonProperty("UnlockAllCores", NullValueHandling = NullValueHandling.Ignore)]
         public bool? UnlockAllCores { get; set; }
 
+        [JsonProperty("EnableRegistryBackups", NullValueHandling = NullValueHandling.Ignore)]
+        public bool? EnableRegistryBackups { get; set; }
+
         [JsonProperty("SvchostProcessSplitting", NullValueHandling = NullValueHandling.Ignore)]
         public SvchostProcessSplitting SvchostProcessSplitting { get; set; }
     }

+ 18 - 0
Optimizer/OptimizeHelper.cs

@@ -15,6 +15,16 @@ namespace Optimizer
             Utilities.PreventProcessFromRunning("DeviceCensus.exe");
         }
 
+        internal static void EnablePeriodicRegistryBackup()
+        {
+            Registry.SetValue(@"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Configuration Manager", "EnablePeriodicBackup", 1);
+        }
+
+        internal static void DisablePeriodicRegistryBackup()
+        {
+            Utilities.TryDeleteRegistryValue(true, @"SYSTEM\CurrentControlSet\Control\Session Manager\Configuration Manager", "EnablePeriodicBackup");
+        }
+
         internal static void EnablePerformanceTweaks()
         {
             // enable auto-complete in Run Dialog 
@@ -1764,12 +1774,18 @@ namespace Optimizer
             Registry.SetValue(@"HKEY_CURRENT_USER\Software\Microsoft\Edge\SmartScreenEnabled", "", 0);
             Registry.SetValue(@"HKEY_CURRENT_USER\Software\Microsoft\Edge\SmartScreenPuaEnabled", "", 0);
 
+            Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge", "ExtensionManifestV2Availability", 2);
+            Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge", "Edge3PSerpTelemetryEnabled", 0);
+
             Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge", "SpotlightExperiencesAndRecommendationsEnabled", 0);
             Registry.SetValue(@"HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Edge", "SpotlightExperiencesAndRecommendationsEnabled", 0);
         }
 
         internal static void EnableEdgeTelemetry()
         {
+            Utilities.TryDeleteRegistryValue(true, @"SOFTWARE\Policies\Microsoft\Edge", "ExtensionManifestV2Availability");
+            Utilities.TryDeleteRegistryValue(true, @"SOFTWARE\Policies\Microsoft\Edge", "Edge3PSerpTelemetryEnabled");
+
             Utilities.TryDeleteRegistryValue(false, @"Software\Microsoft\Edge\SmartScreenEnabled", "");
             Utilities.TryDeleteRegistryValue(false, @"Software\Microsoft\Edge\SmartScreenPuaEnabled", "");
 
@@ -1913,6 +1929,7 @@ namespace Optimizer
             Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome", "ChromeCleanupEnabled", 0);
             Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome", "UserFeedbackAllowed", 0);
             Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome", "DeviceMetricsReportingEnabled", 0);
+            Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome", "ExtensionManifestV2Availability", 2);
         }
 
         internal static void EnableChromeTelemetry()
@@ -1922,6 +1939,7 @@ namespace Optimizer
             Utilities.TryDeleteRegistryValue(true, @"SOFTWARE\Policies\Google\Chrome", "ChromeCleanupEnabled");
             Utilities.TryDeleteRegistryValue(true, @"SOFTWARE\Policies\Google\Chrome", "UserFeedbackAllowed");
             Utilities.TryDeleteRegistryValue(true, @"SOFTWARE\Policies\Google\Chrome", "DeviceMetricsReportingEnabled");
+            Utilities.TryDeleteRegistryValue(true, @"SOFTWARE\Policies\Google\Chrome", "ExtensionManifestV2Availability");
         }
 
         // FIREFOX TELEMETRY

+ 1 - 0
Optimizer/OptionsHelper.cs

@@ -211,6 +211,7 @@ namespace Optimizer
                     CurrentOptions.DisableCoPilotAI = false;
 
                     CurrentOptions.DisableHPET = false;
+                    CurrentOptions.EnableRegistryBackups = false;
                     CurrentOptions.EnableLoginVerbose = false;
 
                     CurrentOptions.RemoveMenusDelay = false;

+ 1 - 1
Optimizer/Program.cs

@@ -14,7 +14,7 @@ namespace Optimizer
         /// Version properties. Do NOT leave them empty
         /// </summary>
         internal readonly static float Major = 16;
-        internal readonly static float Minor = 6;
+        internal readonly static float Minor = 7;
         internal readonly static bool EXPERIMENTAL_BUILD = false;
 
         internal static string GetCurrentVersionTostring()

+ 2 - 1
Optimizer/Resources/i18n/AR.json

@@ -479,5 +479,6 @@
     "button3": "إضافة",
     "label21": "متغيرات النظام",
     "button1": "حذف",
-    "button2": "تحديث"
+    "button2": "تحديث",
+	"regBackupSw": "تمكين النسخ الاحتياطي للسجل"
 }

+ 1 - 0
Optimizer/Resources/i18n/BG.json

@@ -57,6 +57,7 @@
 	"privacySw": "Подобри Анонимността",
 	"ccSw": "Изключи Облачния Клипборд",
 	"cortanaSw": "Изключи Кортана",
+	"regBackupSw": "Активиране на архивиране на регистъра",
 	"sensorSw": "Изключи Сензорните Услуги",
 	"castSw": "Премахни Предаване Към Устройството",
 	"inkSw": "Изключи Windows Ink",

+ 1 - 0
Optimizer/Resources/i18n/CN.json

@@ -3,6 +3,7 @@
 	"subPrivacy": "隐私",
 	"subGaming": "游戏",
 	"subTouch": "触碰",
+	"regBackupSw": "啟用註冊表備份",
 	"subTaskbar": "任务栏",
 	"subExtras": "附加功能",
 	"btnAbout": "确定",

+ 1 - 0
Optimizer/Resources/i18n/CZ.json

@@ -6,6 +6,7 @@
 	"subTaskbar": "Hlavní panel",
 	"subExtras": "Extra",
 	"btnAbout": "OK",
+	"regBackupSw": "Povolit zálohování registru",
 	"restartButton": "Restartovat nyní",
 	"restartButton8": "Restartovat nyní",
 	"restartButton10": "Restartovat nyní",

+ 1 - 0
Optimizer/Resources/i18n/DE.json

@@ -3,6 +3,7 @@
 	"subPrivacy": "Datenschutz",
 	"subGaming": "Gaming",
 	"subTouch": "Touch",
+	"regBackupSw": "Registrierungs-Backups aktivieren",
 	"subTaskbar": "Taskleiste",
 	"subExtras": "Zusatzfunktionen",
 	"btnAbout": "OK",

+ 1 - 0
Optimizer/Resources/i18n/EL.json

@@ -5,6 +5,7 @@
 	"subTouch": "Αφή",
 	"subTaskbar": "Γραμμή Εργασιών",
 	"subExtras": "Πρόσθετα",
+	"regBackupSw": "Ενεργοποίηση αντιγράφων ασφαλείας μητρώου",
 	"btnAbout": "Εντάξει",
 	"restartButton": "Επανεκκίνηση τώρα",
 	"restartButton8": "Επανεκκίνηση τώρα",

+ 2 - 1
Optimizer/Resources/i18n/EN.json

@@ -479,5 +479,6 @@ It has negative effect on performance.",
 	"button3": "Add",
 	"label21": "System Variables",
 	"button1": "Delete",
-	"button2": "Refresh"
+	"button2": "Refresh",
+	"regBackupSw": "Enable Registry Backups"
 }

+ 1 - 0
Optimizer/Resources/i18n/ES.json

@@ -6,6 +6,7 @@
 	"subTaskbar": "Barra de tareas",
 	"subExtras": "Extras",
 	"btnAbout": "OK",
+	"regBackupSw": "Habilitar copias de seguridad del registro",
 	"restartButton": "Reiniciar ahora",
 	"restartButton8": "Reiniciar ahora",
 	"restartButton10": "Reiniciar ahora",

+ 1 - 0
Optimizer/Resources/i18n/FA.json

@@ -11,6 +11,7 @@
 	"restartButton10": "راه اندازی مجدد",
 	"btnFind": "پیدا کردن",
 	"btnKill": "کشتن",
+	"regBackupSw": "فعال‌سازی پشتیبان‌گیری از رجیستری",
 	"trayUnlocker": "دسته های فایل",
 	"restartAndApply": "ریست برای اعمال تغییرات",
 	"txtVersion": "نسخه: {VN}",

+ 1 - 0
Optimizer/Resources/i18n/FR.json

@@ -13,6 +13,7 @@
 	"btnKill": "Tuer",
 	"trayUnlocker": "Poignées de fichier",
 	"restartAndApply": "Redemarrer pour appliquer les changements",
+	"regBackupSw": "Activer les sauvegardes du registre",
 	"onedriveM": "Voulez-vous vraiment désinstaller OneDrive? Cela supprimera vos fichiers de bureau et de document! N'utilisez cette option que sur un compte local!",
 	"txtVersion": "Version: {VN}",
 	"systemRestoreM": "Voulez-vous vraiment désactiver la restauration du système? Cela supprimera vos images de sauvegarde actuelles!",

+ 1 - 0
Optimizer/Resources/i18n/HR.json

@@ -13,6 +13,7 @@
 	"btnKill": "Ubi",
 	"trayUnlocker": "Držači datoteka",
 	"restartAndApply": "Ponovno pokrenite za primjenu promjena",
+	"regBackupSw": "Omogućite sigurnosne kopije registra",
 	"txtVersion": "Verzija: {VN}",
 	"txtBitness": "Radite s {BITS}",
 	"linkUpdate": "Dostupno ažuriranje",

+ 1 - 0
Optimizer/Resources/i18n/HU.json

@@ -14,6 +14,7 @@
 	"txtBitness": "Te {BITS}-el dolgozol",
 	"linkUpdate": "Frissítés elérhető",
 	"lblLab": "Kísérleti verzió\n(töröld tesztelés után!)",
+	"regBackupSw": "Nyilvántartási biztonsági mentések engedélyezése",
 	"performanceSw": "Teljesítményjavítások engedélyezése",
 	"networkSw": "Hálózati korlátozás letiltása",
 	"defenderSw": "Windows Defender kikapcsolása",

+ 1 - 0
Optimizer/Resources/i18n/ID.json

@@ -13,6 +13,7 @@
 	"btnKill": "Hentikan",
 	"trayUnlocker": "Menangani FIle",
 	"restartAndApply": "Mulai ulang untuk menerapkan perubahan",
+	"regBackupSw": "Aktifkan Cadangan Registri",
 	"txtVersion": "Versi: {VN}",
 	"txtBitness": "Kamu Bekerja Dengan {BITS}",
 	"linkUpdate": "Pembaruan tersedia",

+ 1 - 0
Optimizer/Resources/i18n/IT.json

@@ -10,6 +10,7 @@
 	"restartButton8": "riavvia ora",
 	"restartButton10": "riavvia ora",
 	"restartAndApply": "Riavviare per applicare le modifiche",
+	"regBackupSw": "Abilita i backup del registro",
 	"txtVersion": "Versione: {VN}",
 	"btnFind": "Trova",
 	"btnKill": "Uccisione",

+ 1 - 0
Optimizer/Resources/i18n/JA.json

@@ -11,6 +11,7 @@
 	"restartButton10": "今すぐ再起動",
 	"btnFind": "検索",
 	"btnKill": "強制終了",
+	"regBackupSw": "レジストリバックアップを有効にする",
 	"trayUnlocker": "ファイル ハンドル",
 	"restartAndApply": "再起動して変更を適用",
 	"txtVersion": "バージョン: {VN}",

+ 1 - 0
Optimizer/Resources/i18n/KO.json

@@ -11,6 +11,7 @@
 	"restartButton10": "지금 다시 시작",
 	"btnFind": "찾기",
 	"btnKill": "죽이기",
+	"regBackupSw": "레지스트리 백업 활성화",
 	"trayUnlocker": "파일 핸들",
 	"restartAndApply": "다시 시작하여 변경 사항 적용",
 	"txtVersion": "버전: {VN}",

+ 1 - 0
Optimizer/Resources/i18n/KU.json

@@ -11,6 +11,7 @@
 	"restartButton10": "ئێستا ڕیستارتی بکەوە",
 	"btnFind": "بیدۆزەوە",
 	"btnKill": "بیکوژە (دایبخە)",
+	"regBackupSw": "پشتیگێری لەفایلی تۆمار چالاک بکە",
 	"trayUnlocker": "دەسکەکانی فایل",
 	"restartAndApply": "ڕیستارتی ئەکەیتەوە بۆ بینینی گۆڕانکاریەکان",
 	"txtVersion": "وەشان :",

+ 1 - 0
Optimizer/Resources/i18n/NE.json

@@ -13,6 +13,7 @@
 	"btnKill": "मार्नुहोस्",
 	"trayUnlocker": "फाइल ह्यान्डलहरू",
 	"restartAndApply": "परिवर्तन लागू गर्नका लागि पुन: प्रारंभ गर्नुहोस्",
+	"regBackupSw": "रेजिस्ट्री ब्याकअप सक्षम गर्नुहोस्",
 	"txtVersion": "संस्करण: {VN}",
 	"txtBitness": "तपाइँ {BITS} संग काम गर्दैछन्",
 	"linkUpdate": "अपडेट उपलब्ध छ",

+ 1 - 0
Optimizer/Resources/i18n/NL.json

@@ -10,6 +10,7 @@
    "restartButton8":"Nu opnieuw opstarten",
    "restartButton10":"Nu opnieuw opstarten",
    "restartAndApply":"Herstart om wijzigingen toe te passen",
+   "regBackupSw": "Registerback-ups inschakelen",
    "txtVersion":"Versie: {VN}",
    "btnFind":"Vind",
    "btnKill":"Dood",

+ 1 - 0
Optimizer/Resources/i18n/PL.json

@@ -11,6 +11,7 @@
 	"restartButton10": "Uruchom ponownie teraz",
 	"btnFind": "Znajdź",
 	"btnKill": "Zakończ",
+	"regBackupSw": "Włącz kopie zapasowe rejestru",
 	"trayUnlocker": "Deskryptory plików",
 	"restartAndApply": "Uruchom ponownie, aby zastosować zmiany",
 	"onedriveM": "Czy na pewno chcesz usunąć usługę OneDrive? Spowoduje to usunięcie wszystkich plików i folderów usługi OneDrive!",

+ 1 - 0
Optimizer/Resources/i18n/PT.json

@@ -13,6 +13,7 @@
 	"btnKill": "Finalizar",
 	"trayUnlocker": "Alças de arquivo",
 	"restartAndApply": "Reinicie para aplicar as alterações",
+	"regBackupSw": "Ativar backups de registro",
 	"onedriveM": "Tem certeza de que deseja desinstalar o OneDrive? Isso excluirá seus arquivos da área de trabalho e de documentos, Use esta opção apenas em uma conta local",
 	"CleanPreviewForm": "Antevisão Limpa",
 	"systemRestoreM": "Tem certeza de que deseja desativar a Restauração do sistema? Isso excluirá suas imagens de backup atuais",

+ 1 - 0
Optimizer/Resources/i18n/RO.json

@@ -13,6 +13,7 @@
 	"btnKill": "Terminati",
 	"trayUnlocker": "Mânere de fișiere",
 	"restartAndApply": "Reporniți pentru a aplica modificările",
+	"regBackupSw": "Activați copiile de rezervă ale registrului",
 	"txtVersion": "Versiunea: {VN}",
 	"txtBitness": "Tu esti pe {BITS}",
 	"linkUpdate": "Actualizare disponibilă!",

+ 1 - 0
Optimizer/Resources/i18n/RU.json

@@ -10,6 +10,7 @@
 	"restartButton8": "Перезапустить сейчас",
 	"restartButton10": "Перезапустить сейчас",
 	"restartAndApply": "Перезапустить, чтобы применить изменения",
+	"regBackupSw": "Включить резервное копирование реестра",
 	"txtVersion": "Версия: {VN}",
 	"btnFind": "Находить",
 	"btnKill": "Убийство",

+ 1 - 0
Optimizer/Resources/i18n/TR.json

@@ -11,6 +11,7 @@
 	"restartButton10": "şimdi yeniden başlat",
 	"restartAndApply": "Değişiklikleri uygulamak için yeniden başlatılsın mı",
 	"onedriveM": "OneDrive'ı kaldırmak istediğinizden emin misiniz? Bu, Masaüstü ve Belge dosyalarınızı siler! Bu seçeneği yalnızca yerel bir hesapta kullanın!",
+	"regBackupSw": "Kayıt Yedeklemelerini Etkinleştir",
 	"txtVersion": "Versiyon: {VN}",
 	"txtBitness": "{BITS} ile çalışıyor.",
 	"btnFind": "Bulmak",

+ 1 - 0
Optimizer/Resources/i18n/TW.json

@@ -13,6 +13,7 @@
 	"onedriveM": "您確定要移除 OneDrive 嗎?這將刪除您的桌面和文件檔案!僅在本機帳戶上使用此選項!",
 	"txtVersion": "版本:{VN}",
 	"systemRestoreM": "您確定要停用系統還原嗎?這將刪除您目前的備份映像!",
+	"regBackupSw": "啟用註冊表備份",
 	"txtBitness": "您正在使用 {BITS}",
 	"btnFind": "尋找",
 	"btnKill": "結束",

+ 1 - 0
Optimizer/Resources/i18n/UA.json

@@ -13,6 +13,7 @@
 	"btnKill": "Вимкнути примусово",
 	"trayUnlocker": "Дескриптор файлів",
 	"restartAndApply": "Перезапустити для застосування змін",
+	"regBackupSw": "Увімкнути резервне копіювання реєстру",
 	"txtVersion": "Версія: {VN}",
 	"txtBitness": "Ви працюєте з {BITS}",
 	"linkUpdate": "Оновлення доступне",

+ 1 - 0
Optimizer/Resources/i18n/UR.json

@@ -13,6 +13,7 @@
 "btnKill": "مار ڈالو",
 "trayUnlocker": "فائل ہینڈلز",
 "restartAndApply": "تبدیلیاں لاگو کرنے کے لیے دوبارہ شروع کریں",
+"regBackupSw": "رجسٹری بیک اپ کو فعال کریں",
 "txtVersion": "ورژن: {VN}",
 "txtBitness": "آپ {BITS} کے ساتھ کام کر رہے ہیں",
 "linkUpdate": "اپ ڈیٹ دستیاب ہے",

+ 1 - 0
Optimizer/Resources/i18n/VN.json

@@ -17,6 +17,7 @@
   "txtBitness": "Bạn đang sử dụng {BITS}",
   "linkUpdate": "Có phiên bản mới",
   "lblLab": "Phiên bản thử nghiệm\n(sẽ xoá sau khi đã test)",
+  "regBackupSw": "Bật sao lưu sổ đăng ký",
   "performanceSw": "Tối ưu hiệu năng",
   "networkSw": "Tối ưu mạng",
   "defenderSw": "Tắt Windows Defender",

+ 12 - 0
Optimizer/SilentOps.cs

@@ -372,6 +372,18 @@ namespace Optimizer
                 }
                 OptionsHelper.CurrentOptions.EnableLoginVerbose = CurrentSilentConfig.AdvancedTweaks.EnableLoginVerbose.Value;
             }
+
+            if (CurrentSilentConfig.AdvancedTweaks.EnableRegistryBackups.HasValue)
+            {
+                if (CurrentSilentConfig.AdvancedTweaks.EnableRegistryBackups.Value)
+                {
+                    OptimizeHelper.EnablePeriodicRegistryBackup();
+                }
+                else
+                {
+                    OptimizeHelper.DisablePeriodicRegistryBackup();
+                }
+            }
         }
 
 

+ 3 - 3
README.md

@@ -3,7 +3,7 @@
 </p>
 
 <p align="center">
-	<a href="https://github.com/hellzerg/optimizer/releases/download/16.6/Optimizer-16.6.exe" target="_blank">
+	<a href="https://github.com/hellzerg/optimizer/releases/download/16.7/Optimizer-16.7.exe" target="_blank">
 		<img src="https://raw.githubusercontent.com/hellzerg/optimizer/master/download-button.png">
 		<br>
 		<img src="https://raw.githubusercontent.com/hellzerg/optimizer/master/flags.png">
@@ -108,8 +108,8 @@ Learn about our security measures in the [Security Policy](https://github.com/he
 <h2> 📊 Details</h2> 
 </center>
 
-- Latest version: 16.6 (Released: July 06, 2024)
-- SHA256: 8B29C9349E7A814E30CCE1CFB788F5A21740C798268B0A45AB805195FAAD9105
+- Latest version: 16.7 (Released: August 18, 2024)
+- SHA256: 03A234060541B686AC4265754AFF43DF9325C21383F90E17F831E67965D717F8
 
 <center>
 <h2> ☕ Buy me a delicious espresso</h2>

+ 1 - 0
templates/template-windows10.json

@@ -70,6 +70,7 @@
         "UnlockAllCores": null,
         "DisableHPET": null,
         "EnableLoginVerbose": null,
+        "EnableRegistryBackups": null,
         "SvchostProcessSplitting": {
             "Disable": null,
             "RAM": null

+ 1 - 0
templates/template-windows11.json

@@ -69,6 +69,7 @@
     "AdvancedTweaks": {
         "UnlockAllCores": null,
         "DisableHPET": null,
+        "EnableRegistryBackups": null,
         "EnableLoginVerbose": null,
         "SvchostProcessSplitting": {
             "Disable": null,

+ 1 - 1
version.txt

@@ -1 +1 @@
-16.6
+16.7

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä