我必须在多个独立系统上安装 Windows 更新。我有 update_script.bat 脚本要运行,但当它循环安装每个更新时,UAC 控件会提示我输入凭据。所以我找到了一个命令行选项来关闭 UAC。
@echo off
echo Disabling UAC controls...
C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f
C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 0 /f
shutdown /l /f
这样,当我将脚本传递给下属管理员时,他们可以快速运行第一个脚本;它会自动注销它们,然后他们可以执行第二个脚本(update_script.bat)文件,但我遇到的问题是,当我测试第一个脚本以关闭 UAC 时,命令窗口停在:
禁用 UAC 控制...
操作成功完成。
c:\更新>
而不是完成并强制注销用户。
禁用 UAC 控制后,如何让系统/脚本强制注销?
答案1
消除
C:\Windows\System32\cmd.exe /k
来自批处理文件。
运行cmd.exe
将启动一个新的命令提示符,这通常不是您在批处理文件中想要的。