diff --git a/CreamInstaller/Components/CustomForm.cs b/CreamInstaller/Components/CustomForm.cs index 5e70558..1c26dcc 100644 --- a/CreamInstaller/Components/CustomForm.cs +++ b/CreamInstaller/Components/CustomForm.cs @@ -71,9 +71,9 @@ internal class CustomForm : Form + "a good majority of games, you must find, download and install those to the game yourself. This process includes manually installing new\n" + "DLCs and manually updating the previously manually installed DLCs after game updates.\n\n" + $"For reliable and quick assistance, all bugs, crashes and other issues should be referred to the [GitHub Issues]({repository}/issues) page!\n\n" - + $"HOWEVER: Please read the [template issue]({repository}/issues/new/choose) corresponding to your problem should one exist! Also, note that the [GitHub Issues]({repository}/issues) page is not\n" - + "your personal assistance hotline, rather it is for genuine bugs/crashes/issues with the program itself. If you post an issue which has already\n" - + "been explained within the template issues and/or within this text, I will just close it.\n\n" + + $"HOWEVER: Please read the [FAQ entry]({repository}/issues/new/choose) and/or [template issue]({repository}/issues/new/choose) corresponding to your problem should one exist! Also, note that the [GitHub Issues]({repository}/issues)\n" + + "page is not your personal assistance hotline, rather it is for genuine bugs/crashes/issues with the program itself. If you post an issue which\n" + + "has already been explained within the FAQ, template issues, and/or within this text in general, I will just close it and you will be ignored.\n\n" + "SteamCMD installation and appinfo cache can be found at [C:\\ProgramData\\CreamInstaller]().\n" + $"The program automatically and very quickly updates from [GitHub]({repository}) by choice of the user through a dialog on startup.\n" + $"The program source and other information can be found on [GitHub]({repository})."); diff --git a/CreamInstaller/CreamInstaller.csproj b/CreamInstaller/CreamInstaller.csproj index 60247b0..ac14f41 100644 --- a/CreamInstaller/CreamInstaller.csproj +++ b/CreamInstaller/CreamInstaller.csproj @@ -3,8 +3,8 @@ WinExe net7.0-windows10.0.22621.0 True - Resources\ini.ico - 4.9.9 + Resources\program.ico + 4.10.0 2021, pointfeev (https://github.com/pointfeev) CreamInstaller Automatic DLC Unlocker Installer & Configuration Generator @@ -91,6 +91,9 @@ + + + diff --git a/CreamInstaller/Platforms/Steam/SteamCMD.cs b/CreamInstaller/Platforms/Steam/SteamCMD.cs index 5630f24..f536731 100644 --- a/CreamInstaller/Platforms/Steam/SteamCMD.cs +++ b/CreamInstaller/Platforms/Steam/SteamCMD.cs @@ -2,18 +2,18 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Diagnostics; -using System.Drawing; using System.IO; using System.Linq; using System.Net.Http; using System.Text; using System.Threading; using System.Threading.Tasks; -using System.Windows.Forms; -using CreamInstaller.Forms; using CreamInstaller.Resources; using CreamInstaller.Utility; using Gameloop.Vdf.Linq; +#if DEBUG +using CreamInstaller.Forms; +#endif namespace CreamInstaller.Platforms.Steam; diff --git a/CreamInstaller/Properties/Resources.Designer.cs b/CreamInstaller/Properties/Resources.Designer.cs index ee75ee5..b4bea93 100644 --- a/CreamInstaller/Properties/Resources.Designer.cs +++ b/CreamInstaller/Properties/Resources.Designer.cs @@ -8,16 +8,10 @@ // //------------------------------------------------------------------------------ -using System.CodeDom.Compiler; -using System.ComponentModel; -using System.Diagnostics; -using System.Diagnostics.CodeAnalysis; -using System.Drawing; -using System.Globalization; -using System.Resources; -using System.Runtime.CompilerServices; - namespace CreamInstaller.Properties { + using System; + + /// /// A strongly-typed resource class, for looking up localized strings, etc. /// @@ -25,27 +19,27 @@ namespace CreamInstaller.Properties { // class via a tool like ResGen or Visual Studio. // To add or remove a member, edit your .ResX file then rerun ResGen // with the /str option, or rebuild your VS project. - [GeneratedCode("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] - [DebuggerNonUserCode()] - [CompilerGenerated()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class Resources { - private static ResourceManager resourceMan; + private static global::System.Resources.ResourceManager resourceMan; - private static CultureInfo resourceCulture; + private static global::System.Globalization.CultureInfo resourceCulture; - [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] internal Resources() { } /// /// Returns the cached ResourceManager instance used by this class. /// - [EditorBrowsable(EditorBrowsableState.Advanced)] - internal static ResourceManager ResourceManager { + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { get { - if (ReferenceEquals(resourceMan, null)) { - ResourceManager temp = new ResourceManager("CreamInstaller.Properties.Resources", typeof(Resources).Assembly); + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CreamInstaller.Properties.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; @@ -56,8 +50,8 @@ namespace CreamInstaller.Properties { /// Overrides the current thread's CurrentUICulture property for all /// resource lookups using this strongly typed resource class. /// - [EditorBrowsable(EditorBrowsableState.Advanced)] - internal static CultureInfo Culture { + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { get { return resourceCulture; } @@ -69,10 +63,10 @@ namespace CreamInstaller.Properties { /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// - internal static Icon Icon { + internal static System.Drawing.Icon Icon { get { object obj = ResourceManager.GetObject("Icon", resourceCulture); - return ((Icon)(obj)); + return ((System.Drawing.Icon)(obj)); } } } diff --git a/CreamInstaller/Properties/Resources.resx b/CreamInstaller/Properties/Resources.resx index 56c0201..e3fb794 100644 --- a/CreamInstaller/Properties/Resources.resx +++ b/CreamInstaller/Properties/Resources.resx @@ -119,6 +119,6 @@ - ..\resources\ini.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\resources\program.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a \ No newline at end of file diff --git a/CreamInstaller/Resources/Koaloader.cs b/CreamInstaller/Resources/Koaloader.cs index 09867d7..2f71790 100644 --- a/CreamInstaller/Resources/Koaloader.cs +++ b/CreamInstaller/Resources/Koaloader.cs @@ -79,7 +79,7 @@ internal static class Koaloader { /*if (installForm is not null) installForm.UpdateUser("Generating Koaloader configuration for " + selection.Name + $" in directory \"{directory}\" . . . ", LogTextBox.Operation);*/ - config.CreateFile(true, installForm).Close(); + config.CreateFile(true, installForm)?.Close(); StreamWriter writer = new(config, true, Encoding.UTF8); WriteConfig(writer, targets, modules, installForm); writer.Flush(); diff --git a/CreamInstaller/Resources/ScreamAPI.cs b/CreamInstaller/Resources/ScreamAPI.cs index 7760c99..7ac63f8 100644 --- a/CreamInstaller/Resources/ScreamAPI.cs +++ b/CreamInstaller/Resources/ScreamAPI.cs @@ -51,7 +51,7 @@ internal static class ScreamAPI { /*if (installForm is not null) installForm.UpdateUser("Generating ScreamAPI configuration for " + selection.Name + $" in directory \"{directory}\" . . . ", LogTextBox.Operation);*/ - config.CreateFile(true, installForm).Close(); + config.CreateFile(true, installForm)?.Close(); StreamWriter writer = new(config, true, Encoding.UTF8); WriteConfig(writer, new(overrideCatalogItems.ToDictionary(dlc => dlc.Id, dlc => dlc), PlatformIdComparer.String), new(injectedEntitlements.ToDictionary(dlc => dlc.Id, dlc => dlc), PlatformIdComparer.String), installForm); diff --git a/CreamInstaller/Resources/SmokeAPI.cs b/CreamInstaller/Resources/SmokeAPI.cs index 14c3adc..a951bdb 100644 --- a/CreamInstaller/Resources/SmokeAPI.cs +++ b/CreamInstaller/Resources/SmokeAPI.cs @@ -53,7 +53,7 @@ internal static class SmokeAPI { /*if (installForm is not null) installForm.UpdateUser("Generating SmokeAPI configuration for " + selection.Name + $" in directory \"{directory}\" . . . ", LogTextBox.Operation);*/ - config.CreateFile(true, installForm).Close(); + config.CreateFile(true, installForm)?.Close(); StreamWriter writer = new(config, true, Encoding.UTF8); WriteConfig(writer, selection.Id, new(extraApps.ToDictionary(extraApp => extraApp.Key, extraApp => extraApp.Value), PlatformIdComparer.String), new(overrideDlc.ToDictionary(dlc => dlc.Id, dlc => dlc), PlatformIdComparer.String), diff --git a/CreamInstaller/Resources/UplayR1.cs b/CreamInstaller/Resources/UplayR1.cs index 6ba5b93..65459b0 100644 --- a/CreamInstaller/Resources/UplayR1.cs +++ b/CreamInstaller/Resources/UplayR1.cs @@ -32,7 +32,7 @@ internal static class UplayR1 { /*if (installForm is not null) installForm.UpdateUser("Generating Uplay R1 Unlocker configuration for " + selection.Name + $" in directory \"{directory}\" . . . ", LogTextBox.Operation);*/ - config.CreateFile(true, installForm).Close(); + config.CreateFile(true, installForm)?.Close(); StreamWriter writer = new(config, true, Encoding.UTF8); WriteConfig(writer, new(blacklistDlc.ToDictionary(dlc => dlc.Id, dlc => dlc), PlatformIdComparer.String), installForm); writer.Flush(); diff --git a/CreamInstaller/Resources/UplayR2.cs b/CreamInstaller/Resources/UplayR2.cs index bcfbc64..04f5995 100644 --- a/CreamInstaller/Resources/UplayR2.cs +++ b/CreamInstaller/Resources/UplayR2.cs @@ -34,7 +34,7 @@ internal static class UplayR2 { /*if (installForm is not null) installForm.UpdateUser("Generating Uplay R2 Unlocker configuration for " + selection.Name + $" in directory \"{directory}\" . . . ", LogTextBox.Operation);*/ - config.CreateFile(true, installForm).Close(); + config.CreateFile(true, installForm)?.Close(); StreamWriter writer = new(config, true, Encoding.UTF8); WriteConfig(writer, new(blacklistDlc.ToDictionary(dlc => dlc.Id, dlc => dlc), PlatformIdComparer.String), installForm); writer.Flush(); diff --git a/CreamInstaller/Resources/ini.ico b/CreamInstaller/Resources/ini.ico deleted file mode 100644 index 46be4e1..0000000 Binary files a/CreamInstaller/Resources/ini.ico and /dev/null differ diff --git a/CreamInstaller/Resources/program.ico b/CreamInstaller/Resources/program.ico new file mode 100644 index 0000000..ee9fb92 Binary files /dev/null and b/CreamInstaller/Resources/program.ico differ diff --git a/CreamInstaller/Utility/SafeIO.cs b/CreamInstaller/Utility/SafeIO.cs index 37ee4b2..d4bbf14 100644 --- a/CreamInstaller/Utility/SafeIO.cs +++ b/CreamInstaller/Utility/SafeIO.cs @@ -243,10 +243,12 @@ internal static class SafeIO case 5: // ERROR_ACCESS_DENIED case 32: // ERROR_SHARING_VIOLATION case 33: // ERROR_LOCK_VIOLATION + description += e.Message + "\n\n"; description += "Please close the program/game and press retry to continue . . . "; break; case 225: // ERROR_VIRUS_INFECTED case 226: // ERROR_VIRUS_DELETED + description += e.Message + "\n\n"; description += "Please resolve your anti-virus and press retry to continue . . . "; break; default: diff --git a/preview.png b/preview.png index 328c7e9..54e5c81 100644 Binary files a/preview.png and b/preview.png differ