我需要一些帮助来完成以下工作。它之前(与其他软件)一起工作,但在Flash的情况下,它不是。我试图完成的是检查安装的Flash版本。如果安装的Flash版本不是我想要的,我希望脚本卸载当前版本并安装我所需的版本。检查Flash版本的脚本没有真正检查版本
:: Check Flash version and install if not matching.
:: Set version to check for.
SET latestVersion=11.5.502.135
SET key="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Adobe Flash Player Plugin"
for /f "tokens=3 delims= " %%G in ('reg query %key% /v DisplayVersion ^| findstr /i current') do (
echo %%G
if %%G EQU %latestVersion% goto END
if %%G NEQ %latestVersion% goto Install
)
:INSTALL
:: Kill IE & FF
taskkill /f /im iexplore.exe /im firefox.exe
::Uninstall Flash
\\path-to-server\Flash-FF-11.8.800.94.exe -uninstall
:: Install Flash for Firefox
\\path-to-server\Flash-FF-11.5.502.135.exe -install
:: Install Flash for IE
\\path-to-server\Flash-IE-11.5.502.135.exe -install
:: Kill Flash updating
COPY /y \\path-to-server\mms.cfg C:\WINDOWS\System32\Macromed\Flash\mms.cfg
:END
问题是它没有读取安装的版本。它不是回显11.5.502.135之类的东西,而是回应“%G”。而且由于%G不等于我想要的版本(11.5.502.135),所以每次都安装它。
因此缩小了下去,下面是我的问题:
for /f "tokens=3 delims= " %%G in ('reg query %key% /v DisplayVersion ^| findstr /i current') do (
echo %%G
if %%G EQU %latestVersion% goto END
if %%G NEQ %latestVersion% goto Install
)
当手动键入它,只要我停在“DisplayVersion”我知道我正在寻找的信息。但是一旦我进入()内部的最后部分,那就是当我得到错误时。
你的*闪光灯对于其他浏览器检查*? – fauverism