如何从命令行或脚本更改注册表值或权限

本文介绍如何从命令行或脚本更改注册表值或权限。

适用于:Windows 10 - 所有版本,Windows Server 2012 R2
原始 KB 数: 264584

摘要

若要从命令行或脚本更改注册表值或注册表权限,请使用 Regini.exe 实用工具。 Regini.exe 实用工具包含在 Windows NT Server 4.0 资源工具包、Microsoft Windows 2000 资源工具包和 Microsoft Windows Server 2003 资源工具包中。

注意

Windows 2000 的 Regini.exe 实用工具不再受支持,并且无法从 Microsoft 下载。 此工具仅在原始 Microsoft Windows 2000 资源工具包 CD-ROM 上可用。

更多信息

使用 Regini 更改注册表值或权限的语法为:
REGINI [-m \\machinename] 文件

此处, -m \\machinename 选项用于修改远程计算机的注册表 ,文件表示 包含注册表更改的脚本文件的名称。

文本文件应包含以下格式的注册表更改。
\Registry\Hiveroot\Subkeys registry value=data [permissions]

Regini 实用工具适用于内核注册表字符串。 使用 等方式在用户模式下 HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER访问注册表时,字符串在内核模式下转换,如下所示:

  • HKEY_LOCAL_MACHINE转换为 \registry\machine
  • HKEY_USERS转换为 \registry\user
  • HKEY_CURRENT_USER转换为 \registry\user\user_sid,其中user_sid是与用户关联的安全 ID。
  • HKEY_CLASSES_ROOT转换为 \registry\machine\software\classes

例如,将位于 HKEY_LOCAL_MACHINE 配置单元中的注册表值 DiskSpaceThreshold 更改为0x00000000值的脚本文件将编写如下。

\registry\machine\system\currentcontrolset\services\lanmanserver\parameters DiskSpaceThreshold = REG_DWORD 0x00000000

注册表项权限由用空格分隔的二进制数指定,对应于 Regini.doc 文件编号,用于指定授予特定组的某些权限。 (例如,数字 1 指定管理员 - 完全控制) 。 可以使用资源工具包实用工具 REGDMP 获取二进制数字格式注册表项的当前权限。

警告

使用 Regini 更改权限时,将替换当前权限,而不是编辑权限。

以下示例脚本文件显示了更改注册表项权限的语法。

\Registry\Machine\Software [1 5 10]

此脚本修改 HKEY_LOCAL_MACHINE\Software 为具有 权限。

Administrators - Full Control
Creator/Owner - Full Control
Everyone - Read

在 Windows XP 和 Windows Server 2003 中,必须将值括在引号中。 例如,可以使用以下脚本调用 AUoptions.txt。

regini.exe -m \\remoteworkstation auoptions.txt HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update "ConfigVer"= REG_DWORD 1 "AUOptions"= REG_DWORD 4 "ScheduledInstallDay"= REG_DWORD 0 "ScheduledInstallTime"= REG_DWORD 1

有关详细信息,请参阅特定操作系统的资源工具包中包含的 Regini.doc 文件。