Windows注册表中修改UAC(用户账号控制)及批处理脚本

当我在windows电脑上安装软件时,或者设置开机启动软件时,会先弹出提示框:

用户账户控制

你要允许此应用对你的设备进行更改吗?

很烦人,我不想每次都提醒。需要关闭“用户账户控制”弹窗提醒的办法有很多,比如可以手动关闭或调低UAC(用户账户控制)。

控制面板 ——> 用户账户(或者 安全和维护) ——> 更改用户账户控制设置 ——> 将通知级别调低(从不通知)。

保存设置即可。

还可以修改注册表。

注册表路径:

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/System
键说明:
ConsentPromptBehaviorAdmin:通知强度级别
EnableLUA:是否关闭UAC
PromptOnSecureDesktop:桌面是否变黑

1:UAC高
ConsentPromptBehaviorAdmin:2
EnableLUA:1
PromptOnSecureDesktop:1

2:UAC中
ConsentPromptBehaviorAdmin:5
EnableLUA:1
PromptOnSecureDesktop:1

3:UAC低
ConsentPromptBehaviorAdmin:5
EnableLUA:1
PromptOnSecureDesktop:0

4:UAC关闭
ConsentPromptBehaviorAdmin:0
EnableLUA:0
PromptOnSecureDesktop:0

================================================
彻底关闭批处理脚本:CloseUAC.bat
================================================

::::::::::::::::::::::修改注册表,获取管理员权限::::::::::::::::::
@echo off
echo 获取Administrator权限
cacls.exe "%SystemDrive%System Volume Information" >nul 2>nul
if %errorlevel%==0 goto Admin
if exist "%temp%getadmin.vbs" del /f /q "%temp%getadmin.vbs"
echo Set RequestUAC = CreateObject^("Shell.Application"^)>"%temp%getadmin.vbs"
echo RequestUAC.ShellExecute "%~s0","","","runas",1 >>"%temp%getadmin.vbs"
echo WScript.Quit >>"%temp%getadmin.vbs"
"%temp%getadmin.vbs" /f
if exist "%temp%getadmin.vbs" del /f /q "%temp%getadmin.vbs"
exit

:Admin
echo 成功取得Administrator权限

::::::::::::::::::::::修改注册表,关闭UAC::::::::::::::::::
reg add "HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem" /v "ConsentPromptBehaviorAdmin" /t reg_dword /d 0 /F
reg add "HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem" /v "EnableLUA" /t reg_dword /d 0 /F
reg add "HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem" /v "PromptOnSecureDesktop" /t reg_dword /d 0 /F

pause

新建记事本将上面代码复制到文本中,另存为 CloseUAC.bat ,使用ANSI编码格式。然后右键运行它。

原文地址:https://www.cnblogs.com/xiongzaiqiren/p/15005682.html