拒绝访问运行 gpo 登录批处理脚本执行 reg add/query

拒绝访问运行 gpo 登录批处理脚本执行 reg add/query

我使用的是安装了 Active Directory 的 MS Server 2012 R2 64 位。我想在用户登录计算机时执行一些批处理脚本。这些脚本使用“reg add/query”命令检查注册表项是否存在,如果不存在,它将创建该注册表项并为新项设置一个值。我遇到的问题是,似乎每次用户执行脚本时,脚本都会尝试执行 reg add/query 命令,并收到“访问被拒绝”消息。以下是我的批处理脚本示例:

reg query HKCU\Software\myownkey >null 2>&1

if %ERRORLEVEL%% NEQ 0 (
   echo myownkey doesn't exist. Must create it.
   reg add HKCU\Software /v myownkey /t REG_DWORD /f /d 1 >null 2>&1
)

PAUSE

当用户登录到计算机时,脚本会执行,然后暂停,以便我可以查看脚本是否正确执行。我看到的是,每次尝试查询/添加注册表时,它都会打印“访问被拒绝”。

有人知道如何解决这个问题吗?我最好使用 powershell 脚本,这样就不会遇到这个问题了吗?

提前谢谢你!

答案1

不要L重复NUL

reg query HKCU\Software\myownkey >NUL 2>&1

>null尝试将命令输出重定向到文件命名null在当前目录中,据称是C:\WindowsC:\Windows\system32

空设备是一个特殊的文件,它会丢弃写入的所有数据,但报告写入操作成功。

它通常用于隐藏命令的输出(或错误输出)。

例如

SomeCommand >nul

Nul不向任何读取它的进程提供数据( EOF立即产生)

更多示例请参见重定向页。

相关内容