Работа с COM компонентой ошибка?
Добрый день!
Имеются две конфигурации БП 2.0 и БП 3.0 и имеется сторонняя библиотека для работы с ключами, платформа 8.3.16 32х серверная, сервер БД postgres 12.
Код для БП 2.0 работает идеально и всё отрабатывает хорошо:
Но код для управляемых форм в БП 3.0 не отрабатывает com объект создаётся но при вызове метода senselock.sense_setmode говорит что метод не обнаружен:
Подскажите пожалуйста в чём может быть проблема я что-то не так делаю для УФ или надо переписывать библиотеку?
Заранее благодарен!
Имеются две конфигурации БП 2.0 и БП 3.0 и имеется сторонняя библиотека для работы с ключами, платформа 8.3.16 32х серверная, сервер БД postgres 12.
Код для БП 2.0 работает идеально и всё отрабатывает хорошо:
ПрогИД = "Ком";
СтрокаКомпоненты = КаталогИБ()+"SenselockKey.dll";
Попытка
ПодключитьВнешнююКомпоненту(СтрокаКомпоненты,ПрогИД);
Исключение
Возврат Ложь;
КонецПопытки;
senselock = Новый ("AddIn.SenselockKey");
Парам = senselock.sense_setmode(2, "978660000000217F");
КоличествоКлючей = senselock.sense_enum();
Если КоличествоКлючей > 0 Тогда
Возврат Истина;
Иначе
Возврат Ложь;
КонецЕсли;
ПоказатьНо код для управляемых форм в БП 3.0 не отрабатывает com объект создаётся но при вызове метода senselock.sense_setmode говорит что метод не обнаружен:
senselock = Новый ("AddIn.SenselockKey");
Парам = senselock.sense_setmode(2, "978660000000217F");
КоличествоКлючей = senselock.sense_enum();
Если КоличествоКлючей > 0 Тогда
Возврат Истина;
Иначе
Возврат Ложь;
КонецЕсли;
ПоказатьПодскажите пожалуйста в чём может быть проблема я что-то не так делаю для УФ или надо переписывать библиотеку?
Заранее благодарен!
Прикрепленные файлы:
SenselockKey.dll
По теме из базы знаний
- 1С8:борьба - личный опыт работы с платформой 1с8
- ЭДО: организация архива оригиналов первичных документов, комплексный отчет по ошибкам
- ККТ Атол: настраиваем работу по новому порядку. 54ФЗ, ФФД 1.05, НДС 20%. + Работа ККТ по сети или как работать c ККТ из терминального сервера RDP + Работа в LINUX
- Настройка возможности подключения по технологии COM к базам данных, работающим на различных версиях платформы 1С
- Пишем внешнюю компоненту для 1С, NativeAPI на С++, для ОС Linux, с использованием Qt Creator
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(9) УФ выполняет операции с dll на сервере, т.е. или в модуле формы конкретно писать #НаСервере или переносить в модуль объекта
в любом случае потребуется две процедуры делать
первая отработает нажатие кнопки (или без) и передачу обработки на сервер
вторая выполнение операции на сервере
например так
в любом случае потребуется две процедуры делать
первая отработает нажатие кнопки (или без) и передачу обработки на сервер
вторая выполнение операции на сервере
например так
#НаКлиенте
Процедура ВыполнитьЧтоТоТамНаКлиенте()
лРезультат = ВыполнитьЧтоТоТамНаСервере();
КонецПроцедуры
#НаСервере
Функция ВыполнитьЧтоТоТамНаСервере()
ПрогИД = "Ком";
СтрокаКомпоненты = КаталогИБ()+"SenselockKey.dll";
Попытка
ПодключитьВнешнююКомпоненту(СтрокаКомпоненты,ПрогИД);
Исключение
Возврат Ложь;
КонецПопытки;
senselock = Новый ("AddIn.SenselockKey");
Парам = senselock.sense_setmode(2, "978660000000217F");
КоличествоКлючей = senselock.sense_enum();
Если КоличествоКлючей > 0 Тогда
Возврат Истина;
Иначе
Возврат Ложь;
КонецЕсли;
КонецФункции
Показать
(14) Если я ставлю в УФ новый возникает ошибка "Тип не определён AddIn.SenselockKey", я уже всё перепробовал, но ни как!!! Приложил новый вариант обработки разница в одной строке выриант 1 "senselock = Новый ("AddIn.SenselockKey");", "senselock = Новый COMОбъект("AddIn.Ком.SenselockKey");" - второй вариант как в обычной форме!
Прикрепленные файлы:
УправляемыеФормы.epf
(31) А можно поправить в обработке как взлетело кнопка "Вариант3", а то у меня не взлетает что-то?
Прикрепленные файлы:
УправляемыеФормы.epf
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот