Как подключить драйвер эквайринга Ingenico iPP320 в 64-битной версии 1С:Управление торговлей

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

При переходе на 64-разрядные клиентские приложения 1С:Предприятие 8.3 системные администраторы часто сталкиваются с аппаратными сбоями. Типичная ситуация: при попытке подключить популярный эквайринговый терминал Ingenico iPP320 в конфигурации «1С:Управление торговлей 11.4» система выдает ошибку при установке драйвера IngenicoDriver1C.dll. Проблема кроется в разрядности операционной системы, платформы 1С и самого внешнего компонента.

В этой статье мы подробно разберем природу данной ошибки, выясним, почему стандартные обертки не всегда помогают, и пошагово реализуем рабочие варианты настройки оборудования.

Анализ проблемы: разрядность платформы и типы драйверов

Прежде чем приступать к настройке, проанализируем, почему возникает конфликт. Операционная система Windows x64 может выполнять как 32-битные, так и 64-битные приложения. Однако внутри одного процесса смешивать код разной разрядности категорически запрещено. Это значит, что 64-битный клиент 1С (процесс 1cv8.exe из папки Program Files) физически не способен загрузить в свое адресное пространство 32-битную динамическую библиотеку (DLL).

Существует два основных технологических стандарта для интеграции оборудования в 1С:

  1. COM-технология (ActiveX): Компоненты регистрируются в реестре Windows с помощью утилиты regsvr32. Для таких библиотек (например, ArcCom.dll, используемой в некоторых версиях ПО Arcus 2) можно настроить суррогатный COM+ хост (утилита dllhst3g.exe), который выступит мостом между 64-битной 1С и 32-битным драйвером.
  2. Native API: Это современный стандарт 1С. Библиотека IngenicoDriver1C.dll поставляется именно в этом формате. Она загружается платформой напрямую, без регистрации в реестре Windows. Настроить для нее внешнюю COM-обертку невозможно, так как она не является COM-объектом. Единственный способ заставить её работать в x64-клиенте — использовать x64-версию самой библиотеки, которой в старых поставках БПО просто не было.

Ниже мы подробно разберем два основных пути решения этой проблемы.

Решение 1. Настройка принудительного запуска 32-битного клиента 1С

Самый простой, быстрый и надежный способ запустить эквайринг — использовать 32-разрядный клиент 1С на рабочем месте кассира. Многие ошибочно полагают, что раз сервер 1С работает в 64-битной архитектуре, то и клиенты обязаны быть строго 64-битными. Это не так: 32-битный тонкий или толстый клиент прекрасно подключается и работает с 64-битным сервером баз данных. Единственное жесткое условие — номера релизов платформы на клиенте и сервере должны полностью совпадать (например, 8.3.18.1300 x86 на клиенте и 8.3.18.1300 x64 на сервере).

Однако при установке обеих версий платформ на компьютер под управлением Windows 10 x64, стандартный загрузчик 1cestart.exe по умолчанию будет перенаправлять пользователя на запуск 64-битной версии. Рассмотрим, как принудительно заставить систему запускать именно 32-битный клиент для конкретной базы.

Выполним следующие шаги:

  1. Запустите программу запуска 1С:Предприятия.
  2. В списке информационных баз выберите вашу базу «Управление торговлей» и нажмите кнопку «Изменить» на правой панели управления.
  3. В открывшемся окне редактирования параметров нажмите кнопку «Далее», чтобы перейти на самую последнюю страницу настроек (где указываются параметры запуска).
  4. Найдите поле «Разрядность». По умолчанию там установлено значение «Авто» или «64 (x64)».
  5. Принудительно выберите из выпадающего списка значение «32 (x86)».
  6. В поле «Версия платформы» при необходимости можно явно указать конкретный релиз платформы, исключив любые автоматические подмены.
  7. Нажмите кнопку «Готово» для сохранения настроек.

После выполнения этих действий при старте выбранной базы будет гарантированно открываться 32-разрядный клиент 1С, который без проблем подгрузит стандартный драйвер IngenicoDriver1C.dll.

Решение 2. Обновление БПО и использование двухплатформенного драйвера

Если специфика работы пользователя требует наличия именно 64-битного клиента (например, на этом же компьютере строятся тяжелые отчеты, требующие выделения более 2 ГБ оперативной памяти), необходимо использовать драйвер эквайринга, поддерживающий архитектуру x64.

Рассмотрим, как обновить компоненту:

  1. Проверьте версию вашей конфигурации «Управление торговлей». В современных релизах встроенная «1С:Библиотека подключаемого оборудования» (БПО) уже содержит обновленный двухплатформенный драйвер «Ingenico:Драйвер эквайринговой системы ARCUS 2.1», содержащий необходимые бинарные файлы под обе архитектуры.
  2. Если полное обновление конфигурации сейчас невозможно, скачайте актуальный сертифицированный драйвер Ingenico непосредственно с сайта поддержки подключаемого оборудования 1С.
  3. Откройте 1С под учетной записью с правами администратора системы. Перейдите в раздел «НСИ и администрирование» -> «РМК и оборудование» -> «Подключаемое оборудование».
  4. Перейдите по ссылке «Драйверы оборудования», найдите в списке драйвер Ingenico и нажмите «Функции» -> «Установить из файла», указав путь к новому скачанному архиву драйвера. Платформа распакует драйвер и автоматически подставит нужную версию библиотеки (x64) при старте сеанса.

Важные требования к окружению операционной системы Windows

Успешная интеграция эквайринга зависит не только от платформы 1С, но и от подготовки операционной системы Windows. Чтобы интеграционная компонента 1С могла передавать команды на терминал, на стороне ОС должны быть выполнены следующие настройки:

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

← На главную