Платформа не видит ключ или программную лицензию: разбор по шагам от USB-порта до сервера 1С

· 10 мин

Содержание

Ошибка «Лицензия не найдена» в 1С 8.3 значит одно: при запуске платформа опросила все источники лицензий и ни в одном не получила свободного места. Чтобы исправить её, сначала определите, чем у вас лицензирована 1С — USB-ключом HASP, программной лицензией по пин-коду или лицензией на сервере 1С, — а затем проверяйте именно этот источник: драйвер и службу, файл nethasp.ini, файлы .lic, права службы сервера.

Чаще всего пользователь видит текст Не обнаружен ключ защиты программы или полученная программная лицензия!. Без лицензии платформа базу не откроет вовсе: «демо-режима» у рабочей версии нет, работать без лицензии можно только в учебной версии. Проверяйте по порядку, от простого к сложному: переустанавливать всё подряд не придётся.

Что именно не нашла платформа: определяем тип лицензии и источник ошибки

Платформа 8.3 ищет лицензию в нескольких местах по очереди. Если вы не знаете, что куплено, загляните в коробку или в бумаги: у аппаратной лицензии есть USB-ключ, у программной — конверт или PDF с пин-кодами.

Тип лицензииГде лежитЧто проверять первым
🔑 Локальный USB-ключ HASPВ порту конкретного компьютераДрайвер защиты, видимость ключа в системе
🌐 Сетевой USB-ключ HASPВ порту сервера или выделенного ПКМенеджер лицензий, nethasp.ini, порты
📄 Программная лицензия на рабочее местоФайл .lic на компьютере пользователяНе изменилось ли «железо», на месте ли файл
🖥️ Лицензии на сервере 1СФайлы .lic или ключ на сервере кластераВыдача лицензий сервером, права службы

Подсказки, которые сразу сужают круг:

  • ❗ ошибка у всех пользователей сразу — проблема у источника: сервер, ключ, служба;
  • ❗ ошибка у одного человека — его компьютер, его сеть, его кэш;
  • ❗ ошибка появилась после замены диска, материнской платы или переезда на новую виртуалку — почти наверняка «слетела» программная лицензия;
  • ❗ одни заходят, другие получают отказ — это не поломка, а исчерпание лимита мест.

Последний случай легко спутать с поломкой. Сообщение про превышение количества пользователей говорит о том, что лицензии найдены, но все заняты. Здесь ничего чинить не надо: либо закрыть «зависшие» сеансы, либо докупить места.

Диагностика: выберите симптом

Служба менеджера лицензий: проверка hasplms и HASP Loader

Если 1С лицензирована сетевым ключом, на компьютере с ключом должна работать служба менеджера лицензий. В реальных сетях встречаются две разные программы, и их часто путают.

  • 🔹 Sentinel LDK License Manager — служба hasplms. Ставится вместе с современным драйвером защиты. У неё есть веб-панель по адресу http://localhost:1947.
  • 🔹 HASP License Manager (служба «HASP Loader») — классический менеджер для сетевых ключей 1С. Он раздаёт лицензии по порту 475.

Порядок проверки на компьютере, где стоит ключ:

  1. Нажмите Win + R, введите services.msc.
  2. Найдите службу менеджера лицензий. Статус — «Выполняется», тип запуска — «Автоматически».
  3. Если служба остановлена, запустите её и посмотрите журнал событий Windows (eventvwr.msc, журнал «Система»): там будет причина, если запуск падает.
  4. Откройте в браузере http://localhost:1947. В разделе ключей должен быть виден ваш ключ. Если страницы нет — служба hasplms не работает или не установлена.

Ту же проверку удобно сделать из командной строки, запущенной от администратора:

sc query hasplms
sc query "HASP Loader"

Перезапуск менеджера лицензий отключит всех, кто сейчас получает от него лицензию: у пользователей появится та же ошибка. Делайте это в обед или после рабочего дня и предупредите людей.

💡 Если веб-панель на 1947 открывается и ключ там виден, а 1С его не видит, проблема почти всегда дальше: в сети, в nethasp.ini или в том, что ключ сетевой, а клиент ищет локальный.

Ключ HASP не виден: драйвер, USB-порт, виртуальные машины и RDP

Для локального ключа менеджер лицензий не нужен, зато нужен драйвер защиты. Он есть в дистрибутиве платформы: файл haspdinst.exe и пункт «Установка драйвера защиты» в меню «Пуск» в группе 1С.

Проверка по шагам:

  1. Посмотрите на ключ: светодиод должен гореть ровно. Не горит — переставьте в другой порт, лучше на задней панели, без USB-хаба и удлинителя.
  2. Откройте «Диспетчер устройств». Ключ должен определяться без жёлтого восклицательного знака.
  3. Переустановите драйвер от имени администратора:
cd /d "C:\Program Files\1cv8\8.3.24.1691\bin"
haspdinst.exe -r
haspdinst.exe -i

Путь подставьте свой: номер версии в папке — это версия установленной платформы. Ключ -r удаляет драйвер, -i ставит заново. После установки выньте и вставьте ключ.

Удаление драйвера на машине с сетевым ключом остановит раздачу лицензий всем пользователям до конца переустановки. Делайте это, когда в 1С никто не работает.

Три ситуации, которые выглядят как «сломался ключ», но им не являются:

  • 🖥️ Терминальный сервер. Локальный ключ, вставленный в компьютер пользователя, внутри RDP-сессии платформа не использует. Ключ должен стоять на самом терминальном сервере или раздаваться по сети.
  • ☁️ Виртуальная машина. USB-устройство нужно явно пробросить в гостевую систему в настройках гипервизора. После переноса виртуалки на другой хост проброс часто теряется.
  • 🔌 USB-серверы и удлинители по сети. Устройство-«прокладка» должно передавать ключ как USB-устройство; если после его перезагрузки ключ пропал — переподключите его в утилите самого USB-сервера.

Сам ключ ломается редко. Если он не определяется ни на одном компьютере и не горит, обращайтесь к партнёру, у которого покупали лицензию: аппаратный ключ меняют по процедуре производителя.

Сетевое лицензирование: nethasp.ini и открытые порты

Клиент 1С ищет сетевой ключ широковещательным запросом. В одной подсети это работает само, а через VPN, другую подсеть или при строгом файрволе — нет. Тогда адрес менеджера лицензий указывают явно в файле nethasp.ini.

Файл лежит в папке conf установленной платформы, например C:\Program Files\1cv8\conf\nethasp.ini. Минимальное содержимое, если ключ стоит на машине 192.168.1.10:

[NH_COMMON]
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_PORT_NUMBER = 475
NH_TCPIP_METHOD = UDP
NH_USE_BROADCAST = Disabled

Если по UDP ответа нет, попробуйте NH_TCPIP_METHOD = TCP. Параметр NH_USE_BROADCAST = Disabled отключает широковещательный поиск: клиент пойдёт сразу по указанному адресу, и запуск станет быстрее.

Что должно быть открыто на компьютере с ключом:

ПортПротоколКто использует
475UDP и TCPHASP License Manager, сетевые ключи 1С
1947TCP и UDPSentinel LDK License Manager (hasplms)

Проверить доступность TCP-порта с компьютера пользователя можно в PowerShell:

Test-NetConnection 192.168.1.10 -Port 475

TcpTestSucceeded : True значит, что порт доступен. Для UDP эта команда не подходит, поэтому при сомнении временно переключите клиент на TCP и проверьте снова.

💡 На каждом компьютере со своей версией платформы — своя папка conf. Если в сети несколько версий, nethasp.ini нужен в каждой из них, иначе часть клиентов ключ «не увидит».

Программные лицензии и пин-коды: почему лицензия слетает и как её вернуть

Программная лицензия — это файл .lic, привязанный к параметрам компьютера. Обычно файлы лежат в C:\ProgramData\1C\licenses. Когда меняются ключевые параметры оборудования или операционной системы, лицензия перестаёт им соответствовать, и платформа сообщает, что не нашла её.

Типичные поводы:

  • 🔧 заменили материнскую плату, процессор, системный диск или сетевую карту;
  • 💿 переустановили Windows или развернули систему из образа на другом «железе»;
  • ☁️ перенесли виртуальную машину, сменили её идентификаторы или MAC-адрес;
  • 🗑️ при «чистке» диска удалили папку licenses.

Если файл просто удалили, а «железо» прежнее, сначала поищите копию .lic в резервной копии и верните её в папку. Это быстрее, чем активировать заново.

Если поменялось оборудование, лицензию активируют повторно:

  1. Запустите 1С. При отсутствии лицензии платформа сама предложит её получить.
  2. Выберите получение лицензии и введите пин-код из комплекта.
  3. Основной пин-код уже использован, поэтому платформа попросит данные предыдущей активации: регистрационный номер комплекта, ранее использованный пин-код и регистрационные данные владельца. Вводите их ровно так, как при первой активации.
  4. Если основной код больше не принимается, используйте резервный пин-код из того же комплекта.

Храните конверт с пин-кодами и данные первой активации так же бережно, как ключи от сейфа: без них повторная активация превращается в переписку с партнёром.

Резервных пин-кодов в комплекте немного. Не тратьте их на «эксперименты» с виртуалками и тестовыми ПК. Если коды закончились, восстановление лицензии оформляют через партнёра 1С.

💡 Одна программная лицензия на рабочее место — для одного компьютера. Поставить её на терминальный сервер «на всех» не выйдет: для многопользовательской работы нужны многопользовательские комплекты или лицензии, выдаваемые сервером 1С.

Лицензии на сервере 1С: выдача сервером и права службы

В клиент-серверном варианте клиентские лицензии могут храниться на сервере 1С и выдаваться кластером. Тогда пользователю ключ и файлы на его ПК не нужны, а ошибка «лицензия не найдена» указывает на сервер.

Что проверить:

  1. Выдача лицензий сервером включена. В консоли администрирования серверов 1С откройте свойства информационной базы и проверьте параметр выдачи лицензий сервером 1С:Предприятия.
  2. Файлы лицензий на месте. Программные лицензии сервера лежат в C:\ProgramData\1C\licenses на том компьютере, где работает рабочий сервер, выдающий лицензии.
  3. У службы есть права. Служба агента сервера 1С обычно работает от отдельной учётной записи (часто USR1CV8). Этой учётной записи нужны права на чтение папки licenses. После переустановки или смены учётной записи службы права часто теряются.
  4. Рабочий сервер может выдавать лицензии. Если в кластере несколько рабочих серверов, а лицензии активированы только на одном, проверьте требования назначения функциональности в свойствах рабочих серверов: лицензии должен выдавать тот, где они лежат.

Посмотреть, какие лицензии сейчас выданы сеансам, можно утилитой rac. Сначала узнайте идентификатор кластера, затем выведите сеансы с лицензиями:

rac cluster list
rac session list --cluster=<id_кластера> --licenses

Так видно, сколько мест занято и кем. Если список полон «висящих» сеансов, лимит исчерпан не пользователями, а оборванными подключениями. Остальные параметры rac смотрите в справке rac help.

Перезапуск службы агента сервера 1С разрывает все сеансы всех баз кластера. Несохранённые документы пользователей пропадут, фоновые задания прервутся. Только вне рабочего времени и с предупреждением.

Несколько версий платформы и кэш: когда лицензия есть, а ошибка остаётся

Бывает, что ключ виден, файлы на месте, а ошибка у одного пользователя держится. Тогда виноваты локальные конфликты.

Разные версии платформы. На компьютере стоят, скажем, 8.3.22 и 8.3.24. Ярлык запускает одну версию, а nethasp.ini или драйвер настраивали под другую. Проверьте, какая версия реально стартует: в списке баз в свойствах базы задаётся версия платформы. Сверьте, что в папке conf именно этой версии лежит правильный nethasp.ini.

Клиент и сервер разных версий. В клиент-серверном режиме номер версии клиента должен совпадать с номером версии сервера. Несовпадение даёт свою ошибку, но при путанице с ярлыками её принимают за лицензионную.

Кэш. Испорченный локальный кэш иногда мешает запуску. Его очищают двумя способами:

  • 🧹 запуск с параметром /ClearCache — в свойствах базы в окне запуска, в поле дополнительных параметров;
  • 🧹 удаление папок с длинными именами-идентификаторами из %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 при закрытой 1С.
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /ClearCache

Удаляйте только папки с именами вида a1b2c3d4-.... Файл ibases.v8i со списком баз и папку licenses в ProgramData не трогайте: первое уберёт у пользователя все базы из списка, второе — саму лицензию.

Если ошибка «Лицензия не найдена» не уходит

Когда всё выше проверено, а 1С по-прежнему не находит лицензию, соберите факты и обращайтесь к партнёру 1С, у которого покупали комплект. Чем точнее данные, тем быстрее помогут:

Что подготовить перед обращением
Выполнено: 0 / 6

Ещё три приёма, которые часто решают дело:

  • 🛡️ Антивирус и файрвол. Временно добавьте исключения для папки платформы и портов 475 и 1947. Обновления антивируса иногда начинают блокировать менеджер лицензий без предупреждения.
  • 🌐 Два менеджера лицензий в сети. Если ключи стоят на двух машинах, клиент может «упираться» не в тот. Пропишите в nethasp.ini нужный адрес и отключите широковещательный поиск.
  • 🧭 Имя вместо IP. Если в nethasp.ini указано имя компьютера, проверьте, что оно разрешается. Надёжнее указать постоянный IP-адрес.

Частые вопросы

Можно ли временно работать в 1С без лицензии, пока чинится ключ?
Нет. Рабочая версия без лицензии базу не открывает. Без лицензии работает только учебная версия платформы, но в ней ограничения на объём данных, для рабочего учёта она не подходит.
Слетит ли программная лицензия при обновлении платформы?
Нет. Лицензия на платформу 8.3 действует для всех версий 8.3. Обновление платформы файлы в licenses не трогает. Лицензия теряется при смене оборудования или переустановке системы.
Можно ли перенести программную лицензию на новый компьютер?
Да, повторной активацией на новом ПК с использованием резервного пин-кода комплекта. На старом компьютере лицензия после этого использоваться не должна.
Почему ключ видно в http://localhost:1947, а 1С пишет, что лицензии нет?
Чаще всего клиент ищет ключ по другому адресу или порту. Проверьте nethasp.ini в папке conf той версии платформы, которая реально запускается, и доступность порта 475.
Почему лицензия «кончается», хотя в 1С работают не все?
Места держат оборванные сеансы: закрытый крестиком RDP, упавший клиент. Посмотрите сеансы через консоль кластера или rac session list --licenses и завершите зависшие.