![如何将 .reg 文件中的注册表项插入 64 位 Windows 上的 32 位注册表中](https://linux22.com/image/1235166/%E5%A6%82%E4%BD%95%E5%B0%86%20.reg%20%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E6%B3%A8%E5%86%8C%E8%A1%A8%E9%A1%B9%E6%8F%92%E5%85%A5%2064%20%E4%BD%8D%20Windows%20%E4%B8%8A%E7%9A%84%2032%20%E4%BD%8D%E6%B3%A8%E5%86%8C%E8%A1%A8%E4%B8%AD.png)
在 64 位 Windows (Vista/7) 中,HKLM\Software\Wow6432Node
所有 32 位注册表内容都在这里。如果我有一个包含一些键的 .reg 文件,我该如何告诉 regedit 将其导入 32 位注册表(在 下Wow6432Node
)而不是 64 位注册表?
即使我将 Wow6432 路径放入 .reg 文件中的注册表项中,Windows 也会“巧妙地”忽略它们并将它们放入主 64 位注册表中。
答案1
您应该能够使用 32 位版本的 regedit 专门访问 32 位注册表。只需.reg
使用以下命令导入文件:
\Windows\syswow64\regedit.exe <REG_FILE.reg>
答案2
如果你使用的reg import yourfile.reg
是 32 位可执行文件或批处理文件,并且出于某些疯狂的原因,你希望里面的键yourfile.reg
不重定向要Wow6432Node
,只需使用以下语法:
reg import yourfile.reg /reg:64
就这么简单。
答案3
随 64 位 Windows 版本安装的工具reg
可识别注册表虚拟化技术。它有两个新开关:/reg:32
和/reg:64
。如果要将注册表导出从 32 位系统应用到 64 位系统,请使用以下命令行:
reg import <CONF-APP-32.reg> /reg:32
该reg
工具有一个命令行帮助,通过非常简短的形式解释了这一点reg import /?
。
...你也可以在网上找到这个(虽然用谷歌搜索有点难)例如:
答案4
我使用以下 powershell 命令来实现它:
$RegFileName = ($_.RegFileName).trim()
reg 导入“.\$RegFileName”/reg:32