Browse Source

Pre-release changes

deadmoon 4 năm trước cách đây
mục cha
commit
fb43dfbb8d

+ 5 - 0
CHANGELOG.md

@@ -2,6 +2,11 @@
 
 All notable changes to this project will be documented in this file.
 
+## [6.8] - 2021-03-12
+- New: Visual C++ AiO, .NET Frameworks & ViPER4Windows in Common Apps
+- New: Error logging
+- Improved: Updates to Common Apps versions
+
 ## [6.7] - 2021-02-25
 - Hotfix: Search not working (Reset Superfetch, disable it again and restart Windows to fix)
 

+ 4 - 1
Optimizer/EmbeddedAssembly.cs

@@ -33,7 +33,10 @@ namespace Optimizer
                     _dictionary.Add(assembly.FullName, assembly);
                     return;
                 }
-                catch { }
+                catch (Exception ex)
+                {
+                    ErrorLogger.LogError("EmbeddedAssembly.Load", ex.Message, ex.StackTrace);
+                }
             }
 
             bool fileOk = false;

+ 33 - 0
Optimizer/ErrorLogger.cs

@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.IO;
+
+namespace Optimizer
+{
+    internal static class ErrorLogger
+    {
+        internal static string ErrorLogFile = Required.CoreFolder + "Optimizer.log";
+
+        internal static void LogError(string functionName, string errorMessage, string errorStackTrace)
+        {
+            try
+            {
+                File.AppendAllText(ErrorLogFile, string.Format("[ERROR] in function [{0}]", functionName));
+                File.AppendAllText(ErrorLogFile, Environment.NewLine);
+                File.AppendAllText(ErrorLogFile, errorMessage);
+                File.AppendAllText(ErrorLogFile, Environment.NewLine);
+                File.AppendAllText(ErrorLogFile, Environment.NewLine);
+                File.AppendAllText(ErrorLogFile, errorStackTrace);
+
+                // seperator
+                File.AppendAllText(ErrorLogFile, Environment.NewLine);
+                File.AppendAllText(ErrorLogFile, Environment.NewLine);
+                File.AppendAllText(ErrorLogFile, Environment.NewLine);
+            }
+            catch { }
+        }
+    }
+}

+ 18 - 9
Optimizer/HostsHelper.cs

@@ -35,8 +35,9 @@ namespace Optimizer
 
                 File.WriteAllBytes(HostsFile, Properties.Resources.hosts);
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("HostsHelper.RestoreDefaultHosts", ex.Message, ex.StackTrace);
                 MessageBox.Show("DNS Cache is being generated, try again later!", "DNS Cache is running", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
@@ -52,8 +53,9 @@ namespace Optimizer
 
                 File.WriteAllText(HostsFile, _client.DownloadString(AdBlockBasicLink));
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("HostsHelper.AdblockBasic", ex.Message, ex.StackTrace);
                 MessageBox.Show("DNS Cache is being generated, try again later!", "DNS Cache is running", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
@@ -69,8 +71,9 @@ namespace Optimizer
 
                 File.WriteAllText(HostsFile, _client.DownloadString(AdBlockWithPornLink));
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("HostsHelper.AdBlockWithPorn", ex.Message, ex.StackTrace);
                 MessageBox.Show("DNS Cache is being generated, try again later!", "DNS Cache is running", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
@@ -86,8 +89,9 @@ namespace Optimizer
 
                 File.WriteAllText(HostsFile, _client.DownloadString(AdBlockWithSocialLink));
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("HostsHelper.AdBlockWithSocial", ex.Message, ex.StackTrace);
                 MessageBox.Show("DNS Cache is being generated, try again later!", "DNS Cache is running", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
@@ -103,8 +107,9 @@ namespace Optimizer
 
                 File.WriteAllText(HostsFile, _client.DownloadString(AdBlockUltimateLink));
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("HostsHelper.AdBlockUltimate", ex.Message, ex.StackTrace);
                 MessageBox.Show("DNS Cache is being generated, try again later!", "DNS Cache is running", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
@@ -154,8 +159,9 @@ namespace Optimizer
                 File.WriteAllText(HostsFile, string.Empty);
                 File.WriteAllLines(HostsFile, lines);
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("HostsHelper.SaveHosts", ex.Message, ex.StackTrace);
                 MessageBox.Show("DNS Cache is being generated, try again later!", "DNS Cache is running", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
@@ -184,8 +190,9 @@ namespace Optimizer
             {
                 File.AppendAllText(HostsFile, NewLine + entry);
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("HostsHelper.AddEntry", ex.Message, ex.StackTrace);
                 MessageBox.Show("DNS Cache is being generated, try again later!", "DNS Cache is running", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
@@ -196,8 +203,9 @@ namespace Optimizer
             {
                 File.WriteAllLines(HostsFile, File.ReadLines(HostsFile).Where(x => x != entry).ToList());
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("HostsHelper.RemoveEntry", ex.Message, ex.StackTrace);
                 MessageBox.Show("DNS Cache is being generated, try again later!", "DNS Cache is running", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
@@ -211,8 +219,9 @@ namespace Optimizer
                     File.WriteAllLines(HostsFile, File.ReadLines(HostsFile).Where(l => l != text).ToList());
                 }
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("HostsHelper.RemoveAllEntries", ex.Message, ex.StackTrace);
                 MessageBox.Show("DNS Cache is being generated, try again later!", "DNS Cache is running", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }

+ 24 - 6
Optimizer/Integrator.cs

@@ -102,10 +102,16 @@ namespace Optimizer
                     {
                         key.DeleteSubKeyTree(name, false);
                     }
-                    catch { }
+                    catch (Exception ex)
+                    {
+                        ErrorLogger.LogError("Integrator.RemoveItem", ex.Message, ex.StackTrace);
+                    }
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Integrator.RemoveItem", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void RemoveAllItems(List<string> items)
@@ -118,7 +124,10 @@ namespace Optimizer
                     {
                         key.DeleteSubKeyTree(item, false);
                     }
-                    catch { }
+                    catch (Exception ex)
+                    {
+                        ErrorLogger.LogError("Integrator.RemoveAllItems", ex.Message, ex.StackTrace);
+                    }
                 }
             }
         }
@@ -155,7 +164,10 @@ namespace Optimizer
                     favicon = Required.FavIconsFolder + name + ".ico";
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Integrator.DownloadFavicon", ex.Message, ex.StackTrace);
+            }
 
             return favicon;
         }
@@ -215,7 +227,10 @@ namespace Optimizer
                 {
                     File.WriteAllText(Required.ReadyMadeMenusFolder + "InstallTakeOwnership.reg", Properties.Resources.InstallTakeOwnership);
                 }
-                catch { }
+                catch (Exception ex)
+                {
+                    ErrorLogger.LogError("Integrator.TakeOwnership", ex.Message, ex.StackTrace);
+                }
             }
             if (!File.Exists(Required.ReadyMadeMenusFolder + "RemoveTakeOwnership.reg"))
             {
@@ -223,7 +238,10 @@ namespace Optimizer
                 {
                     File.WriteAllText(Required.ReadyMadeMenusFolder + "RemoveTakeOwnership.reg", Properties.Resources.RemoveTakeOwnership);
                 }
-                catch { }
+                catch (Exception ex)
+                {
+                    ErrorLogger.LogError("Integrator.TakeOwnership", ex.Message, ex.StackTrace);
+                }
             }
 
             if (!remove)

+ 2 - 3
Optimizer/MainForm.Designer.cs

@@ -1898,12 +1898,11 @@
             // txtFeedError
             // 
             this.txtFeedError.BackColor = System.Drawing.Color.Transparent;
-            this.txtFeedError.Dock = System.Windows.Forms.DockStyle.Fill;
             this.txtFeedError.Font = new System.Drawing.Font("Segoe UI Semibold", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
             this.txtFeedError.ForeColor = System.Drawing.Color.Gold;
-            this.txtFeedError.Location = new System.Drawing.Point(0, 0);
+            this.txtFeedError.Location = new System.Drawing.Point(213, 454);
             this.txtFeedError.Name = "txtFeedError";
-            this.txtFeedError.Size = new System.Drawing.Size(746, 565);
+            this.txtFeedError.Size = new System.Drawing.Size(193, 90);
             this.txtFeedError.TabIndex = 161;
             this.txtFeedError.Text = "Something went wrong, try refreshing the links again.";
             this.txtFeedError.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;

+ 25 - 6
Optimizer/MainForm.cs

@@ -73,6 +73,7 @@ namespace Optimizer
             }
             catch (Exception ex)
             {
+                ErrorLogger.LogError("MainForm.CheckForUpdate", ex.Message, ex.StackTrace);
                 MessageBox.Show(ex.Message, "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
 
@@ -119,6 +120,7 @@ namespace Optimizer
                         }
                         catch (Exception ex)
                         {
+                            ErrorLogger.LogError("MainForm.CheckForUpdate", ex.Message, ex.StackTrace);
                             MessageBox.Show(ex.Message);
                         }
                     }
@@ -443,7 +445,7 @@ namespace Optimizer
                 //btnGetFeed.Visible = true;
                 txtFeedError.Visible = false;
             }
-            catch (Exception)
+            catch (Exception ex)
             {
                 panel1.Visible = false;
                 panel2.Visible = false;
@@ -465,6 +467,7 @@ namespace Optimizer
                 txtDownloadStatus.Visible = false;
                 //btnGetFeed.Visible = true;
                 txtFeedError.Visible = true;
+                ErrorLogger.LogError("MainForm.GetFeed", ex.Message, ex.StackTrace);
             }
         }
 
@@ -509,7 +512,10 @@ namespace Optimizer
                     CleanHelper.EmptyRecycleBin();
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("MainForm.CleanPC", ex.Message, ex.StackTrace);
+            }
             finally
             {
                 CleaningAnimation(false);
@@ -588,7 +594,10 @@ namespace Optimizer
                     changeDetected = true;
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("MainForm.FixRegistry", ex.Message, ex.StackTrace);
+            }
 
             return changeDetected;
         }
@@ -647,7 +656,7 @@ namespace Optimizer
 
         private void Main_Load(object sender, EventArgs e)
         {
-            
+
         }
 
         private void GetDesktopItems()
@@ -2026,6 +2035,7 @@ namespace Optimizer
             }
             catch (Exception ex)
             {
+                ErrorLogger.LogError("MainForm.btnChangelog_Click", ex.Message, ex.StackTrace);
                 MessageBox.Show(ex.Message, "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
         }
@@ -2122,6 +2132,7 @@ namespace Optimizer
 
             ColoredCheckBox currentCheck;
             Control[] temp;
+
             foreach (FeedApp x in AppsFromFeed)
             {
                 if (string.IsNullOrEmpty(x.Tag)) continue;
@@ -2183,6 +2194,13 @@ namespace Optimizer
                 }
             }
 
+            // reset all checkboxes
+            foreach (Control c in Utilities.GetSelfAndChildrenRecursive(appsTab))
+            {
+                if (c.Name == "cAutoInstall") continue;
+                if (c is ColoredCheckBox && ((ColoredCheckBox)c).Checked) ((ColoredCheckBox)c).Checked = false;
+            }
+
             RenderAppDownloaderFree();  
         }
 
@@ -2227,8 +2245,9 @@ namespace Optimizer
                     }
                 }
             }
-            catch (Exception)
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("MainForm.DownloadApp", ex.Message, ex.StackTrace);
                 downloadLog += "• " + app.Title + ":" + Environment.NewLine + "Link is no longer valid!" + Environment.NewLine + Environment.NewLine;
 
                 if (pref64) try { File.Delete(Path.Combine(txtDownloadFolder.Text, app.Title + "-x64.exe")); } catch { }
@@ -2242,7 +2261,7 @@ namespace Optimizer
         {
             this.BeginInvoke((MethodInvoker)delegate
             {
-                txtDownloadStatus.Text = "Finished";
+                //txtDownloadStatus.Text = "Finished";
             });
         }
 

+ 59 - 15
Optimizer/Optimize.cs

@@ -30,7 +30,10 @@ namespace Optimizer
                     FileSystem.RenameFile(CompatTelRunnerFile, CompatTelRunnerFileNameOff);
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.DisableTelemetryRunner", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void EnableTelemetryRunner()
@@ -42,7 +45,10 @@ namespace Optimizer
                     FileSystem.RenameFile(CompatTelRunnerFileOff, CompatTelRunnerFileName);
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.EnableTelemetryRunner", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void EnablePerformanceTweaks()
@@ -121,7 +127,10 @@ namespace Optimizer
                 Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games", true).DeleteValue("GPU Priority", false);
                 Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games", true).DeleteValue("Priority", false);
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.DisablePerformanceTweaks", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void DisableTelemetryServices()
@@ -196,7 +205,10 @@ namespace Optimizer
                 Registry.LocalMachine.OpenSubKey(@"SYSTEM\CurrentControlSet\Services\Dnscache\Parameters", true).DeleteValue("MaxCacheTtl", false);
                 Registry.LocalMachine.OpenSubKey(@"SYSTEM\CurrentControlSet\Services\Dnscache\Parameters", true).DeleteValue("MaxNegativeCacheTtl", false);
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.EnableNetworkThrottling", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void DisableSkypeAds()
@@ -212,7 +224,10 @@ namespace Optimizer
                 Registry.CurrentUser.OpenSubKey(@"Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Domains\\skype.com\\apps", true).DeleteValue("http", false);
                 Registry.CurrentUser.OpenSubKey(@"Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap\\Domains\\skype.com\\apps", true).DeleteValue("https", false);
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.EnableSkypeAds", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void DisableHomeGroup()
@@ -295,8 +310,9 @@ namespace Optimizer
                     p.Close();
                 }
             }
-            catch //(Exception ex)
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("Optimize.DisableSystemRestore", ex.Message, ex.StackTrace);
                 //MessageBox.Show(ex.Message, "Optimizer", MessageBoxButtons.OK, MessageBoxIcon.Information);
             }
 
@@ -343,6 +359,7 @@ namespace Optimizer
             }
 
             Utilities.RunCommand(@"regsvr32 /u /s """ + rootPath + "\"");
+            Utilities.RunCommand("Gpupdate /Force");
         }
 
         internal static void EnableDefender()
@@ -435,7 +452,10 @@ namespace Optimizer
                     {
                         Directory.Delete(x, true);
                     }
-                    catch { }
+                    catch (Exception ex)
+                    {
+                        ErrorLogger.LogError("Optimize.UninstallOneDrive", ex.Message, ex.StackTrace);
+                    }
                 }
             }
 
@@ -490,7 +510,10 @@ namespace Optimizer
                     }
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.UninstallOneDrive", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void InstallOneDrive()
@@ -510,7 +533,10 @@ namespace Optimizer
                 }
                 Process.Start(oneDriveInstaller);
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.InstallOneDrive", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void DisableCortana()
@@ -575,7 +601,10 @@ namespace Optimizer
                     File.WriteAllText(Required.ScriptsFolder + "EnableXboxTasks.bat", Properties.Resources.EnableXboxTasks);
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.EnableXboxLive", ex.Message, ex.StackTrace);
+            }
 
             Utilities.RunBatchFile(Required.ScriptsFolder + "EnableXboxTasks.bat");
         }
@@ -653,7 +682,10 @@ namespace Optimizer
                     File.WriteAllText(Required.ScriptsFolder + "EnableTelemetryTasks.bat", Properties.Resources.EnableTelemetryTasks);
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.EnableTelemetryTasks", ex.Message, ex.StackTrace);
+            }
 
             Utilities.RunBatchFile(Required.ScriptsFolder + "EnableTelemetryTasks.bat");
         }
@@ -678,7 +710,10 @@ namespace Optimizer
                     File.WriteAllText(Required.ScriptsFolder + "EnableOfficeTelemetryTasks.bat", Properties.Resources.EnableOfficeTelemetryTasks);
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.EnableOffice2016Telemetry", ex.Message, ex.StackTrace);
+            }
 
             Utilities.RunBatchFile(Required.ScriptsFolder + "EnableOfficeTelemetryTasks.bat");
             Utilities.ImportRegistryScript(Required.ScriptsFolder + "EnableOfficeTelemetryTasks.reg");
@@ -841,7 +876,10 @@ namespace Optimizer
                 Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Siuf\Rules", true).DeleteValue("PeriodInNanoSeconds", false);
                 Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Siuf\Rules", true).DeleteValue("NumberOfSIUFInPeriod", false);
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.EnablePrivacyOptions", ex.Message, ex.StackTrace);
+            }
 
             Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection", "AllowTelemetry", "1", RegistryValueKind.DWord);
             Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DataCollection", "AllowTelemetry", "1", RegistryValueKind.DWord);
@@ -1138,7 +1176,10 @@ namespace Optimizer
                 Utilities.RunCommand("REG ADD \"HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Blocked\" /V {7AD84985-87B4-4a16-BE58-8B72A5B390F7} /T REG_SZ /D \"Play to Menu\" /F");
                 //Utilities.RestartExplorer();
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.RemoveCastToDevice", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void AddCastToDevice()
@@ -1148,7 +1189,10 @@ namespace Optimizer
                 Utilities.RunCommand("REG Delete \"HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Blocked\" /V {7AD84985-87B4-4a16-BE58-8B72A5B390F7} /F");
                 //Utilities.RestartExplorer();
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Optimize.AddCastToDevice", ex.Message, ex.StackTrace);
+            }
         }
 
         // ACTION CENTER = NOTIFICATION CENTER

+ 1 - 0
Optimizer/Optimizer.csproj

@@ -86,6 +86,7 @@
     <Compile Include="AboutForm.Designer.cs">
       <DependentUpon>AboutForm.cs</DependentUpon>
     </Compile>
+    <Compile Include="ErrorLogger.cs" />
     <Compile Include="FeedApp.cs" />
     <Compile Include="ByteSize\BinaryByteSize.cs" />
     <Compile Include="ByteSize\ByteSize.cs" />

+ 9 - 2
Optimizer/Program.cs

@@ -13,7 +13,7 @@ namespace Optimizer
         // Enter current version here
 
         internal readonly static float Major = 6;
-        internal readonly static float Minor = 7;
+        internal readonly static float Minor = 8;
 
         internal static string GetCurrentVersionTostring()
         {
@@ -72,7 +72,14 @@ namespace Optimizer
                     }
 
                     // load settings, if there is no settings, load defaults
-                    Options.LoadSettings();
+                    try
+                    {
+                        Options.LoadSettings();
+                    }
+                    catch (Exception ex)
+                    {
+                        ErrorLogger.LogError("Program.Main", ex.Message, ex.StackTrace);
+                    }
 
                     // checking for silent config argument
                     if (switches.Length == 1)

+ 3 - 1
Optimizer/SilentOps.cs

@@ -1,6 +1,7 @@
 using System.Threading.Tasks;
 using Newtonsoft.Json;
 using System.IO;
+using System;
 
 namespace Optimizer
 {
@@ -14,8 +15,9 @@ namespace Optimizer
             {
                 CurrentSilentConfig = JsonConvert.DeserializeObject<SilentConfig>(File.ReadAllText(path));
             }
-            catch
+            catch (Exception ex)
             {
+                ErrorLogger.LogError("SilentOps.GetSilentConfig", ex.Message, ex.StackTrace);
                 CurrentSilentConfig = null;
             }
             return CurrentSilentConfig;

+ 21 - 5
Optimizer/StartupItem.cs

@@ -1,4 +1,5 @@
 using Microsoft.Win32;
+using System;
 using System.IO;
 
 namespace Optimizer
@@ -34,7 +35,10 @@ namespace Optimizer
                     File.Delete(Shortcut);
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("FolderStartupItem.Remove", ex.Message, ex.StackTrace);
+            }
         }
 
         internal override void LocateFile()
@@ -43,7 +47,10 @@ namespace Optimizer
             {
                 Utilities.FindFile(FileLocation);
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("FolderStartupItem.LocateFile", ex.Message, ex.StackTrace);
+            }
         }
     }
 
@@ -57,7 +64,10 @@ namespace Optimizer
             {
                 Utilities.FindKeyInRegistry(Key.ToString());
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("RegistryStartupItem.LocateKey", ex.Message, ex.StackTrace);
+            }
         }
 
         internal override void Remove()
@@ -66,7 +76,10 @@ namespace Optimizer
             {
                 Key.DeleteValue(Name, false);
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("RegistryStartupItem.Remove", ex.Message, ex.StackTrace);
+            }
         }
 
         internal override void LocateFile()
@@ -75,7 +88,10 @@ namespace Optimizer
             {
                 Utilities.FindFile(SanitizePath(FileLocation));
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("RegistryStartupItem.LocateFile", ex.Message, ex.StackTrace);
+            }
         }
 
         internal string SanitizePath(string s)

+ 40 - 11
Optimizer/Utilities.cs

@@ -146,9 +146,10 @@ namespace Optimizer
             {
                 current = Registry.GetValue(@"HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge\Main", "Default Download Directory", DefaultEdgeDownloadFolder).ToString();
             }
-            catch
+            catch (Exception ex)
             {
                 current = DefaultEdgeDownloadFolder;
+                ErrorLogger.LogError("Utilities.GetEdgeDownloadFolder", ex.Message, ex.StackTrace);
             }
 
             return current;
@@ -174,7 +175,10 @@ namespace Optimizer
                     p.Close();
                 }
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Utilities.RunBatchFile", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static void ImportRegistryScript(string scriptFile)
@@ -191,9 +195,10 @@ namespace Optimizer
 
                 p.WaitForExit();
             }
-            catch
+            catch (Exception ex)
             {
                 p.Dispose();
+                ErrorLogger.LogError("Utilities.ImportRegistryScript", ex.Message, ex.StackTrace);
             }
             finally
             {
@@ -238,7 +243,10 @@ namespace Optimizer
                 {
                     sc.Start();
                 }
-                catch { }
+                catch (Exception ex)
+                {
+                    ErrorLogger.LogError("Utilities.StartService", ex.Message, ex.StackTrace);
+                }
             }
         }
 
@@ -308,7 +316,10 @@ namespace Optimizer
 
                             list.Add(item);
                         }
-                        catch { }
+                        catch (Exception ex)
+                        {
+                            ErrorLogger.LogError("Utilities.GetRegistryStartupItemsHelper", ex.Message, ex.StackTrace);
+                        }
                     }
                 }
             }
@@ -328,7 +339,10 @@ namespace Optimizer
 
                     list.Add(item);
                 }
-                catch { }
+                catch (Exception ex)
+                {
+                    ErrorLogger.LogError("Utilities.GetFolderStartupItemsHelper", ex.Message, ex.StackTrace);
+                }
             }
 
             foreach (string shortcut in shortcuts)
@@ -343,7 +357,10 @@ namespace Optimizer
 
                     list.Add(item);
                 }
-                catch { }
+                catch (Exception ex)
+                {
+                    ErrorLogger.LogError("Utilities.GetFolderStartupItemsHelper", ex.Message, ex.StackTrace);
+                }
             }
         }
 
@@ -449,7 +466,10 @@ namespace Optimizer
                     p.WaitForExit();
                     p.Close();
                 }
-                catch { }
+                catch (Exception ex)
+                {
+                    ErrorLogger.LogError("Utilities.RunCommand", ex.Message, ex.StackTrace);
+                }
             }
         }
 
@@ -493,7 +513,10 @@ namespace Optimizer
                         process.Kill();
                     }
                 }
-                catch { }
+                catch (Exception ex)
+                {
+                    ErrorLogger.LogError("Utilities.RestartExplorer", ex.Message, ex.StackTrace);
+                }
             }
 
             Process.Start(explorer);
@@ -506,7 +529,10 @@ namespace Optimizer
                 Registry.SetValue(@"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit", "LastKey", key);
                 Process.Start("regedit");
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Utilities.FindKeyInRegistry", ex.Message, ex.StackTrace);
+            }
         }
 
         internal static List<string> GetModernApps(bool showAll)
@@ -559,7 +585,10 @@ namespace Optimizer
             {
                 Directory.Delete(Required.CoreFolder, true);
             }
-            catch { }
+            catch (Exception ex)
+            {
+                ErrorLogger.LogError("Utilities.ResetConfiguration", ex.Message, ex.StackTrace);
+            }
             finally
             {
                 Application.Restart();

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
feed.json


Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác