REG ADD 忽略 /f

REG ADD 忽略 /f

我的脚本:

@ECHO OFF

SET RegPath="HKEY_CURRENT_USER\Software\Microsoft\VBA\7.0\"

REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit" /v LastKey /t REG_SZ /d "%RegPath%" /f

START RegEdit

尽管包含了/f,但系统始终提示我替换条目。如何才能让 REG ADD 命令不提示而只替换条目?

答案1

如果按原样运行它,您将看到添加到注册表的值实际上是HKEY_CURRENT_USER\Software\Microsoft\VBA\7.0" /f- 包括一个孤立的引号,并且该/f引号是一个单独的参数。

这里的问题是,您通过变量本身添加了太多引号,更不用说在对变量的调用中了,因此Reg参数的开始和结束位置令人困惑。

删除所有多余的引号,它就可以按预期工作:

@ECHO OFF

SET RegPath=HKEY_CURRENT_USER\Software\Microsoft\VBA\7.0\

REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit" /v LastKey /t REG_SZ /d %RegPath% /f

START RegEdit

相关内容