При обновлении или первичной установке платформы 1С:Предприятие 8.3 (особенно версий ветки 8.3.6 и выше) пользователи часто сталкиваются с критическим завершением работы установщика. Ошибка сопровождается сообщением: «Неполадка пакета установщика Windows. Непредвиденное завершение программы, являющейся частью установки... Действие CustomGrantLicUSERRight». Иногда это сопровождается системным кодом 1722. Давайте разберем, почему это происходит и как пошагово решить эту проблему, основываясь на техническом анализе и опыте системных администраторов.
Для начала проанализируем ситуацию: что именно делает установщик в момент возникновения ошибки? Действие CustomGrantLicUSERRight — это специальный скрипт (Custom Action), встроенный в MSI-пакет 1С. Его основная задача — автоматически назначить права доступа группе «Все» (Everyone) или «Пользователи» на запись и изменение в каталог, где хранятся программные лицензии 1С. Если установщик не может найти этот каталог, не имеет прав на изменение разрешений или сталкивается с поврежденной структурой системных папок, процесс прерывается.
Чаще всего проблема проявляется на устаревших операционных системах вроде Windows XP, но может возникнуть и на современных версиях Windows из-за некорректных настроек безопасности или «хвостов» от предыдущих инсталляций.
Как показывает практика, наиболее действенным методом является временное устранение папки, в которую установщик пытается прописать права. Рассмотрим алгоритм действий для разных ОС:
Для Windows XP:
C:\Documents and Settings\All Users\Application Data\1C\.licenses.licenses_old.licenses с нужными ему правами.licenses_old обратно в новую папку licenses.Для Windows 7, 10, 11:
C:\ProgramData\1C\. Обратите внимание, что папка ProgramData является скрытой, поэтому в настройках проводника нужно включить отображение скрытых элементов.licenses не существует — создадим её вручную. Как ни странно, это часто помогает инсталлятору «проскочить» проблемный шаг.Иногда корень проблемы кроется глубже — в отсутствии или повреждении системного кэша установщика Windows. Разберем, как это проверить. Установщику MSI критически важна папка C:\Windows\Installer. Она является скрытой и системной. Если системные администраторы в целях экономии места на диске удалили этот каталог, многие операции Custom Action (включая нашу CustomGrantLicUSERRight) начнут выдавать ошибку.
Выясним причину: просто проверьте наличие пути C:\Windows\Installer. Если его нет — создайте пустую папку с таким именем. Это вернет работоспособность многим скриптам инсталляции.
Если стандартный запуск setup.exe не помогает, попробуем обратиться к возможностям командной строки. Мы можем запустить установку MSI-пакета напрямую, минуя некоторые проверки или принудительно задавая логирование для выявления точного места сбоя.
Рассмотрим пример команды для запуска из папки с дистрибутивом:
msiexec /i "1CEnterprise 8.3.msi" /L*V install_log.txt
Проанализируем файл install_log.txt после сбоя. Если мы увидим сообщения о невозможности доступа к реестру или конкретным веткам SID, это будет сигналом к проверке прав текущего пользователя. Убедитесь, что вы запускаете установку от имени Администратора. В некоторых случаях на Windows XP помогает создание специального пользователя USR1C с правами администратора и запуск установки под его учетной записью.
Посмотрим на ситуацию со стороны логики прав NTFS. Действие CustomGrantLicUSERRight падает, когда папка licenses уже существует, но имеет жестко заданные права, которые запрещают наследование или изменение владельца.
Попробуем исправить это вручную:
C:\Documents and Settings\All Users\Application Data\1C (или C:\ProgramData\1C).В некоторых случаях (особенно для релизов платформы 8.3.6.2041 и близких к ним) фирма «1С» признавала наличие ошибки в самом MSI-пакете при работе на Windows XP. Техподдержка высылала исправленные файлы или специальный скрипт start.cmd, который нужно поместить в папку с дистрибутивом.
Если у вас есть такой архив, алгоритм следующий:
setup.exe и 1CEnterprise 8.3.msi.start.cmd от имени администратора.Проанализируем еще несколько факторов, которые могут мешать установке:
%ALLUSERSPROFILE% указывает на корректный существующий путь. Проверить это можно, введя set ALLUSERSPROFILE в командной строке.Выполнив эти шаги, мы успешно преодолеем ошибку CustomGrantLicUSERRight и сможем продолжить работу с актуальной версией платформы 1С:Предприятие.