グループポリシーによってインストールされたMSIファイルを使用してフラッシュを更新します。ただし、更新するたびに、ワークステーションの約3分の1が更新に失敗します(Windows VistaおよびWindows 7 32/64ビット版)。イベントログに次のメッセージが表示されます。
「Adobe Flash Player 11 ActiveX-エラー1714。古いバージョンのAdobe Flash Player 11 ActiveXは削除できません。テクニカルサポートグループにお問い合わせください。システムエラー1612。」
この問題に対処できた唯一の方法は、Microsoft Fit Itツールを使用することです。ただし、これは非常に時間のかかるプロセスであり、各ワークステーションで手動で実行するのに約15分かかるため、フラッシュアップデートがリリースされるたびに1日を効果的に終了します。
失敗したフラッシュのアンインストールを削除するMSIZAPを含むこのスクリプトに出会いました。だから、私の質問は次のとおりです。MSIZAPユーティリティは、フラッシュをプログラムで削除するための最良のアプローチですか、それともこの時点で廃止されていますか?私が尋ねる理由は、私がこのテーマで見つけたほとんどの資料は2009年または2010年のものだからです。
@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%
msiexec /x {the-product-guid} /qn
製品をアンインストールする必要があります。MsiZapがサポートされているとは思わない。