#Когда применима инструкция
Установщик показывает один код или сообщение, а в «Просмотре событий» — другой. Это возможно: окно внешней программы-оболочки, код завершения msiexec, ошибка отдельного действия и запись MsiInstaller описывают разные уровни сбоя. Записывайте источник каждого кода, время и имя пакета; 1603 в конце журнала указывает на общий неуспех, а не раскрывает первопричину.
#Причины и признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Общий код и первичная ошибкаФинальный код 1603 сопровождается более ранней конкретной ошибкой действия. | В логе есть Return value 3, перед ним — иной код и название действия. | Разобрать строки до первого отказа. |
| Оболочка EXE обрабатывает результат MSIПрограмма-загрузчик показывает собственное сообщение, которое не совпадает с кодом дочернего MSI. | В одном сценарии фигурируют Setup.exe и msiexec.exe. | Собирать журнал и оболочки, и MSI, если она поддерживает логирование. |
| Несвязанные событияСобытие Windows Installer принадлежит другому пакету/сеансу. | Иное имя продукта или время; параллельное обновление. | Сопоставить ProductName, время и журнал. |
#Подробная диагностика и решение
- Зафиксируйте версию Windows и точный симптомНажмите Win+R →
winver→ Enter, запишите версию и сборку Windows. Уточните название и версию устанавливаемой программы, расширение исходного файла.msiлибо.exe, дату, время и полный текст ошибки. Если ошибку показывает уже установленная программа, сначала установите, относится ли она вообще к Windows Installer: совпадение слов «ошибка установки» не доказывает участие MSI. Не выдавайте предположения за диагностический результат.
- Подготовьте безопасную копию и исходный пакетСохраните открытые документы, настройки и данные программы на отдельный носитель либо в другое надёжное расположение. Используйте только официальный дистрибутив или пакет из корпоративного каталога; если приложение уже установлено, не удаляйте его до подтверждения резервной копии и возможности восстановления лицензии. Не удаляйте содержимое
C:\Windows\Installer, не меняйте права системных папок массово и не отключайте защиту ради повторного запуска.
- Сопоставьте событие установки с конкретным временемНажмите Win+R →
eventvwr.msc→ Enter → «Журналы Windows» → «Приложение». Найдите события источникаMsiInstallerв момент попытки, если они появились, запишите номер события, имя продукта и код. При падении Setup.exe/программы ищите отдельноApplication Errorи имя сбойного EXE. При отсутствии события не подставляйте типовой «1603»: он не следует из отсутствия журнала.
- Создайте таблицу наблюденийЗапишите время до минуты, название и версию программы, путь к пакету, текст окна и код, если он виден. В отдельную строку внесите результат
msiexec, если запускался через консоль, и записи журнала. Не объединяйте 0x80070643, 1603 и «ошибка доступа» в один «код MSI» без первоисточника.
- Откройте события именно Windows InstallerWin+R →
eventvwr.msc→ «Журналы Windows» → «Приложение». «Фильтр текущего журнала» → при необходимости выберите источникMsiInstaller; найдите запись с нужным временем. Запишите её идентификатор, имя продукта и итоговую формулировку. Если её нет, это не означает, что установки не было.
- Определите, есть ли внешняя оболочкаПосмотрите тип исходного файла в «Свойства»:
.msiлибо.exe. Если.exe, он может запускать несколько MSI и собственные проверки. Изучите раздел справки изготовителя о логах; параметры/L*Vнельзя автоматически приписывать любому Setup.exe.
- Создайте подробный журнал для MSIЕсли исходник — надёжный
.msi, запустите его по инструкции ниже, указывая реальный путь. Дождитесь завершения, не запускайте второй экземпляр. Откройте итоговый файл журнала через Блокнот и сохраните его отдельно. - ОБРАЗЕЦ, не запускать без замены пути на настоящий официальный MSIWindows · Командная строка (CMD)С осторожностьюОБРАЗЕЦ, не запускать без замены пути на настоящий официальный MSI. Среда: командная строка Windows (Win+R → cmd). /i запускает установку и МОЖЕТ изменить систему; /L*V создаёт подробный лог в существующей пользовательской папке TEMP (при повторе перезапишет файл). Если установщик запросит повышение, подтвердить может только уполномоченный администратор. Не используйте это для Setup.exe, установленной программы или чужого пакета. В журнале возможны имена пользователей, пути и другие чувствительные сведения.
msiexec.exe /i "C:\ПУТЬ\ПАКЕТ.msi" /L*V "%TEMP%\whelp-msi-proverka.log"Команда может изменить состояние системы или её настройки. Проверьте параметры и последствия перед запуском.
- Найдите не только финальное сообщениеВ Блокноте нажмите Ctrl+F →
Return value 3и проверьте несколько десятков строк выше, где обычно содержится причина отката. Сопоставьте название действия, путь к файлу, отказ прав или недоступность источника. Если такой строки нет, проверьте начало и конец лога либо запросите журнал производителя.
- Повторите только после устранения выявленной причиныДля 1618 дождитесь окончания другой установки; для 1612 проверьте исходные файлы; при 1625 обсудите политику с администратором. Код 1603 сам по себе не является основанием менять права System32 или удалять папку Installer. После исправления сравните два журнала и итоговый результат.
- Подтвердите исправление именно исходного случаяПосле изменения одного доказанного условия повторите действие «в журнале событий указана одна ошибка, а в окне приложения другая» на тестовом файле или в согласованное окно обслуживания. Проверьте не только исчезновение предупреждения, но и фактическую установку/запуск необходимой функции, а также отсутствие прежнего кода в свежем журнале с новым временем. Если сбой повторился, остановитесь, верните безрезультатные временные настройки и передайте поддержке исходный код, журнал, версию ОС и путь к подтверждённому пакету; удалите из журнала учётные данные и секреты.
#Чего не делать при этой ошибке
Не используйте сторонние «очистители MSI», не очищайте вручную C:\Windows\Installer, не запускайте бесконечно установку после одинакового отказа и не сбрасывайте Windows без диагностики. Не меняйте msiserver на автоматический запуск просто из-за состояния «Остановлена»: при отсутствии установки это допустимо. Код 1603 — общий отказ, причину ищите в подробном журнале и документации изготовителя.
#Как документировать результат
Запишите последовательно: версию программы и Windows, дату, шаг, на котором возник отказ, оригинальный код, изменённое условие, новый код и проверку работы нужной функции. Если проблему не удалось повторить, укажите это отдельно: однократный успех ещё не доказывает устойчивое исправление.