繁体   English   中英

批处理文件以查询注册表

[英]Batch file to query registry

我正在尝试获取批处理脚本,以检查是否存在两个注册表项,如果存在,请转到...

到目前为止,我的代码可以运行,但只需要检查两个密钥是否都存在以及一个或另一个是否存在,就可能会出现HKCU\\SOFTWARE\\MICROSOFT\\OFFICE\\14.0HKCU\\SOFTWARE\\MICROSOFT\\OFFICE\\15.0两者都存在。

如果两个键都存在,我需要它执行:O2010:O2013

目前,如果两者都存在,那么它会在运行之后停止:O2010

@ECHO OFF

REG QUERY HKCU\SOFTWARE\MICROSOFT\OFFICE\14.0 > NUL
IF NOT ERRORLEVEL 1 GOTO :O2010

REG QUERY HKCU\SOFTWARE\MICROSOFT\OFFICE\15.0 > NUL
IF NOT ERRORLEVEL 1 GOTO :O2013

GOTO :END

:O2010
reg import \\path_to_reg_file\regkey1.reg
GOTO :END

:O2013
reg import \\path_to_reg_file\regkey2.reg
GOTO :END

:END

任何帮助将非常感激。

你是这个意思吗?

@ECHO OFF

REG QUERY HKCU\SOFTWARE\MICROSOFT\OFFICE\14.0 > NUL
IF NOT ERRORLEVEL 1 reg import \\path_to_reg_file\regkey1.reg

REG QUERY HKCU\SOFTWARE\MICROSOFT\OFFICE\15.0 > NUL
IF NOT ERRORLEVEL 1 reg import \\path_to_reg_file\regkey2.reg

这样的事情应该做到:

@ECHO OFF

REG QUERY HKCU\SOFTWARE\MICROSOFT\OFFICE\12.0 > NUL
IF NOT ERRORLEVEL 1 set f1=1

REG QUERY HKCU\SOFTWARE\MICROSOFT\OFFICE\15.0 > NUL
IF NOT ERRORLEVEL 1 set f2=2

set /a f3=f1+f2
if %f3%==1 (echo reg import \\path_to_reg_file\regkey1.reg)
if %f3%==2 (echo reg import \\path_to_reg_file\regkey2.reg)
if %f3%==3 (echo reg import \\path_to_reg_file\regkey1.reg & echo reg import \\path_to_reg_file\regkey2.reg)

这将导入reg键,如下所示:

A)如果任何一个密钥存在,它将导入关联的reg密钥
B)如果两个密钥都存在,它将导入两个密钥

@ECHO OFF
REG QUERY HKCU\SOFTWARE\MICROSOFT\OFFICE\14.0 > NUL && reg import \\path_to_reg_file\regkey1.reg
REG QUERY HKCU\SOFTWARE\MICROSOFT\OFFICE\15.0 > NUL && reg import \\path_to_reg_file\regkey2.reg

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM