禁用特定程序的 UAC(Windows 10)

禁用特定程序的 UAC(Windows 10)

在 Windows 8.1 上,以下注册表更改允许具有管理员权限的用户启动特定应用程序,而不会User Access Control弹出有关对计算机所做的更改的警告:

[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\path\\to\\app\MyApp.exe"="RunAsInvoker"

例如,要Registry Editor使用 UAC 提示打开或合并 .reg 文件:

"C:\\Windows\\regedit.exe"="RunAsInvoker"

无法在 Windows 10 上实现此功能 - 无论如何都会出现 UAC 提示。这在 Windows 10 上可行吗?

答案1

您可以使用任务计划程序执行此操作。这比乱弄注册表要好得多,因为注册表很容易出问题。

为特定应用程序禁用 UAC

Windows:当用户帐户控制每次都提示您批准某些应用程序时,它可能会很令人讨厌。

技巧和窍门博客 MakeUseOf 建议将经常出现的违规行为添加到任务计划程序中以避免这种烦恼。

该过程有点繁琐,但如果您熟悉任务计划程序,则很容易:

在任务计划程序中,右键单击“任务计划程序库”,然后选择“新建文件夹”,随意命名。

选择新文件夹并单击“创建任务”(而不是“创建基本任务”)

为任务起一个描述性的名称。启用“以最高权限运行”,然后在“配置”下选择您的操作系统。

在“操作”选项卡下,如果尚未选择,请在“操作”下拉菜单中选择“启动程序”。单击“浏览”并找到应用程序的 .exe 文件(通常位于 C: 驱动器上的 Program Files 下)。

(笔记本电脑)在“条件”选项卡下,取消选择“仅当计算机使用交流电源时才启动任务”。

在桌面上,右键单击并选择新建 > 快捷方式。将“C:\Windows\System32\schtasks.exe /RUN /TN “文件夹名称\任务名称”粘贴到文本框中。

这将创建一个指向您的程序的链接,该链接将自动跳过询问对您的计算机进行更改的权限的提示。

该应用程序的图标不会传输,但这可以轻松修复。

如果 UAC 拦截了程序(非系统程序),则可以使用此解决方案从启动文件夹启动程序。否则,UAC 将阻止程序(没有提示或任何线索发生了什么),并且程序将永远不会启动。

当我用 Scheduler 文件夹和任务名称中的下划线替换空格时,上述方法对我有用

答案2

关于注册表编辑器的问题,我在 Windows 10 21H2 上找到了一个可行的解决方案,可以直接使用RegEdit。不幸的是,这个Task Scheduler答案对我来说不起作用,因为运行创建的快捷方式时什么都没有发生,这就是为什么我选择以下Registry Editor解决方案。

在注册表中,而不是RUNASADMIN指令作为附加到字符串值的值数据,其中包含我正在使用的应用程序/程序地址~ RUNASINVOKER。对于我这个调用者来说,这至少是完美的,因为我使用的是管理员用户帐户。当您按照上述说明进入注册表地址时

[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]

您可以添加特定程序或编辑现有字符串。无论哪种方式,示例都如下 D:\APPS\HWAIDA64_Extreme\AIDA64_Extreme_6.60.5900\aida64.exe所示字符串值/姓名,~ RUNASINVOKER作为值数据

很抱歉,但这是我的第一篇超级用户帖子,所以不知道如何最清楚或最好地描述我的解决方案/答案,所以我希望它不会太令人困惑。

*编辑 因此,我最初用来测试此方法的程序显然不需要以管理员身份运行才能运行。至少我最初使用它们时不需要。这意味着,当我在需要以提升的权限运行的应用程序上尝试此方法时,我遇到了问题,只要我使用~ RUNASINVOKER指令Registry Editor已添加。应用程序无法运行。这真是糟透了,而且由于Task Scheduler解决方案不起作用,我运气很差,又回到了原点。真希望有知识的人可以简单地创建一个小的批处理文件/脚本/应用程序或诸如此类的东西,这样就可以轻松地将您想要的任何程序添加到白名单中,您可以添加所有您想要的非 UAC 提示程序... 唉...这很可能仍然是dream

答案3

使用便携式工具可以轻松完成此操作UAC 通行证(下载这里)。

使用这种方式启动程序时,我只看到这样的问题:这些程序在高分辨率显示器上突然不再能够正确地感知 DPI,奇怪的是,这种情况只出现在程序窗口的某些区域,例如,仅在相应程序的工具栏中。

这当然不是由于 UAC Pass,但可能与通过任务计划程序的启动方法有关。

答案4

只需前往:

注册表编辑器中的 [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]。

然后,创建一个字符串值并放入 .exe 文件的目录,并将该值设置为~ RUNASINVOKER。适用于 Windows 11。我试过了。

相关内容