И снова распаковщик. Теперь на чистом 1С. YellowPacker

03.09.22

Разработка - Инструментарий разработчика

V8Unpack-подобный распаковщик, который делает практически то же, что и всем известный инструмент. Для работы с файлами cf, cfe, epf, erf. Только на языке 1С, без использования внешних файлов, библиотек и компонент.

Скачать исходный код

Наименование Файл Версия Размер
YellowPacker - инструмент для разборки/сборки файлов конфигураций
.epf 23,31Kb
55
.epf 23,31Kb 55 Скачать

Зачем?!

Да, да, я знаю что уже есть куча аналогов на разных языках (ссылки внизу). И предвосхищая вопрос, который обязательно появится в комментариях, отвечу сразу, что сподвигло меня на эти свершения.

В ходе оптимизаций и автоматизаций процесса разработки и тестирования в нашей команде, сошлись (среди прочих) следующие задачи:

1. Требовалось автоматизировать сборку версий расширений под разные конфигурации/версии из одного хранилища, чтобы не плодить ветки разработки, требующие синхронизации. В общем виде, весьма упрощенно, примерно такой процесс:

1) Разборка cfe;
2) изменение нескольких файлов;
3) сборка нового cfe.

Первый и последний этапы вполне можно было бы делать и с помощью v8unpack (так и было сделано первоначально). Алгоритм по изменению - на 1С. Запуск v8unpack из 1С-кода. Всё прекрасно работает. Но как-то... некрасивенько, на мой взгляд.

2. Еще одна задача - получение расширения из Хранилища в пользовательском режиме, для обновления тестовых баз из интерфейса, без привлечения программистов. При реализации пришлось разбираться с форматом данных в хранилище и 1С-ными методами работы с двоичными данными извлекать из полученных данных файлы конфигурации. И уже из них собирать cfe-файл (опять через v8unpack). В процессе "ковыряния в байтах", подумал что и сборку cfe-файла вполне можно сделать силами 1С.

В итоге, написал с нуля сначала распаковку, руководствуясь описанием формата от Андрея Овсянкина и собственными исследованиями, а затем и сборку. Терминология в коде "блок", "документ", "заголовок" и  т.д. - из описания формата.

Inflate/Deflate реализованы методом, предложенным SerVer1C, с использованием объектов для работы с Zip-файлами.

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

 

Как называется?

По аналогии с референсной программой, несколько сместив акцент на запаковку, решил окрестить свою разработку "YellowPacker". Ни у кого нет патента на это название? Вот и хорошо.

 

 

Что может?

Извлекает файлы из конфигурации/расширения/обработки/отчета (cf, cfe, epf, erf) в указанный каталог:

  • в v8unpack стиле (на каждый файл конфигурации создается пара файлов .header + .data) - режим "Без распаковки (v8unpack style)" - аналог ключа "-U[NPACK]";
  • в сыром виде - режим "Без распаковки" (файлы конфигурации записываются без доп.расширений, как есть; их атрибуты - в свойствах файла) - нет ключа-аналога;
  • с Inflate-ом и распаковкой вложенных контейнеров - режим "С распаковкой" - аналог ключа "-P[ARSE]".

Собирает из файлов в каталоге конфигурацию/расширение/обработку/отчет:

  • из файлов в v8unpack стиле - аналог ключа "-PA[CK]";
  • из файлов в сыром виде - нет ключа-аналога;
  • из файлов распакованных контейнеров - аналог ключа "-B[UILD]".

При выполнении сборки все параметры и версия контейнера определяются автоматически по составу и содержимому файлов в исходном каталоге.

Работает с конфигурациями как в "старом" (до 8.3.16, с 32-битной адресацией), так и в "новом" (с 8.3.16, с 64-битной адресацией) форматах.

Может работать в клиентском или серверном контексте, по выбору. Кроссплатформенно.

Работает на платформе 1С:Предприятие начиная с версии 8.3.10. Протестировано на 8.3.16, 8.3.18, 8.3.19. Конфигурация значения не имеет.

 

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

 

Чего не умеет?

Из функций, присущих v8unpack, не реализован следующий функционал:

  • нет отдельно Inflate/Deflate извлеченных файлов из каталога - ключи "-I[NFLATE]" и "-D[EFLATE]"
  • нет вывода списка файлов - ключ "-LISTFILES|-LF"
  • нет работы по списку файлов - ключ "-L[IST]" (UPD 28.08.22 - теперь есть распаковка по списку)

 

А скорость?

Когда я вопрошал "а есть ли готовое решение на 1С-языке?", коллеги в комментариях высказывали сомнение что на 1С может работать с приемлемой скоростью. К моему удивлению, оказалось ничуть не медленнее, чем работает v8unpack. На самом деле, даже чуточку быстрее. Возможно это просто разброс или погрешность в замерах. Проверял на конфигурации "Управление холдингом" (660Мб) в режимах "Без распаковки (v8unpack style)" и "С распаковкой".

Узким местом являются дисковые операции - они и определяют время работы. По замеру производительности в Конфигураторе хорошо видно, что запись на диск занимает 80% всего времени. Разборку можно ускорить примерно вдвое (по отношению к v8unpack-style), если не записывать файлы атрибутов (.header) - это режим "Без распаковки" в моей обработке.

При извлечении файлов в режиме "С распаковкой" (с Inflate-ом) больше всего времени занимает ЧтениеZip.Извлечь() с записью файла на диск.

Отмечу, что особо оптимизацией скорости не занимался. Не исключаю, что-то можно еще что-то отыграть. Файлы расширения обрабатывает достаточно быстро - этого для моих текущих задач вполне хватает. Сборка/разборка больших конфигураций является скорее "побочным" продуктом и пока не используется.  

 

Перспективы?

В планах - портировать на OScript в виде библиотеки. Надеюсь что нужные методы поддерживаются движком.


Ссылки есть?

По ходу поисков готового решения собрал ссылки на публикации и инструменты схожей тематики:

Описание формата файлов конфигурации (CF, EPF, ERF) - Андрей Овсянкин (Evil Beaver)

Уточнение по формату 8.3.16 - Сергей Рудаков (fishca)

V8Unpack 2.0 - brix8x (github

В8АнПак - onepack - Новый распаковщик конфигураций - SerVer1C

Сжатие/Распаковка данных по алгоритму Deflate встроенными (!) средствами платформы 1С - SerVer1C

Python V8Unpack от Егор Иванов (Infactum)

Уменьшаем трафик: HTTP запрос со сжатием GZIP средствами 1С. На примере выгрузки файлов на Яндекс-диск - Дионисий Милославский (uno-c)

saby v8unpack - Михаил Разговоров (Businka76)

Распаковка CF на Lua - Борис Илов (ilov_boris)

Компонент для чтения CF-формата. Описание CF-формата - Сергей Карташев (Elisy)

Архиваторный плагин Total Commander для работы с файлами cf, epf, erf, cfu, cfe, hbk как с архивами - Валерий Агеев (awa)

Быстрая распаковка CF - Magister

V8Reader (с расширенным анализом форм) Upd. - Андрей Д. (bambr1975)

Распаковщик / упаковщик файлов - ZhokhovM

Плагин TotalCommander-а просмотра файлов 1C v8 - Михаил Усков (MMF)

[x1c.ru] 1CDBin: Работа с файлами *.1CD на низком уровне средствами языка 1С от Николай Гусев (GusevNA)

DT:Менеджер 8.1 (Распаковка/упаковка *.DT файлов. Быстрый экспорт CF) - Сергей Боровик (BorovikSV)

Работа с хранилищем конфигурации из режима 1С: Предприятие минуя конфигуратор - MaxxG

Хотите извращений? Их есть у меня! - прототип реализации распаковки на 1С от Валерия Агеева

 

А еще что-нибудь интересненькое?

Другие публикации:

Водопад из Техжурнала 1С

Автономный сервер. Утилита управления

Автономный сервер. Новый вариант сервера

GitSync 3.0. Шпаргалка по использованию

Массовое изменение режима поддержки объектов конфигурации

Загрузка-выгрузка файлов по RDP с докачкой

 

UPD 23.08.22

Файл в публикации обновлен. Устранена ошибка "Тип контейнера для сборки не определен" при сборке вложенных контейнеров.

 

UPD 28.08.22

Файл в публикации обновлен. Устранены недоработки и найденные ошибки. Добавлено извлечение файлов по списку.

 

UPD 03.09.22

Файл в публикации обновлен. Доработан пересчет хеш-сумм файлов расширений при сборке.

См. также

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    124933    682    389    

732

Infostart PrintWizard - создание и редактирование печатных форм в 1С 8.3

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

18000 руб.

06.10.2023    7770    24    6    

42

Infostart УДиФ: Управление данными и формами

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

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

10000 руб.

10.11.2023    4282    12    2    

36

SALE! %

PowerTools

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

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2280 руб.

14.01.2013    178645    1083    0    

861

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    99623    239    97    

298

Системы контроля версий для 1С-разработчиков.

1С-программирование DevOps и автоматизация разработки Групповая разработка (Git, хранилище) DevOps для 1С Платформа 1С v8.3 Платные (руб)

Основы командной разработки на 1С. Использование систем контроля версий при разработке на платформе 1С:Предприятие 8

4900 руб.

29.06.2022    9378    78    4    

112

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    18389    6    8    

40

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

В процессе работы в 1С часто возникает потребность получить данные из другой базы.  Обычно это делается через COM-соединение, и время выполнения запроса при этом оставляет желать лучшего. В данной публикации представлено универсальное решение, позволяющее практически моментально выполнить произвольный код или запрос с параметрами в другой информационной базе через Web-сервис.

2400 руб.

24.09.2019    23856    16    15    

33
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Артано 762 22.08.22 09:00 Сейчас в теме
Спасибо, товарищ! И за труд и за сбор информации в одно место.
akR00b; +1
2. Steelvan 302 22.08.22 11:05 Сейчас в теме
На днях скачал "Распаковщик / упаковщик файлов - ZhokhovM" за 6 см.
И сегодня тоже бы скачал ту за 6, а не эту за 5.

Почему ?
Названия на русском больше люблю.
dvsidelnikov; amd1986; +2 5
5. VKislitsin 968 22.08.22 11:31 Сейчас в теме
(2)
Названия на русском больше люблю

Игорь, я ожидал вашего комментария. И меня бы расстроило, если бы вы не отметились здесь. Кроме того, я бы удивился, если бы никто не написал здесь про русский язык. Еще можно найти у меня ошибки в пунктуации, и, полагаю просто опечатки.

Что касается цены... Тут ни коим образом не конкуренция. Я думал какую сумму установить - то ли 10, то ли 5 СМ. Работы тут много, гораздо больше чем на 10СМ. Но делалась она "не корысти ради", а для решения собственных задач. Полагаю, кому нужно, скачает и за 10 и за 20. А кому не надо - и за 1 не скачает. Поставил 5, просто чтобы не жадничать.

На самом деле, моя публикация появилась именно благодаря Максиму (ZhokhovM). Моя разработка лежала "в столе" с прошлогоднего Ноября, когда я похвастался что сделал её. Но довести её до публикабельного состояния всё не было ни сил, ни времени. И Максим меня периодически пинал в ЛС вопросами "когда же?". В итоге, не дождавшись, написал свой вариант. Но сделал только распаковку. Сейчас выдалась пара дней и я довел свою разработку до публикации. Лучше поздно, чем никогда, как говорится. У Максима в его разработке больше разных форматов обрабатывается. Так что, если она вам подходит, не качайте мою. Я не огорчусь.
Santa1; dvsidelnikov; LostMicos; ipoluhin; pavlov_dv; ardn; ixijixi; SeiOkami; Somebody1; mrChOP93; +10
20. Eremkin 31.08.22 20:48 Сейчас в теме
(5)В конце добавить
- Хейтеры, люблю вас (с)
+
3. artbear 1522 22.08.22 11:11 Сейчас в теме
(0)
В планах - портировать на OScript в виде библиотеки. Надеюсь что нужные методы поддерживаются движком.


если бы сразу делал на 1скрипте, было бы легче и быстрее ИМХО.
ardn; +1
4. nixel 1408 22.08.22 11:22 Сейчас в теме
(3) на оскрипте уже библиотека есть :) правда через dll
+
6. VKislitsin 968 22.08.22 11:33 Сейчас в теме
(3)
если бы сразу делал на 1скрипте

Делалось под решение собственных задач. Здесь - просто выделено в отдельное решение и отброшено всё "лишнее". А решение было на 1С.
+
7. Infactum 316 22.08.22 11:52 Сейчас в теме
А мое решение, где все нужные алгоритмы элементарно на питоне описаны, не смотрели что ли?)
+
8. VKislitsin 968 22.08.22 11:55 Сейчас в теме
(7) Я извиняюсь, если ссылку не добавил. Видимо, просто потерял. Сейчас поправлю дело.
В алгоритмы ни в какие не смотрел. Просто написал сам, по описанию формата от Андрея Овсянкина.

PS. Коллеги, если еще не упомянул чьи-то публикации на тему работы с внутренними файлами 1С, пишите, дополню список.
+
9. ktb 620 22.08.22 11:59 Сейчас в теме
В оскрипт, кстати, не обязательно использовать ЧтениеZIP, т.к. есть библиотека deflator.
+
10. VKislitsin 968 22.08.22 12:01 Сейчас в теме
(9)
не обязательно использовать ЧтениеZIP, т.к. есть библиотека deflato

Спасибо за уточнение. Надеялся что есть нормальный способ, без извращений.
+
11. JohnyDeath 301 26.08.22 11:40 Сейчас в теме
Я что-то не понял почему нельзя было решить исходную задачу с помощью штатной выгрузки-загрузки в файлы?
+
12. VKislitsin 968 26.08.22 12:04 Сейчас в теме
(11) Евгений, наконец-то появился комментарий с посылом что я занимаюсь фигней :)

На самом деле в статье я сильно упростил пример для чего это понадобилось. По крайней мере, 1-й (там, кстати, написано "в общем виде, весьма упрощенно"). На деле, 1-й и 2-й пример - это одна и та же задача у меня. Конфигурация расширения извлекается из хранилища (тоже исключительно кодом 1С) и из неё делается несколько разных cfe-шников.
На базе этого решения есть еще обновление расширений из хранилища в пользовательском режиме. Тоже всё на чистом 1С.


И, давайте я еще 3-ю причину приведу, если требуется более весомое обоснование: мне было просто интересно сделать это.
Прикрепленные файлы:
Vasvas05; JohnyDeath; +2
13. JohnyDeath 301 26.08.22 12:11 Сейчас в теме
(12) я не говорил про "фигню" )
Наоборот всегда плюсую энтузиастов-ковыряторов!

Но я так и не понял почему нельзя было выгрузить всё в xml, сделать нужные правки и загрузить обратно с помощью конфигуратора или автономного сервера.
1. "Конфигурация извлекается из хранилища" - ок, это понятно и это уже у вас было. Никак к текущему инструменту не относится.
2. Далее выгружаем cfe в xml
3. Делаем правки
4. Загружаем обратно и получаем новую cfe

так? п.2 и п.4 - это ж штатное.
Или я что-то всё равно не понял в первоначальной задаче?
+
14. VKislitsin 968 26.08.22 12:23 Сейчас в теме
(13)
"Конфигурация извлекается из хранилища" - ок, это понятно и это уже у вас было. Никак к текущему инструменту не относится.


Я наверное слишком кратко поясняю...

Конфигурация при извлечении из храна не представляет собой нормальный CF или CFE. Его еще нужно собрать из того, что вытащилось. Это отдельная тема для публикации о формате хранилища, полагаю.

Результатом извлечения из храна, после определенных шаманских действий над двоичными данными, является как раз набор файлов, которые извлекают все распаковщики из конфигурации, без инфлейта. В терминологии v8unpack - это файлы .data. Файлы .header при этом приходилось генерить самостоятельно.

Далее, чтобы выгрузить это в XML, нужно из них сначала собрать конфигурацию. Применяя внешний инструмент (тот же v8unpack). После выгрузки и изменения - еще раз собрать. Теперь из XML-й. Для операций с XML нужно запускать в пакетном режиме конфигуратор, что тоже не очень-то быстро.
Т.е. цепочка такая - 1С вытаскивает нечто из храна - 1С разбирает это нечто на файлы .data и генерит файлы .header - вызываем v8unpack чтобы собрать cfe. Вызываем конфигуратор чтобы разложить его на XML - 1С меняет что-то в XML - вызываем конфигуратор чтобы собрать cfe из XML.

Я пошел более коротким путем. Полученные .data-файлы распаковываю, меняю что нужно и из них сразу собираю нужную конфигурацию. Как я написал, сначала делал это с помощью v8unpack, но потом стало интересно собрать их исключительно 1С-ным кодом, раз уж всё равно мне приходится оперировать с двоичными данными.
+
15. JohnyDeath 301 26.08.22 12:25 Сейчас в теме
(14) теперь кажется понял. Т.к. вы извлекаете из хранилища своим способом, то на выходе получаете не чистый cf.
Тогда вопрос почему решили извлекать из хранилища не штатными способами? )
+
16. VKislitsin 968 26.08.22 12:37 Сейчас в теме
(15)
почему решили извлекать из хранилища не штатными способами?


А что подразумевается под штатным? Конфигуратор в пакетном режиме? Долго. Трудно контролируемо. Не всё возможно. Например, список версий читается только через отчет по версиям - метки не получить.

Кроме того, как я уже написал, мне было очень интересно сделать это напрямую.

Сейчас я могу не только получать что-то из храна (в том числе список версий с метками и/или любыми доступными отборами), но и помещать туда что-то, создавать пользователей, менять их права, отменять захваты, смотреть из одного окна разные хранилища на разных версиях Платформы и т.д.
+
17. VKislitsin 968 26.08.22 13:03 Сейчас в теме
(15)
вы извлекаете из хранилища своим способом, то на выходе получаете не чистый cf

Извлечение из храна "своим методом" + сборка (либо с помощь v8unpack, либо инструментом из этой публикации) как раз дает чистый cf/cfe.
+
18. German 413 30.08.22 12:25 Сейчас в теме
19. VKislitsin 968 30.08.22 12:27 Сейчас в теме
(18)
Вроде все это было вот тут

Герман, я в (5) расписывал историю что где было.
На самом деле, моя публикация появилась именно благодаря Максиму (ZhokhovM). Моя разработка лежала "в столе" с прошлогоднего Ноября, когда я похвастался что сделал её. Но довести её до публикабельного состояния всё не было ни сил, ни времени. И Максим меня периодически пинал в ЛС вопросами "когда же?". В итоге, не дождавшись, написал свой вариант. Но сделал только распаковку. Сейчас выдалась пара дней и я довел свою разработку до публикации. Лучше поздно, чем никогда, как говорится. У Максима в его разработке больше разных форматов обрабатывается.

Да и приведенная вами ссылка на вариант Максима есть в моей публикации.
German; +1
21. AlexWhite 194 03.11.22 15:26 Сейчас в теме
Если я правильно понимаю, распаковщик распаковывает cf во множество папок и файлов с наименованиями из GUID объектов вместо мнемоничной структуры папок и файлов, похожих на дерево конфигурации в конфигураторе?
https://infostart.ru/public/1691321/ из вашей была сделана?

Если это так, могу ли я обратиться за коммерческой версией обработки, которая:
1) Разбирает cf на папки и файлы в мнемоничную структуру папок и файлов, вида:
\Документы\АвансовыйОтчет\МодульОбъекта.bsl
\Документы\АвансовыйОтчет\ФормаЭлемента\МодульФормы.bsl
...
2) При разборке разбирает отдельно на двоичные файлы (таблицы, картинки, схемы компановки данных и пр.) и текстовые объекты (модули - txt или bsl)?
+
22. VKislitsin 968 03.11.22 19:39 Сейчас в теме
(21)
Если я правильно понимаю, распаковщик распаковывает cf во множество папок и файлов с наименованиями из GUID объектов вместо мнемоничной структуры папок и файлов, похожих на дерево конфигурации в конфигураторе?

Да, имена файлов и каталогов имеют вид GUID-ов, а не человекочитаемых имен.

https://infostart.ru/public/1691321/ из вашей была сделана?

Не совсем. Автор этой публикации делал свою разработку самостоятельно, не дождавшись от меня анонсированной публикации. Позже, возможно, какие-то решения/алгоритмы были пересмотрены/доработаны по образцу моей.

Если это так, могу ли я обратиться за коммерческой версией обработки

С этим лучше в личку.

1) Разбирает cf на папки и файлы в мнемоничную структуру папок и файлов, вида:
\Документы\АвансовыйОтчет\МодульОбъекта.bsl
\Документы\АвансовыйОтчет\ФормаЭлемента\МодульФормы.bsl

Частично этот функционал уже есть (но не опубликован): чтение в оглавление имен объектов и определение их типов объектов (т.е. имена каталогов и файлов для файловой структуры). Построение дерева я не делал.

2) При разборке разбирает отдельно на двоичные файлы (таблицы, картинки, схемы компановки данных и пр.) и текстовые объекты (модули - txt или bsl)?

На самом деле, все файлы - текстовые. Просто это либо формат "скобкофайлов", либо программный код. В файлах управляемых форм описание формы в скобочном формате и программный код находятся в одном файле. Но в принципе, разделить его на отдельные - вполне возможно.
ZhokhovM; +1
23. AlexWhite 194 03.11.22 19:48 Сейчас в теме
(22) сомневаюсь, что все файлы текстовые. Картинки? Схемы данных? Табличные документы? Запароленные модули?
В общем, я готов поучаствовать в финансировании доработок.
+
24. VKislitsin 968 03.11.22 19:57 Сейчас в теме
(23)
Картинки? Схемы данных? Табличные документы? Запароленные модули?

Они в Base64 внутри текстовых скобкофайлов все лежат. Что-то из этого раскодируется в обычный XML, например схемы компоновки данных. Что-то в бинарники. Табличные документы - это чистый скобкофайл. Запароленные модули не ковырял.
+
25. Serg2000mr 317 03.05.23 07:50 Сейчас в теме
(0) Подскажите, что делать с распакованными скобко-файлами? ЗначениеИзСтрокиВнутр их не берет
+
26. VKislitsin 968 03.05.23 12:35 Сейчас в теме
(25) Я тут даже затрудняюсь ответить.
У каждого могут быть свои цели и задачи для этой распаковки. Обычно, коллеги, которым нужна распаковка, знают что такое V8Unpack, какие результаты он выдает и для чего их можно применить.
Полагаю, когда кто-нибудь полностью разберется с внутренним 1С-ным форматом "скобкофайлов", опишет его и/или создаст транслятор в привычные XML, сообщество поставит ему памятник :)
+
27. Serg2000mr 317 03.05.23 12:57 Сейчас в теме
(26) Ну, когда-то и эти коллеги не знали, какие результаты выдает V8Unpack..🤔
Памятник - звучит заманчиво ))
+
Оставьте свое сообщение