在Windows批处理脚本(bat)中,可以使用reg query命令来读取注册表值。以下是一个基本的示例,展示了如何读取注册表中的值。
假设你想读取HKEY_CURRENT_USERSoftwareYourSoftware路径下的YourKey键的值,你可以使用以下命令:
@echo off set KEY_PATH=HKEY_CURRENT_USERSoftwareYourSoftwareYourKey reg query "%KEY_PATH%" /v YourValueName > temp.txt for /f "tokens=3 delims= " %%a in (temp.txt) do set value=%%a echo Value is: %value% del temp.txt
在这个脚本中:

set KEY_PATH 是你的注册表路径,你需要替换YourSoftware 和YourKey 为实际的软件名和键名。
reg query "%KEY_PATH%" /v YourValueName 是查询命令,/v 参数表示查询特定的值名(这里是YourValueName),你需要替换YourValueName 为你想查询的实际值名,查询结果会被重定向到临时文件temp.txt 中。
for /f "tokens=3 delims= " %%a in (temp.txt) do set value=%%a 是用于从临时文件中提取查询到的值的命令,这里假设注册表查询的输出格式没有变化,即值名后面跟着等号,然后是值,如果格式有变,可能需要调整tokens 和delims 参数来正确提取值。
echo Value is: %value% 是输出查询到的值。

del temp.txt 是删除临时文件。
读取注册表通常需要管理员权限,因此你可能需要以管理员身份运行批处理脚本,由于注册表的复杂性,这个简单的脚本可能无法处理所有可能的情况,你可能需要根据实际情况进行调整。









