Как исправить ошибку «Не удалось получить внешнюю компоненту a_inpasDC1c83» при установке терминала ИНПАС на Windows x64?

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

При настройке эквайрингового оборудования ИНПАС, работающего по протоколу UNIPOS, системные администраторы часто сталкиваются с ситуацией (поможет централизованное администрирование рабочих мест и касс), когда на 32-битных системах всё работает «из коробки», а на 64-битных Windows (например, Windows 7 x64 или Windows 10 x64) возникает критическая ошибка. В журнале регистрации 1С это отображается как: «Для идентификатора a_inpasDC1c83 (версия не указана) не удалось получить внешнюю компоненту». Рассмотрим подробно, почему это происходит и как решить данную проблему, учитывая все технические нюансы взаимодействия 32-битной платформы 1С и 64-битной операционной системы.

Выясним причину конфликта разрядностей

Проанализируем ситуацию: как правило, в розничной торговле (где часто требуется автоматизация нескольких УТМ ЕГАИС) используется 32-битная версия платформы 1cv8.exe. Внешняя компонента a_inpasDC1c83 также является 32-битной библиотекой. В 64-битной среде Windows механизмы регистрации библиотек и обращения к реестру разделены. Если компонента зарегистрирована некорректно или системе не хватает зависимых библиотек именно 32-битной разрядности, 1С не сможет инициализировать драйвер, даже если он физически присутствует в системе — эту техническую проблему решает драйвер весов без регистрации COM-компонент.

Шаг 1. Правильная регистрация библиотеки в SysWOW64

Одной из главных ошибок является попытка регистрации библиотеки (будь то драйвер терминала или внешняя компонента SignotecPad) через стандартную команду без указания пути к правильному обработчику. В Windows x64 для 32-битных библиотек необходимо использовать regsvr32.exe, расположенный в папке SysWOW64. Разберем правильный алгоритм регистрации:

  1. Запустите командную строку (cmd) от имени администратора.
  2. Выполните команду регистрации, явно указав путь к 32-битному регистратору.

Пример команды для регистрации (путь к DLL может отличаться в зависимости от места установки драйвера):


C:\Windows\SysWOW64\regsvr32.exe "C:\Program Files (x86)\INPAS\DualConnector\a_inpasDC1c83.dll"

Если регистрация прошла успешно, вы увидите сообщение DllRegisterServer в ... успешно. Если возникла ошибка (как бывает и при чтении данных с ID карт) — значит, в системе отсутствуют пакеты Visual C++, о которых мы поговорим далее.

Шаг 2. Проверка библиотек Microsoft Visual C++ Redistributable

Компонента a_inpasDC1c83 написана с использованием определенных сред разработки и требует наличия соответствующих Runtime-библиотек. Часто на «чистых» кассовых узлах отсутствуют старые версии пакетов. Проанализируем, что именно нужно установить:

Важно: даже если у вас установлена 64-битная Windows, для работы 32-битной 1С и её компонент нужны именно x86 версии этих пакетов. Без них DLL-файл компоненты просто не сможет загрузиться в память (ошибка «загрузка модуля не удалась»).

Шаг 3. Анализ путей в реестре (Wow6432Node)

Разберем ситуацию, когда 1С «не видит» установленный драйвер из-за разницы в ветках реестра. 32-битные приложения в 64-битной ОС ищут настройки в узле HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\. Иногда установщик ИНПАС прописывает данные в основную ветку SOFTWARE, которая невидима для 32-битной платформы 1С.

Проверьте наличие ключей в ветке:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\INPAS\DualConnector

Если ветка пуста, попробуйте переустановить драйвер от имени администратора или вручную экспортировать/импортировать настройки из основной ветки в узел Wow6432Node.

Шаг 4. Настройка прав доступа и UAC

В Windows 7 и выше механизмы контроля учетных записей (UAC) могут блокировать распаковку внешней компоненты. Программа «1С:Розница» при первом обращении к оборудованию пытается извлечь компоненту из макета и сохранить её в локальный кэш пользователя. Посмотрим на этот процесс подробнее:

  1. Запустите 1С один раз в режиме «Запуск от имени администратора».
  2. Перейдите в «Подключаемое оборудование» и нажмите кнопку «Тест устройства».
  3. Это позволит программе успешно зарегистрировать компоненту в системных папках с повышенными правами.

Шаг 5. Очистка кэша внешних компонент

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

%AppData%\1C\1cv8\ExtCompT

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

Шаг 6. Зависимость от .NET Framework

Хотя более новые версии DualConnector ориентированы на .NET 4.x, многие реализации COM-объектов в эквайринге всё еще требуют .NET Framework 3.5 (который включает в себя версии 2.0 и 3.0). Убедитесь, что этот компонент включен в панели управления Windows («Включение или отключение компонентов Windows»). Наличие версии 4.8 не всегда заменяет необходимость версии 3.5 для старых библиотек связи.

Шаг 7. Проверка сопутствующих файлов драйвера

Внешняя компонента a_inpasDC1c83.dll не работает в вакууме. Для её успешного функционирования в той же папке (или в системной SysWOW64) должны находиться файлы:

Если 1С распаковала в свой кэш только основной файл a_inpasDC1c83, но не нашла рядом зависимых библиотек, тест оборудования завершится ошибкой. В этом случае рекомендуется вручную скопировать все файлы из папки установленного DualConnector в каталог с платформой 1С (папка bin), хотя это и является «грубым» методом решения.

Таким образом, мы рассмотрели комплекс мер по исправлению ошибки. Последовательное выполнение этих шагов — от установки Visual C++ x86 до принудительной регистрации через SysWOW64 — гарантированно позволяет запустить эквайринг ИНПАС на любой современной 64-битной операционной системе в связке с 1С. В качестве альтернативного решения для конфигураций на обычных формах подойдёт обработка обслуживания эквайринговых терминалов ИНПАС UNIPOS с нативной поддержкой x86 и x64.

← На главную