Меню Закрыть

Msi installer что это

Содержание

Довольно распространённая проблема среди пользователей операционной системы Windows любых версий – ошибка msi при установке программ из файла с расширением .msi. В этой статье я опишу часто встречаемые проблемы с установщиком Windows 7/10/XP и варианты их решения, а также сделаю видео по текущему вопросу.

Файлы с расширением .msi это обычные пакеты установки (дистрибутивы) из которых ставится программа. В отличии от обычных «setup.exe», для запуска файла msi система использует службу Windows Installer (процесс msiexec.exe). Говоря простыми словами, установщик Windows разархивирует и запускает файлы из дистрибутива. Когда Windows Installer не работает, то появляются различные ошибки.

Вообще, меня это жутко бесит, т.к. после глупого сообщения об ошибке совсем непонятно что делать дальше. Microsoft специально разработали установщик Windows Installer для расширения возможностей установки программ (в основном это касается системных администраторов), но не позаботились должным образом о безглючной работе этой службы или хотя бы об адекватных сообщениях о проблемах. А нам теперь это разгребать 🙂

Неполадки могут быть с работой самой службы или могут возникать в процессе установки программ, когда всё настроено, в принципе, правильно. В первом случае нужно ковырять службу установщика, а во втором решать проблему с конкретным файлом. Рассмотрим оба варианта, но сначала второй.

Ошибки msi файлов

Очень часто ошибки появляются из-за недостаточных прав системы на файлы или папки. Нельзя сказать, что Windows Installer не работает, в этом случае достаточно просто добавить нужные права и всё заработает. Буквально вчера я столкнулся с тем, что скаченный дистрибутив .msi не захотел устанавливаться, при этом успешно запускается мастер установки, выбираются параметры, но затем система думает несколько секунд и выдаёт ошибку:

«Error reading from file «имя файла» verify that the file exists and that you can access it» (Error 1305). Переводится «Ошибка чтения из файла … проверьте существует ли файл и имеете ли вы к нему доступ». Ну не тупняк ли? Естественно, что кнопка «Повторить» не помогает, а отмена прекращает всю установку. Сообщение особой смысловой нагрузки также не несёт, т.к. файл точно существует и я имею к нему доступ, иначе бы просто не смог его запустить и получить это сообщение, к тому же почему-то на английском языке 🙂

А ошибка в том, что не Я должен иметь доступ к файлу, а установщик Windows, точнее сама Система. Решается очень просто:

  1. Кликаем правой кнопкой по файлу с расширением .msi, выбираем «Свойства»
  2. На вкладке «Безопасность» смотрим, есть ли в списке пользователь с именем «система» или «System»
  3. Скорее всего вы такого не увидите. Поэтому будем добавлять вручную. Нажимаем кнопку «Изменить…», затем «Добавить…»
  4. В поле пишем «система» или «System» (если у вас английская Windows) и нажимаем «Проверить имена». При этом слово должно стать подчёркнутым как на картинке.
  5. Нажимаем «ОК», ставим галочку «Полный доступ», «ОК»
  6. Кнопка «Дополнительно» -> «Изменить разрешения…» ставим «Добавить разрешения, наследуемые от родительских объектов», «ОК» три раза.

Теперь ошибка установщика не появится! Можно добавить доступ на всю папку, из которой вы обычно инсталлируете программы, например на папку «Downloads», как у меня. Смотрим видео по решению проблем с правами доступа:

В Windows XP вкладки «Безопасность» не будет, если включён простой общий доступ к файлам. Чтобы его выключить, нужно зайти в «Пуск -> Панель управления -> Свойства папки -> Вид» и выключить опцию «Использовать простой общий доступ к файлам». В урезанных версиях Windows 7/10 и XP вкладки «Безопасность» нет в принципе. Чтобы её увидеть, нужно загрузить Windows в безопасном режиме и зайти в неё под администратором.

Ещё способы решить проблему

  • Запускайте установку, войдя в систему под администраторским аккаунтом
  • Правой кнопкой по пакету «.msi» и выбираем «Запуск от имени Администратора»
  • Выключите антивирус на время
  • Включить режим совместимости с предыдущими операционными системами. Для этого зайдите в свойства файла msi и на вкладке «Совместимость» поставьте галочку «Запустить программу в режиме совместимости»
  • Если файл на флешке, то попробуйте скопировать его куда-нибудь на жёсткий диск и запустить оттуда (бывает, что запрещена установка программ со съёмных накопителей)
  • Попробуйте просто создать новую папку с любым именем в корне диска, перекинуть туда дистрибутив и запустить его оттуда

Описанный метод поможет при разных сообщениях, с разными номерами. Например, вы можете видеть такие ошибки файлов msi:

  • Error 1723
  • Internal Error 2203
  • Системная ошибка 2147287035
  • Ошибка «Невозможно открыть этот установочный пакет»
  • Ошибка 1603: Во время установки произошла неустранимая ошибка
Читайте также:  Болят уши от наушников iphone

Во всех этих случаях должна помочь установка прав на файл и/или на некоторые системные папки. Проверьте, имеет ли доступ «система» к папке временных файлов (вы можете получать ошибку «Системе не удается открыть указанное устройство или файл»). Для этого:

  1. Сначала узнаем нужные пути. Нажмите «Win + Pause» и зайдите в «Дополнительные параметры системы -> Вкладка «Дополнительно» -> кнопка «Переменные среды»»
  2. В списках ищем переменные с названиями «TEMP» и «TMP» (значения обычно совпадают), в них записаны пути к временным папкам, которые использует установщик Windows
  3. Теперь идём к этим папкам и смотрим в их свойствах, имеет ли к ним доступ «система». Чтобы быстро получить путь к временной папке пользователя, кликните два раза по переменной, скопируйте путь и вставьте его в адресной строке «Проводника» Windows

После нажатия «Enter» путь преобразится на «нормальный» и вы переместитесь в реальную временную папку. Права на неё и надо проверять. Также рекомендую очистить временные папки от всего что там скопилось или даже лучше удалить их и создать новые с такими же названиями. Если не получается удалить папку, почитайте как удалить неудаляемое, но это не обязательно.

Если служба Windows Installer всё равно не хочет работать, то проверьте права на папку «C:Config.Msi», сюда «система» также должна иметь полный доступ. В этом случае вы могли наблюдать ошибку «Error 1310». На всякий случай убедитесь, что к папке КУДА вы инсталлируете софт также есть все права.

Если вы используете шифрование папок, то отключите его для указанных мной папок. Дело в том, что хотя мы сами имеем к ним доступ, служба Microsoft Installer не может до них достучаться пока они зашифрованы.

Ещё ошибка может быть связана с битым файлом. Может быть он не полностью скачался или оказался битым уже на сервере. Попробуйте скачать его ещё раз оттуда же или лучше с другого места.

Ошибка установщика Windows

В случае общих проблем не будут устанавливаться никакие msi файлы, процесс установки, скорее всего, даже не начнётся. При этом могут появляться ошибки вида:

  • Нет доступа к службе установщика Windows
  • Не удалось получить доступ к службе установщика Windows
  • Ошибка пакета установщика Windows (1719)

или ещё нечто подобное со словами «ошибка msi», «Windows Installer Error». Всё это означает, что система дала сбой и теперь её надо лечить. Может вы ставили какой-то софт, который испортил системные файлы и реестр, или подхватили вирус. Конечно, никогда не будет лишним удалить вирусы, или убедиться что их нет. Но оставьте этот вариант на потом, т.к. обычно проблема кроется в другом.

Сначала давайте проверим работает ли служба Windows Installer:

  1. Нажмите «Win + R» и введите services.msc
  2. Найдите в конце списка службу «Установщик Windows» или «Windows Installer»
  3. Тип запуска должен быть «Вручную». Если она «Отключена», то зайдите в «Свойства» и выберите «Вручную»
  4. Затем кликните по ней правой кнопкой и выберите «Запустить» или «Перезапустить». Если ошибок нет и состояние переходит в режим «Работает», то здесь всё нормально.
  5. Нажмите «Win + R» и введите msiexec. Если модуль MSI работает нормально, то должно появиться окно с версией установщика и параметрами запуска, а не ошибка.

Следующее что я посоветую сделать – это выполнить команду сканирования системы на повреждённые и изменённые системные файлы. Нажмите «Win + R» и введите

Sfc /scannow

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

Microsoft сам предлагает утилиту, призванную решить нашу проблему. Запустите программу Easy Fix и следуйте мастеру.

Параметры реестра и службы

Следующий способ устранения ошибки – восстановление рабочих параметров в реестре установщика Windows Installer.

Для этого скачайте архив и запустите оттуда два reg-файла, соответственно своей версии Windows. Согласитесь с импортом настроек.

В Windows XP или Windows Server 2000 установите последнюю версию установщика 4.5.

Если не помогло, то проделайте ещё перерегистрацию компонентов:

  1. Нажмите «Win + R» и введите «cmd». Затем в чёрном окне введите последовательно команды:
    MSIExec /unregister
    MSIExec /regserver
  2. В ответ должна быть пустота, никаких ошибок. Если проблема не решена, введите ещё команду
    regsvr32 msi.dll
  3. Закройте чёрное окно

Если пишет, что не хватает прав, то нужно запускать командную строку от имени Администратора.

Если команды выполнились, но не помогло, то скачайте файл и запустите msi_error.bat из архива, проверьте результат.

Последний вариант — скачайте программу Kerish Doctor, почитайте мою статью, там есть функция исправления работы службы установщика и многих других частых проблем Windows.

Читайте также:  Доступ к требуемому сеансу отклонен server 2012

Также, многие программы используют .NET Framework, поэтому не будет лишним установить последнюю версию этого пакета. И, напоследок, ещё один совет: если в пути к файлу-дистрибутиву есть хоть одна папка с пробелом в начале названия, то удалите пробел. Такой простой приём решит вашу проблему 🙂

Подведение итогов

Ошибки с установщиком Windows очень неприятные, их много и сразу непонятно куда копать. Одно ясно – система дала сбой и нужно восстанавливать её до рабочего состояния. Иногда ничего не помогает и приходится переустанавливать Windows. Однако не торопитесь это делать, попробуйте попросить помощи на этом форуме. В точности опишите вашу проблему, расскажите что вы уже делали, какие сообщения получили, и, возможно, вам помогут! Ведь мир не без добрых людей 🙂

Описание формата MSI

Файл MSI относится к установочным пакетам для платформы Microsoft Windows. Данный формат файла, включает в себя наличие программного обеспечения, отвечающего за обновления ОС или установку определенных программных комплексов. MSI файл относят к документам OLE, содержащим определенные базы данных, которые состоят из наборов взаимосвязанных таблиц с заданной информацией.

Формат MSI может хранить пользовательский сценарий либо вспомогательную библиотеку DLL, последняя может требоваться в целях установки ПО. Файлы расширением .msi, возможно размещать отдельно от установочных пакетов, как в запакованном виде, так и в распакованном.

Чтобы выполнить открытие файла .msi, используют Windows Installer, являющийся штатным средством установки программ, разработанным компанией Майкрософт. Стоит отметить, что Microsoft Windows Installer, считается подсистемой и компонентом операционной системы Windows, начиная от версии Windows 2000. Установочный процесс распределяется на несколько этапов, включающих в себя сбор информации, действия, отвечающие за установку программ и возможный откат при наличии ошибок, когда операционная система начинает конфликтовать с загружаемым контентом.

Тип файла, имеющий расширение MSI, может работать и с утилитами файловой декомпрессии, к примеру Universal Extractor, The Unarchiver либо 7-Zip, такие приложения способны открыть MSI и извлечь его содержимое. Чтобы открыть файл, достаточно дважды кликнуть по нему посредством левой клавиши мыши. Примечательно, что .msi файл в Windows Vista, был заменен на расширение файла MSU. Если у пользователя не получается открыть файл MSI, есть вероятность того, что поврежден установочный пакет, файл или сам установщик Windows.

Windows Installer изначально входит в состав операционных систем семейства Windows .NET Server 2003, Windows XP, Windows 2000 и Windows Me; для операционных систем Windows NT 4.0, Windows 98 и Windows 95 он должен устанавливаться дополнительно (либо, как было сказано выше, при инсталляции какого-либо приложения, либо в виде отдельного пакета обновления).

В русскоязычной версии Windows служба Windows Installer именуется Установщик Windows. Следует понимать, что речь идет не о программе, «которая устанавливает Windows», а о программе, которая обеспечивает «установку для Windows».

Еще раз повторим, что по настоятельной рекомендации Microsoft все современные дистрибутивы «солидных» приложений должны создаваться на основе технологии MSI — так называемые инсталляторы MSI.

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

Хотя эта процедура запускается автоматически, полезно знать, что дистрибутив может содержать два ехе-файла для установки Windows Installer:

  • INSTMSI.EXE — стандартный инсталлятор;
  • INSTMSIW.EXE — инсталлятор с поддержкой кодировки Unicode (то есть с поддержкой расширенного набора символов для обеспечения многоязычности).

Так что, увидев в составе дистрибутива два этих файла, не пугайтесь: это не вирусы и не программы-шпионы (хотя. кто знает, чем занимается Windows Installer помимо инсталляции).

Windows Installer позволяет выполнять следующие задачи:

  • восстановление состояния компьютера после сбоя установка — Windows Installer продолжает записывать все изменения в системе во время установки приложения; в случае сбоя установки он может восстановить или вернуть систему в исходное состояние;
  • предотвращение определенных форм конфликта между приложениями — Windows Installer назначает правила установки, которые помогают, предотвратить конфликты с общими ресурсами в существующих приложениях; такие конфликты могут возникать при попытке программы установки обновить или удалить общие с существующим приложением библиотеки динамической компоновки (.dll);
  • надежное удаление существующих программ — Windows Installer может надежно удалить любую ранее установленную им программу; удаляются все связанные с ней записи реестра и файлы, кроме тех, которые являются общими с другим программным обеспечением;
  • диагностика и восстановление поврежденных приложений для проверки наличия в установленных приложениях поврежденных файлов. или отсутствия файлов эти приложения могут послать запрос к Windows Installer, если такие файлы будут найдены, Windows Installer восстановит приложение, скопировав только отсутствующие или поврежденные;
  • установка компонентов приложения по требованию (install on demand) — Windows Installer можно настроить на исходную установку минимального набора возможностей приложения; в дальнейшем дополнительные компоненты могут быть автоматически установлены при попытке пользователя получить доступ к возможностям приложения, для которых эти компоненты необходимы; возможность называют объявлением (advertisement), например Windows Installer может установить Microsoft Excel без поддержки средств аналитической обработки данных — при первой попытке доступа пользователя к функции анализа (не включенной в исходную установку) Windows Installer автоматически установит соответствующий компонент; точно так же Windows Installer удаляет компоненты, не используемые в приложении, например Можно настроить Windows Installer на удаление компонента анализа данных, если он не будет использоваться более 30 дней;
  • автоматическая установка приложений — пакеты установки можно настроить так, чтобы не прерывать процесс установки по требованию пользователя; во время процесса установки Windows Installer может запросить атрибуты Рабочего стола;
  • поддержка 32-разрядных и 64-разрядных приложений — допускается установка 32-разрядных приложений на 64-разрядные компьютеры;
  • поддержка технологии Microsoft .NET Framework;
  • интеграция с сосуществованием компонентов — исключает конфликты версий библиотек .dll, позволяя привязывать приложение к версии компонента, с которой оно было разработано и протестировано, вне зависимости от компьютера, на котором размещается приложение; сосуществование компонентов поддерживает одновременное выполнение нескольких версий каждого компонента;
  • возможность настройки параметров программного обеспечения разработчиками.
Читайте также:  Геймпад ritmix gp 020wps драйвер

Технология .NET Framework позволяет разрабатывать приложения, которые, будучи однажды написанными и скомпилированными, могут выполняться в любой среде. Архитектура .NET разделяет компоненты приложений. В результате приложение всегда загружает компоненты, с которыми оно было разработано и протестировано. Если приложение выполняется после установки, оно будет выполняться всегда. Исключается неверная работа приложений, вызванная заменой первоначальных библиотек .dll на файлы .dll, разработанные для более поздних версий. Технология работы Windows Installer базируется на использовании трех основных файлов:

  • файла пакета установи (в формате MSI), входящего в дистрибутив приложения;
  • файла программы установщика — Msiexec.exe; эта программа выполняет все задачи, связанные с установкой: копирует файлы на жесткий диск, вносит изменения в реестр, создает ярлыки на Рабочем столе и выводит диалоговые окна для запроса пользовательских предпочтений; Msiexec.exe можно запустить в режиме командной строки, указав необходимые дополнительные параметры;
  • файла библиотеки динамической компоновки Msi.dll, содержащего функции для чтения файлов пакетов (MSI), применения преобразований и выполнения некоторых других действий.

Файлы Msiexec.exe и Msi.dll входят в состав систему и находятся в папке %SystemRoot%SYSTEM32 (для Windows 2000/ХР) или %SyetemRoot%SYSTEM (для Windows 98) на жестком диске компьютера (если Windows Installer установлен).

По двойному щелчку файла с расширением MSI операционная система запускает программу Msiexec.exe. Тот же результат можно получить, выбрав в контекстном меню MSI-файла команду Установка,

Существуют MSI-дистрибутивы, состоящие только из одного MSI-файла. Чтобы начать установку такого приложения, следует щелкнуть правой кнопкой мыши значок MSI-файл и выбрать в его контекстном меню команду Установка (можно также выбрать соответствующий MSI-файл с помощью компонента Установка и удаление программ).

Каждый файл пакета (MSI) содержит базу данных реляционного типа, в которой хранятся все инструкции и данные, необходимые для установки (или удаления) программы различными способами. Например, файл пакета может содержать инструкции по установке приложения, предыдущая версия которого уже установлена.

Реляционная база данных — это база данных, состоящая из нескольких взаимосвязанных таблиц. Соответственно, MSI-файл содержит набор таблиц, описывающих доступные возможности, компоненты, отношения между возможностями и компонентами приложения, а также необходимые параметры реестра.

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

Помимо MSI-файла в состав дистрибутива могут входить файлы еще нескольких типов, влияющих на работу Windows Installer. Наиболее важными среди них можно считать файлы преобразования (с расширением MST). Содержащиеся в них сведения применяются к установочной базе данных и изменяют ее элементы. Например, Windows Installer может использовать файл преобразования для смены языка интерфейса пользователя приложения. Файлы преобразования изменяют MSI-файл пакета установки во время установки и, следовательно, могут динамически влиять на процесс установки. Эти преобразования применяются к файлу базового пакета каждый раз, когда требуется изменить конфигурацию приложения, заданную в пакете установки. Преобразования применяются в ходе начальной установки и не влияют на уже установленные приложения.

Рекомендуем к прочтению

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

Ваш адрес email не будет опубликован.