MSIZAPはまだ有用ですか、それとも時代遅れですか?


12

グループポリシーによってインストールされた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%

出典:ソフトウェアインストールポリシーを介してFlash Playerを展開しました。アップグレード方法


リストGUIDがある場合は、単にそれらを歩いてアンインストールしないのですか?次のようなものです。- msiexec /x {the-product-guid} /qn製品をアンインストールする必要があります。MsiZapがサポートされているとは思わない。
jscott

1
これらのプログラムは、グループポリシーを使用して完全にアンインストールできず、fix itツールでクリーンアップするまで再インストールまたはアップグレードできないことに注意してください。私の知る限り、msiexecは、実際に機能している場合にのみ機能します。
強制フロー

FlashインストーラーをMSIで再パッケージしますか、それとも提供されているものを使用しますか?MSIはここ数年で大幅に変更されていないため、基礎となるメカニズムは実際には変更されていません。とは言っても、そもそもザッピングは、将来の失敗につながる可能性のあるブルートフォースメカニックです。PowerShellを使いやすい場合、Fix Itは基本的に自動化できますが、公式にはお勧めしません。(Microsoftで働いているのでお勧めしません-内臓はPowerShellであり、理論的にはそれができると言っているだけです。)
マシューウェットモア

回答:


0

古いバージョンの上に新しいバージョンをインストールしようとしており、そのインストーラーが削除を行うことに依存していますか?または、新しいものをインストールする前に、最初に古いものをアンインストールするようにWindowsインストーラーに指示しますか?

前者を行う場合は、後者に切り替えることをお勧めします。これは、私がこれに関してほとんど良い経験しかなかったためです。唯一の例外は、Adobeがmsi内のアンインストールコマンドに間違ったバージョン番号を入力したときでした(ただし、これは100%再現可能で、展開前にテストマシンですぐに表示されました)。

/server//a/441131/144344および/server//a/564881/144344を参照してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.