При подключении торгового оборудования АТОЛ в программе 1С:Управление торговлей 11 специалисты часто сталкиваются с ситуацией, когда на одном компьютере драйвер устанавливается корректно, а на другом (часто ведомом по сети, если используется подключение нескольких рабочих мест к одной кассе ККМ, или более старом) возникает неочевидная ошибка. Особенно это заметно при попытке установить драйвер из справочника ДрайверыОборудования, выбрав вариант загрузки «из информационной базы». Рассмотрим подробно, почему возникает эта проблема и как ее решить, проанализировав технические нюансы взаимодействия платформы 1С, драйверов АТОЛ (DTO) и операционной системы Windows.
Для начала разберем, как 1С работает с внешними компонентами драйверов. В конфигурациях на управляемых формах, таких как УТ 11.5 (где помимо стандартного РМК часто настраивается пробитие фискального чека из реализации), предусмотрено два способа хранения файлов драйвера:
ДрайверыОборудования, и платформа при первом обращении распаковывает его на локальный компьютер пользователя.Если драйвер «из макета» устанавливается успешно, а «из базы» выдает ошибку, это сигнализирует о том, что системе не хватает определенных ресурсов для регистрации новой внешней компоненты в реестре Windows или для ее инициализации. Проанализируем, какие шаги необходимо предпринять для исправления ситуации.
Одной из самых частых причин ошибки инициализации драйверов АТОЛ 10-й версии (и других внешних компонент, когда настраивается печать чеков на принтерах чеков в 1С: УТ 11) является отсутствие необходимых системных библиотек Windows. Драйверы АТОЛ написаны с использованием Microsoft Visual C++, и для их работы на целевом компьютере должны быть установлены соответствующие пакеты Redistributable.
Выясним причину: современные драйверы АТОЛ (начиная с версий 10.9.х и выше) требуют наличия Microsoft Visual C++ 2015–2022 Redistributable. При этом крайне важно соблюдать битность:
regsvr32 или средствами 1С будет невозможна.Проанализируем ситуацию с версиями ПО. Для корректной работы в режиме ФФД 1.2 (маркировка, новые ставки НДС 5% и 7%) критически важно соблюдать связку версий. Рассмотрим рекомендованную схему:
Версия прошивки ККТ: 5.12.x или 5.15.x (платформа 5.0).
Версия ДТО (Driver Trade Software): 10.10.6 и выше.
Версия компоненты в 1С: «АТОЛ:ККТ с передачей данных в ОФД 10.x (ФФД 1.2) УСН НДС».
Если на одном компьютере всё работает, а на другом нет, проверьте, не остались ли в системе следы старых драйверов. Часто файлы fptr10.dll или libcrypto-1_1.dll могут дублироваться в папках C:\Windows\System32 или C:\Windows\SysWOW64. Программа 1С может пытаться обратиться к ним, что вызывает конфликт версий.
Чтобы не гадать, почему драйвер не устанавливается, посмотрим на лог-файлы самого драйвера АТОЛ. Драйвер 10-й версии ведет подробный протокол работы внешней компоненты. Найдем его по следующему пути:
C:\Users\[ИмяПользователя]\AppData\Roaming\ATOL\drivers10\logs\fptr1C.log
В этом файле можно найти конкретный код ошибки. Например, если вы видите сообщение «Module not found» при наличии файла, это подтверждает отсутствие библиотек Visual C++ из первого шага.
Рассмотрим метод «грубой» установки, который часто помогает, когда механизмы 1С дают сбой. Платформа 1С хранит установленные внешние компоненты в папке пользователя:
%AppData%\1C\1cv8\ExtCompT
Попробуем выполнить следующие действия:
Иногда Windows блокирует DLL-файлы, скопированные по сети или скачанные из интернета. Нажмите правой кнопкой мыши на скопированные файлы, выберите «Свойства» и, если там есть надпись «Этот файл был получен с другого компьютера...», нажмите кнопку «Разблокировать».
Если вышеуказанные шаги не помогли, разберем ситуацию с повреждением кэша платформы. Простая очистка через удаление базы из списка может быть недостаточной. Выполним глубокую очистку:
Нужно удалить содержимое следующих папок (предварительно завершив работу всех процессов 1cv8.exe):
%LocalAppData%\1C\1cv8\
%AppData%\1C\1cv8\
Важно: При переустановке платформы 1С убедитесь, что вы устанавливаете версию той же битности, что и драйверы. В нашем примере — 32-битная платформа.
В некоторых случаях для диагностики можно попробовать программно подключить компоненту через внешнюю обработку, чтобы увидеть текст ошибки, который 1С иногда скрывает за общими фразами. Рассмотрим пример кода для проверки доступности компоненты:
Попытка
УстановитьВнешнююКомпоненту("ОбщийМакет.ДрайверАтолККТ10");
ПодключитьВнешнююКомпоненту("ОбщийМакет.ДрайверАтолККТ10", "Atol");
Драйвер = Новый ("AddIn.Atol.AtolFormControl10");
Сообщить("Компонента успешно загружена!");
Исключение
Сообщить("Ошибка загрузки: " + ОписаниеОшибки());
КонецПопытки;
Использование объекта AddIn.Atol.AtolFormControl10 позволяет напрямую обратиться к драйверу, минуя стандартные механизмы БСП (Библиотеки стандартных подсистем), что помогает понять, проблема в самой компоненте или в коде конфигурации 1С.
Подведем итоги. Если на втором компьютере драйвер АТОЛ «из информационной базы» не устанавливается, выполните следующие действия в строгом порядке:
fptr1C.log для поиска точного кода системной ошибки.Помните, что старые компьютеры часто имеют «замусоренный» реестр и системные папки остатками предыдущих драйверов. В самых сложных случаях помогает только полная очистка системных каталогов System32 от любых упоминаний fptr и atol перед новой установкой.