HIEW - интерфейс плагинов

Тема в разделе "WASM.RESEARCH", создана пользователем volodya, 1 фев 2005.

  1. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    >Пришлось даже хелп написать



    А его нельзя ли получить? иль тоже куда деньги посылать?
     
  2. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    А что касается плагинов, вообще неплохо было бы иметь возможность использовать движок дизассемблера из HiEW, например хотелось бы плагин - отладчик(эмулирующий отладчик) или просмотрщик памяти с возможностью дизассемблировать нужный кусок на лету.
     
  3. CyberManiac

    CyberManiac New Member

    Публикаций:
    0
    Регистрация:
    2 сен 2003
    Сообщения:
    2.473
    Адрес:
    Russia
    Asterix

    А что касается плагинов, вообще неплохо было бы иметь возможность использовать движок дизассемблера из HiEW, например хотелось бы плагин - отладчик(эмулирующий отладчик) или просмотрщик памяти с возможностью дизассемблировать нужный кусок на лету.



    Мне отчего-то кажется, что на самом деле тебе нужны следующие функции:

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

    2. Получить полную информацию по одной команде (длина, мнемоника и т.п.)



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

    jekyll New Member

    Публикаций:
    0
    Регистрация:
    20 мар 2003
    Сообщения:
    92
    Адрес:
    Russia
    sen

    GUI нафиг не нужен. Но, блин, когда же появиться поддержка буфера обмена????
     
  5. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia
    А (IMHO) её непонятно как реализовывать компактно (мне по крайней мере). В Hiew есть блоковые операции - своего рода буфер обмена бинарных данных. А как со стандартными типами буфера? Что ты хочешь - преобразовать текстовые строки из блокнота и вставить как бинарные? А какой протокол согласования делать? Форматов то туча, все перебирать?

    Всё проверять на валидность? В Hiew может быть текущими и текст и мнемоники и коды в хексе и бинарные - как разбираться к чему приводить и что хотели из буфера вставить?

    Ты представь сам как бы ты делал?

    Можно реализовать лишь отчасти. Ну допустим скопировать как текст hex. Но в Hiew уже есть Alt-P. Дальше возникают вопросы а как в версиях для DOS и OS/2 быть, вобщем тут дело не в кодировании в том что задача расплывчата - поддержка буфера. Правда я за SENа говорю, может у него другие мысли на этот счёт. Но мне было бы непонятно что и как можно и нужно копировать, и реализовать такое я смог бы лишь отчасти. Мы слишком привыкли что буфер обмена всё понимает, на самом деле за каждым форматом протоколы согласования и не всё до сих пор нормально работает даже с теми данными (форматами) которые чуть ли не десятилетия существуют.
     
  6. sen

    sen New Member

    Публикаций:
    0
    Регистрация:
    29 янв 2005
    Сообщения:
    47
    EvilsInterrupt





    хелп получается нажиманием кнопки Ф1 в хиеве
     
  7. sen

    sen New Member

    Публикаций:
    0
    Регистрация:
    29 янв 2005
    Сообщения:
    47
    Asterix







    какой отладчик (просмотрщик памяти) в файловой смотрелке ??? зачем там это все надо ???



    юзайте нормальный отладчик который предназначен для этих целей. Не надо в валенках переходить реку вброд и говорить что промокают. И не надо изобретать непромокаемый состав для валенок. Непромокаемые валенки - это круто, но вот только зачем ? Холод от этого лучше они держать не будут.
     
  8. sen

    sen New Member

    Публикаций:
    0
    Регистрация:
    29 янв 2005
    Сообщения:
    47
    jekyll







    блин, т.е. возможность вставить текст из буфера обмена и положить например дамп экрана в буфер обмена появится в 7.10
     
  9. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    sen

    > какой отладчик (просмотрщик памяти) в файловой смотрелке ??? зачем там это все надо ???



    Почему нет? Например у WinHEX'а есть режим просмотра памяти, но не хватает возможности представить эту память в дизассемблированном виде, HiEW мог бы обеспечить такую функциональность.



    The Svin

    > возникают вопросы а как в версиях для DOS и OS/2 быть



    А никак, нет таких в текущей версии HiEW :)
     
  10. Tupo

    Tupo New Member

    Публикаций:
    0
    Регистрация:
    21 янв 2005
    Сообщения:
    69
    Адрес:
    Moscow




    Первоочередное: это экспорт команды по указанному смещению/адресу в виде структуры! Поля: имя команды, количество аргументов, способ адресации для каждого аргумента и значения самих аргументов(если аргумент - регистр, то имя регистра)



    Проги аналогичные HIEW доступ плагинам к встроенному дизъассемблеру почему-то не предоставляют - мне ни одной неизвестно. Как результат - приходится реализовывать усеченный анализатор команд в самом плагине, что очччень неудобно :\



    И, конечно же, требуется функция патча - по указанному адресу смещению заменить данные на данные от плагина.
     
  11. Worm32

    Worm32 New Member

    Публикаций:
    0
    Регистрация:
    18 янв 2005
    Сообщения:
    33
    Адрес:
    Azerbaijan
    Обращаюсь к Автору HIEWA

    Почитал я форум, вроде никто об этом небольшом баге не писал.

    HIEW В HEX режиме совсем не отоброжает русские буквы.

    Тода как WinHEX нормально отображает, и позволяет редактировать.

    Ответил немного не по теме, но всеже.
     
  12. sen

    sen New Member

    Публикаций:
    0
    Регистрация:
    29 янв 2005
    Сообщения:
    47






    просмотр памяти у winhex - это инициатива winhex, захотелось ему отобрать немного крошек хлеба у отладчика - ну пусть будет. в hiew - это излишества и не его задача.
     
  13. sen

    sen New Member

    Публикаций:
    0
    Регистрация:
    29 янв 2005
    Сообщения:
    47






    hiew такой информации плагину не отдаст по той простой причине что команда сразу переводится в дизассемблерный текст без всяких промежуточных форм.







    а это плагин и сам сделает через функции read/write( qword offset, byte *buffer, int count )

    можно назвать это функцией патча, а можно просто доступом к текщему файлу
     
  14. sen

    sen New Member

    Публикаций:
    0
    Регистрация:
    29 янв 2005
    Сообщения:
    47






    никто и не писал, потому что баги нет.

    1. у тебя либо консольный фонт стоит не cyrillic

    2. либо ты смотришь текст не в той кодировке
     
  15. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine


    WinHex — это HEX-редактор, значит, должен предоставлять возможность редактировать любые данные внезависимости от их источника (диски, файлы, память), что он и делает. А вот восстановление файлов — это уже не прерогатива редактора.
     
  16. Tupo

    Tupo New Member

    Публикаций:
    0
    Регистрация:
    21 янв 2005
    Сообщения:
    69
    Адрес:
    Moscow




    Плохо. Но ведь можно модифицировать дизъассемблер для этих целей? ;)



    Причина очевидна: зачем дублировать функции в программе и плагине? Если хиев дизъассемблирует, то должен поделится этой возможностью и с плагином ;)







    А зачем плагину такой примитив?

    Была бы интереснее функция патча со сдвигом/раздвигом(вставка\удаление) ;)

    То есть если размер патчимой области не совпадает с размером передаваемых данных от плагина, то программа раздвигается/сдвигается в памяти.



    Я же мыслю как пользователь хиев ;)

    А в нем реализован принцип БЛОЧНОСТИ.



    Думаю, нельзя давать плагину возможность патчить напрямую!



    Надо сделать функцию запроса блока памяти(аналог - выделение блока юзером), тогда и hiew будет знать что делает плагин и плагин будет работать не с абсолютными адресами, а относительными(то есть с буфером).
     
  17. Worm32

    Worm32 New Member

    Публикаций:
    0
    Регистрация:
    18 янв 2005
    Сообщения:
    33
    Адрес:
    Azerbaijan


    Cпасибо за разъяснение)))

    Посмотрю что можно сделать.



    А вот насчет редактированиe текста (как в WinHex) хотелось бы видеть.
     
  18. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia




    А в Hiew решает автор, что должен а что не должен делать hex редактор. И это правильно.
     
  19. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    А в Hiew решает автор, что должен а что не должен делать hex редактор. И это правильно.



    Пардон, хрен там. Решают пользователи, к мнению которых надо прислушиваться. Поскольку HIEW - шаряваря, значит и надо слушать пользователей. Был бы фриваря с открытым кодом - пиши себе автор, что хочешь. Никто бы и квакнуть не посмел бы. А тут - надо слушать. И начать надо с моего интервью с sen'ом, где осветить пару вещей, а потом с нормального турториала. Сколько же можно уже? Достало ведь! Мне эти хелпы все глубоко до задницы. SEN, осознайте, наконец, что пользователи не читают хелпов! Вообще!



    http://russian.joelonsoftware.com



    почитайте там книжку

    "Руководство по UI дизайну для программистов"



    так вот, SEN, нужно:

    1. интервью (я накатаю список вопросов, если не помру)

    2. турториал

    и только потом, когда все хотя бы вкурят, чего хьюв может, а чего не может - вот тогда и будут плагины обсуждать. это же банальная маркетинговая политика!
     
  20. The Svin

    The Svin New Member

    Публикаций:
    0
    Регистрация:
    6 июл 2003
    Сообщения:
    665
    Адрес:
    Russia




    Прислушиваться бы рад прислуживаться тошно :)

    Прислушаться одно, решать - другое.

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

    Да шаровара, тот у кого мнение о hex редакторе с автором совпадает - тот и купит. По тому насколько во всём мире используют Hiew, видно что совпадает у многих.



    Я сам просил у Евгения несколько фич, но имея ввиду если желания мои не противоречат каким-то его принципам (может в результате если противоречат, он сделал бы для меня нужную фичу, а в другом - чем Hiew мне тоже нравится - был бы нанесён урон.)



    Я чего завёлся то - одно дело когда люди говорят хочу то, хочу другое. Другое дело когда - это нех редактор а значит он Должен делать то-то.

    Факт такой - хочешь хорошую программу - делай как для себя, и с hiew это оправдалось, там автору захотелось для себя чего-то что у других небыло - и что получилось? - другие стали слизывать фичи с Hiew. Факт.



    SEN оставайся пожалуйста на своей позиции, прислушиваться прислушивайся, но решай что делать сам, когда точно уверен что Hiew это не повредит.

    Интерфейс у Hiew - для меня лучший (не идеальный - но лучший из имеющихся). Пожалуйста, не порть свои собственные идеи, только потому, что 99% пользуются мышкой с колёсиком и мелким но жутко неэргономичным интерфейсом.

    :)