C#如何将Windows UAC级别更改为“始终通知”

3

我希望将机器的UAC级别更改为“始终通知”级别,这是最高级别。

我尝试将以下注册表键值更改为1。 键 = HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

const string UACkey = @"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System";
            const string Subkey = "EnableLUA";
RegistryUtilities.SetValue(UACkey, Subkey, **1**, Microsoft.Win32.RegistryValueKind.DWord, RegistryUtilities.WOW64Key.Key64);

这将导致UAC处于第三级别(当程序尝试进行更改时通知)。

如何将其设置为顶级?


(Note: UAC指的是用户账户控制,即Windows系统的安全特性之一)

这可能听起来有点指责,但我希望你不是在未经用户许可的情况下这样做... - Tharwen
这只在实验室内运行,不会对其他人造成伤害。 - Udara S.S Liyanage
1个回答

5
我通过更改用户账户控制(UAC)并同时打开注册表编辑器,观察数值的变化,找到了这个问题。
当处于顶部设置时,数值为:
ConsentPromptBehaviorAdmin

当它在第三级时,将更改为2而不是5(微软的逻辑很好笑)。更改该值以及EnableLUA应该可以解决问题。

希望这可以帮助到您。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接