Вы здесь

Почему не устанавливаются программы из файлов .msi? Не работает windows installer

Почему не работает windows installer

Ошибки при установке приложений из файлов с расширением .msi - это одно из проявлений неполадок в работе службы Windows Installer (в русскоязычной версии - установщика Windows).

С подобным явлением сталкиваются юзеры всех версий данной OS, за исключением самых ранних. До сих пор проблема с установщиком является одной из частых причин, по которой пользователи решаются на переустановку системы. Попробуем разобраться, как этого избежать.

Windows Installer

Причиной того, что Windows Installer не работает, может быть следующее:

  • вирусное заражение, причем удаление вируса не всегда решает проблему;
  • некорректная установка обновлений Windows;
  • сбой в работе защитного ПО, когда вместо блокировки одного подозрительного msi-файла служба установки блокируется целиком;
  • изменения в политиках безопасности на компьютере;
  • повреждение системных файлов или реестра по причинам, не связанным с вирусами (удаление компонентов установщика, неквалифицированная правка реестра, "кривой" софт, неисправность жесткого диска и т. п.).

Проверяем целостность структуры Windows Installer

Установщик Windows представлен следующими компонентами:

  • файлом C:\Windows\System32\Msiexec.exe - непосредственно самим приложением-инсталлятором;
  • файлом C:\Windows\System32\msi.dll - библиотекой Windows Installer;
  • службой Msiserver, параметры которой хранятся в разделе реестра [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msiserver].

Перед диагностикой важно удостоверится, что в системе присутствуют оба этих файла, что в реестре есть вышеназванный раздел и его параметры имеют нормальные значения (значения можно посмотреть в реестре аналогичной, работоспособной системы). Также откройте список служб (нажмите Windows + R и впишите в строку "Открыть" приложения "Выполнить" команду services.msc). Найдите "Установщик Windows" и убедитесь, что он запускается.

Выполнить команду services.msc

В случае отсутствия файлов, скопируйте их с другой системы той же версии или с установочного диска.

Если отсутствует или поврежден раздел реестра - также перенесите его с рабочей системы. Для этого на исправном компьютере запустите редактор реестра (C:\Windows\Regedt.exe) и найдите вышеназванный раздел.

C:\Windows\Regedt.exe

Разверните правым кликом контекстное меню папки msiserver и щелкните пункт "Экспортировать". Сохраните файл в формате .reg и перенесите его на проблемную машину.

Msiserver

Щелкните дважды этот файл и подтвердите согласие на добавление данных в реестр. Перезагрузите компьютер.

Перезагрузите компьютер

Если служба Msiserver по прежнему не запускается, проверьте, работает ли служба RPC (Удаленный вызов процедур), от которой она зависит.

Удаленный вызов процедур

Выполнить перерегистрацию файлов установщика и перезапустить службу можно при помощи набора специальных команд, в командной строке. Для удобства можете создать командный файл: вставьте набор действий в блокнот и сохраните как с расширением .bat. Для запуска файла просто дважды нажмите по нему. Чтобы изменения начали действовать, кликните мышью по рабочему столу и нажмите F5.

Проверяем настройки безопасности и права доступа

Windows Installer может не работать и из-за того, что его блокирует защитный софт или у операционной системы нет необходимых прав.

Для начала разберемся с софтом. Если у вас установлен антивирус - временно отключите его. Способы отключения у каждого продукта свои, но чаще всего это делается через контекстное меню значка антивируса в системном трее.

Теперь займемся правами. Откройте контекстное меню Msiexec.exe и разверните его свойства.

Откройте контекстное меню Msiexec.exe

Посмотрите список групп и пользователей на вкладке "Безопасность". Среди них обязательно должны быть "Система" и служба "Trustedinstaller", причем последней необходимо иметь полный доступ к файлу и являться его владельцем. Система должна иметь права на "чтение" и "чтение и выполнение".

Чтение и выполнение

Служба Trustedinstaller впервые появилась в Windows Vista, поэтому в Windows XP полный доступ необходимо предоставить системе. Всё, что написано ниже, относиться к версиям, выпущенным позже XP.

Чтобы проверить, кто владелец Msiexec.exe, щелкните кнопку "Дополнительно" на этой же вкладке.

Дополнительно

В следующем окне раскройте вкладку "Владелец". Сделайте владельцем службу Trustedinstaller, если в качестве него указано что-то другое. Если в списке "Изменить владельца на" его нет, щелкните кнопку "Изменить", а следом - "Другие пользователи и группы".

Другие пользователи и группы

Впишите Trustedinstaller в поле "Введите имена...", нажмите "Проверить имена" и ОК.

Вернитесь в предыдущее окно. На вкладке "Действующие разрешения" назначьте Trustedinstaller и системе необходимые права.

Trustedinstaller

Точно такие же настройки безопасности должны быть у библиотеки msi.dll.

Теперь проверим, нет ли ограничений для пользователя "Система" на доступ к следующему:

  • системный диск (обычно это диск С);
  • временные папки (это C:\Windows\Temp и C:\Users\Текущий_пользователь\AppData\Temp);
  • папка C:\Config.Msi;
  • папка, где находится msi-файл, из которого вы пытаетесь установить программу.

На все эти объекты системе нужно предоставить полный доступ. Делается это также, как мы разобрали выше.

После этих операций в большинстве случаев проблема с установщиком успешно решается. Если наши советы вам не помогли, причина сбоя кроется в чем-то другом и разбираться с ней должны уже специалисты.

Добавить комментарий

Fill in the blank.

наверх