#Когда применима инструкция
Проверка подписи может выполняться Windows, корпоративной политикой или самим установщиком — это разные механизмы. Отсутствие доверия к сертификату, порча пакета либо запрет правилами AppLocker могут выглядеть похоже, но требуют разных решений. Нельзя обходить подпись, запускать неподписанный заменитель или отключать SmartScreen ради «проверки».
#Причины и признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Подпись нарушенаФайл изменён после подписания или повреждён при загрузке. | Статус подписи сообщает, что данные не соответствуют подписи. | Скачать оригинал заново. |
| Не доверяют цепочке сертификатаСертификат или цепочка на этой машине не проходит проверку. | Свойства показывают проблему доверия, на другом управляемом ПК файл проверяется. | Проверить время и цепочку у администратора. |
| Ограничения приложенияИздатель может быть заблокирован политикой AppLocker или App Control. | Событие блокировки MSI совпадает по времени. | Получить одобренный пакет/правило. |
#Подробная диагностика и решение
- Зафиксируйте версию 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»: он не следует из отсутствия журнала.
- Определите, кто показывает сообщениеЗапишите дословный текст, имя издателя и этап (скачивание, открытие MSI, установка функции). Если окно принадлежит внешнему EXE, код может относиться к его собственному механизму проверки. Не объявляйте автоматически кодом MSI сообщение браузера.
- Проверьте происхождение пакетаЗагрузите официальную копию дистрибутива по ссылке производителя. Сравните имя, версию, размер и SHA-256, когда изготовитель публикует ожидаемую сумму. Не используйте исправленный кем-то MSI и не удаляйте цифровую подпись.
- Посмотрите свойства файлаВ Проводнике правой кнопкой по пакету → «Свойства» → «Цифровые подписи», если вкладка есть. Выберите подпись → «Сведения» и запишите результат проверки; отсутствующая вкладка не равна доказанному заражению, но пакет требует дополнительного подтверждения.
- Считайте статус подписи через PowerShellОткройте «Пуск» → введите PowerShell → откройте обычным пользователем. Выполните только читающую команду ниже, заменив путь на реальный.
Validподтверждает проверку по механизмам Windows, но не гарантирует безопасность;NotSignedне следует автоматически исправлять отключением политики. - Дополнительная команда по темеWindows · PowerShellКомандаОБРАЗЕЦ: замените путь на реальный MSI и запустите в PowerShell обычного пользователя; команда только читает сведения о подписи. Status = Valid — подпись проходит проверку Windows, но это не гарантия безопасности; значения NotSigned/UnknownError требуют проверки источника. Путь с одиночной кавычкой потребует правильного экранирования.
Get-AuthenticodeSignature -LiteralPath 'C:\ПУТЬ\ПАКЕТ.msi' | Format-List Status,StatusMessage,SignerCertificate
- Проверьте дату, время и сетевой доступWin+I → «Время и язык» → «Дата и время», сравните дату и часовой пояс. Если автоматическая синхронизация недоступна из-за корпоративной сети, передайте ИТ-службе время и сведения о сертификате; не импортируйте незнакомые корневые сертификаты вручную.
- Проверьте события блокировки и итогЕсли устройство управляемое, найдите события AppLocker → MSI and Script на время сбоя. Запросите одобренную подписанную версию у администратора; затем повторите установку и убедитесь не только в исчезновении окна, но и в наличии установленного продукта.
- Подтвердите исправление именно исходного случаяПосле изменения одного доказанного условия повторите действие «установка прерывается на проверке подписи компонента» на тестовом файле или в согласованное окно обслуживания. Проверьте не только исчезновение предупреждения, но и фактическую установку/запуск необходимой функции, а также отсутствие прежнего кода в свежем журнале с новым временем. Если сбой повторился, остановитесь, верните безрезультатные временные настройки и передайте поддержке исходный код, журнал, версию ОС и путь к подтверждённому пакету; удалите из журнала учётные данные и секреты.
#Чего не делать при этой ошибке
Не используйте сторонние «очистители MSI», не очищайте вручную C:\Windows\Installer, не запускайте бесконечно установку после одинакового отказа и не сбрасывайте Windows без диагностики. Не меняйте msiserver на автоматический запуск просто из-за состояния «Остановлена»: при отсутствии установки это допустимо. Код 1603 — общий отказ, причину ищите в подробном журнале и документации изготовителя.
#Как документировать результат
Запишите последовательно: версию программы и Windows, дату, шаг, на котором возник отказ, оригинальный код, изменённое условие, новый код и проверку работы нужной функции. Если проблему не удалось повторить, укажите это отдельно: однократный успех ещё не доказывает устойчивое исправление.