64位系统使用reg add添加注册表信息时被重定向

写evtsys的客户端修改脚本的时候发现的问题
用以下脚本添加注册表信息,
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\ECN\EvtSys\3.0" /v MaxMessageSize /t REG_DWORD /d 2048 /f
最终却写入到下面的注册表路径中
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ECN\EvtSys\3.0 

最后发现是64位系统自动转换了路径,在命令的最后面加上 /reg:64 即可
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\ECN\EvtSys\3.0" /v MaxMessageSize /t REG_DWORD /d 2048 /f /reg:64 

完整脚本如下,大致是停止现有evtsys,拷贝新的evtsys和cfg配置文件,修改注册表,重启服务
@echo off
net stop evtsys
taskkill /f /im evtsys.exe 2>nul
copy /y evtsys.exe C:\windows\system32\evtsys.exe
copy /y evtsys.cfg C:\windows\system32\evtsys.cfg
rem evtsys.exe -u
rem evtsys.exe -i -h 10.113.7.23 -f local3
reg.exe add "HKEY_LOCAL_MACHINE\SOFTWARE\ECN\EvtSys\3.0" /v MaxMessageSize /t REG_DWORD /d 2048 /f /reg:64
rem 修改单条日志最大长度为2K
reg.exe add "HKEY_LOCAL_MACHINE\SOFTWARE\ECN\EvtSys\3.0" /v Facility /t REG_DWORD /d 19 /f /reg:64
rem 修改Facility级别 /d 后面的数字根据需要修改,仅用于64位系统
net start evtsys
echo 完成.
pause
del /q evtsys.exe evtsys.cfg install_evtsys.exe install_evtsys.bat 

你可能感兴趣的:(64位系统使用reg add添加注册表信息时被重定向)