Sbrf dll не регистрируется

Обновлено: 06.07.2024

Первичную настройку интеграции со сбером должны выполнять специалисты Сбербанка!

Укажите специалисту Сбербанка что терминал должен формировать один слип! В настройках процессинга же в админ панели для Сбербанка укажите число копий слипа- два

Касса напрямую не взаимодействует с пин-падом, всё общение производится через промежуточный софт Сбербанка: sbrf.dll или pilot_nt.dll - это библиотека, реализующая основные запросы к пин-паду:

Если коротко, то Касса запрашивает у sbrf.dll или pilot_nt.dll проведение оплаты на заданную сумму, далее библиотека выполняет все необходимые действия с пин-падом и возвращает программе результат операции (в виде числового кода). Расшифровку числовых кодов нужно запрашивать у Сбербанка.

Настройка

После установки и настройки sbrf.dll или pilot_nt.dll лежит где-то на диске C ( C:\SBFR\ , C:\sc252 и т.п. где конкретно должен сказать специалист Сбера). Если всё настроено и «работает» то так же в этой папке должна быть программа loadparm.exe - если при запуске она показывает окошечко, значит связь с пин-падом есть, иначе - нет.

Бывает что настройка выполнена не полностью, в этом случае придется что-то делать руками.

pinpad.ini

pinpad.ini - файл с настройками связи с пин-падом:

ComPort - номер COM порта по которому подключен пин-пад. Обычно физически пин-пад подключен к компьютеру через USB, при этом устройство встает как виртуальный ком порт. Данная настройка должна совпадать с номером порта в системе. Если вы не можете определить какой из виртуальных портов пин-пад - выключите его, один из портов должен пропасть, потом включите, он снова должен появиться, используйте его номер для настройки ShowScreens - отвечает за то показывать ли диалоговое окно пин-пада при проведении операций. 1 - показывать, 0 - не показывать. Для касс рекомендуется показывать, т.е. 1 PinpadLog - вести ли лог обмена с пин-падом. 0 - не вести, 1 - вести.

Для того, что бы касса могла использовать sbrf.dll ее необходимо зарегистрировать в системе! Это, по идее, должны так же делать специалисты Сбербанка, но они этого не делают… обычно. В любом случае повторная регистрация не навредит:


Запустите командную строку с правами администратора
Смените текущую директорию на папку с библиотекой сбербанка

Настройки для pilot_nt.dll

Если используем pilot_nt.dll необходимо на каждом рабочем месте настроить переменную среды SB_PILOT_NT_PATH и указать в ней папку в которую установлена pilot_nt.dll (после настройки кассовое приложение необходимо полностью перезапустить, если до момента настройки оно было запущено, в случае автокассы необходимо перезапустить службу Jade.Cashdesk.Service ).

Для настройки параметра нажмите «Пуск» и начните вводить «переменных среды»


Запустите приложение, нажмите «Переменные среды», в группе «Системные переменные» нажмите «Создать…»


В имени переменной укажите SB_PILOT_NT_PATH , в значении папку с pilot_nt.dll :


Процедура оплаты

Оплата производится с поддержкой аварийной отмены, т.е. при проведении платежа он переводится в «неподтвержденное» состояние, подтверждается платеж только после печати чека. В иных случаях операция буедт отменена и деньги вернутся на счет клиенту. Даже если программа/компьютер на мертво зависли, или вырубилось электричество, и т.п. - деньги будут возвращены при сверке итогов в конце дня.

Проблемы

В случае если при оплате/возврате возникает ошибка «Нет связи с пин-падом», или «Ошибка номер такой-то, смотрите подробности в таблице ошибок» - это означает что sbrf.dll - вернула программе соответствующий код ошибки и программа считает операцию не выполненной.

Потеря связи с пин падом

При потерях связи с пин-падом:

Включите ведение логов обмена с пин-падом: в pinpad.ini установите PinpadLog=0 Предоставьте специалистам Сбербанка и Лайма логи и времена событий (логи - все txt и log файлы из папки с библиотеками сбербанка)

Журнал операций

Эквайринг сбербанка поддерживает возможность просмотра журнала операций и отмены оных. Отмена транзакций протоколируется и выводится в специальном отчёте: Отмены транзакций эквайринга

Пример разбора лога sbkernel[ddmm].log

sbkernel[ddmm].log - лог операций библиотеки sbrf.dll за dd - день, mm - месяц. Ведется библиотекой в случае установки параметра PinpadLog=1 в pinpad.ini .

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

Пример успешной операции

Описание

Если коротко то это сценарий оплаты с аварийной отменой, по сути мы даем в sbrf.dll три команды: 4000 (платеж), 6003 (перевести платеж в неподтвержденное состояние), 6001 (перевести платеж в подтвержденное состояние). Далее sbrf.dll общается с пинпадом сама, нам сообщая только результат операции (Result = 0, если не 0, то ошибка).

Пример сбойной операции

Описание

В такой ситуации программа будет считать что операция не выполнена (даже если пинпад, на самом деле, её провёл). По сути данную проблему должны решать специалисты Сбербанка.

Как зарегистрировать DLL в Windows 10 и Windows 11

Среди частых вопросов пользователей, особенно после того, как они сталкиваются с тем, что какая-то из библиотек DLL отсутствует в Windows 10, Windows 11 или других версиях системы — как зарегистрировать DLL в соответствующей версии ОС.

В этой инструкции подробно о способах регистрации библиотек DLL в Windows x64 и x86 (32-бит) с помощью regsvr32.exe (и кратко о regasm.exe), о возможных нюансах и проблемах, которые могут возникнуть в процессе.

Дальнейшие шаги описаны в предположении, что DLL, которую нужно зарегистрировать, уже находится в нужном расположении: папке C:\Windows\System32, C:\Windows\SysWOW64 или, в некоторых случаях — отдельных папках программ, к которой относится соответствующая библиотека, например, для 1С — C:\Program Files\1cv8\номер_версии\bin (или Program Files x86 в случае 32-битной версии).

Прежде чем приступить к регистрации библиотеки, учитывайте следующие моменты:

  • В x64 версиях Windows 64-битные DLL хранятся в System32, а 32-битные — в SysWOW64 (у некоторых начинающих пользователей бывает обратное предположение исходя из имён папок).
  • Файлы DLL x64 и x86 (32-бит) — это разные файлы. И если прямого указания на разрядность в месте загрузки файла нет, то чаще это 32-битный файл (что не мешает ему работать в x64 системе), но это не всегда так.
  • Для регистрации библиотеки DLL используется системный инструмент regsvr32.exe, который также доступен в двух версиях, которые лежат в папках System32 и SysWOW64 (в случае 64-битных систем). По умолчанию при описываемых далее действиях запускается x64 версия.
  • 32-битным программам и играм (по умолчанию устанавливаются в Program Files x86 в 32-битных системах) для работы нужны 32-битные DLL, не зависимо от разрядности Windows.

Сам процесс регистрации в общем случае состоит из следующих шагов:

Ошибка регистрации regsvr32 точка входа DllRegisterServer не найдена

Почему не удается зарегистрировать DLL

Ошибка при регистрации с помощью regsvr32 вида «Точка входа DllRegisterServer не найдена» говорит о том, что эта библиотека DLL не поддерживает регистрацию описанным методом. Можно попробовать использовать вариант команды:

но с большой вероятностью и это не поможет.

У большинства домашних пользователей такая проблема возникает при регистрации файлов DLL для игр и программ, часто не вполне лицензионных, которые сообщили, что нужный файл DLL не обнаружен или отсутствует. Причем сами библиотеки DLL обычно скачаны со сторонних сайтов (и чаще всего имеют имена начинающиеся с «vc», «msvc» или «d3d»). А решение, как правило, простое — выяснить, частью какого набора компонентов является эта DLL и установить эти компоненты с помощью их собственного установщика. Более подробно проблема и подходы к решению описаны в инструкции Точка входа DllRegisterServer не найдена — причины и возможные решения.

Видео

Надеюсь, цель достигнута, а количество вопросов, связанных с регистрацией DLL в Windows, уменьшилось.

Как зарегистрировать dll библиотеку в системе

Варианты решения проблемы

Имеется несколько методов, позволяющих устранить данную проблему. Рассмотрим каждый из них подробнее.

Способ 1: OCX/DLL Manager

OCX/DLL Manager – это маленькая программа которая может помочь зарегистрировать библиотеку или файл OCX.

OCX/DLL Manager также умеет отменять регистрацию библиотеки, для этого понадобится выбрать в меню пункт «Unregister OCX/DLL» и в последствии проделать все те же операции, как и в первом случае. Функция отмены может вам понадобиться для сравнения результатов при активированном файле и при отключенном, а также в процессе удаления некоторых компьютерных вирусов.

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

Запуск программы от имени администратора OCX DLL Manager

Способ 2: Меню «Выполнить»

Можно зарегистрировать DLL, используя команду «Выполнить» в стартовом меню операционной системы Windows. Для этого нужно будет произвести следующие действия:

  1. Нажать клавиатурную комбинацию «Windows + R» или выбрать пункт «Выполнить» из меню «Пуск».

Открываем меню Выполнить

Регистрируем DLL библиотеку через меню Выполнить

Этот пример подойдёт вам в том случае, если операционная система установлена на диск С. Если она находится в другом месте, то нужно будет поменять букву диска или воспользоваться командой:

Команда для регистрации dll которая сама находит папку где у вас установлена ОС

В таком варианте программа сама находит папку где у вас установлена ОС и запускает регистрацию указанного DLL файла.

В случае с 64-разрядной системой у вас будет две программы regsvr32 — одна находится в папке:

и вторая по пути:

Это разные файлы, которые используются раздельно для соответствующих ситуаций. Если у вас 64-битная ОС, а файл DLL 32-битный, тогда сам файл библиотеки должен быть помещен в папку:

и команда будет выглядеть уже так:

Команда для регистрации dll в 64-битной системе

Способ 3: Командная строка

  1. Выберите команду «Выполнить» в меню «Пуск».
  2. Впишите в открывшемся поле для ввода cmd.
  3. Нажмите «Enter».

Перед вами появится окно, в котором нужно будет вводить те же команды, что и во втором варианте.

Регистрируем DLL библиотеку через командную строку

Надо отметить, что у окна командной строки имеется функция вставки скопированного текста (для удобства). Найти это меню можно, нажав правой кнопкой на пиктограмме в левом верхнем углу.

Меню вставки в командной строке Windows

Способ 4: Открыть с помощью

  1. Откройте меню файла, который будете регистрировать, нажав по нему правой кнопкой мыши.
  2. Выберите «Открыть с помощью» в появившемся меню.

Регистрируем DLL библиотеку через меню Открыть с помощью

или в случае, если вы работаете в 64-битной системе, а файл DLL 32-разрядный:

Возможные ошибки

«Файл не совместим с установленной версией Windows» — это означает, что вы, скорее всего, пытаетесь зарегистрировать 64-разрядную DLL в 32-битной системе или наоборот. Воспользуйтесь соответствующей командой, описанной во втором способе.

В заключение нужно сказать, что суть всех предложенных вариантов одна и та же — это просто разные методы запуска команды регистрации — кому как удобнее.

Закрыть

Мы рады, что смогли помочь Вам в решении проблемы.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Закрыть

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Настройка оборудования

Куда устанавливать DLL-файлы

как определить разрядность windows 10

Ну а дальше всё просто:

куда кидать dll файлы для регистрации в виндовс

пуск выполнить

регистрация dll x32 x64 windows 10

В качестве примера давайте зарегистрируем библиотеку runtime.dll для 32-хбитной версии Windows 10. команда будет такой:

регистрация библиотеки dll windows ошибка

Связана она либо с ошибкой в пути или имени файла, либо с неправильно выбранной папкой, в которую была скопирована ДЛЛ-ка для регистрации. Стоит ещё раз всё тщательно проверить.

Запись опубликована 16 сентября 2017 автором XasaH в рубрике Windows с метками regsvr32, библиотеки windows, длл файлы, зарегистрировать dll, регистрация dll.

Помогло? Посоветуйте друзьям!

Как зарегистрировать библиотеку dll в Windows 10 : 11 комментариев

Ну хорошо! А почему для 64 битной не написали пример пути регистрации? Вот куда закинуть написали, а как зарегистрировать только для 32.

Так подставляйте папку в пример и всё. Проще некуда.

неплохо бы напомнить, что и resvr32.exe существует в 2-х экземплярах (разной разрядности).
и что dll-ки бывают разной разрядности! и что 64-х битную dll в 64-х битной винде надо кидать в system32, а не в syswow64

Всё-б так было просто взял и скопировал runtime библиотеку в
%SystemDrive%\Windows\system32 🙂
Вы автор пробовали ?? похоже нет.
1-е данная директория защищена службой Защита программного обеспечения C:\WINDOWS\system32\sppsvc.exe которую Вы оставили запущенной
2-е Владельцем директории по умолч является TrustedInstaller
группа Система и Администраторы имеют права чтение и выполнение
Замена прав и атрибутов в директориях %SystemDrive%\Windows\system32 и \ SysWOW64 приведут к краху ос
А без полных прав и владения объектом при копировании вам покажут национальную индейскую избу.

Игорь, Вы путаете. Дело в том, что в 32-х разрязной Windows динамические библиотеки лежат как раз в папке system32. В 64х разрядной библиотеки 64х программ лежат в System32, а 32х разрядных приложений в sysWOW64. Потому в 90% случаев и нужно в Windows 10 x64 класть библиотеки в папку sysWOW64. Надеюсь, что понятно объяснил.

Изначально для игры сделано
Но помогает и с другими OCX( dll )
Регистрирует в пользовательский отдел реестра, в 10ке помогает, во всяком случае для l2 и msxml4 точно

Читайте также: