0. YPermitin 595 08.02.16 11:10 Сейчас в теме

V8Formats: .NET (C#) реализация V8UNPACK

Еще одна альтернативная реализация распаковщика/запаковщика файлов платформы 1С:Предприятие 8.x форматов *.cf (конфигурация), *.epf (обработка) и *.erf (отчет) на .NET Framework (C#).

Перейти к публикации

Комментарии
Сортировка: Древо
1. Evil Beaver 5251 08.02.16 12:36 Сейчас в теме
Пора на инфостарте заводить новый тег - Yet Another Unpack.

Раз уж дот-нет, то сделайте заодно и Nuget-пакет, чтобы по быстрому можно было подключить.
lustin; Bronislav; JohnyDeath; sorb; kuntashov; artbear; +6 Ответить
2. YPermitin 595 08.02.16 13:20 Сейчас в теме
(1) Evil Beaver, возьму на заметку. Почему бы и нет.
6. awa 2452 09.02.16 00:26 Сейчас в теме
(1) Evil Beaver, ты у нас ведешь списки клуба? Может тебе уже публикацию в разделе Лайф сделать и опубликовать полный состав клуба?
Infactum; +1 Ответить
7. Infactum 263 09.02.16 06:41 Сейчас в теме
(6) awa, Я планирую сделать небольшую тему со сравнением всех известных распаковщиков.
49. tsukanov 65 08.03.17 14:10 Сейчас в теме
50. YPermitin 595 08.03.17 17:44 Сейчас в теме
10. Evil Beaver 5251 09.02.16 11:06 Сейчас в теме
(6) awa, не, я ничего такого не веду, зачем оно мне. Более того, у меня еще со времен V8Viewer есть C# библиотека для чтения/записи CF. Только она закрытая.
12. lustin 975 09.02.16 12:05 Сейчас в теме
(10) а вот я принципиально не понимаю... "нахрена" ? Самое удивительное - что Юрий вроде в курсе всей движухи и давно на GitHub и G+

Это на моей памяти 8-ой unpack'er...

Потому что нужно на .NET, а С++ это зло ?
Как учил великий steban - С++ код можно использовать в C# проектах в виде unmanagment вставок.

Можно ведь делать обертки над libv8unpack.

Ох... Грусто...

P.S. Грусто от того сколько Юрий потратил времени на крутую вещь... Но блин. Мы не сможем отказаться от v8unpack в сторону .NET: потому как благодаря dm_pass у нас есть её gcc порт под linux и есть пакеты под linux если кто забыл

https://github.com/dmpas/v8unpack


JohnyDeath; Evil Beaver; YPermitin; +3 Ответить
14. YPermitin 595 09.02.16 12:34 Сейчас в теме
(12) lustin, все очень просто. Для моих задач мне нужен был .NETная реализация.

Почему не использовал unmanagment код? По правде говоря использовал, в начале сборка была "неуправляемой".
"Неуправляемая" библиотека была сделана в середине прошлого года, потом почти сразу же портирована полностью на .NET.
Согласитесь, что использовать неуправляемый код там, где его можно легко портировать на управляемый - это настоящий костыль.

Никто никого не заставляет отказываться от CPPшной реализации. Тем более она работает быстрее этой сборки.

Вообщем, .NETная реализация мне была нужна, мы ее с напарником сделали, а теперь бесплатно из без СМС всем предложили.
Кому нужно, тот и будет использовать =)
15. Infactum 263 09.02.16 13:00 Сейчас в теме
(14) на .NET тоже была реализация уже. Входит в состав Elisy .Net Bridge. Кажется и проект живой еще.
16. YPermitin 595 09.02.16 13:19 Сейчас в теме
(15) Infactum, он вроде как не бесплатный.
17. Serginio 725 09.02.16 13:59 Сейчас в теме
32. pbazeliuk 1465 11.02.16 10:36 Сейчас в теме
(12) lustin, https://github.com/pbazeliuk/V8Commit и мой частично выложен для разбора, только с блек-джеком и плагинами. Какая разница на чем написан unpack, если его можно развернуть как веб-сервис.
YPermitin; +1 Ответить
37. YPermitin 595 11.02.16 13:28 Сейчас в теме
(32) pbazeliuk, интересно.
Поразбираюсь с проектом попозже.
13. lustin 975 09.02.16 12:12 Сейчас в теме
(10) Андрей - единственное я подумал, а можно v8format встроить через NuGet напрямую в Oscript.io ? Чтобы было доступно в oscript через код.

Прочитал (1) - вопрос снимается
18. Evil Beaver 5251 09.02.16 16:35 Сейчас в теме
(13) lustin, я тогда, раз пошла такая пьянка, свою либу причешу и-таки выложу в nuget. Больше анпаков, хороших и разных (или почти одинаковых, если быть честным)
YPermitin; +1 Ответить
19. YPermitin 595 09.02.16 17:52 Сейчас в теме
(18) Evil Beaver, будет интересно посмотреть.
22. Evil Beaver 5251 10.02.16 08:09 Сейчас в теме
(19) а чего ее смотреть,она в принципе, опубликована давно: http://sourceforge.net/p/v8reader/code/HEAD/tree Просто есть еще "пишущая" версия, вот ее можно довести до товарного вида и выложить. Хотя, как правильно заметил Артур - смысл какой?
20. artbear 1067 09.02.16 18:25 Сейчас в теме
(18) А смысл? опять потеряешь время :)
а анпаки и правда почти все одинаковы, но наши продукты precommit1c и gitsync, расширяющие функционал анпаков, все равно удобнее и мощнее всех :)
PS это я слегка троллингом занялся
33. pbazeliuk 1465 11.02.16 11:47 Сейчас в теме
(20) artbear, уверен моя версия кардинально отличается :)
3. fishca 1122 08.02.16 23:18 Сейчас в теме
Есть проблема с распаковкой конфигурации в 700 МБ, в которой конфигурация поставщика порядка 300 МБ. Причем есть проблема и в v8Unpack-e исходном.
4. YPermitin 595 08.02.16 23:24 Сейчас в теме
(3) fishca, с интересом бы посмотрел на этот CFник.
Можно ли каким-либо законным способом его получить и посмотреть?)
5. nixel 508 09.02.16 00:17 Сейчас в теме
(4) буха 3.0 с бит финансом, упп с ним же, erp. Мало что ли огромных типовых.
8. fishca 1122 09.02.16 09:35 Сейчас в теме
(4) да, можно взять конфу ERP2, включить возможность изменения, чтобы конфигурация поставщика появилась "отдельным файлом" и попытаться распаковать.
9. bambr1975 797 09.02.16 09:55 Сейчас в теме
(8) fishca, рискну заметить, что "исходный" V8Unpack тоже развивается и в его последней версии (которая включена в последний V8Reader) проблема с распаковкой больших конфигураций была решена.
11. YPermitin 595 09.02.16 11:54 Сейчас в теме
(8) fishca, ок. Разберемся конечно с проблемой.
На GitHub сделал отметку.
21. JohnyDeath 291 09.02.16 23:22 Сейчас в теме
В тему анпаков. ИМХО, 1С должна выпустить свой кросплатформенный и многопоточный анпак, который будет раскладывать cf так, как это делает конфигуратор, а не "скобочками со строками". Ес-но всё должно быть отвязано от самой платформы и желательно поставляться отдельно от неё.
nSpirit2; +1 Ответить
23. so-quest 129 10.02.16 10:06 Сейчас в теме
(21) Формат этих скобочек кто нибудь описал? Будет описание - выгрузку напишут уже быстро.
24. Жолтокнижниг 245 10.02.16 11:37 Сейчас в теме
(23) so-quest, Написать зная формат/описание не долго. А вот собрать инфу, вот это действительно трудная задача. Даже проведя аналогию с unpack'ами, по описанному алгоритму закодить легко, у меня у самого есть 2 реализации на C# и python.
25. Жолтокнижниг 245 10.02.16 11:38 Сейчас в теме
(23) so-quest, И надо оно вообще? Есть 8.3 с выгрузкой в xml, там читаемо и можно преобразовывать в "более читаемо"
30. so-quest 129 11.02.16 09:20 Сейчас в теме
(25) Надо. Во первых в хмл не выгрузишь обработку, во вторых сейчас все больше инструментов начинают использовать унпак. А работа с внутренним представлением данных (все эти скобочки) идет наощупь. Изменил,собрал, посмотрел что получилось - и так до бесконечности.
Вот и говорю - требуется некое описание внутреннего формата - это поле отвечает за это, то за то и тип у них такой-то.
(29) Алгоритм разбора epf/cf еще disa_da в лохматом 2009 (или 2008) выложил. С тех пор ничего не поменялось. Принципиально новых вещей не получилось. Потому как мало кому нужно. А те кому нужно - тратят время и ковыряют сами все эти скобочки, циферки....
31. Infactum 263 11.02.16 09:41 Сейчас в теме
(30) so-quest, распаковка/запаковка обработок в XML обещана в 8.3.8
41. Mr.Rm 11.02.16 20:17 Сейчас в теме
(31) Вышла 8.3.8:
Реализована возможность выгружать внешнюю обработку/отчет в файлы (в формате XML).

И по теме Yet Another Unpack:
Реализована возможность изменять размер страницы файла информационной базы (1Cv8.1CD). Размер страницы может быть 4096, 8192, 16384, 32768 и 65536 байт. Информационная база, созданная в версии 8.3.8 и выше, имеет размер страницы 8192 байта и не может быть открыта младшими версиями.
42. Жолтокнижниг 245 11.02.16 22:58 Сейчас в теме
(41) Mr.Rm, НУ наконец то, все на переделку своих унпаков!!!
43. Infactum 263 12.02.16 09:37 Сейчас в теме
(41) Mr.Rm, к анпакам это не относится.
А вот утилиты для чтения 1CD придется обновить.
34. JohnyDeath 291 11.02.16 12:40 Сейчас в теме
(30) so-quest, именно эту "ощупь" и делал Валерий Агеев
35. so-quest 129 11.02.16 13:20 Сейчас в теме
(34) Эту ощупь делал каждый кто ковырял унпак. И результатов - никто не выложил. Ну а то что есть - либо мало, либо неполно, либо не работет
36. pbazeliuk 1465 11.02.16 13:23 Сейчас в теме
(35) so-quest, некоторые результаты есть в V8Reader. Но детальный разбор никто не выложит с версионированием по платформам потому, что на этом можно неплохо заработать.
38. so-quest 129 11.02.16 13:48 Сейчас в теме
(36) Хоть одну бизнес-идею идею использования внутреннего формата cf|epf назови? что бы на ней можно было неплохо заработать
39. pbazeliuk 1465 11.02.16 13:52 Сейчас в теме
(38) so-quest, вот когда моя команда выпустит релиз готового продукта назову. А так идеи много стоят.
29. JohnyDeath 291 10.02.16 20:19 Сейчас в теме
(23) so-quest, самое красивое получалось у awa на его закрытом проекте. Но, как он мне сказал при личной встрече, времени работать над всем этим дальше совсем нет.
26. m.bolsun 619 10.02.16 13:22 Сейчас в теме
YPermitin, можете где то добавить информацию под какой лицензией распространяется разработка?
27. YPermitin 595 10.02.16 15:13 Сейчас в теме
(26) m.bolsun, я добавлю в ближайшие дни на GitHub и здесь.
Нужно немного подождать =)
28. YPermitin 595 10.02.16 19:04 Сейчас в теме
(26) m.bolsun, текст лицензии добавлен. Используется MIT.
40. so-quest 129 11.02.16 15:24 Сейчас в теме
Подождем. Если будет успешно - дождемся и открытой реализации :)
44. YPermitin 595 15.02.16 08:03 Сейчас в теме
Жаль нельзя сделать загрузку файла бесплатно.
Чтобы не тратить стартмани можете скачать последнюю версию консольной утилиты отсюда:
V8Formats на www.develplatform.ru
45. biformatus 22.02.16 15:33 Сейчас в теме
А сделать распаковку EFD в планах нет?
46. YPermitin 595 22.02.16 22:43 Сейчас в теме
(45) biformatus, имеет ли это смысл и какой?
47. biformatus 22.02.16 23:57 Сейчас в теме
Нужно для распаковки обновлений конфигураций в автоматическом режиме (нужна консольная утилита). Ну собственно смысл получить распакованные обновление CFU, сгенерить CF. и т.д.
48. YPermitin 595 23.02.16 08:12 Сейчас в теме
(47) biformatus, ок.
Запишу на будущее посмотреть этот вопрос.
biformatus; +1 Ответить
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Салехард
зарплата от 80 000 руб. до 200 000 руб.
Полный день

Программист 1С
Санкт-Петербург
зарплата от 100 000 руб.
Полный день


Программист 1С
Санкт-Петербург
Полный день

Программист 1С
Санкт-Петербург
Полный день