Как полностью удалить следы эмулятора HASP и патчей при переходе на лицензионную 1С?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Переход с нелицензионного использования 1С:Предприятие на официальную версию часто сопровождается ошибками целостности данных. Начиная с версии 8.3.12, механизмы защиты платформы стали значительно строже: программа анализирует наличие драйверов виртуальных USB-шин, модифицированные библиотеки и записи в реестре. Простое удаление старой платформы через панель управления не решает проблему, так как компоненты эмуляторов остаются глубоко в системе. Разберем по шагам, как произвести полную «генеральную уборку» вашего сервера или рабочего места.

Анализ и удаление виртуальных драйверов USB-шин

Большинство эмуляторов (такие как MultiKey или VUSBBus) работают на уровне ядра системы, создавая виртуальное устройство. Проанализируем состояние диспетчера устройств и выполним очистку.

  1. Откроем Диспетчер устройств.
  2. В меню выберем «Вид» — «Показать скрытые устройства».
  3. Перейдем в раздел Системные устройства. Найдем пункт Virtual Usb Bus Enumerator.
  4. Нажмем правой кнопкой мыши — «Удалить устройство». Важно: обязательно установим галочку «Удалить программы драйверов для этого устройства».
  5. Если устройство не удаляется или система зависает, сначала выберем «Отключить устройство», перезагрузимся и только потом выполним удаление.

Проверим наличие специфических системных файлов в папке C:\Windows\System32\drivers\. Нам необходимо убедиться в отсутствии следующих файлов:

Остановка и удаление служб эмулятора через командную строку

Даже если файлы удалены, в системе могут остаться зарегистрированные службы, которые 1С обнаруживает при запуске. Рассмотрим, как их вычистить с помощью консоли (запущенной от имени администратора):

Для начала проверим наличие службы командой:

sc query vusbbus

Если служба найдена, выполним последовательность команд для её полной остановки и удаления:


sc stop vusbbus
sc delete vusbbus

Аналогичные действия следует выполнить для драйвера haspflt, который часто используется в старых «лечилках»:


loaddrv.exe -stop haspflt
loaddrv.exe -remove haspflt
del %systemroot%\system32\drivers\haspflt.sys

Очистка системного хранилища драйверов (DriverStore)

Современные версии Windows (начиная с Windows 7) хранят копии всех когда-либо установленных драйверов в специальной папке DriverStore. Если не удалить драйвер оттуда, Windows будет автоматически переустанавливать эмулятор при каждой перезагрузке. Воспользуемся утилитой pnputil.

Проанализируем список сторонних драйверов:

pnputil -e

Внимательно изучим вывод. Ищем драйверы, в описании которых фигурирует «Virtual USB» или «Aladdin». Они будут иметь имя вида oemXX.inf (где XX — число). Удалим подозрительный драйвер командой:

pnputil -d oemXX.inf

Работа с реестром Windows

Следы эмуляторов часто скрываются в ветках служб и настроек совместимости. Рассмотрим ключевые узлы, которые подлежат проверке и очистке. Откройте regedit и проверьте следующие пути:

  1. Удалим ветки эмуляторов (если они существуют):
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vusbbus
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Emulator
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\haspflt
  2. Проверим наличие веток NEWHASP. Несмотря на мнение, что они не всегда влияют на вылет, их лучше удалить для чистоты эксперимента:
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\NEWHASP
  3. Проанализируем подмену библиотек: Проверьте ветку HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\. Если вы видите там папки 1cv8.exe или 1cv8c.exe, внутри которых есть параметр VerifierDlls, немедленно удалите эти разделы. Это механизм принудительной загрузки сторонних библиотек (патчей) в процесс 1С.

Восстановление целостности файлов платформы 1С

Часто «лечение» заключается в патчинге библиотеки backbas.dll. Самый надежный способ вернуть всё в исходное состояние — это полное удаление всех установленных версий платформы через «Программы и компоненты» и последующая установка с официального дистрибутива, полученного с портала ИТС.

Если вы столкнулись с файлом 1c_update.exe в папках пользователя или в автозагрузке — это признак «автопатчера». Его нужно удалить, а также проверить Планировщик задач Windows на наличие заданий, связанных с обновлением или проверкой лицензий 1С.

Очистка следов ключей в базе данных (SQL-вариант)

Иногда информация о ранее использованных ключах кэшируется внутри самой информационной базы (в таблице системных настроек). Для клиент-серверного варианта на MS SQL Server можно выполнить запрос для очистки этого списка. Выясним, как это сделать:


USE [Имя_Вашей_Базы]
GO 
UPDATE Files 
SET BinaryData = ''
WHERE FileName = 'c01b78f6-1525-41b1-9cc1-69e3da58d2ac.pfl'

Этот запрос обнуляет данные о программных лицензиях и ключах, хранящиеся внутри БД, заставляя платформу искать их заново в системе.

Дополнительные меры: AppData и имя компьютера

Для завершения процесса очистки рекомендуется выполнить еще два действия:

  1. Удалить файлы настроек в профиле пользователя. Перейдите в %AppData%\1C\1cv8\ и %LocalAppData%\1C\1cv8\ и удалите все файлы с расширением .pfl. В них могут храниться привязки к старым лицензиям.
  2. В некоторых случаях помогает переименование компьютера. Это сбрасывает часть идентификаторов, которые 1С использует для проверки легитимности окружения.

После выполнения всех описанных шагов перезагрузите компьютер и установите лицензионную платформу. Если система всё равно сообщает о нарушении целостности, проверьте, не включен ли у вас тестовый режим Windows (надпись в правом нижнем углу рабочего стола). Если он включен, выключите его командой bcdedit -set TESTSIGNING OFF и снова перезагрузитесь.

← На главную