Универсальная обертка для использования NATIVE компонент на платформе 1С 7.7, 8.0 и 8.1

07.07.20

Разработка - Разработка внешних компонент

Используете 1С 7.7, 8.0 или 8.1 и вас раздражает, что под вашу 1С уже не выпускаются современные компоненты. А хотелось бы?

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Универсальная обертка для использования NATIVE компонент на платформе 1С 7.7, 8.0 и 8.1:
.dll 129,50Kb ver:1.0.1
10
10 Скачать (1 SM) Купить за 1 850 руб.

Что же это такое? Это простая COM компонента, которая транслирует свои команды в указанную Native компоненту, что позволяет обойти ограничение использования на старых платформах 1С.

Как использовать?

1. Регистрируете компоненту командой regsvr32.

2. Указываете путь к файлу с native компонентой и ее наименование через команду SetDriverName(ПутьККомпоненте, НаименованиеКомпоненты) или УстановитьИмяДрайвера

Пример кода 1С для платформы 8.1:

	ПодключитьВнешнююКомпоненту("AddIn.UniversalNativeWrapper");
	Драйвер = Новый ("AddIn.UniversalNativeWrapper"); 
	Если Драйвер.УстановитьИмяДрайвера("E:\Yandex.Disk\YandexDisk\SHTRIHMKKT_NATIVE_32_SMDrvFR1C3.dll", "SMDrvFR1C3") Тогда
		Ревизия = Драйвер.ПолучитьРевизиюИнтерфейса();
	КонецЕсли;

Также данное решение выложена на GitHUB. Все желающие могут поучаствовать в разработке.

Идейный вдохновительОболочка для работы с последними драйверами ККМ АТОЛ

 

На данный момент есть следующие проблемы:

1. Имеется небольшая утечка памяти, нужно доработать механизм удаления объектов из памяти.

2. Не получается обработать ошибку "Нарушение прав доступа при обращении к памяти", которая может возникнуть на стороне native компоненты. Ошибка приводит к вылету 1С. Операторами try и _try не получается отловить.

COM NATIVE 7.7 8.0 8.1

См. также

Разработка внешних компонент Программист Платформа 1С v8.3 Платформа 1C v8.2 Платные (руб)

Внешняя компонента, позволяющая посылать команды и получать ответы по GraphQL протоколу из 1С.Может быть использована при интеграции. В 1С работает на стороне "клиента".

4600 руб.

27.06.2023    3783    3    0    

5

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

Позволяет автоматизировать работу с картинками. С помощью компоненты можно измерять размер изображений, поворачивать их, наносить водяные знаки, конвертировать из одного формата в другой. Будет очень полезна для интернет-магазинов и всех, кому постоянно требуется работать с различными графическими форматами. Выполнена по технологии NativeAPI. Работает с форматами: jpg (jpeg), png, bmp, gif, tif

3600 руб.

02.09.2010    77754    73    257    

191

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

Внешняя компонента позволяет печатать PDF файлы непосредственно из 1С, не используя при этом сторонних программ. Прекрасно работает на сервере, тонком клиенте и веб-клиенте. Основана на проекте PDFium из состава проекта Chromium/Chrome

1500 руб.

17.09.2018    37110    115    128    

116

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Платные (руб)

Внешняя компонента для конвертации PDF файлов в картинки без использования дополнительных программ. Работает на сервере и в тонком клиенте.

2400 руб.

25.06.2024    1295    3    4    

3

Разработка внешних компонент Системный администратор Программист Стажер Бесплатно (free)

Библиотека для работы с базами SQLite из 1С на основе внешней компоненты. Для Linux и Windows, бесплатно и с открытым исходным кодом!

14.01.2025    2589    bayselonarrend    14    

48

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия Россия Бесплатно (free)

В статье описывается приложение-конструктор внешних компонент (native API). Конструктор упрощает процесс разработки за счет удобного добавления всех нужных функций и процедур в графическом режиме, с указанием их параметров и типов параметров. На выходе приложение генерирует готовый код на С++ и Rust и позволяет сразу приступить к реализации, без настройки API компоненты вручную.

04.12.2024    5338    kovalevdmv    26    

77

Разработка внешних компонент Механизмы платформы 1С Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Некоторые практические аспекты создания внешних компонент на языке С++ для платформы 1С 8.3++.

26.01.2024    7741    starik-2005    40    

47
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. M_W_W 35 18.01.21 02:24 Сейчас в теме
Андрей, приветствую!
А под 7.7 я правильно делаю:

ЗагрузитьВнешнююКомпоненту("UniversalNativeWrapper.dll");
Драйвер = СоздатьОбъект("AddIn.UniversalNativeWrapper");
Если Драйвер.УстановитьИмяДрайвера(КаталогИБ() + "Spark130DRVN1C_2_0_0_2.dll", "Spark130") = 1 Тогда
Ревизия = Драйвер.ПолучитьРевизиюИнтерфейса();
КонецЕсли;
???
Падает почему-то после "УстановитьИмяДрайвера"...

Сигнатура проблемы:
Имя события проблемы: APPCRASH
Имя приложения: 1cv7s.exe
Версия приложения: 7.70.0.27
Отметка времени приложения: 4573fcd8
Имя модуля с ошибкой: StackHash_0a9e
Версия модуля с ошибкой: 0.0.0.0
Отметка времени модуля с ошибкой: 00000000
Код исключения: c0000005
Смещение исключения: c0e8fc4d
Версия ОС: 6.1.7601.2.1.0.256.1
Код языка: 1049
Дополнительные сведения 1: 0a9e
Дополнительные сведения 2: 0a9e372d3b4ad19135b953a78882e789
Дополнительные сведения 3: 0a9e
Дополнительные сведения 4: 0a9e372d3b4ad19135b953a78882e789
3. karpik666 3930 18.01.21 14:24 Сейчас в теме
(1) на этой компоненте не проверял, пробовал запускать Драйвера АТОЛ, и Штрих, пока времени на это нет разбираться, ссылка на исходники есть в публикации, можно попробовать адаптировать.
2. M_W_W 35 18.01.21 02:57 Сейчас в теме
+(1) Драйвер вот этот грузить пытаюсь:
Прикрепленные файлы:
111.zip
4. M_W_W 35 18.01.21 18:31 Сейчас в теме
Хм... Я думал, "обертка" универсальная,под любые компоненты, не обязательно ККТ, просто выполненные по технологии native...
Ну, да ладно, не горит, у меня все равно пока Спарк-130 в хозяйстве нет, пробовать не на чем... Просто хотел проверить, загрузится компонента "выковырянная" из типовой розницы, или нет...
А вообще, для этого Спарка, возможно и не нужен драйвер, там все команды в виде XML файлов передаются, или в порт на прямую, или через сервис специальный. Появится "железяка", буду разбираться.
А по поводу АТОЛ и Штрих - ? А смысл в "обертке"-? У меня и АТОЛовские драйвера 10.Х в 7.7 работают, и Штриховские, какие-то из 15 серии... Абсолтно адекватно, и без "костылей"...
5. vap_pig 100 25.03.21 00:00 Сейчас в теме
Компонента очень понравилась, пробую к 7.7 подключить драйверы эквайринга из УТ 11.4 - бОльшая часть вылетает при вызове базовых методов или дополнительных действий. Планируете ли вы дальше заниматься данным проектом? Могу помочь в тестировании.
6. frkbvfnjh 811 26.05.23 11:45 Сейчас в теме
С драйвером весов Mertech в 8.1 не работает, говорит метод не найден, при вызове любого метода внешней компоненты Mertech.
Оставьте свое сообщение