MSIZAP все ще корисний, чи він застарів?


12

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

"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- Це повинно видалити продукт [s]. Я не думаю, що MsiZap підтримується .
jscott

1
Пам’ятайте, що ці програми не вдалося повністю видалити за допомогою групової політики, і їх не можна буде перевстановити чи модернізувати, поки не буде очищено інструмент виправлення. Наскільки мені було відомо, msiexec працює лише тоді, коли речі насправді функціонують належним чином.
Силовий потік

Ви перепаковуєте інсталятор Flash за допомогою MSI чи використовуєте той, який вони надали? MSI не змінився суттєво протягом декількох років, тому основна механіка насправді не змінилася. Але сказати, що першочерговий удар - це механік грубої сили, який, можливо, призвів до майбутніх невдач. Виправлення Це принципово автоматизовано, якщо ви відповідаєте PowerShell, хоча я офіційно не рекомендував би його. (Я працюю в Microsoft, тому я не рекомендую цього. Я просто кажу, що кишки PowerShell, і теоретично це можна зробити.)
Matthew Wetmore

Відповіді:


0

Ви намагаєтесь встановити нову версію над старою, і покладаєтесь на її інсталятор, чи видаліть її? Або ви скажете інсталятору Windows спочатку видалити старе, перш ніж встановлювати нове?

Якщо ви робите перше, я рекомендую вам перейти на пізніші, бо я мав майже лише гарний досвід з цим. Єдиним винятком було те, що колись Adobe вставила неправильний номер версії в команду для видалення всередині msi (але це було 100% відтворюваним і, таким чином, відразу видно на тестовій машині перед розгортанням).

Дивіться /server//a/441131/144344 та /server//a/564881/144344

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.