пятница, 19 июля 2019 г.

Сбис. Ошибка установки: Не удалось выполнить сценарий, требуемый для завершения текущей установки.

При установке сбис плагина 3 возникла ошибка:
Обнаружена неполадка, связанная с пакетом установщика Windows. Не удалось выполнить сценарий, требуемый для завершения текущей установки.
Обращение в тех поддержку, в лучших традициях жанра, не помогло. Технический специалист даже брал паузу что бы посоветоваться с разработчиками, в итоге рекомендация как всегда в духе "у нас всё хорошо, сами разбирайтесь", если дословно то посоветовали поставить все обновления на систему и якобы эта проблема обычно связана только с этим или с поломкой ОС.


Обновления в системе на тот момент все стояли, парочку только не успели захватить, но это конечно не помогло, сам плагин в системе до этого не присутствовал да и не ставился никогда ранее, проверка через sfc тоже ничего не дала, что ж надо разбираться самим тогда.

Если запустить установку с логированием:
msiexec /L*v log.txt /i sbis3plugin-setup.msi
То в логе в моём случае попалась строчка:
Ошибка 1720. Обнаружена неполадка, связанная с пакетом установщика Windows. Не удалось выполнить сценарий, требуемый для завершения текущей установки. Обратитесь в службу поддержки или к поставщику пакета. Настраиваемое действие CA_RemoveOldPlugin, ошибка сценария -2147221164, SWbemObjectEx: Класс не зарегистрирован , строка 138, столбец 5,
MSI (s) (4C:C4) [00:59:42:171]: Продукт: СБИС3 Плагин — Ошибка 1720. Обнаружена неполадка, связанная с пакетом установщика Windows. Не удалось выполнить сценарий, требуемый для завершения текущей установки. Обратитесь в службу поддержки или к поставщику пакета. Настраиваемое действие CA_RemoveOldPlugin, ошибка сценария -2147221164, SWbemObjectEx: Класс не зарегистрирован , строка 138, столбец 5,  
MSI можно распаковать 7zip-ом и посмотреть что есть файл скрипта с названием RemoveOldPlugin, открыв его можно убедится что ничего "военного" там нет, просто проверка и удаление прошлой версии, но почему то вот он не отрабатывал. То есть можно его было бы исключить из процесса установки, но как?

Гугление на тему редактирования файла MSI приводит к уже знакомому методу распаковки пакета 7z-ом, но так же и нашёлся вариант - ORCA MSI Editor

Далее согласно найденного руководства наши действия выглядят так:
  1. Запустили
  2. Открыли sbis3plugin-setup.msi
  3. Меню Transform->New Transform
  4. Слева в меню Tables выбираем CustomAction(в ошибке префикс действия CA наводит на мысль об этом) и видим там строчку столбец Action поле CA_RemoveOlDPlugin
  5. Правой кнопкой мыши по этой строке и выбираем Drop row
  6. Меню Transform->Generate Transform
  7. Сохраняем рядом с установочником под любым названием, например p0.mst
  8. Запускаем установку через msiexec:
msiexec /L*v log.txt /i sbis3plugin-setup.msi TRANSFORMS=p0.mst
В итоге плагин нормально ставится пропуская этап поиска и удаления прошлых версий

6 комментариев:

  1. Столкнулся с подобной проблемой на версии 19.507.80, только в моем случае пришлось отключать в таблице InstallExecuteSequence строку CA_InstallWindowsKB. Спасибо за полезный пост.

    ОтветитьУдалить
  2. Тоже такое, сейчас буду пробовать исправить

    ОтветитьУдалить
  3. Подтверждаю, косяк в сценарии CA_InstallWindowsKB. Пипец они понапрограммировали программизды туевы.

    ОтветитьУдалить
  4. тоже вылезало подобное! рецепт не помог. У меня даже ярлычок создавался при обычной установке, поэтому решил прервать ее на моменте ошибки. При запуске недоустановленного плагина вылезла ошибка api-ms-win-crt-runtime-l1-1-0.dll. Поэтому установил обновление С++. Плагин запустился, но браузер его не увидел. После перезагрузки компа плагин исчез. Занового его скачал и он поставился!
    Помогло что-то из этого
    1. установка Обновление для универсальной среды выполнения C++ https://support.microsoft.com/ru-ru/help/2999226.
    2. перезагруз компа после установки
    3.

    ОтветитьУдалить
  5. Подтверждаю, косяк в сценарии CA_InstallWindowsKB. Пипец они понапрограммировали программизды туевы.
    Абсолютно с Вами согласен.

    ОтветитьУдалить
  6. Разобрал msi в exe и со 2й попытки от Администратора установил..

    ОтветитьУдалить