MSIZAP все еще полезен или устарел?

12

Я обновляю flash, используя файлы MSI, установленные групповой политикой. Однако при каждом обновлении около трети рабочих станций не обновляются (32/64-разрядные версии Windows Vista и Windows 7). В журналах событий появляется это сообщение:

«Adobe Flash Player 11 ActiveX - Ошибка 1714. Старую версию Adobe Flash Player 11 ActiveX удалить нельзя. Обратитесь в группу технической поддержки. Системная ошибка 1612».

Единственный способ решить эту проблему - использовать инструмент Microsoft Fit It . Тем не менее, это очень трудоемкий процесс, который занимает около 15 минут для каждой рабочей станции вручную, поэтому он эффективно убивает целый день каждый раз, когда выходит флэш-обновление.

Я столкнулся с этим сценарием, который включает 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
Помните, что эти программы не удалось полностью удалить с помощью групповой политики, и их нельзя переустанавливать или обновлять до тех пор, пока они не будут очищены с помощью инструмента исправления. Насколько мне было известно, msiexec работает только тогда, когда все работает правильно.
Force Flow
Вы перепаковываете установщик Flash с MSI или используете тот, который они предоставили? MSI существенно не изменился за несколько лет, поэтому основные механизмы не изменились. Тем не менее, удар в первую очередь - это грубая механика, которая могла привести к будущим неудачам. Исправление Это принципиально автоматизировано, если вы легко используете PowerShell, хотя я бы официально не рекомендовал его. (Я работаю на Microsoft, поэтому я не буду рекомендовать это - я просто говорю, что смелость - это PowerShell, и теоретически это можно сделать.)
Мэтью Ветмор

Ответы:

0

Вы пытаетесь установить новую версию поверх старой, и вы полагаетесь, что установщик удалит ее? Или вы говорите установщику Windows сначала удалить старую, перед установкой новой?

Если вы делаете первое, я рекомендую вам переключиться на более позднее, потому что у меня был почти только хороший опыт с этим. Единственное исключение было, когда Adobe однажды ввела неправильный номер версии в команду удаления внутри msi (но это было воспроизводимо на 100% и, таким образом, сразу же было видно на тестовой машине перед развертыванием).

См. Https://serverfault.com/a/441131/144344 и /server//a/564881/144344.

Клаус Хартнегг
источник