diff --git a/app/Helpers/ProcessHelper.cs b/app/Helpers/ProcessHelper.cs index 7c6303fb..5b3957e2 100644 --- a/app/Helpers/ProcessHelper.cs +++ b/app/Helpers/ProcessHelper.cs @@ -37,14 +37,14 @@ namespace GHelper.Helpers return principal.IsInRole(WindowsBuiltInRole.Administrator); } - public static void RunAsAdmin(string? param = null) + public static void RunAsAdmin(string? param = null, bool force = false) { if (Math.Abs(DateTimeOffset.Now.ToUnixTimeMilliseconds() - lastAdmin) < 2000) return; lastAdmin = DateTimeOffset.Now.ToUnixTimeMilliseconds(); // Check if the current user is an administrator - if (!IsUserAdministrator()) + if (!IsUserAdministrator() || force) { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.UseShellExecute = true; diff --git a/app/Ryzen/RyzenControl.cs b/app/Ryzen/RyzenControl.cs index 567d3b78..26bd2e44 100644 --- a/app/Ryzen/RyzenControl.cs +++ b/app/Ryzen/RyzenControl.cs @@ -185,6 +185,7 @@ namespace Ryzen { System.IO.Compression.ZipFile.ExtractToDirectory(zipLocation, exeDir, overwriteFiles: true); File.Delete(zipLocation); + ProcessHelper.RunAsAdmin("uv", true); } catch (Exception ex) {