Batch file 如何在注册表中获取版本号并使用批处理文件安装新软件?
我想在注册表中检查Muvizu的当前版本,如果它等于最新版本,如果不安装新版本,则不做任何事情。我想这是从批运行 我看过一些网站,比如这个: 但我正在努力调整代码并使其正常工作 需要查询的寄存器设置为: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Muvizu 节点为DisplayValue,最新版本为2013.10.25.01R 因此,本质上我需要一些wizzy批处理代码,它将执行以下操作: 检查注册表项, 如果regkey显示版本=2013.10.25.01r,则不执行任何操作, 其他的Batch file 如何在注册表中获取版本号并使用批处理文件安装新软件?,batch-file,Batch File,我想在注册表中检查Muvizu的当前版本,如果它等于最新版本,如果不安装新版本,则不做任何事情。我想这是从批运行 我看过一些网站,比如这个: 但我正在努力调整代码并使其正常工作 需要查询的寄存器设置为: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Muvizu 节点为DisplayValue,最新版本为2013.10.25.01R 因此,本质上我需要一些wizzy批处理代码,它将执行以下操作: 检查注册表项, 如果regke
运行安装程序这样的操作应该可以:
@echo off
setlocal
set regkey="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Muvizu" /v DisplayValue
for /f "tokens=3 delims= " %%a in ('reg query %regkey%^|Find "DisplayValue"') do (
if errorlevel 1 (
REM Run installer
goto :eof
)
if "%%a" NEQ "2013.10.25.01r" (
REM Run installer
) ELSE (
Echo You have the most recent version of Muvizu
)
)
像您所描述的那样,这样的方法应该可以工作
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Muvizu" |find /i "2013.10.25.01R" >nul || installer.exe
嗨,马特,这是一个处理,但是如果没有安装muvizu(即密钥不在那里),脚本错误表示找不到密钥。是否可以捕获此错误并运行安装程序?谢谢。。。。我认为这很管用,但我也做了一些其他的调整,但这正是我想要的。谢谢,标记为回答。