К статье
Практический материал

Администрирование · 13 мин

Где находятся драйверы 1С от торгового оборудования

Разбираем, где 1С хранит драйверы торгового оборудования: папки установки, кэш компонент, реестр COM. Как найти, проверить и восстановить драйвер ККТ, сканера и весов.

Драйверы торгового оборудования в 1С — это внешние компоненты (COM-объекты или Native API), которые платформа загружает для работы с кассами, сканерами штрихкода, весами, дисплеями покупателя и эквайринговыми терминалами. В отличие от обычных «системных» драйверов Windows, они не лежат в одном строго заданном месте: часть файлов устанавливается в папки самой 1С, часть — в каталоги поставщика оборудования, а часть подгружается из макетов конфигурации в кэш пользователя.

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

Важно понимать, что существует два слоя: системный драйвер устройства (например, драйвер USB-COM порта кассы Атол или Штрих) и драйвер-компонента для 1С, который обращается к этому системному драйверу. Искать их нужно в разных местах, и путаница между ними — самая частая причина лишней переустановки.

Как устроена загрузка драйверов оборудования в 1С

Современные конфигурации (УТ, Розница, КА, ERP) работают с оборудованием через подсистему БСПО — библиотеку подключаемого оборудования. Драйвер в ней хранится как макет с ZIP-архивом, внутри которого лежат файлы компоненты для Windows и иногда Linux. При подключении оборудования 1С распаковывает архив в служебную папку и регистрирует компоненту.

Это означает, что «первоисточник» драйвера — сама информационная база. Даже если вы удалите все файлы с диска, при следующем подключении оборудования конфигурация снова распакует компоненту из макета. Поэтому бороться с устаревшим драйвером удалением файлов бессмысленно, пока старая версия зашита в макете конфигурации.

Второй сценарий — драйверы, устанавливаемые отдельным инсталлятором поставщика (Атол, Штрих-М, Viki Print, Дримкас и другие). Они ставятся в собственные каталоги, регистрируют COM-объекты в Windows, а 1С лишь обращается к ним по имени ProgID. Здесь источником истины является установщик вендора.

Основные папки, где лежат драйверы

Ниже перечислены стандартные расположения, которые стоит проверять в первую очередь. Конкретные пути зависят от разрядности ОС, версии платформы и способа установки.

  • C:\Program Files\<Вендор>\ или C:\Program Files (x86)\<Вендор>\ — каталоги драйверов, установленных инсталляторами поставщиков (Атол, Штрих-М, Сrystal Service и др.). Внутри обычно есть подпапки Driver, Bin, Samples.
  • %APPDATA%\1C\1cv8\ExtCompT и %APPDATA%\1C\1cv8\ExtComp — кэш внешних компонент платформы, куда попадают распакованные из макетов драйверы.
  • %LOCALAPPDATA%\1C\1cv8\ — дополнительные служебные каталоги платформы текущего пользователя.
  • C:\Program Files\1cv8\<версия>\bin\ — каталог платформы; сюда вендоры иногда кладут свои DLL, чтобы компонента была доступна всем базам.
  • C:\Windows\System32\ и C:\Windows\SysWOW64\ — места регистрации старых COM-компонент и сопутствующих библиотек (SysWOW64 — для 32-разрядных компонент на 64-разрядной Windows).

Отдельно стоит упомянуть папку самой конфигурации: если драйвер поставляется как файл в комплекте поставки обновления, он может лежать в каталоге шаблонов %APPDATA%\1C\1cv8\tmplts\ рядом с дистрибутивом конфигурации.

Оборудование работало и пересталоКэш компонент пользователя

Проверьте %APPDATA%\1C\1cv8\ExtCompT — возможно, там устаревшая версия компоненты

Драйвер установлен, но 1С его не видитCOM-регистрация

Проверьте регистрацию компоненты в реестре и разрядность: 32-битная компонента невидима для 64-битного клиента

После обновления конфигурации драйвер старыйМакет в базе

Версия драйвера зашита в макете конфигурации — обновляйте макет, а не файлы на диске

Драйверы из макетов конфигурации: кэш внешних компонент

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

Основная папка кэша — %APPDATA%\1C\1cv8\ExtCompT. Внутри создаются подкаталоги с именами, содержащими идентификатор компоненты и версию. Если драйвер обновился, рядом может лежать несколько версий, и платформа подхватит ту, которую запросила конфигурация.

Практический приём: при подозрении на повреждённый кэш закройте 1С, переименуйте папку ExtCompT (не удаляйте сразу — так безопаснее) и запустите подключение оборудования заново. Компонента будет распакована из макета начисто. Если проблема исчезла — причина была в кэше; старую папку можно удалить.

Как сбросить кэш драйвера оборудования
  1. 1
    Завершите все сеансы 1С на проблемном компьютере
  2. 2
    Откройте %APPDATA%\1C\1cv8\ и переименуйте папку ExtCompT, например в ExtCompT_old
  3. 3
    Запустите 1С, откройте настройки подключаемого оборудования и переустановите драйвер
  4. 4
    Проверьте работу устройства тестом подключения
  5. 5
    Если всё работает — удалите переименованную папку; если нет — верните её обратно и ищите причину в другом месте

Драйверы поставщиков: Атол, Штрих-М и другие

Драйверы, установленные инсталлятором вендора, живут отдельно от 1С. Например, драйвер ККТ Атол традиционно размещается в C:\Program Files (x86)\ATOL\, драйверы Штрих-М — в C:\Program Files (x86)\SHTRIH-M\. Там же обычно находятся утилиты тестирования («Тест драйвера ККТ», «Тест драйвера ФР»), которые позволяют проверить связь с устройством вне 1С — это первый шаг диагностики.

Такой драйвер состоит из двух частей: системной (служба или драйвер порта) и COM-компоненты, к которой обращается 1С. Проверить регистрацию COM-объекта можно через реестр: ветка HKEY_CLASSES_ROOT\<ProgID> и HKEY_CLASSES_ROOT\CLSID\. Для 32-разрядных компонент на 64-разрядной системе фактическая запись находится в HKEY_CLASSES_ROOT\WOW6432Node\CLSID\.

Если тестовая утилита вендора видит кассу, а 1С — нет, проблема почти всегда в несовпадении разрядности или в том, что 1С использует собственную компоненту из макета, а не вендорскую. Проверьте в настройках оборудования, какой именно драйвер выбран: «1С: Драйвер ККТ» и «Атол: Драйвер ККТ» — разные компоненты с разными файлами.

Как найти конкретный драйвер: пошаговая диагностика

Начните с 1С. Откройте раздел «Подключаемое оборудование» (в типовых: Администрирование → Подключаемое оборудование → Драйверы оборудования), найдите нужное устройство и посмотрите версию и наименование драйвера. Функция «Информация о драйвере» часто показывает путь к загруженной компоненте.

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

cmd
dir /s /b "%APPDATA%\1C\1cv8\<em>AddIn</em>" > C:\drivers_list.txt && notepad C:\drivers_list.txt

Для COM-компонент вендоров удобнее смотреть реестр: найдите ProgID драйвера (его видно в настройках оборудования или документации), затем в HKEY_CLASSES_ROOT\CLSID по CLSID откройте подраздел InprocServer32 — в значении по умолчанию указан полный путь к DLL.

Контрольные точки

Как проверить, что драйвер найден и рабочий

Тест подключения в 1С
Норма

Сообщение об успешном подключении с указанием версии драйвера

Тревожный признак

Ошибка загрузки компоненты или «драйвер не установлен»

Тест утилитой вендора
Норма

Устройство отвечает, печатается тестовый чек/этикетка

Тревожный признак

Утилита не видит устройство — проблема ниже уровня 1С (порт, кабель, системный драйвер)

Версия файла компоненты
Норма

Совпадает с версией, указанной в настройках оборудования

Тревожный признак

На диске старая версия, а 1С ждёт новую (или наоборот)

Типичные проблемы и их причины

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

Вторая группа проблем — разрядность. Тонкий клиент 1С для Windows может быть 32- или 64-разрядным, и компонента должна соответствовать. Если в ZIP-архиве драйвера из макета есть только 32-битная DLL, на 64-битном клиенте она не загрузится. Решение — использовать 32-битный клиент или драйвер с поддержкой обеих архитектур.

Третья группа — права доступа. Регистрация COM-компоненты и запись в Program Files требуют прав администратора. Если установка драйвера запускалась под обычным пользователем и «тихо» завершилась ошибкой, файлы могут оказаться не на месте. Проверяйте наличие файлов по путям из предыдущих разделов и при необходимости переустанавливайте драйвер от имени администратора.

Типичные ошибки
01
Удаление файлов драйвера из кэша без переустановки через 1С — компонента восстановится из макета, но настройки подключения могут сброситься
02
Переустановка вендорского драйвера поверх без перезагрузки — старая DLL остаётся заблокированной в памяти, и 1С продолжает использовать её
03
Игнорирование разрядности клиента — поиск 64-битной версии драйвера, которой не существует, вместо запуска 32-битного клиента
04
Поиск драйвера только в папке платформы 1С — большинство компонент лежат в профиле пользователя или у вендора

Когда драйвер нужно обновить или переустановить

Обновление драйвера оправдано в трёх случаях: конфигурация явно требует новую версию (сообщение при подключении), производитель исправил ошибку, которая у вас воспроизводится, или изменились требования законодательства к фискализации (новые реквизиты чека, форматы ФФД).

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

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

Маршрут решения

Как выбрать действие

1С пишет «драйвер не установлен» или «не удалось загрузить компоненту»Очистите кэш ExtCompT и переустановите драйвер через настройки оборудования
Утилита вендора видит устройство, а 1С — нетПроверьте разрядность клиента и какой именно драйвер выбран в настройках (1С-шный или вендорский)
После обновления конфигурации оборудование работает с ошибкамиПереустановите драйвер из макета новой конфигурации и проверьте версию вендорского драйвера на совместимость
Драйвер не устанавливается вообщеЗапустите установку от имени администратора и проверьте, не блокирует ли антивирус регистрацию COM-компоненты

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

Можно ли просто скопировать папку с драйвером на другой компьютер?

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

Почему у одного пользователя оборудование работает, а у другого на том же компьютере — нет?

Кэш внешних компонент хранится в профиле каждого пользователя (%APPDATA%). У второго пользователя компонента либо не распаковывалась, либо в его кэше лежит повреждённая или устаревшая версия. Очистите ExtCompT в профиле проблемного пользователя и переустановите драйвер из 1С.

Где лежит драйвер сканера штрихкода, если он работает в режиме эмуляции клавиатуры?

Нигде — в клавиатурном режиме сканер не требует драйвера для 1С вообще: он вводит данные как обычная клавиатура. Драйвер (COM- или Native-компонента) нужен только при подключении через COM-порт или USB-COM эмуляцию, когда 1С сама опрашивает устройство.

Как узнать версию драйвера, который сейчас использует 1С?

Откройте настройки подключаемого оборудования, выберите устройство и нажмите «Тест подключения» или «Информация о драйвере» — в отчёте указывается версия компоненты. Дополнительно версию файла можно посмотреть в свойствах DLL в папке кэша компонент или вендора.

Опасно ли удалять папку ExtCompT целиком?

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

Почему после обновления платформы 1С драйвер перестал загружаться?

Чаще всего меняется разрядность клиента по умолчанию: новая платформа может запускать 64-битный тонкий клиент, а компонента драйвера существует только в 32-битном варианте. Проверьте разрядность клиента в «О программе» и либо запускайте 32-битную версию, либо обновите драйвер до сборки с поддержкой x64.

Итог

Что важно запомнить

Драйверы оборудования 1С распределены по трем зонам: макеты конфигурации (источник), кэш компонент в профиле пользователя (%APPDATA%\1C\1cv8\ExtCompT) и каталоги вендоров в Program Files с регистрацией в реестре. Диагностику начинайте с теста подключения и проверки версии, а сброс кэша — безопасный первый шаг при сбоях.