我的脚本:
@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