我有可怕与一些V9,V10的看似随机的故障数(见我在这个答案的结论注),和V11的Adobe Flash MSI的不卸载或升级不当,而使PC上的MSI数据库的状态这让我很警惕。我最终不得不使用一个启动脚本:
检查HKEY_LOCAL_MACHINE\SOFTWARE\Macromedia\FlashPlayer\CurrentVersion
注册表值以查看当前安装的版本是否为最新版本(WOW6432NODE
如有必要,将a添加到该路径中),如果当前版本为最新,则停止运行
使用旧的,不受支持的,现在无法使用的msizap.exe
实用程序从“当日备份”中删除已知失败的MSI(包括{2BD2FA21-B51D-4F01-94A7-AC16737B2163},{B7B3E9B3-FB14-4927-894B- E9124509AF5A}和{FA1D6742-0515-4A94-AD5D-F0484026E4A2})。
使用Adobe提供的卸载程序EXE静默删除任何当前版本的Flash
将当前Adobe提供的EXE安装程序与-install activex
参数一起使用(我仅在大多数站点中安装ActiveX控件)以安装当前版本
写出一个“ mms.cfg”。文件以防止自动升级
这是我的启动脚本的清理版本。如果要执行此操作,则需要外出并抓住适当的EXE。
@echo off
SET MSIZAP=\\my.domain.com\netlogon\bin\msizap.exe
SET DFSPATH=\\my.domain.com\dfsroot\Packages\Adobe
SET UNINSTALL=%DFSPATH%\uninstall_flash_player_x86.exe
SET INSTALL=%DFSPATH%\install_flash_player_11.4.402.278_active_x.exe
rem Detect 64-bit Windows
IF NOT "%ProgramFiles(x86)%"=="" SET WOW6432NODE=WOW6432NODE\
SET VER_FLAG_KEY=HKEY_LOCAL_MACHINE\SOFTWARE\%WOW6432NODE%Macromedia\FlashPlayer
SET VER_FLAG_VALUE=11,4,402,278
REG QUERY "%VER_FLAG_KEY%" /v CurrentVersion | find /i "%VER_FLAG_VALUE%" > NUL 2>NUL
if errorlevel 1 goto do_install
goto :EOF
:do_install
rem Uninstall all old versions of Flash.
start /wait /min "" "%UNINSTALL%" -uninstall activex
rem MSIZAP all old versions
start /wait /min "" "%MSIZAP%" TW! {2BD2FA21-B51D-4F01-94A7-AC16737B2163}
start /wait /min "" "%MSIZAP%" TW! {B7B3E9B3-FB14-4927-894B-E9124509AF5A}
start /wait /min "" "%MSIZAP%" TW! {FA1D6742-0515-4A94-AD5D-F0484026E4A2}
rem Run new installer
start /wait /min "" "%INSTALL%" -install activex
rem Block future automatic updates
SET DEST="%windir%\system32\Macromed\Flash\mms.cfg"
rem Detect 64-bit Windows
IF NOT "%ProgramFiles(x86)%"=="" SET DEST="%windir%\SysWOW64\Macromed\Flash\mms.cfg"
rem I'm using "sort" here because the redirect is being interpreted as "1>" and
rem doing "1 >" causes a space to be stored in the file, which "breaks" the file.
echo AutoUpdateDisable=1|sort>%DEST%
我看到的卸载旧Flash MSI的问题主要是:
对我来说,打断骆驼背的稻草在带有1000多个客户端PC的客户站点中随机看到这些错误。我需要确保Flash更新正在发生,并且没有MSI随机无法卸载的选择。MSI故障会在随后的每次引导中发生,从而减慢了引导过程,这一事实增加了对伤害的侮辱。
我没有详细介绍v11 MSI。v9和v10 MSI只不过是一个自定义操作,用于使用命令行参数执行基于EXE的Flash安装程序。MSI的质量令我印象深刻,因为使用Windows Installer仅运行基于EXE的安装程序并不使用 Windows Installer。