diff --git a/CreamInstaller/CreamInstaller.csproj b/CreamInstaller/CreamInstaller.csproj index 5027cb6..063683e 100644 --- a/CreamInstaller/CreamInstaller.csproj +++ b/CreamInstaller/CreamInstaller.csproj @@ -5,7 +5,7 @@ True Resources\ini.ico true - 2.4.1.3 + 2.4.2.0 Resources\ini.ico Automatically generates and installs CreamAPI files for Steam games on the user's computer. It can also generate and install CreamAPI for the Paradox Launcher should the user select a Paradox Interactive game. diff --git a/CreamInstaller/Forms/SelectForm.cs b/CreamInstaller/Forms/SelectForm.cs index 1ff6e98..7b78b0b 100644 --- a/CreamInstaller/Forms/SelectForm.cs +++ b/CreamInstaller/Forms/SelectForm.cs @@ -243,8 +243,8 @@ internal partial class SelectForm : CustomForm dlcIconStaticId ??= dlcAppInfo.Value?.GetChild("common")?.GetChild("logo")?.ToString(); } if (Program.Canceled) return; - if (string.IsNullOrWhiteSpace(dlcName)) dlcName = "Unnamed DLC"; - dlc[id] = (dlcName, dlcIconStaticId); + if (!string.IsNullOrWhiteSpace(dlcName)) + dlc[id] = (dlcName, dlcIconStaticId); RemoveFromRemainingDLCs(id.ToString()); progress.Report(++CompleteTasks); }); @@ -488,6 +488,7 @@ internal partial class SelectForm : CustomForm } } images["Notepad"] = Program.GetNotepadImage(); + images["Command Prompt"] = Program.GetCommandPromptImage(); images["File Explorer"] = Program.GetFileExplorerImage(); images["SteamDB"] = await Program.GetImageFromUrl("https://steamdb.info/favicon.ico"); images["Steam Store"] = await Program.GetImageFromUrl("https://store.steampowered.com/favicon.ico"); @@ -535,6 +536,16 @@ internal partial class SelectForm : CustomForm nodeContextMenu.Items.Add(new ToolStripSeparator()); nodeContextMenu.Items.Add(new ToolStripMenuItem("Open AppInfo", Image("Notepad"), new EventHandler((sender, e) => Program.OpenFileInNotepad(appInfo)))); + nodeContextMenu.Items.Add(new ToolStripMenuItem("Refresh AppInfo", Image("Command Prompt"), + new EventHandler((sender, e) => + { + try + { + File.Delete(appInfo); + } + catch { } + OnLoad(); + }))); } if (selection is not null) { diff --git a/CreamInstaller/Program.cs b/CreamInstaller/Program.cs index 1cc5613..58f2aef 100644 --- a/CreamInstaller/Program.cs +++ b/CreamInstaller/Program.cs @@ -124,6 +124,8 @@ internal static class Program internal static Image GetNotepadImage() => GetFileIconImage(Environment.GetFolderPath(Environment.SpecialFolder.Windows) + @"\notepad.exe"); + internal static Image GetCommandPromptImage() => GetFileIconImage(Environment.SystemDirectory + @"\cmd.exe"); + internal static Image GetFileExplorerImage() => GetFileIconImage(Environment.GetFolderPath(Environment.SpecialFolder.Windows) + @"\explorer.exe"); internal static bool IsProgramRunningDialog(Form form, ProgramSelection selection)