我正在尝试删除我制作的批处理文件中的一些注册表项。
我在这里找到了以下代码,它运行良好,直到它到达 REG DELETE
for /F "tokens=1,*" %%a in ('REG QUERY "%KEY%" ^| findstr /I /C:"%VALUE%"') do (REG DELETE %KEY% /v %%a)
该值位于 [HK_CLASSES_ROOT\Installer\Assemblies\Global]
正如您可能看到的那样,这里的大多数值都有引号,例如:
ADODB,fileVersion="7.10.2346.0",version="7.0.3300.00",culture="neutral",publicKeyToken="B03F5F7F11D50A3A"
这不完全是我想要删除的,但它非常接近。
因此,如果我回显 %%a 它会显示值名称,因为它在 regedit 中带有引号和所有内容。但是一旦它通过 REG DELETE(现在它要求确认)报价不存在,所以如果我点击是,它告诉我它找不到密钥。
显然它不能,因为它没有解析它最初发现的相同的东西。我一直在努力寻找解决方案,但到目前为止我还没有找到任何可以帮助我朝着正确方向前进的东西。我知道我可以在 vbs 中做同样的事情,但这是一行很长,而在 vbs 中做同样的工作会更长。
任何帮助表示赞赏,如果您需要更多信息,请询问,我刚刚开始处理批处理文件。我这样做是因为我每次在学校工作时都需要自动化我学校项目的所有依赖项的安装过程。(计算机被重影)
谢谢