Не ругайте пианиста - он играет, как умеет... (тестирование IDD)

Тема в разделе "WASM.RESEARCH", создана пользователем crypto, 27 ноя 2006.

Статус темы:
Закрыта.
  1. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.348
    Jupiter
    это просто последний билд, даже не демка. Много чего не работает или работает неправильно.
     
  2. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    532
    Адрес:
    Russia
    rmn
    как декомпилятор Delphi прога имеет неплохие перспективы, учитывая, что многое уже реализовано
    контрол дизасма тоже порадовал )
     
  3. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    rmn
    А скажите, этот метр можно не на рапидшару закинуть. Не могу с нее закачать и котики уже достали. Почему-бы вам не выложить прогу на народе?
     
  4. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.348
  5. GPcH

    GPcH Member

    Публикаций:
    0
    Регистрация:
    2 авг 2004
    Сообщения:
    136
    rmn

    На мой вопрос как я понимаю ответа не последует? :)
     
  6. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.348
    GPcH
    Там показываются все функции, принадлежащие конкретному юниту. Определяется принадлежность элементарно по адресу.
    Ну и группировка функций, которые берутся из rtti по группам (VTable, public, private, protected...)
     
  7. Mav

    Mav New Member

    Публикаций:
    0
    Регистрация:
    30 май 2008
    Сообщения:
    4
    rmn
    А у меня прога не запускается. требует uxtheme.dll.
    Система Windows 2000. А если этот файл положить в папку, то не найдены точки входа
    (в GdiDrawStream).
    Возможно, нужен верныц файл. Или может быть реально перекомпилировать под 2000 винду?
     
  8. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.348
    позже скину версию без uxtheme.
     
  9. Mav

    Mav New Member

    Публикаций:
    0
    Регистрация:
    30 май 2008
    Сообщения:
    4
    rmn
    буду ждать. Хотя у меня ошибка другая.
    Точка входа в процедуру GdiDrawStream не найдена в библиотеке DLL GDI32.dll
     
  10. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.348
    я не использую эту функцию, так что, скорее всего, ее использует uxtheme.dll

    p.s. почему всем так интересно тестить сырой проект, в котором половина функционала отсутствует?.. :)
     
  11. Mav

    Mav New Member

    Публикаций:
    0
    Регистрация:
    30 май 2008
    Сообщения:
    4
    rmn
    Как почему?
    Есь проги DCU32INT, DeDe, DCUcu (у меня не заработал) и еще какой-то Delphi DCU Decompiler v1.00 (который я так и не нашел),

    интересно твою совтину протестить.

    Нет. не uxtheme.dll. В ошибке же ясно написано, что попытка вызова происходит из либы GDI32.dll
    (а они, увы, в винже 2000 и ХП разные)
     
  12. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.348
    Mav
    В этой, фактически, реализован только дизассемблер.

    до того, как я заставил винду рисовать диалоги с табами в стиле хр (с помощью uxtheme.dll), проблемы с работой в вин2к не было.
     
  13. Relic

    Relic Member

    Публикаций:
    0
    Регистрация:
    10 сен 2003
    Сообщения:
    79
    rmn
    Что-то не могу воспроизвести ошибку ;( Так что call stack не будет......
     
  14. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.348
    Mav
    версия без uxtheme:
    http://depositfiles.com/files/5739372

    Relic
    попробуй удалить файл настроек (idd.cfg), а потом запустить и закрыть idd.
     
  15. Relic

    Relic Member

    Публикаций:
    0
    Регистрация:
    10 сен 2003
    Сообщения:
    79
    rmn
    Пробовал, удалял - нет ошибки больше!
     
  16. Mav

    Mav New Member

    Публикаций:
    0
    Регистрация:
    30 май 2008
    Сообщения:
    4
    rmn
    Оу. А я вчера как раз придумал как запустить. Удалил из импорта uxtheme.dll. Работает
     
  17. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Желающим могу выложить оптимизированную по скорости версию с новой базой знаний. Пишите в личку.
     
  18. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Выложена исправленная версия программы, учтены некоторые пожелания и замечания, исправлены баги, изменен интерфейс (надеюсь, в лучшую сторону). За ссылкой обращайтесь в ПМ.
     
  19. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    Вот ссылки на свежий билд (hamstershare.com - зеркало).
    kbXXX.rar - базы знаний под соответствующие версии Дельфи, idr.rar - собственно программа и системные файлы для нее.

    http://rapidshare.com/files/277625537/kb2006.rar
    http://hamstershare.com/dload/dff22f30bb58fa6e246c49ed52a3f512

    http://rapidshare.com/files/277625387/kb7.rar
    http://hamstershare.com/dload/d7b18834addf071dc69369d28b98239c

    http://rapidshare.com/files/277625246/kb6.rar
    http://hamstershare.com/dload/9337dbd34628a68bb9d75d377ab46607

    http://rapidshare.com/files/277625108/kb5.rar
    http://hamstershare.com/dload/70388f1dc5089a3ecbba7c5ad5c73440

    http://rapidshare.com/files/277622585/kb4.rar
    http://hamstershare.com/dload/b36a60bc0cbacba4ace7459bc505680c

    http://rapidshare.com/files/277622318/kb3.rar
    http://hamstershare.com/dload/e9f963ee0058b15309d4579817fefe9e

    http://rapidshare.com/files/277622146/kb2.rar
    http://hamstershare.com/dload/c9862e873eb372ea05179ccb17073c40

    http://hamstershare.com/dload/aa7772db90f638fbf0ec5f4625445303
    http://rapidshare.com/files/277795699/Idr.rar

    Интерфейс изменился: закладка с VMT ушла, добавилась закладка ClassViewer, работающая в двух режимах - полное дерево и ветка. Полное дерево строится довольно медленно, поэтому на этапе анализа от ее построения можно отказаться, а построить дерево потом из меню.
    Закладка Units: синим цветом отображаются стандартные юниты из базы знаний, зеленым - юзеровские, красным - тривиальные (состоящие только из двух стандартных процедур инициализации и финализации). Юниты можно сортировать тремя различными способами (popup menu), возможен поиск юнита по имени. Клавиша F3 используется для продолжения поиска.
    Закладка UnitItems: синим цветом выделены элементы (процедуры и функции), вызываемые из других мест программы. В скобочках <>: C - constructor, D - destructor, P - procedure, F - function, RS - resource string, V - VMT и так далее. За прототипом следуют входные аргументы - регистры (например, iADC означает, что в качестве входных агрументов используются регистры eax, edx, ecx (или их составляющие), и выходные аргументы - регистры (например oA означает, что регистр eax является выходным). RET N - это понятно.
    Закладка Code: адреса выделены серым (на которые нет ссылоки) и черным (на которые есть ссылка), значок > после инструкции условного перехода означает, что ссылка вперед, значок < - что ссылка назад. Розовым цветом выделены некоторые конструкции, которые "несущественны" для декомпиляции (на самом деле они конечно несут информацию, но косвенную).
    Справа от закладки Code список xref для текущей процедуры, синим цветом выделены ссылки в юниты базы знаний, зеленым - в юниты пользователя. Адреса расположены на чередующихся полосках голубого и белого цвета, в пределах которых они принадлежат одной и той же процедуре.
    Закладка ClassViewer - тут как бы все должно быть понятно.
    Загрузить файл можно из командной строки, киданием иконки файла на иконку IDR (при этом версия определяется автоматически). Можно насильно загрузить другую версию, но при этом может получится неполный или некорректный анализ.
    Закладка Problems. Это список адресов, непонятных для IDR (код или данные). "Неразрешенные" адреса красные, "разрешенные" зеленые. Разрешить можно с помощью popup-menu, появляется окошко эксплорера, в котором можно попробовать разные варианты, как это выглядит. "Разрешенные" адреса в случае ошибки можно сделать опять "неразрешенными".
    Popup-menu работает практически на всех закладках.
     
  20. Microedition

    Microedition Active Member

    Публикаций:
    0
    Регистрация:
    5 июн 2008
    Сообщения:
    814
    мог бы файлы на нормальный сервер выложить.
     
Статус темы:
Закрыта.