1. Главная страница » Компьютеры

Erf как открыть в 1с

Автор: | 16.12.2019

Отчеты – пожалуй, самый главный, итоговый инструмент в 1С. Это то, что хочет видеть руководитель, бухгалтер, менеджер. Разберемся: что это такое, чем отличаются внешние и внутренние (стандартные) отчеты, как их открывать, настраивать и формировать.

Содержание

  1. Что такое отчеты в 1С Предприятие 8.3?
  2. Настройка отчетов 1С
  3. Самостоятельно обновить форму выгрузки СЗВ-СТАЖ в 1С 8.2 и 8.3 (ЗУП 2.5);
  4. Внешние отчеты в 1С – что это и где их скачать?
  5. ERF – что за файл и как открыть в 1С?
  6. Как сделать отчет в 1С?

Что такое отчеты в 1С Предприятие 8.3?

Основным назначением отчетов в программе 1С – это сбор, анализ, объединение, группировка и вывод нужной информации, которая ранее была заведена в базу. Отчеты позволяются “вытащить” любую информацию и представить её в удобном виде.

Например, мы оформляли реализации клиентам и хотим посмотреть, какой товар принес нам больше прибыли, или какой покупатель покупает больше всего телевизоров. А можем добавить столбец и вывести электронные адреса этих клиентов, чтобы потом сделать им e-mail рассылку.

Читайте также:  Instagram как написать сообщение с компьютера

Настройка отчетов 1С

Гибкие настройки отчетов позволяют вывести данные практически в любом виде. Мы можем в строках расположить клиентов, а в столбцах видеть продажи по месяцам/кварталам/годам. Или же сделать чтобы первой группировкой шли клиенты, а ниже расшифровка: какие товары он купил, в какие даты или дни недели совершал покупки.

Благодаря фильтрам (или как они еще называются – отборам) мы можем исключить лишние данные, таким образом, чтобы посмотреть отдельно продажи по группе “Бытовая техника”.

Внешние отчеты в 1С – что это и где их скачать?

С программой мы получаем стандартные (встроенные отчеты), но иногда их возможностей бывает недостаточно. К счастью, в 1С есть возможность подключать внешние отчеты. Это отчеты, которые пишутся программистами под заказ. Их можно заказать или найти уже готовый вариант. На планете более 7 миллиардов человек. Мы же понимаем, что скорее всего отчет, который мы ищем, уже кто-то придумал ранее и уже сделал. У команды v8PRO.ru на сайте выложена лишь небольшая часть отчетов, поэтому можно попробовать спросить – а нет ли нужного отчета?

Любой внешний отчет – это один отдельный файл. Его работу легко проверить. Достаточно зайти в программу 1С и через меню “Файл – Открыть” (или нажав комбинацию клавиш Ctrl + O) выбрать скачанный файл с отчетом. Всё – он уже должен работать!

На нашем сайте, в разделе “Каталог разработок” можно найти и купить платные и скачать бесплатные отчеты для 1С Предприятие 8.

ERF – что за файл и как открыть в 1С?

Расширение .erf – это файлы внешних отчетов программы 1С Предприятие 8. Чтобы открыть файл erf нужно зайти в 1С в обычном режиме и открыть его с помощью меню “Файл – Открыть…” или нажать Ctrl + O.

Чтобы отредактировать (изменить) файлы *.erf нужно зайти в программу 1С в режиме “Конфигуратор” и открыть аналогичным образом. Стоит учесть, что для редактирования нужно уметь программировать на языке 1С.

Как сделать отчет в 1С?

ема отчетов для 1с 8.2 очень обширная и в ближайшее время мы будем дополнять эту статью, добавив информацию по тому, как создавать и как сформировать отчет. Расскажем про универсальные отчеты и как их настраивать для получения нужных данных. Затронем популярную тему авансовых бухгалтерских отчетов 1С.

Напишите в комментариях – на какой вопрос нам подготовить следующую статью? Возможно это отчеты по продажам, производству или складу? Или вы не можете найти или сформировать стандартный отчет. Указывайте обязательно свою конфигурацию: УПП, УТ, ЗУП, Розница, Бухгалтерия – так мы сможем дать более точный ответ. Ждем ваших вопросов – в комментариях внизу.

В типовых конфигурациях для "1С:Предприятия 8", выпускаемых фирмой "1С", формы регламентированной отчетности входят в состав конфигураций и выпускаются вместе с релизами конфигураций. Однако когда возникает необходимость — например, вступает в силу новая редакция формы отчетности, — фирма "1С" выпускает такие формы отчетности в виде внешних отчетов "1С:Предприятия 8" (файлов с расширением *.erf).

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

  • при выпуске внешнего отчета оговаривается, с каким релизом конфигурации он может использоваться;
  • не гарантируется поддержка внешним отчетом предыдущих релизов конфигурации;
  • при работе пользователя с конфигурацией нельзя использовать более одной версии внешнего отчета;
  • открытие формы отчета выполняется более продолжительное время, по сравнению с отчетом, реализованным как объект конфигурации;
  • выгрузка данных отчета в электронном виде выполняется намного медленнее и др.

Список внешних отчетов, выпущенных для конкретного релиза конфигурации, можно увидеть на странице конфигурации сайта поддержки пользователей программ "1С:Предприятия 8" по адресу www.users.v8.1c.ru (в разделе Сводная информация необходимо в столбце с номерами версий кликнуть на интересующий номер) или в форме Информация об обновлениях (вызывается кнопкой Информация об обновлениях верхней командной формы Регламентированная и финансовая отчетность), если в информационной базе включен сервис оповещений регламентированной отчетности.

В этой же форме можно щелкнуть по наименованию внешнего отчета, чтобы скачать его к себе на компьютер.

Как правило, отчеты распространяются в виде архива RAR. Для работы с внешним отчетом архив необходимо распаковать.

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

Если внешний отчет предназначен для замены регламентированного отчета, уже существующего в конфигурации, его можно подключить к информационной базе, просто открыв отчет в режиме "1С:Предприятие" (меню Файл — Открыть).

При открытии будет задан вопрос Зарегистрировать внешний регламентированный отчет в информационной базе? После ответа Да внешний отчет будет зарегистрирован в информационной базе и сразу открыт для создания нового отчета.

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

Если внешний отчет является новым видом регламентированного отчета, автоматически зарегистрироваться в информационной базе отчет не сумеет: такой режим необходимо подключить вручную. Указания по подключению также имеются в текстовом файле, содержащемся в архиве, полученном с сайта "1С".

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

Для регистрации внешнего отчета как нового вида регламентированных отчетов в справочнике Регламентированные отчеты необходимо (см. рис. 1):

1) перейти в группу справочника, в которой будет располагаться отчет нового вида;
2) создать новый элемент справочника, нажав кнопку Добавить в верхней командной панели формы справочника;
3) в форме элемента справочника заполнить наименование, которое будет выдаваться в справочнике Регламентированные отчеты и в списке видов отчетов формы Регламентированная и финансовая отчетность. Желательно также заполнить описание вида отчета;
4) переключатель Использовать установить в положение файл и указать, какой файл следует использовать в качестве внешнего отчета. После нажатия кнопки ОК в диалоге открытия файла в поле файл формы элемента справочника будет указано полное имя этого внешнего отчета.

Рис. 1. Регистрация внешнего отчета

После нажатия кнопки Записать внешний отчет сохраняется в информационной базе, после этого полное имя внешнего файла заменяется текстом Отчет загружен в ИБ.

То же самое происходит при нажатии кнопки ОК, при этом форма элемента справочника Регламентированные отчеты закрывается.

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

После того, как внешний отчет загружен в информационную базу, сам файл внешнего отчета уже не нужен, и его можно удалить.

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

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

В любой момент можно вернуться к использованию "внутреннего" объекта конфигурации. Для этого в форме элемента справочника для требуемого регламентированного отчета необходимо поставить переключатель Использовать в положение объект и сохранить элемент справочника.

Сам внешний отчет не удаляется из информационной базы, поэтому возможно и обратное действие. Для удаления отчета из информационной базы необходимо выполнить следующее:

1) в справочнике Регламентированные отчеты найти регламентированный отчет, для которого подключен внешний отчет, — у такого отчета после наименования отчета будет добавлена строка (внешний);
2) открыть элемент справочника для редактирования обязательно кнопкой Изменить текущий элемент;
3) в поле выбора внешнего отчета нажать кнопку Х (Очистить). После ее нажатия текст Отчет загружен в ИБ очищается, это является признаком того, что отчет будет удален из информационной базы;
4) закрыть форму элемента справочника нажатием кнопки ОК.

Удаление отчета выполняется при сохранении элемента справочника.

В случае необходимости отчет, загруженный в информационную базу, можно сохранить в файл на диске. Для этого в форме элемента справочника Регламентированные отчеты необходимо щелкнуть по ссылке с текстом Выгрузить внешний отчет в файл. Будет открыт стандартный диалог сохранения файла. По умолчанию в качестве имени файла предлагается имя соответствующего объекта конфигурации.

Важно отметить, что в одном сеансе работы пользователя с информационной базой нельзя использовать более одной версии внешнего отчета: например, если пользователь уже работает с регламентированным отчетом, который является внешним отчетом, и загрузил в справочник Регламентированные отчеты другую версию этого внешнего отчета (например, с добавленным автозаполнением), для использования этой версии отчета ему нужно завершить сеанс работы в режиме "1С:Предприятие", после чего сразу начать новый сеанс.

Решил опубликовать исходный код C# для работы с форматом конфигураций 1С: Предприятие.

MdInternals понимает формат cf, cfu, epf, erf, распаковывает содержимое в удобочитаемые Xml и текстовые файлы и загружает обратно. Позволяет программно обращаться к внутренним файлам и свойствам объектов.

Проект состоит из частей:

  • MdInternals программно обращается к объектам и свойствам конфигурации
  • CfProject отвечает за сериализацию и десериализацию объектов MdInternals
  • MdInternals.Cil декомпилирует байт-код (OpCode) 1С
  • MdInternals.Serialization работает с внутренним полу-JSON форматом 1С вида " < 19 < "", 2 >>"

Выгрузка файлов cf, cfu, epf, erf на диск

Распознанные файлы записываются в дерево каталогов по видам объектов. Нераспознанные помещаются в каталог Unresolved:

Распознанные файлы выгружаются в XML-формате. Формат XML позволяет контролировать логическую целостность файлов и обрабатывать файлы сторонними программами. Известные свойства перемещаются в соответствующие разделы (атрибуты или тэги) XML-структуры:

Чтение из MSSQL-таблицы

Обращение к внутренним файлам

Создание файла из выгруженного xml-формата

Описание Cf-Формата

Cf-файл состоит из заголовка образа (ImageHeader) и следующими за ним страницами (ImagePage1-ImagePageN). Заголовок образа состоит из 4х байт сигнатуры, которая равна 0xFF 0xFF 0xFF 0x7F, 4х байт размера страницы и 8 зарезервированных байт. После заголовка файла идут по порядку страницы с данными. Каждая предыдущая страница ссылается на последующую.

Каждая страница (ImagePage) состоит из заголовка страницы (ImagePageHeader), группы указателей на записи ImageRowPointers и области ImageRows.

Заголовок страницы ImagePageHeader содержит в себе: зарезервированные 2 байта 0x0D 0x0A, 27 байт текстовой информации и еще зарезервированные 2 байта 0x0D 0x0A. Текстовая информация содержит 3 шестнадцатеричных числа: общий размер данных всех страниц (FullSize), размер текущей страницы (PageSize) и адрес следующей страницы в файле (NextPageAddress). FullSize проставляется только для первой страницы цепочки страниц. Для остальных страниц цепочки это значение 0. Для последней страницы цепочки NextPageAddress принимается равным 0xFF 0xFF 0xFF 0x7F.

Блок указателей ImageRowPointers занимает размер, указанный в значении PageSize страницы. Каждый указатель состоит из 4х байт адреса заголовка HeaderAddress и 4х байт адреса тела BodyAddress. В конце каждого указателя помещается сигнатура 0xFF 0xFF 0xFF 0x7F. Адреса указывают на расположения внутри текущей страницы на область ImageRows.

Заголовок ImageRowHeader начинается с блока заголовка страницы ImagePageHeader, который сообщает, сколько байт отведено под заголовок. Далее идут 20 зарезервированных байт, UTF-16 строка идентификатора данных (Id) и 4 зарезервированных байт.

Тело ImageRowBody начинается с блока заголовка страницы ImagePageHeader, который сообщает, сколько байт отведено под тело данных. Если тело данных начинается на 0xEF 0xBB 0xBF (сигнатура UTF8), то тело содержит UTF-8 строку. Иначе тело данных содержит упакованные данные. Если распакованные данные начинаются на 0xFF 0xFF 0xFF 0x7F, то содержимое – последовательность объектов, и они записаны в CF-формате. Иначе содержимое – это строка сериализации.

Что не реализовано

Читают сейчас

Похожие публикации

  • 11 сентября 2018 в 10:03

Как и зачем мы написали высоконагруженный масштабируемый сервис для 1С: Предприятия: Java, PostgreSQL, Hazelcast

Vanessa-Automation — инструмент автодокументирования прикладных решений на платформе «1С: Предприятие». Кино и BDD

Как мы в «1С: Предприятии» решаем системы алгебраических уравнений

Вакансии

AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Комментарии 36

В 2011 (судя по скриншоту) это было актуально. Сейчас — кажется не очень.

Я имею ввиду возмодность читать дерево метаданных прям из файлов cf и cfe во встроенном языке в 8.3.14.

Реализована возможность анализа метаданных, расположенных в файлах .cf или .cfe. Реализован конструктор для объекта ОбъектМетаданныхКонфигурация.
Реализована возможность получения имени конфигурации, номера версии и поставщика на основании файлов .cf или .cfe. Реализован объект ОписаниеКонфигурации.

Реализована возможность получить из файла .cfu список версий конфигурации, которые могут быть обновлены данным обновлением, а также версию конфигурации, которая получится в результате обновления. Реализован объект ОписаниеОбновленияКонфигурации.

> Декомпиляция нарушает лицензионное соглашение 1С.

А обфускация байт-кода 1С не нарушает «лицензионное соглашение 1С»? А ведь некоторые фирмы распространяют подобные инструменты за деньги. А суть та же, что обфускация изменяет родной байт-код 1С, что деобфускация, или в данном случае простая декомпиляция кода защищенного стандартными средствами 1С? Аналогично архиваторы изменяют бинарный код и не только они, а ведь многие программы под лицензией «изменять бинарный код – ни-ни».

А ведь достаточно очевидно, чтобы создать коммерческий продукт по обфускации байт-кода 1С, фирма должна научиться сначала его деобфусцировать / декомпилировать, ведь спецификации подобного формата нигде нет. Кроме того, авторы, которые покупают обфускатры и защищают свой код, пишут там такое! Например, тупо отслеживают действия пользователя и скрытно собирают его информацию (а это законно?) и даже открыто сообщают ему об этом, типа: «Я вижу, что ты пытаешься декомпилировать программу, лучше напиши мне – продам ее за полцены!».

К сожалению, новизны здесь никакой нет. Даже «Классы MdInternals.Cil» которые «восстанавливают исходный код из последовательности байт-кода OpCode 1С» своей задачи явно не решают.

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

А «алгоритмы»? Кому они нужны, если они даже не демонстрируют простейших практических возможностей, хотя бы в той же «декомпиялции».

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

К сожалению, новизны здесь никакой нет. Даже «Классы MdInternals.Cil» которые «восстанавливают исходный код из последовательности байт-кода OpCode 1С» своей задачи явно не решают.

Статистика использования онлайн декомпилирования говорит об обратном.

бывший в наличии (сейчас не проверял) онлайн-ресурс по декомпиляции байт-кода 1С полностью перекрывают все возможности данной программы

Если имеется ввиду онлайн-ресурс www.1csoftware.com/dotnet/en-us/decompiler, то он работает и под капотом у него один-в-один выложенный мной проект MdInternals.Cil.

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

> под капотом у него один-в-один выложенный мной проект MdInternals.Cil.

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

> Я пробовал декомпиляторы .Net и C# над обфусцированным кодом. Не все справлялись с защитой.

А что, есть и такие, что справляются?

> Не нужно обвинять проект в том, что он не приспособлен для обхода защиты. Нужен совсем другой подход и проект.

Это не обвинение, это сожаление.

P.S. Пару слов насчет обфускации байт кода 1С8х. Последние версии коммерческих обфускаторов используют много новых приемов защиты. Однако нужно понимать, что для специалиста это все не слишком серьезно. Общая идея обфускации простая, используется функционально эквивалентный байт-код, который усложняет процесс его восстановления на уровне ЯВУ (языка высокого уровня). Это может осуществляться как за счет добавления избыточной топологии к исходному бинарному циклическому графу, так и за счет якобы шифрования строковых констант и т.п., вроде использования специфики конкретных команд байт-кода. Шифрование не слишком серьезно потому, что в том же модуле всегда присутствует (обфусцированная) функция дешифрования. А с избыточной топологией, в том числе и «мусорным» кодом, можно легко бороться известными аналитическими методами. Главное здесь то, что, согласно математической теореме: «Любые эквивалентные преобразования обратимы», а это означает принципиальную декомпиляцию обфусцированного байт-кода на уровне ЯВУ.

А вот, скажем, на уровне синтаксиса, обфускация является синтаксически неэквивалентной, поэтому в этом смысле она необратима. И, действительно, невозможно восстановить удаленные комментарии и необратимо измененные пользовательские имена переменных, процедур и функций. Однако функционально эквивалентный код уровня ЯВУ всегда можно получить без особых проблем. Алгоритмы там настолько просты, что просто удивительно, что про них никто не знает или не говорит вслух. Я тоже промолчу. А вам достаточно подсказки насчет самой обратимости и существования простого алгоритма этой обратимости.

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

На специализированных 1С ресурсах статьи про декомпилирование блокируются. Поэтому упоминал здесь вскользь. Не знал, как Хабр отнесется к этой теме.

А вам достаточно подсказки насчет самой обратимости и существования простого алгоритма этой обратимости.

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

Для анализа такого кода используются аналоги виртуальной машины, что не является простым решением.

А как вам рассечение выражений условными операторами? Одно длинное выражение может быть рассечено несколько раз. И все это перемешивается с «мусорным» кодом в ветвях, которые никогда не получают управление. А оператор Попытка / Исключение / КонецПопытки? Здесь тоже можно изощрятся так, что мало не покажется. Но и это все лечится при правильном подходе :).

P.S. Нумерация строк не нужна от слова «совсем».

> Алгоритм декомпиляции прост для не защищенного кода.

Согласен, прост. Для такого кода можно найти обработки 1С8 восстанавливающие исходный текст. Они старые, 2010-2013 годов, судя по датам файлов. Автор у них один, и есть большое подозрение, что он сейчас работает на фирму, которая создает коммерческие обфускаторы. Как говорится в подобных случаях – самые лучшие антихакеры это бывшие хакеры.

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

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

Что касается «разрушения сигнатуры кода», то возможно вы имеете в виду, что байт-код 1С8х может отличаться от оригинального? Конечно, может, возможности у него несколько шире, чем у исходного кода «восьмерки». И авторы обфускаторов этим пользуются на полную катушку. Иной раз просто поражаешься изощренности их мышления. Но, тем не менее, байт-код 1С8 это не ассемблер, принципиально иного, чем на исходном ЯВУ (языке высокого уровня) там мало, что можно сделать. Соответственно и возможности восстановить код ЯВУ на уровне функциональной эквивалентности вполне возможно.

Относительно «простоты статических алгоритмов». Концептуально алгоритмы очень простые из области: «разделение – преобразование – объединение». Или другими словами, редукция задачи, сведение двухмерного бинарного циклического связного графа к одномерным последовательностям. Все остальное это просто техническая реализация, местами сложноватая, но не принципиально, все определяется фундаментальным образованием программиста. Программисты, знающие только 1С, эту задачу могут и не решить в полной мере.

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

Люди, которые говорят, ««это» просто, мне просто лень делать» — обычно не способны сделать «это».

Вы правы, создание обфускатора не возможно без создания декомпилятора. Но на сколько мне известно, ни один создатель коммерческого обфускатора (мне известно о 4х, из них сейчас продаются 3) не публиковал свой декомпилятор. Мне кажется это потому, что глупо раздавать знания, которые приносят деньги.

Сигнатуры позволяют полностью восстановить исходный код, в то время как эквивалентный код с неадекватными именами функций и переменных может быть совершенно не понятен. И таким образом, может иметь нулевую ценность, т.к. дорабатывать его не реально.

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

> создание обфускатора не возможно без создания декомпилятора

Кстати, обфускатор делать труднее, чем декомпилятор. Я думаю над этим, но больше склоняюсь к мысли использовать внешние компоненты, чтобы прятать там наиболее значимый код. Просто второй путь кажется более простым.

> эквивалентный код с неадекватными именами функций и переменных может быть совершенно не понятен. И таким образом, может иметь нулевую ценность, т.к. дорабатывать его не реально

Глупости все это. Все очень даже понятно. Да, вместо случайных имен используются псевдоимена, типа «ЛокальнаяПроцедура001», «ЛокальнаяФункция002», Var_123, Par_321, Label_5555 и т.п. Но это практически нисколько не затемняет исходный код, ведь код 1С перенасыщен русским текстом. Причем, закрывают обычно наиболее значимые модули, исходный текст которых может иметь особую ценность.

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

И я сделал, ну и что из того? На ее создание у меня ушло менее 10% общего времени, остальное время ушло на понимание концепции алгоритма, которую я вам изложил. Только вот всегда цениться именно та информация, которая получена собственным «потом и кровью». Готовый результат никогда и никем адекватно не воспринимается.

Т.е. у вас есть инструмент для декомпиляции обфусцированного кода? У меня иногда возникает необходимость вскрытия такого кода. Я обращусь к вам в следующий раз.

> Т.е. у вас есть инструмент для декомпиляции обфусцированного кода?

Да, есть, заканчиваю уже его третью версию.

> У меня иногда возникает необходимость вскрытия такого кода. Я обращусь к вам в следующий раз.

Я такого рода услуги не предоставляю. Эта как раз та область, которой есть смысл позаниматься самостоятельно (при относительной несложности используемых алгоритмов получается весьма существенный выхлоп). Тем более что самую важную подсказку я дал. Это дает определенный уровень развития. Так что опубликованная информация направленно именно на это. Развивайтесь, и будет вам счастье :).

Зачем вы сделали продукт, если вы его не продаете и услуги не оказываете? В чем выхлоп?

> Зачем вы сделали продукт, если вы его не продаете и услуги не оказываете? В чем выхлоп?

Я же сказал – «Развитие!». Продавать и оказывать услуги на этом поприще рискованно, можно нарваться на неприятности. А оно мне надо? Кроме того, у меня нет цели, ущемлять интересы авторов продуктов. А вот в плане развития это самое то! Вообще, смысл существования всего Сущего во Вселенной это Развитие. В т.ч. это касается человека. При условии неприемлемости немотивированного ущерба окружающим людям и окружающей среде.

Эта задача просто идеальная в плане соотношения усилий и результатов. Решив ее, вы почувствуете себя на другом уровне развития, что, конечно приносит колоссальное удовлетворение. Естественно, что результаты творчества дают новые возможности. А вот разумное и адекватное их использование определяет уже нравственную сторону развития личности. В общем, как-то так :).

P.S. А так, продукт требует еще общей отладки и оптимизации. Кроме того, всегда появляются новые нюансы, с которыми раньше не сталкивался. «Гонку вооружений» ведь никто не отменял :).

Алгоритмы там настолько просты, что просто удивительно, что про них никто не знает или не говорит вслух.

> Вы так говорите, как будто байт-код 1С имеет общеизвестный формат, а проблему «запутывания» мешает решать исключительно лень.

Формат не общедоступный, но восстанавливается вполне тривиально. Достаточно две-три недели плотно посидеть на экспериментах. Берете свой код ЯВУ, шифруете его, а потом смотрите, какой ему соответствует байт-код 1С. Это просто рутинная работа, требующая определенного времени и труда. Кое-что что можно найти на форумах. Первые соответствия я нашел именно там. Заметим, что все фирмы, выпускающие коммерческие обфускаторы, получали подобную спецификацию именно таким образом. Да, кое-какие номера команды остаются нерасшифрованными, просто для них еще не было реального соответствия в исходном коде «восьмерки».

> Открою маленький секрет: 80% адинесников даже не знает, что существует способ получения исходного кода запароленного модуля без всякой обфускации; а людей (не считая сотрудников 1С), которые самостоятельно разобрались в формате байт-кода, вообще единицы. Некому об этом говорить!

Многие не знают, как снять пользовательский пароль для входа в 1С. И что теперь? 20% 1С-ников это, на самом деле, очень много. На специализированных форумах по 1С тусуются тысячи людей, сотни из которых – высококлассные специалисты. Некоторые из них даже относят себя к касте, которые знают, как дешифровать необфусцированный байт-код. Таких порядка десяти человек. Вполне достаточно для общения. Хотя, естественно, подробно никто ничего говорить не хочет, хотя раньше на эту тему общались более свободно. Понятно, ибо зачем себе создавать лишние проблемы :).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *