From 591905576be17a50a77aeb389d116088b71bdc1e Mon Sep 17 00:00:00 2001 From: HyperPolygon64 Date: Mon, 27 Jan 2020 04:13:30 +0000 Subject: [PATCH] Feedback on .NET settings error modified: Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitProgram.cs --- .../src/Sonic-06-Toolkit/ToolkitProgram.cs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitProgram.cs b/Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitProgram.cs index e241513e..a068aa05 100644 --- a/Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitProgram.cs +++ b/Sonic-06-Toolkit/src/Sonic-06-Toolkit/ToolkitProgram.cs @@ -105,7 +105,21 @@ static void Main(string[] args) { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new Main(args, sessionID)); + + try { Application.Run(new Main(args, sessionID)); } + catch (System.Configuration.ConfigurationException) { + var settingsData = new DirectoryInfo(Path.Combine(applicationData, "Toolkit")); + try { + if (Directory.Exists(Path.Combine(applicationData, "Toolkit"))) { + foreach (FileInfo file in settingsData.GetFiles()) + file.Delete(); + foreach (DirectoryInfo directory in settingsData.GetDirectories()) + directory.Delete(true); + } + } catch { } + MessageBox.Show("An error occurred whilst reading your user settings. Sonic '06 Toolkit will now reset...", "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error); + Application.Restart(); + } } public static bool RunningAsAdmin() { return new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator); }