diff --git a/src/Snap.Hutao/Snap.Hutao/Core/RuntimeOptions.cs b/src/Snap.Hutao/Snap.Hutao/Core/RuntimeOptions.cs index 7e2238c6..f5a89430 100644 --- a/src/Snap.Hutao/Snap.Hutao/Core/RuntimeOptions.cs +++ b/src/Snap.Hutao/Snap.Hutao/Core/RuntimeOptions.cs @@ -130,6 +130,11 @@ internal sealed class RuntimeOptions : IOptions private static bool GetElevated() { + if (LocalSetting.Get(SettingKeys.OverrideElevationRequirement, false)) + { + return true; + } + using (WindowsIdentity identity = WindowsIdentity.GetCurrent()) { WindowsPrincipal principal = new(identity); diff --git a/src/Snap.Hutao/Snap.Hutao/Core/Setting/SettingKeys.cs b/src/Snap.Hutao/Snap.Hutao/Core/Setting/SettingKeys.cs index 6a15dfb3..a0386288 100644 --- a/src/Snap.Hutao/Snap.Hutao/Core/Setting/SettingKeys.cs +++ b/src/Snap.Hutao/Snap.Hutao/Core/Setting/SettingKeys.cs @@ -58,4 +58,9 @@ internal static class SettingKeys /// 禁用元数据更新检查 /// public const string SuppressMetadataInitialization = "SuppressMetadataInitialization"; + + /// + /// 覆盖管理员权限执行命令 + /// + public const string OverrideElevationRequirement = "OverrideElevationRequirement"; } \ No newline at end of file diff --git a/src/Snap.Hutao/Snap.Hutao/View/Page/TestPage.xaml b/src/Snap.Hutao/Snap.Hutao/View/Page/TestPage.xaml index 8ab0f58c..dd285d4a 100644 --- a/src/Snap.Hutao/Snap.Hutao/View/Page/TestPage.xaml +++ b/src/Snap.Hutao/Snap.Hutao/View/Page/TestPage.xaml @@ -69,6 +69,10 @@ + + + + LocalSetting.Set(SettingKeys.SuppressMetadataInitialization, value); } + [SuppressMessage("", "CA1822")] + public bool OverrideElevationRequirement + { + get => LocalSetting.Get(SettingKeys.OverrideElevationRequirement, false); + set => LocalSetting.Set(SettingKeys.OverrideElevationRequirement, value); + } + protected override ValueTask InitializeUIAsync() { return ValueTask.FromResult(true);