From fb936241c6b255fcd59d93350872401814775d38 Mon Sep 17 00:00:00 2001 From: Brett Hewitson Date: Sun, 15 May 2022 14:24:47 +1000 Subject: [PATCH] Task Priority Changes - added a new task priority for the four auto processes. - added the task priority selection to the global settings. --- src/ARKServerManager/App.config | 12 +++++ src/ARKServerManager/Config.Designer.cs | 50 ++++++++++++++++- src/ARKServerManager/Config.settings | 12 +++++ .../Globalization/en-US/en-US.xaml | 16 ++++++ src/ARKServerManager/Lib/ServerProfile.cs | 6 +-- .../UserControls/GlobalSettingsControl.xaml | 54 ++++++++++++------- .../GlobalSettingsControl.xaml.cs | 42 +++++++++++++++ src/ARKServerManager/VersionFeed.xml | 9 +++- src/ARKServerManager/VersionFeedBeta.xml | 23 ++++++++ .../Windows/SettingsWindow.xaml.cs | 4 +- src/ConanServerManager/App.config | 12 +++++ src/ConanServerManager/Config.Designer.cs | 50 ++++++++++++++++- src/ConanServerManager/Config.settings | 12 +++++ .../Globalization/en-US/en-US.xaml | 16 ++++++ src/ConanServerManager/Lib/ServerProfile.cs | 6 +-- .../UserControls/GlobalSettingsControl.xaml | 54 ++++++++++++------- .../GlobalSettingsControl.xaml.cs | 42 +++++++++++++++ src/ConanServerManager/VersionFeed.xml | 9 +++- src/ConanServerManager/VersionFeedBeta.xml | 23 ++++++++ .../Windows/SettingsWindow.xaml.cs | 4 +- .../Utils/TaskSchedulerUtils.cs | 20 +++---- 21 files changed, 412 insertions(+), 64 deletions(-) diff --git a/src/ARKServerManager/App.config b/src/ARKServerManager/App.config index ddb12a82..0780b246 100644 --- a/src/ARKServerManager/App.config +++ b/src/ARKServerManager/App.config @@ -900,6 +900,18 @@ {ipaddress}:{port} + + Normal + + + Normal + + + Normal + + + Normal + diff --git a/src/ARKServerManager/Config.Designer.cs b/src/ARKServerManager/Config.Designer.cs index 01ad2382..76004616 100644 --- a/src/ARKServerManager/Config.Designer.cs +++ b/src/ARKServerManager/Config.Designer.cs @@ -12,7 +12,7 @@ namespace ServerManagerTool { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.1.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.2.0.0")] public sealed partial class Config : global::System.Configuration.ApplicationSettingsBase { private static Config defaultInstance = ((Config)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Config()))); @@ -3195,5 +3195,53 @@ namespace ServerManagerTool { this["Alert_ServerStartedMessageIPandPort"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Normal")] + public global::System.Diagnostics.ProcessPriorityClass AutoBackup_TaskPriority { + get { + return ((global::System.Diagnostics.ProcessPriorityClass)(this["AutoBackup_TaskPriority"])); + } + set { + this["AutoBackup_TaskPriority"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Normal")] + public global::System.Diagnostics.ProcessPriorityClass AutoUpdate_TaskPriority { + get { + return ((global::System.Diagnostics.ProcessPriorityClass)(this["AutoUpdate_TaskPriority"])); + } + set { + this["AutoUpdate_TaskPriority"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Normal")] + public global::System.Diagnostics.ProcessPriorityClass AutoShutdown_TaskPriority { + get { + return ((global::System.Diagnostics.ProcessPriorityClass)(this["AutoShutdown_TaskPriority"])); + } + set { + this["AutoShutdown_TaskPriority"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Normal")] + public global::System.Diagnostics.ProcessPriorityClass AutoStart_TaskPriority { + get { + return ((global::System.Diagnostics.ProcessPriorityClass)(this["AutoStart_TaskPriority"])); + } + set { + this["AutoStart_TaskPriority"] = value; + } + } } } diff --git a/src/ARKServerManager/Config.settings b/src/ARKServerManager/Config.settings index f721b0b6..52077e44 100644 --- a/src/ARKServerManager/Config.settings +++ b/src/ARKServerManager/Config.settings @@ -878,5 +878,17 @@ {ipaddress}:{port} + + Normal + + + Normal + + + Normal + + + Normal + \ No newline at end of file diff --git a/src/ARKServerManager/Globalization/en-US/en-US.xaml b/src/ARKServerManager/Globalization/en-US/en-US.xaml index 52a3edc3..dc7d809c 100644 --- a/src/ARKServerManager/Globalization/en-US/en-US.xaml +++ b/src/ARKServerManager/Globalization/en-US/en-US.xaml @@ -83,6 +83,15 @@ All + + Idle + Below Normal + Normal + Above Normal + High + RealTime + + Normal Minimized @@ -741,6 +750,13 @@ RCON Broadcast Mode: Select the method used by the server manager to send auto process messages to the game clients via RCON. + Any changes to these priorities will take effect after the task has been created or saved. + Select the priority used by the windows task manager when running this task. + Auto Backup Task Priority: + Auto Update Task Priority: + Auto Shutdown/Restart Task Priority: + Auto Start Task Priority: + Confirm Settings Reset Action Click 'Yes' to confirm you want to perform the settings reset. Failed to Reset Settings diff --git a/src/ARKServerManager/Lib/ServerProfile.cs b/src/ARKServerManager/Lib/ServerProfile.cs index 91343ce2..6e696b10 100644 --- a/src/ARKServerManager/Lib/ServerProfile.cs +++ b/src/ARKServerManager/Lib/ServerProfile.cs @@ -4482,18 +4482,18 @@ namespace ServerManagerTool.Lib var taskKey = GetProfileKey(); - if(!TaskSchedulerUtils.ScheduleAutoStart(taskKey, null, this.EnableAutoStart, GetLauncherFile(), ProfileName, true)) + if(!TaskSchedulerUtils.ScheduleAutoStart(taskKey, null, this.EnableAutoStart, GetLauncherFile(), ProfileName, true, Config.Default.AutoStart_TaskPriority)) { return false; } var command = Assembly.GetEntryAssembly().Location; - if (!TaskSchedulerUtils.ScheduleAutoShutdown(taskKey, "#1", command, this.EnableAutoShutdown1 ? (TimeSpan.TryParseExact(this.AutoShutdownTime1, "g", null, out TimeSpan shutdownTime) ? shutdownTime : (TimeSpan?)null) : null, ShutdownDaysOfTheWeek1, ProfileName, TaskSchedulerUtils.ShutdownType.Shutdown1)) + if (!TaskSchedulerUtils.ScheduleAutoShutdown(taskKey, "#1", command, this.EnableAutoShutdown1 ? (TimeSpan.TryParseExact(this.AutoShutdownTime1, "g", null, out TimeSpan shutdownTime) ? shutdownTime : (TimeSpan?)null) : null, ShutdownDaysOfTheWeek1, ProfileName, TaskSchedulerUtils.ShutdownType.Shutdown1, Config.Default.AutoShutdown_TaskPriority)) { return false; } - if (!TaskSchedulerUtils.ScheduleAutoShutdown(taskKey, "#2", command, this.EnableAutoShutdown2 ? (TimeSpan.TryParseExact(this.AutoShutdownTime2, "g", null, out shutdownTime) ? shutdownTime : (TimeSpan?)null) : null, ShutdownDaysOfTheWeek2, ProfileName, TaskSchedulerUtils.ShutdownType.Shutdown2)) + if (!TaskSchedulerUtils.ScheduleAutoShutdown(taskKey, "#2", command, this.EnableAutoShutdown2 ? (TimeSpan.TryParseExact(this.AutoShutdownTime2, "g", null, out shutdownTime) ? shutdownTime : (TimeSpan?)null) : null, ShutdownDaysOfTheWeek2, ProfileName, TaskSchedulerUtils.ShutdownType.Shutdown2, Config.Default.AutoShutdown_TaskPriority)) { return false; } diff --git a/src/ARKServerManager/UserControls/GlobalSettingsControl.xaml b/src/ARKServerManager/UserControls/GlobalSettingsControl.xaml index 52228b78..cb1e1b2e 100644 --- a/src/ARKServerManager/UserControls/GlobalSettingsControl.xaml +++ b/src/ARKServerManager/UserControls/GlobalSettingsControl.xaml @@ -808,36 +808,52 @@ + + + - - + + + + - + - - + + - - + + - - + + - + - - + + - - - + - - + +