Внешняя компонента для работы с библиотеками Zlib и Brotli

26.02.24

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

Внешняя компонента для работы с библиотеками Zlib и Brotli на языке C. Поддерживаются режимы работы на сервере, в тонком клиенте и в веб-браузере. ВК работает на win 32/64 и linux 32/64.

Скачать файл

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

Наименование SM По подписке [?] Купить один файл
Обработка с внешней компонентой для работы с библиотеками Zlib и Brotli
.epf 5,69Mb
3
3
1 SM
Скачать Купить за 1 850 руб.

Внешняя компонента (ВК) предназначена для работы с форматами сжатия данных, применяемых для обмена между браузерами и веб-серверами. К подобным форматам относятся: zlib (RFC 1951, алгоритм deflate), gzip (RFC 1952, алгоритм deflate), compress (аналогичен Unix программе compress ). Формат compress сейчас не используется, его заменил новый формат сжатия от Google по алгоритму Brotli. Поскольку обе библиотеки написаны на чистом C, для разработки ВК применялся этот же язык.

Библиотека zlib (версия 1.3.1) реализует алгоритм deflate в 3-х форматах: gzip, zlib, raw deflate. В заголовке запросов Content-Encoding, который определяет формат сжатия входящих данных, возможны значения: gzip, deflate, br. Значения  gzip и br соответствуют gzip и brotli. Со значением deflate из заголовка несколько сложнее – для всех веб-серверов (насколько я знаю), кроме IIS, это формат zlib, для IIS (внезапно!)  это - raw deflate. Помимо IIS, формат raw deflate использует платформа 1С для хранения конфигурации в базе данных. Форматы gzip, zlib и raw deflate можно различать по первым двум байтам заголовков: 1F8B - gzip, 785E - zlib, иначе - raw deflate.

Библиотека brotli реализует одноименный алгоритм в одном формате. Сейчас этот формат поддерживают наиболее популярные веб-серверы: Apache, NGINX, IIS.

Компонента может работать на сервере 1С как в режиме изоляции, так и без него. В клиентском режиме поддерживаются: тонкий клиент win x32/x64, linux x32/x64, браузеры Chrome, Firefox, Chromium для win x32/x64, linux x32/x64.

 
 Методы внешней компоненты

Тестирование

Внешняя компонента тестировалась на win 10 x64 на платформах 8.3.23.1739 x64 и 8.3.21.1302 x32, на Ubuntu 22.4 x64 на платформе 8.3.23.1912 x64, Debian 12.4 x32 на платформе 8.3.23.1997 x32,в клиент-серверном варианте в режиме изоляции и без него. На этих платформах ВК тестировалась в режиме тонкого клиента и в режиме веб-клиента для браузеров Chrome, Chromium, Firefox.

Update 26.02.2024. Версия библиотеки Zlib изменена на актуальную на данный момент - 1.3.1. Для работы в веб-браузере применен другой установщик - Решение для работы внешней компоненты в веб-браузере под Windows и Linux: 1С + Installer.

zlib brotli внешняя компонента C

См. также

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

Внешняя компонента в виде библиотеки (.dll файл), позволяющая посылать команды и получать ответы по протоколу WebSocket из 1С. Компонента работает только на стороне "клиента".

4440 руб.

22.06.2020    17341    16    33    

21

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

Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer).

3000 руб.

12.05.2020    27060    135    98    

87

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

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

1500 руб.

17.09.2018    35793    110    127    

113

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

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

3600 руб.

02.09.2010    76594    71    255    

189

Разработка внешних компонент Телефония, SIP Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

2400 руб.

04.05.2018    45897    118    66    

63

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

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

26.01.2024    5671    starik-2005    32    

43

Инструментарий разработчика Разработка внешних компонент Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пример взаимодействия 1С с Apach Kafka посредством внешней компоненты, разработанной на основе официальной библиотеки librdkafka (the Apache Kafka C/C++ client library).

22.11.2023    3500    72    ivan1703    26    

42
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ktb 622 25.01.24 13:38 Сейчас в теме
Я бы переименовал методы таким образом, чтобы имя начиналось с "русского", например, "РаспаковатьПотокGzip" и т.п., т.к. это позволит набирать имя без переключения раскладки и далее выбирать из подсказки.
4. bakmistoff1977 35 25.01.24 17:28 Сейчас в теме
(1)Спасибо, надо подумать.
2. apic 13 25.01.24 13:56 Сейчас в теме
По моему, по правилам Infostart, если разработка предлагается за $m, то должен прилагаться исходный код. Как пропустили вашу публикацию? Или правила опять изменились?
frkbvfnjh; +1 3 Ответить
3. starik-2005 3060 25.01.24 15:26 Сейчас в теме
(2) Так есть же сцылка на zlib - качайте ))
acvatoris; bakmistoff1977; +2 Ответить
5. bakmistoff1977 35 25.01.24 17:29 Сейчас в теме
(2)Вы правы, но правило про открытый исходный код касается только кода на 1С. Он открытый и исходный.)) Код библиотек тоже открытый, ссылки я привёл.
acvatoris; +1 Ответить
Оставьте свое сообщение