Драйвер ключа HASP не ставится: почему висит установщик и как довести дело до конца
Содержание
Если установка драйвера защиты 1С 8.3 зависает на полосе прогресса, почти всегда виноват не сам драйвер, а то, что ему мешает: занятый установщик Windows, остатки старой версии HASP, вставленный ключ, антивирус или «Целостность памяти» в Windows 10 и 11. Решение — снять помеху, удалить старый драйвер и поставить свежий Sentinel Run-time из командной строки haspdinst.exe -i от имени администратора.
Чаще всего с этим сталкиваются после обновления Windows 10 до Windows 11, при переносе 1С на новый компьютер и на машинах, где когда-то стояла старая платформа со своим комплектом драйверов. Ключ при этом исправен: сам по себе USB-ключ на зависание установщика не влияет.
Почему установщик драйвера защиты зависает: быстрая диагностика
Драйвер защиты для ключей 1С — это пакет Sentinel LDK and Sentinel HASP Run-time Environment компании Thales (раньше Aladdin/SafeNet). Он ставит в систему драйверы USB-ключа и службу Sentinel LDK License Manager (имя hasplms). Зависание означает, что один из этих шагов ждёт чего-то, что не наступит.
Типичные причины:
- 🔌 ключ вставлен в USB во время установки — Windows параллельно пытается сама подобрать драйвер, и два процесса блокируют друг друга;
- ⏳ занят Windows Installer — идёт обновление Windows, другая установка или система ждёт перезагрузки после прошлой;
- 🧩 старая версия драйвера не удаляется: её служба не останавливается, а новый пакет ждёт;
- 🛡️ антивирус или EDR держат файл
.sysна проверке или молча блокируют регистрацию драйвера; - 🔒 «Целостность памяти» (изоляция ядра) не даёт загрузиться старым драйверам вроде
hardlock.sys; - 🏢 групповые политики в домене запрещают установку устройств или драйверов;
- 👤 запуск без прав администратора — в окне UAC согласие получено, но часть шагов выполняется в ограниченном контексте.
Что проверить за пять минут
- Выньте ключ из USB-порта.
- Откройте диспетчер задач и посмотрите, сколько процессов
msiexec.exeиhaspdinst.exeвисит. Если установщик не реагирует 10–15 минут, снимите эти процессы. - Проверьте, не ждёт ли Windows перезагрузки: в
Параметры → Центр обновления Windowsне должно быть надписи о необходимости перезапуска. Если есть — перезагрузитесь. - Посмотрите журнал установки устройств
C:\Windows\INF\setupapi.dev.log. Последние записи покажут, на каком драйвере всё остановилось. - Проверьте состояние службы:
sc query hasplms
Если служба в состоянии STOP_PENDING и не выходит из него, именно она держит установку. Это лечится перезагрузкой и удалением старой версии (следующий раздел).
Полное удаление старых драйверов HASP перед переустановкой
Новый пакет часто виснет именно на старом. На компьютере могут жить сразу несколько поколений: древний HASP4 с haspnt.sys, hardlock.sys, драйвер из комплекта платформы 1С и отдельно скачанный Sentinel. Удаляйте всё, потом ставьте одну актуальную версию.
Перед чисткой убедитесь, что на этом компьютере не работают другие программы на ключах Sentinel (CAD-системы, сметные программы). Драйвер общий, после удаления они тоже перестанут видеть свои ключи до переустановки.
Шаг 1. Штатное удаление
- Закройте 1С на этом компьютере. Если здесь стоит менеджер лицензий для сетевого ключа, предупредите пользователей: после остановки службы их сеансы потеряют лицензию.
- Выньте ключ.
- Откройте
Параметры → Приложения → Установленные приложенияи удалитеSentinel Runtime(илиSentinel LDK Run-time), если он есть в списке. - Затем удалите драйвер из командной строки администратора. Перейдите в папку с
haspdinst.exeи выполните:
haspdinst.exe -r
Утилита обычно лежит в каталоге установки платформы, в подпапке common (например, C:\Program Files\1cv8\common\). Свежую версию можно взять с сайта Thales в разделе Sentinel Downloads.
Шаг 2. Остатки пакетов драйверов
Даже после удаления в хранилище драйверов Windows могут остаться INF-пакеты. Посмотрите их:
pnputil /enum-drivers
Найдите записи, где поставщик — SafeNet, Aladdin или Thales. У каждой есть «Опубликованное имя» вида oem42.inf. Удалите их по одному:
pnputil /delete-driver oem42.inf /uninstall
Шаг 3. Диспетчер устройств
- Вставьте ключ на минуту.
- Откройте
devmgmt.mscи включитеВид → Показать скрытые устройства. - В разделах «Контроллеры USB» и «Другие устройства» удалите всё, что связано с Sentinel, HASP или Aladdin, с отметкой «Удалить программы драйверов».
- Выньте ключ и перезагрузите компьютер.
Перезагрузка между удалением и установкой обязательна. Без неё служба и драйвер остаются в памяти, и новая установка повиснет на том же месте.
Ручная установка Sentinel HASP через командную строку
Графический установщик скрывает ошибки. Консольная утилита haspdinst.exe показывает, что происходит, и сама проверяет, что уже стоит в системе.
Порядок установки
- Скачайте актуальный пакет Sentinel Run-time для Windows с сайта Thales. Для 1С подходит пакет с командной утилитой (архив с
haspdinst.exe). Версия из комплекта старой платформы может быть устаревшей. - Распакуйте архив в простую папку без пробелов, например
C:\hasp. - Запустите командную строку от имени администратора: в меню «Пуск» наберите
cmd, нажмите правой кнопкой и выберите «Запуск от имени администратора». - Выполните:
cd /d C:\hasp
haspdinst.exe -i
- Дождитесь сообщения об успешной установке. Обычно это меньше минуты.
- Только теперь вставьте ключ. Windows подхватит его уже установленным драйвером.
Полный список параметров утилита выводит сама, если запустить её с ключом -help. В справке есть, например, вариант принудительного удаления и режим без окон с сообщениями, удобный для установки на много машин скриптом.
Как проверить результат
- 🌐 Откройте в браузере
http://localhost:1947— это Sentinel Admin Control Center. В разделе ключей должен появиться ваш ключ. - 🖥️ В диспетчере устройств ключ отображается без жёлтого восклицательного знака.
- ⚙️ Служба
Sentinel LDK License Managerвservices.mscзапущена, тип запуска — «Автоматически».
Если страница 1947 открывается, а ключа нет — попробуйте другой порт USB на задней панели, без хаба и удлинителя. Светодиод ключа должен гореть ровно.
Какой способ установки выбрать
| Способ | Когда подходит | Риски |
|---|---|---|
| Установщик из меню платформы 1С | Чистая система, нет старых драйверов | Может оказаться старая версия пакета |
haspdinst.exe -i из командной строки | Первая установка не прошла или зависла | Почти нет: видно сообщение об ошибке |
| Установка в безопасном режиме или при чистой загрузке | Мешает антивирус или сторонняя служба | Нужна перезагрузка, ПК недоступен пару минут |
| Ручная чистка реестра и повторная установка | Ничего из перечисленного не помогло | Ошибка в реестре ломает USB-устройства |
Подпись драйверов, «Целостность памяти» и групповые политики
Актуальные драйверы Sentinel подписаны, и в Windows 10 и 11 им не нужно отключать проверку подписи. Не включайте тестовый режим (bcdedit /set testsigning on) и не отключайте проверку подписи ради ключа 1С. Это ослабляет защиту системы и не лечит причину: если драйвер не ставится, значит, у вас старая версия, а не «капризная» подпись.
Изоляция ядра и «Целостность памяти»
В Windows 11 и на новых установках Windows 10 часто включена «Целостность памяти». Она не пускает в ядро драйверы, не совместимые с ней. Из пакетов HASP так конфликтует старый hardlock.sys.
Где посмотреть: Безопасность Windows → Безопасность устройства → Изоляция ядра → Сведения об изоляции ядра. Если там есть ссылка «Просмотреть несовместимые драйверы» и в списке драйвер HASP — удалите старый пакет (раздел выше) и поставьте свежий Run-time. Отключать «Целостность памяти» стоит только как временную проверку, а потом включить обратно.
Ограничения в домене
В компаниях установку устройств часто закрывают политикой. Проверить это на машине можно в gpedit.msc:
Конфигурация компьютера → Административные шаблоны → Система → Установка устройств → Ограничения на установку устройств
Если там включены запреты, локально их не обойти: доменная политика вернёт настройку при следующем обновлении. Попросите системного администратора разрешить класс USB-устройств или установить драйвер централизованно. Итоговые политики машины удобно посмотреть командой:
gpresult /h C:\gp.html
Антивирус и EDR
Антивирус может «заморозить» установщик без всяких окон. Временно отключите защиту в реальном времени или добавьте папку с haspdinst.exe в исключения, установите драйвер и сразу включите защиту обратно. В корпоративной сети это делает только администратор антивируса.
Сетевой ключ 1С: где ставить драйвер и как настроить nethasp.ini
С сетевым ключом (маркировка NET на ключе) чаще всего путаются в том, куда ставить драйвер. Правило простое:
- 🗄️ на компьютер, где физически стоит ключ, — драйвер Sentinel и менеджер лицензий;
- 💻 на рабочие места пользователей драйвер не нужен вовсе. Если установка драйвера висит на клиентской машине, её можно просто не делать.
Клиентам нужен только файл nethasp.ini, где указан адрес сервера с ключом. Он лежит в каталоге conf платформы, например C:\Program Files\1cv8\conf\nethasp.ini. Минимальное содержимое:
[NH_COMMON]
NH_TCPIP = Enabled
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_USE_BROADCAST = Disabled
Вместо 192.168.1.10 укажите адрес компьютера с ключом. Отключённый широковещательный поиск ускоряет получение лицензии и убирает зависания при запуске 1С в больших сетях.
Порты и брандмауэр
| Компонент | Порт | Где открыть |
|---|---|---|
| Старый HASP License Manager для сетевых ключей | 475 TCP и UDP | На сервере с ключом |
| Sentinel LDK License Manager и Admin Control Center | 1947 TCP и UDP | На сервере с ключом |
Если клиенты не видят ключ, проверьте доступность порта с рабочего места:
powershell Test-NetConnection 192.168.1.10 -Port 475
Перезапуск службы менеджера лицензий на сервере отнимает лицензии у всех открытых сеансов 1С. Делайте это в обед или после рабочего дня, предварительно предупредив пользователей.
Ручная чистка реестра и другие способы, когда ничего не помогло
Безопасный режим и чистая загрузка
Чистая загрузка отключает сторонние службы, в том числе антивирус:
- Нажмите
Win + R, введитеmsconfig. - На вкладке «Службы» отметьте «Не отображать службы Майкрософт» и нажмите «Отключить все».
- Перезагрузитесь, удалите и установите драйвер по шагам выше.
- Верните службы в
msconfigи перезагрузитесь ещё раз.
Остатки в реестре
Если после всех удалений установщик по-прежнему считает, что драйвер уже есть, проверьте ветку служб:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
Ищите разделы с именами aksusb, aksfridge, hardlock, haspnt, hasplms. Соответствующие им файлы — в C:\Windows\System32\drivers\ (aksusb.sys, aksfridge.sys, hardlock.sys, haspnt.sys).
Перед правкой создайте точку восстановления системы и экспортируйте каждый раздел. Экспорт делается так:
reg export "HKLM\SYSTEM\CurrentControlSet\Services\aksusb" C:\backup_aksusb.reg
Удалять разделы стоит только после штатного удаления драйвера и перезагрузки, а затем снова перезагрузиться и выполнить haspdinst.exe -i. Чужие разделы в ветке Services не трогайте: удалив по ошибке драйвер контроллера USB, вы останетесь без мыши и клавиатуры.
Программная лицензия вместо ключа
Если ключ мешает раз за разом, есть радикальный вариант: перейти на программную лицензию 1С. Для неё драйвер защиты не нужен вовсе. Лицензия активируется пин-кодом и привязывается к параметрам компьютера. Минус — при замене оборудования её придётся активировать заново по резервному пин-коду. Перевод аппаратного ключа на программную лицензию оформляется через партнёра 1С.
Частые вопросы
Нужно ли ставить драйвер защиты, если у меня программная лицензия?
Сколько времени занимает нормальная установка драйвера?
Можно ли вставить ключ в USB на удалённом сервере через RDP?
Подойдёт ли драйвер с сайта Thales вместо драйвера из дистрибутива 1С?
Ключ горит, драйвер стоит, а 1С пишет «Не обнаружен ключ защиты программы». Что ещё проверить?
http://localhost:1947: если ключ там виден, дело в настройках поиска лицензии, например в nethasp.ini. Если не виден — в порту USB или самом ключе.