Поддерживаемые компиляторы и версии

Нативный анализ VCL-приложений, написанных на Delphi 3–13 или созданных в C++Builder, для Win32 и Win64.

Покрытие компиляторов

DE Decompiler поддерживает программы, написанные на Delphi 3–13, и VCL-приложения, созданные в C++Builder, для Win32 и Win64. Для обеих архитектур доступны нативный анализ, работа с формами VCL и обфускация.

Что означает совместимость

Разные поколения компиляторов и типы RTTI требуют различных знаний для распознавания. Декомпилятор восстанавливает код, похожий на Delphi, из нативных инструкций и доступных метаданных. Знания, специфичные для компилятора, помогают идентифицировать типы и методы VCL; недоступные имена, предполагаемая структура данных и нераспознанные вызовы остаются зависимыми от информации, сохраненной в файле.

Текущий визуальный рабочий процесс поддерживает VCL.

Метки компилятора и выбор базы данных

Обнаруженная версия компилятора не зависит от используемой базы данных сигнатур для анализа. Звездочкой отмечается замененное или недоказанное совпадение с базой данных; наведите курсор на метку компилятора, чтобы увидеть выбранный BIN-файл. См. выбор базы данных и идентификация компилятора.

Проверка приложения

Изучите известный модуль, класс и форму VCL. Отследите обработчик события, сравните его восстановленные операторы с дизассемблированием и просмотрите объявления и экспортируемые файлы, относящиеся к вашей задаче.

Совместимость компиляторов и RTTI · Интерпретация восстановленного кода · Примеры реального вывода

Приложения, созданные в C++Builder

DE Decompiler поддерживает VCL-приложения, созданные в C++Builder, для Win32 и Win64. Доступны восстановление и визуализация форм, разбор модулей, классов и функций, переходы к обработчикам событий, а также остальные инструменты анализа и экспорта.

Баз знаний RTTI для библиотек, специфичных для C++Builder, пока нет. Функции вне общей базы VCL, а также нераспознанные свойства и методы объектов могут отображаться без библиотечных имён. Поэтому качество декомпиляции кода C++Builder заметно ниже, чем для программ, написанных на Delphi. Это ограничение касается качества восстановления кода и распознавания библиотечных имён. Остальные возможности доступны для C++Builder по тем же правилам редакций, что и для программ, написанных на Delphi.

Код C++Builder восстанавливается в виде Delphi-подобного Pascal с экспортом в PAS/DFM. Исходный текст на C++ не восстанавливается. Как и при другом восстановлении нативного кода, перед использованием результата в IDE вручную проверьте и исправьте предполагаемые типы, сгенерированные имена и погрешности декомпиляции.

C++Builder и Free Pascal определяются отдельно от Delphi. Сведения о компиляторе остаются корректными при использовании совместимой базы сигнатур и после загрузки сохранённого проекта. Длинные названия и диапазоны версий помещаются в поле главного окна; полные сведения доступны в подсказке.