1С не видит ключ или файл лицензии: диагностика по шагам
Содержание
Когда 1С пишет, что не обнаружена программная лицензия, платформа не нашла ни действующего файла лицензии .lic в каталоге C:\ProgramData\1C\licenses, ни ключа защиты HASP. Чаще всего виноваты три вещи: сменилось оборудование компьютера, у пользователя нет прав на чтение каталога лицензий или клиент не достучался до сетевого ключа. Сначала проверьте каталог и права, потом сеть, и только потом думайте о повторной активации.
На экране это выглядит так: Не обнаружена лицензия для использования программы! и ниже Не найден ключ защиты программы или полученная программная лицензия!. База не открывается. Демо-режима нет: без лицензии платформа рабочую базу не запускает, исключение — учебная версия.
Как устроена защита 1С: программные лицензии и ключи HASP
Прежде чем что-то чинить, поймите, какая защита стоит у вас. От этого зависит весь дальнейший порядок действий.
| Тип защиты | Где живёт лицензия | Типичная причина ошибки |
|---|---|---|
| 🔑 Программная лицензия (пин-код) | Файл .lic на компьютере или сервере | Сменилось «железо», нет прав, файл удалён |
| 🔌 Локальный USB-ключ HASP | Ключ в порту компьютера | Нет драйвера, ключ не определился |
| 🌐 Сетевой ключ HASP | Ключ на сервере + HASP License Manager | Закрыт порт 475, не указан адрес сервера |
| 🖥 Лицензия сервера 1С | Файл .lic или ключ на сервере кластера | Разрядность не та, служба не видит файл |
Программная лицензия — это файл, который получают при активации пин-кода из конверта комплекта. Файл привязан к параметрам компьютера: имени, сетевым адаптерам, дискам, процессору, версии ОС. Если параметры заметно поменялись, лицензия перестаёт считаться действительной. Сам файл при этом лежит на месте.
Ключ HASP работает иначе: платформа обращается к драйверу Sentinel HASP, а для сетевого ключа — к службе HASP License Manager по сети.
Где взять ответ быстро: на коробке или в договоре указан состав комплекта. Если там есть конверт с пин-кодами — у вас программная защита. Если в поставке был USB-брелок — аппаратная.
Клиентская и серверная лицензии — разные вещи. Серверная нужна только для клиент-серверного варианта и разрешает работу сервера 1С. Клиентские лицензии ограничивают число одновременных пользователей. Ошибка про отсутствие лицензии может относиться к любой из них.
Первые проверки на компьютере пользователя
Начните с того места, где ошибка появилась. Пять проверок ниже ничего не ломают и занимают несколько минут.
1. Есть ли файлы в каталоге лицензий
Откройте C:\ProgramData\1C\licenses. Папка ProgramData скрыта — вставьте путь в адресную строку Проводника.
- ✅ Внутри лежат файлы
.lic— идём дальше, к правам. - ❌ Каталог пуст или его нет — лицензия не активировалась на этом компьютере или файл удалили.
Платформа ищет лицензии и в профиле пользователя: %APPDATA%\1C\licenses. Если лицензию активировали под одним пользователем Windows, а работает другой, файл может лежать в чужом профиле. Перенесите его в общий каталог ProgramData.
2. Хватает ли прав на чтение
Частая история после смены политик безопасности или переноса профилей. Файл на месте, но у пользователя нет доступа.
- Щёлкните правой кнопкой по папке
licenses→Свойства→ вкладкаБезопасность. - Проверьте, что у группы
Пользователиесть правоЧтение. - Для активации новой лицензии нужно ещё право на запись — или запуск 1С от имени администратора.
3. Не менялось ли оборудование
Вспомните последние изменения: замена сетевой карты или диска, переустановка Windows, переименование компьютера, обновление BIOS, перенос виртуальной машины на другой хост. Любое из них может сделать файл недействительным.
4. Видит ли платформа лицензии
Утилита ring из комплекта платформы показывает установленные лицензии. Команда ring license list выведет их список, подробности — в справке ring license help. Если утилита не установлена, переходите к повторной активации через окно запуска: при отсутствии лицензии платформа сама предложит её получить.
5. Определяется ли USB-ключ
Для локального HASP откройте Диспетчер устройств. Ключ должен отображаться без жёлтого восклицательного знака. Индикатор на самом брелоке обычно горит. Переткните ключ в другой порт, лучше напрямую в материнскую плату, без USB-хаба.
Сетевой ключ и сервер лицензий: что проверить на сервере
Если ошибка у всех сразу, проблема почти наверняка не на рабочих местах.
Сетевой ключ HASP и License Manager
На компьютере с ключом должна работать служба HASP License Manager. Проверьте в services.msc, что она запущена и стартует автоматически.
Клиенты ищут ключ широковещательным запросом. В сети с несколькими подсетями или VPN это не срабатывает. Тогда пропишите адрес сервера явно в файле nethasp.ini. Он лежит в каталоге conf установленной платформы — проверьте и общий C:\Program Files\1cv8\conf, и bin\conf той версии, которую реально запускаете.
[NH_COMMON]
NH_TCPIP = Enabled
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_USE_BROADCAST = Disabled
NH_TCPIP_METHOD = UDP
Вместо 192.168.1.10 укажите адрес своего сервера с ключом. Отключённый broadcast ускоряет поиск: клиент сразу идёт по адресу.
Дальше сеть:
- 🔥 Порт 475 (UDP и TCP) открыт во входящих правилах брандмауэра на сервере с ключом.
- 🛡 Антивирус не блокирует службу License Manager.
- 📡 Сервер пингуется с клиента по имени и по IP.
Лицензии сервера 1С
В клиент-серверном варианте серверная лицензия лежит на самом сервере 1С: файл в C:\ProgramData\1C\licenses или ключ HASP. Служба сервера работает от своей учётной записи. Если у неё нет прав на чтение каталога, лицензия «не найдётся», хотя файл виден администратору.
Клиентские лицензии в этом варианте можно выдавать двумя способами:
- С рабочего места — тогда лицензия нужна на каждом компьютере.
- С сервера — в свойствах информационной базы в консоли кластера включают выдачу лицензий сервером 1С:Предприятия. Тогда файлы клиентских лицензий активируют на сервере.
Если выдачу сервером включили, а лицензии остались на рабочих местах (или наоборот), получите ровно эту ошибку.
Посмотреть, какие сеансы уже держат лицензии, можно в консоли администрирования или командой rac session list --licenses. Зависшие сеансы иногда занимают все места, и новый пользователь получает отказ.
Завершение сеанса в консоли обрывает работу пользователя без сохранения. Сначала предупредите людей, а зависшие сеансы закрывайте в паузу.
Конфликты версий платформы, разрядности и драйвера
Ошибка часто появляется после обновления — Windows, платформы или драйвера.
Драйвер защиты устарел
Старый драйвер Sentinel HASP может не работать на свежей сборке Windows. Ключ мигает, но система его не видит. Решение — установить актуальный драйвер. Это можно сделать из установщика платформы: запустите его, выберите изменение установленных компонентов и отметьте установку драйвера защиты.
Разрядность сервера и ключа
Ключи HASP для сервера 1С выпускались в 32-битном и 64-битном вариантах. 32-битный ключ сервера не годится для 64-битного сервера 1С. Если вы перешли на 64-битный сервер и оставили старый ключ, сервер не найдёт лицензию. Проверьте маркировку ключа и комплект поставки.
Несколько версий платформы на одной машине
Каждая версия читает свой bin\conf. Вы поправили nethasp.ini в одной версии, а ярлык запускает другую — настройки не применились. Сверьте номер версии в окне Справка → О программе с каталогом, где правили файл.
Сводка
| Симптом | Вероятная причина | Что сделать |
|---|---|---|
| Ошибка после обновления Windows | Драйвер HASP несовместим | Переустановить драйвер защиты |
| Ошибка после перехода на 64-битный сервер | Ключ 32-битного сервера | Заменить ключ или лицензию сервера |
| Правки nethasp.ini не работают | Запускается другая версия платформы | Править conf нужной версии |
| После обновления платформы всё пропало | Обычно не связано с лицензией | Проверить права и каталог лицензий |
Терминальный сервер и RDP: свои правила
В терминальном режиме 1С работает на сервере, а не на компьютере пользователя. Значит, и лицензии ищутся на сервере.
- 🖥 Программную клиентскую лицензию активируют на самом терминальном сервере. Каждый одновременный сеанс 1С занимает одно место.
- 🔌 Локальный USB-ключ, вставленный в компьютер пользователя, в RDP-сеанс не пробрасывается для 1С. Работать надо с ключом на сервере.
- 🔢 Однопользовательский локальный ключ на терминальном сервере обслужит только одного пользователя. Для нескольких нужен многопользовательский комплект.
Типичный сценарий ошибки: десять сотрудников, лицензия на пять мест. Шестой входит по RDP и получает отказ. Это не поломка, а исчерпанный лимит. Посмотрите, сколько мест в комплекте, и проверьте, не висят ли брошенные сеансы с закрытыми окнами RDP.
Настройте на терминальном сервере завершение отключённых сеансов через заданное время. Тогда брошенные окна 1С не будут держать лицензию сутками.
Ещё одна ловушка — профили. Если лицензию активировали под учётной записью администратора и файл лёг в его %APPDATA%, другие пользователи сервера его не увидят. Файл должен лежать в общем C:\ProgramData\1C\licenses.
Повторная активация и переустановка: когда больше ничего не помогло
Если файлы на месте, права в порядке, сеть работает, а ошибка остаётся — остаются тяжёлые меры.
Повторная активация программной лицензии
После смены оборудования старый файл уже не подойдёт. Нужна повторная активация пин-кодом.
- Скопируйте содержимое
C:\ProgramData\1C\licensesв отдельную папку — на случай, если понадобится вернуть. - Запустите 1С. Платформа предложит получить лицензию .
- Введите регистрационный номер комплекта и неиспользованный пин-код из конверта.
- Укажите данные владельца ровно так же, как при первой активации. Если они расходятся, повторная активация может не пройти.
- Выберите автоматическое получение через интернет или получение файлом, если на компьютере нет доступа в сеть.
Сохраните копию файла лицензии и записывайте, какие пин-коды уже использованы. Резервных пин-кодов в конверте ограниченное число. Когда они закончатся, восстанавливать лицензию придётся через центр лицензирования, а это дольше.
Переустановка драйвера защиты
Для ключей HASP помогает чистая переустановка драйвера: удалить через установщик платформы, перезагрузить компьютер, установить заново. На рабочем сервере это значит перерыв.
Переустановка драйвера на сервере с сетевым ключом или на сервере 1С оборвёт работу всех пользователей. Делайте это вечером или в выходной, предупредив коллег.
А реестр?
Лицензии 1С в реестре Windows не хранятся. Программы-«чистильщики» реестра проблему не решат, зато могут повредить драйвер или другие программы. Если советуют «почистить реестр от следов 1С» — это не путь к лицензии.
Переустановка самой платформы обычно тоже ничего не даёт: файлы лицензий она не трогает. Есть смысл переустанавливать её только вместе с компонентом драйвера защиты.
Как не столкнуться с ошибкой снова
Большая часть случаев — следствие изменений, о которых забыли предупредить ответственного за 1С.
Отдельно про виртуальные машины. Перенос ВМ между хостами, клонирование, восстановление из снимка на другом железе меняют параметры, к которым привязана лицензия. Фиксированный MAC-адрес снимает часть проблем, но не все. Перед переездом сервера лучше заложить время на повторную активацию.