elevation override

This commit is contained in:
DismissedLight
2023-09-04 22:34:09 +08:00
parent b8a7ecdd40
commit 490df104f0
4 changed files with 21 additions and 0 deletions

View File

@@ -130,6 +130,11 @@ internal sealed class RuntimeOptions : IOptions<RuntimeOptions>
private static bool GetElevated()
{
if (LocalSetting.Get(SettingKeys.OverrideElevationRequirement, false))
{
return true;
}
using (WindowsIdentity identity = WindowsIdentity.GetCurrent())
{
WindowsPrincipal principal = new(identity);

View File

@@ -58,4 +58,9 @@ internal static class SettingKeys
/// 禁用元数据更新检查
/// </summary>
public const string SuppressMetadataInitialization = "SuppressMetadataInitialization";
/// <summary>
/// 覆盖管理员权限执行命令
/// </summary>
public const string OverrideElevationRequirement = "OverrideElevationRequirement";
}

View File

@@ -69,6 +69,10 @@
<ToggleSwitch IsOn="{Binding SuppressMetadataInitialization, Mode=TwoWay}"/>
</cwc:SettingsCard>
<cwc:SettingsCard Header="Override Elevation Requirement">
<ToggleSwitch IsOn="{Binding OverrideElevationRequirement, Mode=TwoWay}"/>
</cwc:SettingsCard>
<cwc:SettingsCard
Command="{Binding CompensationGachaLogServiceTimeCommand}"
Header="Compensation GachaLog Service Time For 15 Days"

View File

@@ -31,6 +31,13 @@ internal sealed partial class TestViewModel : Abstraction.ViewModel
set => 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<bool> InitializeUIAsync()
{
return ValueTask.FromResult(true);