Почему 64-разрядный клиент 1С не видит кассу АТОЛ и как исправить ошибку?

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

При переходе на 64-разрядную версию платформы 1С:Предприятие пользователи и администраторы нередко сталкиваются с ситуацией, когда торговое оборудование перестает работать. В 32-разрядном клиенте ККТ определяется и функционирует штатно, а при попытке подключения в 64-разрядном клиенте возникает ошибка инициализации: Не установлен на текущем компьютере. Не определен тип: AddIn.ATOL_KKM_1C82_54FZ. Разберем причины возникновения этой неполадки и рассмотрим проверенные способы ее устранения.

Причина проблемы: архитектурные ограничения разрядности

Проанализируем ситуацию на уровне операционной системы. 64-разрядный исполняемый процесс (в нашем случае 1cv8.exe разрядности x64) физически не может загрузить в свое адресное пространство 32-разрядную динамическую библиотеку (DLL). Попытки скопировать файлы в системные папки вроде c:\Windows\SysWOW64\ или зарегистрировать их с помощью утилиты regsvr32 не дают результата.

Идентификатор типа AddIn.ATOL_KKM_1C82_54FZ относится к устаревшим версиям драйверов торгового оборудования (линейки ДТО 8 и ранние ДТО 9). Для этих версий производитель выпускал исключительно 32-разрядные внешние компоненты. 64-битных сборок этих библиотек не существует в природе.

Попытки пробросить внешнюю компоненту через службу компонентов Windows (COM+ / DllSurrogate) также не приводят к успеху. Механизм внешних компонент 1С, загружаемый конструкцией ЗагрузитьВнешнююКомпоненту() или через фабрику типов AddIn.*, требует работы строго внутри адресного пространства клиента (In-Process Server). Обертка COM+ способна изолировать разрядность только для классических Automation-объектов при вызове через Новый COMОбъект(), но не подходит для штатных механизмов интеграции торгового оборудования 1С.

Решение 1. Использование 32-разрядного клиента 1С

Самый быстрый и надежный способ вернуть рабочее место кассира в строй без глобальной перенастройки учетной системы — запуск 32-разрядной версии платформы.

  1. Установим на рабочем месте тонкий или толстый клиент 1С:Предприятие разрядности x86 (32 бит).
  2. Откроем окно запуска 1С, выберем необходимую информационную базу и нажмем кнопку Изменить.
  3. На странице настроек параметров запуска перейдем к разделу Основной режим запуска и в пункте Разрядность принудительно укажем 32 (x86).
  4. Запустим конфигурацию и выполним проверку подключения кассового аппарата в разделе торгового оборудования.

Запуск 32-битного клиента для локального рабочего места кассира является стандартной практикой, так как большинству кассовых узлов не требуется объем оперативной памяти более 4 ГБ.

Решение 2. Переход на современный драйвер АТОЛ ДТО 10

Если специфика рабочего места строго требует запуска именно 64-разрядного клиента платформы, потребуется модернизировать стек драйверов ККТ.

  1. Скачаем актуальный дистрибутив «Драйвер ККТ 10.x» с официального центра загрузок производителя. Начиная с 10-й версии, драйвер поставляется в двух раздельных вариантах — x86 и x64.
  2. Установим 64-разрядную версию драйвера на рабочую станцию. При необходимости работы как 32-битных, так и 64-битных приложений можно выполнить параллельную установку обеих сборок драйвера в систему.
  3. Обновим настройки оборудования в самой базе 1С. В типовых конфигурациях на базе Библиотеки подключаемого оборудования (БПО) драйвер стандарта 10.x поддерживается нативно. Интеграционная компонента поставляется в виде архива, содержащего библиотеки Native API сразу под обе разрядности.
  4. Переустановим драйвер внутри конфигурации: перейдем в Администрирование → Подключаемое оборудование, выберем тип оборудования ККТ с передачей данных, обновим обработчик на актуальный («АТОЛ:ККТ с передачей данных 10.X») и нажмем Установить драйвер.

Решение 3. Организация сетевого взаимодействия и Web-сервер ККТ

Рассмотрим альтернативные способы взаимодействия с аппаратом, которые полностью исключают зависимость от разрядности клиентского приложения 1С:

  1. Использование Web-сервера ККТ: в состав драйверов линейки ДТО 10 входит встроенный сервис HTTP/JSON. При такой схеме 1С обменивается с кассой сетевыми веб-запросами, что исключает загрузку локальных DLL-библиотек в процесс 1С.
  2. Сетевой интерфейс ККТ: подключим фискальный регистратор по Ethernet или Wi-Fi напрямую в локальную сеть предприятия, обращаясь к устройству по статическому IP-адресу через совместимый драйвер.
  3. Сервер подключаемого оборудования: выделим отдельный ПК или микросервер с установленным 32-разрядным окружением, к которому подключена касса, и настроим удаленный доступ к фискальному регистратору с других рабочих станций через средства службы оборудования 1С.
← На главную