Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

0x643 / 1603 Windows Server, AD и Роли

Ошибка 0x643 и код 1603 в SCCM при установке приложений: решение

Обновлено: 11.09.2026 · Официальная документация ↗

Симптомы сбоя установки через SCCM (0x643 / 1603)

При распространении программного обеспечения через Microsoft Endpoint Configuration Manager (SCCM / MECM) установка завершается со статусом «Failed» (Сбой). В Центре программного обеспечения (Software Center) отображается ошибка 0x643(1603) или «The software change returned error code 0x643(1603)».

ЖурналСообщение об ошибкеПричина
AppEnforce.logUnmatched exit code (1603) is considered an execution failureУстановщик Windows Installer (MSI) прервал процесс из-за внутренней ошибки
MSI*.logMainEngineThread is returning 1603 / CustomAction returned actual error code 1603Сбой выполнения пользовательского скрипта или нехватка системных привилегий
AppDiscovery.logIn-line detection rule evaluation failedПосле инсталляции правило обнаружения (Detection Rule) не нашло приложение

Пошаговое устранение ошибки 0x643 / 1603 в Configuration Manager

Код возврата 1603 (шестнадцатеричный 0x643) — это универсальный фатальный код ошибки Windows Installer. Для решения требуется включить подробное логирование и устранить ограничения контекста выполнения SYSTEM.

  1. Включите подробное логирование MSI в строке установки SCCM: добавьте ключи записи подробного лога к командной строке развертывания:
    msiexec.exe /i "Package.msi" /qn /norestart /L*v "%windir%\Logs\Software_MSI.log"
  2. Проверьте контекст запуска (Install for System vs User): приложения, устанавливаемые в контексте учетной записи компьютера (NT AUTHORITY\SYSTEM), не имеют доступа к сетевым дискам пользователя или ветке реестра HKCU. Настройте переключатель развертывания в Deployment Type на «Install for system» и убедитесь, что бинарные файлы берутся из локального ccmcache.
  3. Скорректируйте права на папки Temp и Common Files для учетной записи SYSTEM:
    icacls "C:\Windows\Temp" /grant "SYSTEM:(OI)(CI)F" /grant "Administrators:(OI)(CI)F"; icacls "C:\Program Files\Common Files" /grant "SYSTEM:(OI)(CI)F"
  4. Очистите зависшие транзакции установщика Windows Installer:
    Stop-Service -Name msiserver -Force; Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\InProgress" -Recurse -ErrorAction SilentlyContinue; Start-Service -Name msiserver

Важно: Проверьте файл AppEnforce.log на клиентской машине по пути C:\Windows\CCM\Logs. Если инсталлятор завершился успешно, но SCCM выдает 1603, проблема кроется в некорректном правиле обнаружения (Detection Method), ищущем несуществующий ключ реестра или версию файла.

💡 Практика специалистов: Практика ITSTM: Если в MSI-логе код 1603 возникает на шаге InstallValidate, проверьте, не заблокирован ли каталог развертывания антивирусом Defender (Real-time monitoring). Создайте временное исключение путей ccmcache в политиках Defender Endpoint.

Частые вопросы (FAQ)

Что означает шестнадцатеричный код 0x643?

В десятичной системе 0x643 равен 1603 — это системная константа ERROR_INSTALL_FAILURE, означающая фатальный сбой во время выполнения скрипта инсталляции или регистрации компонентов MSI.

Почему установка вручную проходит без ошибок, а через SCCM возвращает 1603?

При ручном запуске процесс выполняется от имени администратора с доступом к пользовательскому профилю, а SCCM выполняет установку под учетной записью локальной системы SYSTEM, где отсутствуют переменные среды пользователя и доступ к сети без прав учетной записи компьютера (DOMAIN\COMPUTER$).

Как перезапустить зависший агент Configuration Manager на клиенте?

Выполните в консоли PowerShell с правами администратора команду: Restart-Service -Name CcmExec -Force.

Где в консоли SCCM переопределить код 1603 как успешный?

В свойствах типа развертывания (Deployment Type) во вкладке Return Codes можно добавить код 1603 со значением Success или Fast Retry, если установщик специфического ПО завершает работу с этим кодом при успехе.

Полезные материалы
Рекомендуем