通过批处理文件检查 Windows 注册表中是否存在密钥

Vin*_*ões 9 windows windows-registry batch

我是公共服务的 IT 支持人员。

我们必须定期做的一些工作是安装一些由我们自己的开发人员开发的软件。我们通常按照程序来做,在某些情况下,我们并不确切知道我们在做什么,只知道该做什么。在某些情况下,手头的任务是在 Windows 注册中添加一些注册键。但是由于这些程序中的许多程序依赖于基本相同的数据库,因此已经应用了一些步骤。我正在开发一个批处理文件来检查已采取和未采取的步骤。

所以我想知道我是否有一个注册表文件,在 Windows 注册表中充满了要编辑的条目,我可以使用相同的条目来检查它们是否已经应用于注册表。如果我可以将注册表项的内容复制到批处理文件以检查条目,或者我是否需要同时发送批处理文件和密钥文件来执行此过程。

Dav*_*ill 16

如何检查 Windows 注册表中是否存在密钥?

这可以使用reg query key

  • 此命令将设置%errorlevel%.

  • errorlevel=0 表示密钥存在。

  • errorlevel=1 表示密钥不存在。


如何在 Windows 注册表中添加密钥?

要添加一个不存在的密钥,请使用reg add key.


示例批处理文件

@echo off
reg query mykey >nul
if %errorlevel% equ 0 (
  echo "mykey exists- do nothing"
) else (
  echo "mykey does not exist - add the key and give it a value"
  reg add mykey
  reg add mykey /v value ...
)
Run Code Online (Sandbox Code Playgroud)

进一步阅读