Я обновляю 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 через политику установки программного обеспечения. Как обновить?
источник
msiexec /x {the-product-guid} /qn
- Это должно удалить продукт [ы]. Я не думаю, что MsiZap поддерживается .Ответы:
Вы пытаетесь установить новую версию поверх старой, и вы полагаетесь, что установщик удалит ее? Или вы говорите установщику Windows сначала удалить старую, перед установкой новой?
Если вы делаете первое, я рекомендую вам переключиться на более позднее, потому что у меня был почти только хороший опыт с этим. Единственное исключение было, когда Adobe однажды ввела неправильный номер версии в команду удаления внутри msi (но это было воспроизводимо на 100% и, таким образом, сразу же было видно на тестовой машине перед развертыванием).
См. Https://serverfault.com/a/441131/144344 и /server//a/564881/144344.
источник