Реализовано в виде внешнего приложения. Высокая скорость.
Полная обратная совместимость!!!
Версия 1.2. Теперь и удаление информации о пользователях !
Версия 1.3. Теперь и экспорт конфигурации (*.CF) из файла *.DT!
Версия 1.4. Теперь и поддержка командной строки!
для работы с платформой 8.2 (8.3) смотрим тут
Частенько бывает нужно из «1cv8.dt» что либо вытащить.
Теперь и это возможно 🙂
На выходе (после распаковки) один текстовый файл со знакомыми уже нам структурами 8.Х.
Новое в версии 1.2:
Добавлена возможность удалить информацию о пользователях в файле *.DT.
Как залить из dt, и зайти в базу не зная паролей пользователей?
Ведь после заливки дампа платформа перезапускается и показывает окно аунтефикации. и никак не зайдешь если не помнишь пароли.
Путь существует только один! Установить SQL сервер. Затем поднять «1С:Сервер».
Затем залить из dt дамп. Затем лезть в базу SQL и вручную все править, если конечно знаешь где править.
Кто сталкивался, тот знает что это целая проблема.
Теперь эта проблема решена!.
Новое в версии 1.3:
Добавлена возможность экспорта конфигурации из файла *.DT.
Причем есть возможность выбора экспортировать сведения о поддержке или нет.
Если сведения о поддержке не экспортировать, то файл СF для штатных конфигураций имеет значительно меньший размер.
Фактически возможность экспорта конфигурации из файла *.DT позволяет существенно сэкономить время.
Так для получения файла CF штатным образом имея *.DT, необходимо:
1) Создать чистую информационную базу
2) Загрузить данные из DT (займет очень много времени даже для средних по размеру архивов)
…при этом происходит следующее:
……a) распаковывается весь файл DT (Очень длительно для больших DT файлов)
……b]б) заливается конфигурация
……в) Реструктуризируется БД
……г) Заливаются данные в таблицы БД (Очень длительно для больших DT файлов)
……д) Создаются и заполняются индексы (Очень длительно для больших DT файлов)
……е) Рассчитываются итоги и прочие служебные данные (Ну очен! очень! очень! длительно для больших DT файлов)
3) Экспортировать CF
Теперь экспорт можно осуществить в ДВА! клика мышкой. Скорость экспорта приятно удивит!
при этом задействуется пункт 2.a (Частично) , затем 3 .
То есть распаковали и сразу выгрузили.
Для экспорта CF реализован хитрый алгоритм только частично распаковывающий *.dt, который фактически снимает ограничения на размер обрабатываемого файла *.dt при экспорте конфигурации.
Новое в версии 1.4:
Добавлена поддержка командной строки. См файл «Работа с командной строкой.doc» в архиве.
Новое в версии 1.4 SP1:
Исправлен баг, из за которого выходной CF файл получался слишком большим.
Теперь вых.файл CF получается меньше чем у 1С выгрузки CF. 🙂
Новое в версии 1.4 SP2 04.08.2008:
Пересмотрен алгоритм экспорта в CF файл.
В результате скорость работы с экспортируемым CF файлом из среды 1С существенно увеличилась!
для работы с 1cv8.1CD смотрим //infostart.ru/projects/2891/
Не забываем плюсовать!
и в чем смысл этой программы 🙂
(1) +1
Приведите пример использования на практике?…
Да в принципе и раньше было возможно .. ну 1 файл это жесть!
Пионером и лучшей программой в данной области был и есть v8Unpack… какой смысл еще что то писать? Такие программы интересны для пользователя (нажал кнопку и забыл), но не для программиста.
(3) German Что значит «1 файл это жесть» ? 🙂
(4) v8Unpack не умеет ведь работать с DT.
Нашел способ убрать информацию о пользователях из DT файла. Если нужно кому нить скажите добавлю в функционал.
Можно также в виде dll все оформить, чтобы в так сказать в родной среде все расковыривать 🙂
ну с исследовательской точки зрения я понимаю — интересно…
НО!
Ну распаковал… и чо дальше? у меня у клиентов DT весят гигатоннами!!!! я чо — мальчик — ковырять эти каракули с уидами?
:))
(9) Конечно ты отчасти прав 🙂 Но согласись львинная доля всего представленного здесь это чьи то исследования.
Кто то парсит метаданные. Кто то пытается писать ВК, Active X. Кто то пытается писать ВК для того чтобы парсить метаданные 🙂
Кто то исследует бухучет, торговлю, зарплату, обмены данными, сети, соединения и т.д. и т.п. А кто то исследует тех кто все это исследует 🙂
эх….исходник бы ешо……
Архив битый (
(7) Для полноты картины добавь пожалуйста.
(12) Архив в порядке. Качай.
(7) Добавляй! Жутко интересно посмотреть!
(7) ага добавь возможность выкинуть пользователей. Нужно бывает 🙂
Просто класс… 😉 Спасибо
согласен с ex3mall
зачем нужен такой изврат?
С 8-кой пока не работаю ,но видно ,что инструмент пригодится))) так что +
Такими темпами у вас к августу будет свой конфигуратор. 🙂
Покажи скрин что в итоге получим плиз, а то врубится не могу для чего это
(21) кажется все ясно даже из названия 🙂
Че то вопросов и комментариев нет
Неужели теперь все всем понятно? 🙂
Очень удобная штука!))))
Показать полностью
Добавь возможность создания *.dt Чаще бывает бух уходит с паролями. А *.dt-шек свежих нет/вообще нет
(26) что значит «возможность создания *.dt»?
штатных возможностей не хватает?
(27) Наверное *.1CD -> *.DT т. е. бекап файловой базы без монопольного режима 🙂
Люди.
Подскажите незаконно модифицировать исполняемые файлы?
или внутренние форматы *.CF, *.DT, *.1CD и т.д. тоже?
А то неодназначно в личку намекают что мол нужно убрать разработку с общего доступа.
Где то что видел про модификацию исполняемых файлов, а вот насчет внутренних форматах ничего вроде нигде не сказано.
Кто что знает по этому поводу?
(29) Строго говоря, файлы ИБ и конфигурации являются собственностью владельца информации, то есть, формально ты чист.
Скорее всего, карму портит 🙂 очистка списка пользователей. Понятно, что это серьезная дырка в информационной защите в целом и в реноме разработчиков в частности.
ИМХО, если уберешь эту функцию из сборки — гонения должны прекратиться.
А вообще — респект за удобную возможность быстро достать конфу из базы!
(30) Но ведь «очистка списка пользователей» — опять же моей базы! А если база моя — чего хочу то и делаю?
Ведь если у тебя оказался dt чужой базы, ведь это проблемы администратора той базы. так помоему?
(29) Если сомневаешься добавь предупреждение перед использованием с продолжением работы только по согласию пользователя и текст лиценции в справку о программе.
Классная вещь !!!
До этого просто эксперементировал с этой штукой, а сегодня пришлось столкнуться именно с кучей боооольших .DTшников.
Господа! Я в шоке от утилиты. ОГРОМНЫЙ РЕСПЕКТИЩЕ АВТОРУ! реально мне сэкономила день. Добавьте кто-нить от меня аще один плюсик! сам уже немогу 🙂
Необработанное исключение по нажатию кнопки «Вытащить конфигурацию», если пути к файлам не заполнены.
Делай командную строку.
(36) Если плюсов будет больше или равно 100 буду добавлять.
(37) с меня уже три плюсса.
Пора уже ставить надпись
Версия 1.4. Теперь и коммандная строка!!!
Версия 1.5. Теперь и исходный код.
Полезная программа, сам сегодня распаковывал туеву хучу архивов, для поиска разници в конфигурациях, а так из DT-шки ужно уже надо распаковывать около двух часов.
СПАСИБА ++++++++++++++++++++ (а это двадцать плюсов к 80 имеющимся)))
(38) а плюсика че то не вижу 🙂
(40) кстати есть мысля соорудить небольшой ЭКПОЛОРЕР. Скажем для серфинга по архивам DT.
Скажем такого вида таблица может быть:
C:АРХИВ_БП_2008_01_22.DT | Бухгалтерия предприятия, редакция 1.6 (1.6.2.39) | 22.01.2008
C:1cv8.DT | «Управление торговлей», редакция 10.2 (10.2.12.2) | 24.05.2008
Разумеется для получения названия конфигурации придется все равно распоковывать часть DT, на что естественно требуется время.
Так вот можно реализовать небольшой КЭШ который запомнит запомнит однажды вытащенное название конфигурации для конкретного DT архива.
Унифицировать DT архивы можно по CRC32.
Кто чего думает? Естественно если это нах. никому не надо, то и разговора быть не может. Кто согласен а писать коммент нехочет, плюсуйте этот коммент.
(40) убогая получилась табличка 🙂
все отступы съел кто-то…
(39) Поиск рулит, adanilec, Leoligov, LelikOFF. Убрать?
(40) внешняя компонента, для использования в 1с-ке с получением соответсвующей информации
а ещё вообще заоблачное, (из ВК) получать значение запакованных объектов, у нас в одной конторе, по привычке часто хотят видеть, а что была с документов на такую-то дату, типа слишком грамотные, умеют журналом регистрации пользоваться.
так…. чувствую после этого
— Автор программы установил доступ к файлу только для других авторов с рейтингом не меньше 3 —
будет 500 рублей или что-нибдь наподобе
(42) да ниче не надо убирать.
теперь вижу. Просто искал в свежих плюсах 🙂
(43) c рейтингом не меньше 3 — установил по насточивой просьбе tormozit.
Он привел херову тучу доводов, что нужно бы хоть как нибудь ограничить распространение. Честно говоря, тот кто захочет скачать все равно скачает. По этому этот «порог» носит некий формальный характер.
500 рублей не будет точно. Это бесплатная разработка.
А вообще (судя по отзывам в личку) получилась не «домашняя» утилитка. т.е. для внутреннего использования а своего рода КРЯК к чужим архивам. Что сказать. Даже с помощью самой 1C 8.Х + DLL для работы с бинарными файлами можно сломать многие защитки. А если к 1С 8.Х добавить еще DLL для работы с реестром? а еще DLL для изменения текущего времени? Уже можно будет сломать ограничения по датам у целой кучи программ.
Но ведь 1С это же не КРЯК?
То же самое и здесь. Кто то будет что-то взламывать, а кто то будет применять исключительно для собственных архивов.
И я никак не могу этому помешать.
да простит меня tormozit, убрал ограничения.
Не вижу смысла. Все равно накрутят себе счетчик и скачают кому надо 🙂
А я вообще не понимаю что в этой утилите такого? Разве что пользователей убрать из dt, так это любой, хоть немножко умеющий пользоваться яндексом и так сможет… Разве что сначала придется загрузить dt, но это по большему счету ничего не меняет…
херня несусветная
(47) почему? обоснуй
(0) Ну что, следующая версия в виде ВК для 1С 8? 🙂 Сколько плюсиков надо?
Класс ))) ++++
(49) На очереди выход продукта «STREAM:Менеджер».
Это комплекс COM-Серверов. для работы с файловыми потоками, потоками в памяти и многое другое.
Продукт позволит в самой среде 1С творить что угодно с двоичными файлами.
Благодаря поддержке DEFLATE, BASE64 и прочих вкусностей, можно будет распаковывать и упаковывать многие форматы 1С.
В пакет войдут внешние обработки демонстрирующие возможности 1С в паре с даннмы продуктом:
1) *.EPF,*.ERF (Внешние обработки, Внешние отчеты)
2) *.CF (Файлы конфигураций)
3) *.DT (Файлы выгрузки базы)
4) *.RES,*.HBK из каталога Program Files1cv82in (Ресурсные файлы хранящие систему помощи, синтаксический помощник и др.)
С продуктом может работать 1С: Версии 7.7, 8.Х
а также Delphi, C++, VB, Word, Excel.. и многие другие пакеты… 🙂
51+ Забыл дописать:
Внешние обработки 1С, вошедшие в пакет, будут вскрывать, упаковывать и работать с нижеуказанными форматами.
(*.EPF,*.ERF,*.CF,*.DT,*.RES,*.HBK)
Респект за оч полезную вещь!
весьма пользительно-)
автору виват!
Спасибо. Полезная штука.
Спасибо Большое,
НО хотелось бы еще одну галочку — оставить в конфигурации все что касается плана обмена (План и узлы).
При созданни образов для филиалов из текущей рабочей конфигурации у меня уходит до 10 дней. А по Вашей технологии, с учетом доработок, думаю значительно быстрее
(56) Узлы хранятся уже в базе данных, а не конфигурации. Напиши в личку. Почему столько времени занимает процесс? Возможно и получится что либо придумать.
Были плюсы, а теперь камушек в огород, когда заметил огорчился. (свои три плюса убирать не буду)
1. Платформа 8.1.11.67,
2. Почти типовка УПП 1.2.16.1
3. Файл DT — размеров 828Мбайт
4. стандартный файл CF — 131МБайт
5. Выгрузки из DT:Менеджер 1.3 и выше 172МБайта и 224Мбайта (с поддержкой и без неё)
так вот камень при открытии файла CF в конфигруаторе стандартный открывается быстро, выгруженные открываются по полчаса и более, НЕПОРЯДОК получается, время экономим но не так быстро, хотелось бы получать нормальную выгрузку в CF
(58) Видимо что то лишнее захватил. У меня нет УПП, поэтому никак не могу проанализировать ситуацию 🙁
Попробую поэксперементировать на бухгалтерии…
(58) Теперь файл меньше чем у 1С 🙂
(58) Насчет времени загрузки экспортируемых CF пока разбираюсь. Это становится заметно на больших и сверх больших конфигурациях (источник DT же может быть любого размера).
(58) Внес некие изменения. Опыты делал на УТ. Все летает вроде. 🙂
то же самое
(62) Могу дать обезличенную базу УПП для разбирательства. Только как?
Спасибо не надо 🙂 На БП вроде уже долговато. Нушел пару отличий в CF пока смотрю на логику выгрузки самой 1С.
Дуаю до конца неделю приведу к оригинальной выгрузке 🙂
похоже проект помер
(64) Проект не помер 🙂 Просто руки все не дойдут 🙂
У меня вот какая мысль:
dt = cf + данные
Так вот, ваша утилита делает из dt файлы cfю И делает это довольно хорошо. У меня есть предложение доделать утилиту, чтоб она еще могла делать из dt-файла отдельный файлик с данными, а так же сливать данные + cf в dt-файл. Как мне представляется тогда ваша утилита обретет функциональность большую чем 1С-платформа, она её перерастет по всем параметрам.
Да и еще одна возможность — народ требует. Перегрузка из cf-файла в cf с возможностью фильтрации по подсистемам.
(69) >>Перегрузка из cf-файла в cf с возможностью фильтрации по подсистемам.
Вероятно имеете подразумеваете только частичную выгрузку метаданных?
(68) по разчленению DT на CF и данные мысли были. Но какой смысл это делать? Ведь данные с «Чужим»CF все равно не сцепишь так, чтобы потом загрузила платформа. Может не так понял. Поясните.
(70) Первое — вы правы: частичная выгрузка cf-файла
Второе — например у меня возникала такая необходимость. При обсуждении документооборота, я ставлю, например, с нуля упп, делаю 10 документов и отправляю все это дело dt-файликом, можно наверное все выгрузить в xml, но можно и так, как я описал в (68)
(71) 1. Была бы очень нужная фишка….
2. Нахрен не надо. Проще XML сделать, чем автора этим грузить…
А что с распакованным файлом то делать?
(73) Что душе угодно 🙂
****************цитата*******************
Путь существует только один! Установить SQL сервер. Затем поднять «1С:Сервер».
****************конец цитаты*************
существует более простой путь, я им всегда пользуюсь.
открывается файл 1Cv8.1CD в каком- нибудь hex — редакторе и с помощью замены одного бита снимается проверка пароля при входе. если нужно сохранить существующих пользователей — этот бит при открытом конфигураторе возвращается на место, затем открывается список пользователей и у любого пользователя заменяется пароль.
(75) Путь с SQL сервером — проделает человек обладающий базовыми знаниями.
Ваш же путь подразумевает что человек знает в какой позиции находится этот бит.
Разумеется способов много. Также можно с помощью отладчика найти точку входа
в соответствующую функцию соответствующей DLL. Написать свой hook и т.д.
Можно на машину администратора установить клавиатурный шпион чтобы узнать пароли и т.д.
Кстати вчера DT:Менеджер помог вытащить конфигурацию из DT выгруженного старой платформой. Базовыми средствами незя. Платформа ругается на версию. А так все получаилось 🙂
А как быть с клиент-серверной версией?
(78) А причем тут клиент сервер?
(65) SP3 будет? 😉
(80) SP3 с какими новшествами желаете?
(81) Ну я глядя на (65) пост писал, цитата
Спасибо не надо 🙂 На БП вроде уже долговато. Нушел пару отличий в CF пока смотрю на логику выгрузки самой 1С.
Дуаю до конца неделю приведу к оригинальной выгрузке 🙂
Т.е. оставались какие-то проблемы производительности выгруженных cf-ников, обещался новый релиз (про срок умолчим 😉
Т.ч. ждем пока всего ничего, ну разве что, то что было указано в (40) можно было бы ещё сделать — но это уже не SP3, а полноценный релиз 1.5.
Про (51) пока не вспоминаем, т.к. видим что проект опять пошел, судя поhttp://infostart.ru/projects/2891/ и возможно когда-нибудь будет и то, что обещано там =)
Отличная вещица, особенно с удалением пользователей понравилось. Интересно, а поделиться структурой хранения файлов 1С со всеми, в планах есть ?
(83) Если в трех словах рассказать, то все равно будет не понятно. А если документацию по форматам описывать — то свободного времени нет.
Эльтруизм — это роскошь для меня. Мне семью кормить нужно 🙂
А можно организовать своеобразное тестирование и исправление DTшника??
(84) большенство здесь программисты… каторые понимаем в исходниках! таким оброзам может и ускорем процес с работой 1С форматом!
Здесь есть два варианты:
1.работать медленно самостоятельно
2. или ускорить процесс в колектив!
Я предпочитал бы второй вариант!
(85) что исправлять?
По поводу скорости загрузки выгруженного cf — 1С при открытии хранилища проверяет факт сортировки потоков по возрастанию, если нет таковой — все последующие операции с потоками выполняются перебором. Разница в скорости — на порядок.
Кто-то еще распакововал dt файл?
это и всем понятьно что первые 8 байт это «1CIBDmpF» а остольные? интересно разузнать заголовок этого файла.
Я так понимаю что должно стоить версия файла и размер буфера. точно незнаю!
Буду очень признателен узнать!
удевительно! в failmon показывает что сперва копирует первые 9 байтов (это «1CIBDmpF1»).. а после этого копирует блоки по 32768 и дезархивирует до окончание файла.
Первый блок «1CIBDmpF1» -всегда 9 байт.
Затем идут данные сжатые DEFLATE.
Другими словами забудь про первые 9 байтов. Расжимый DEFLATE сразу — остальные, и будет счастье!
(87) битые DTшники, ну в любом случае вытаскивать из него всё что возможно… и тестировать на корректность записей..
остнольные блоки по 32768байт? или там что-то еще есть?
(92)Сергей, остальные данные после 9 байтов архивированные данные по блокам или один блок до конца файла?
Все работает!…. были проблеммы с функцией inflateInit2!
Спасибо всетаки за подсказку!
«(49) На очереди выход продукта «STREAM:Менеджер».
Это комплекс COM-Серверов. для работы с файловыми потоками, потоками в памяти и многое другое.
Продукт позволит в самой среде 1С творить что угодно с двоичными файлами.
Благодаря поддержке DEFLATE, BASE64 и прочих вкусностей, можно будет распаковывать и упаковывать многие форматы 1С.
В пакет войдут внешние обработки демонстрирующие возможности 1С в паре с даннмы продуктом:
1) *.EPF,*.ERF (Внешние обработки, Внешние отчеты)
2) *.CF (Файлы конфигураций)
3) *.DT (Файлы выгрузки базы)
4) *.RES,*.HBK из каталога Program Files1cv82in (Ресурсные файлы хранящие систему помощи, синтаксический помощник и др.)»
НЕ ПОЯВИЛАСЬ ЕЩЕ РАЗРОБОТОЧКА?
(105) Это все легко — было бы хоть немного отдачи. А так — банально нет времени.
Кто то парсит метаданные. Кто то пытается писать ВК, Active X. Кто то пытается писать ВК для того чтобы парсить метаданные
Кто то исследует бухучет, торговлю, зарплату, обмены данными, сети, соединения и т.д. и т.п. А кто то исследует тех кто все это исследует
+1 🙂
(10) Без исходников не то.