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

Discussion in 'WASM.RESEARCH' started by volodya, Feb 1, 2005.

  1. captain cobalt

    captain cobalt New Member

    Blog Posts:
    0
    Joined:
    Dec 21, 2003
    Messages:
    222
    Location:
    /ru/perm
    А "Объектно-Ориентированное Программирование" не поможет? ;)
     
  2. Tupo

    Tupo New Member

    Blog Posts:
    0
    Joined:
    Jan 21, 2005
    Messages:
    69
    Location:
    Moscow
    sen



    Ничего в том страшного нету!



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



    Вот она-то и будет "забирать" у функций hiew результат из работы.

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







    Ты меня с кем-то путаешь ;)



    Вот как раз этого я не хочу!

    Я даже ни разу не упомянул это слово-то.







    Это вопрос терминологии.



    Любая программа работает только с данными ;)



    Она выдает выходные данные, сгенерировав их на основе входных данных, то есть обработав входные данные.







    Согласен!

    Я-то предложил не "толстый", а универсальный диалог.



    Он может использоваться как для ввода 1 значения так и нескольких.





    В с этого и надо было начинать :)



    Я письмецо тебе пошлю - пообщаемся конкретно :)
     
  3. _BC_

    _BC_ БЦ

    Blog Posts:
    0
    Joined:
    Jan 20, 2005
    Messages:
    759
    Конкретика...

    Плугины & hiew:

    1) Вызов плугина.

    Тут думать нечего ;) "Дело нехитрое". Неплохо б было назначать hotkeys плугинам, и предусмотреть какую-нибудь реентрантность (чтоб плугины аля FindFirst/FindNext не были совсем независимыми друг от друга).

    2) Передача данных от hiew'a к плугину.

    Я думаю, всё что плугину надо от hiew'a -- ПУТЬ\ИМЯ_ФАЙЛА ;)

    Данные от дизасма -- беру свои слова назад. Пускай плугин сам дизассемблирует и анализирует файл сколько влезет. Я вспомнил как я испытывал свой дизассемблер -- я писал команды с кучей префиксов, с опкодами типа 8F /не_ноль, C6-C7 /не_ноль, mov drX, XXX( mod != 11), и тд и тп -- и подсовывал всё это поочередно hiew'у, wdasm'у, IDA, ...etc..., своему дизасму (злорадно улыбаясь ;) Так что дизасм hiew->plugin, imho, не нужен.

    Данные по структуре файла, напр. из PE-header'a, import/export etc.

    Хм... Представляю сейчас какой-нить крутой редактор PE (допустим PE Tools) c менюшкой 'Plugins' в которой есть строка типа 'HexEditor' :) Выглядит реальнее чем, скажем, hiew->plugins->PE_Tools ;)

    3) Передача данных от пользователя к плугину.

    Скорее всего, хватит простенького ввода строки (как на F7).

    4) Получение результата деятельности plugin'a. Визуализация.

    Вот тут-то и можно развернутся с API ... (хотя на ум приходит только изменение цветов байтов в окне hiew'a или весь вывод полностью отдать plugin'у)

    5) "Plugin Support"

    Здесь особо не развернешься... Примеры... HIEW_Go(address) (или offset) - полезная будет штука. Т.е. плугин будет как бы F5 выполнять. Ну еще что-нить вроде HIEW_ReloadFile()...





    Ну и как пример плугина ...

    "Advanced Pattern Search" :)

    Юзер жмет, скажем, Ctrl+G, появляется оконце как на F7 (только caption "Input pattern"), и юзер вводит там, к примеру

    FF,1D,7?,?F,'abcd?fdf?gd', *(maxrange=12), {1010???1}, FF, FF, C?

    Плугин обрабатывает файл, находит эту экзотику и выполняет HIEW_Go(offset найденного шаблона).



    P.S. Зачем hiew plugin'ы ? :dntknw:
     
  4. s0larian

    s0larian New Member

    Blog Posts:
    0
    Joined:
    Jul 15, 2004
    Messages:
    489
    Location:
    Крыжёпполь
    Енто, похоже что всё упёрлось в два мнения:



    1) Plugin-ы получают от hiew только read_bytes(), write_bytes() вкупе с текущим offset, блоками и inpurt/output message boxes (это не сильно лучше чем самому написать С програмку с fopen(), fread()....)



    2) hiew отдаёт API ко всему включая высоко-уровневые операции с PE файлами, asm, disasm, etc (это упирается в реализацию пирамиды plugin-ов и менаджера для управления их зависимостями, imports/exports, versions etc)



    Вариант 1) прост в реализации на основе текущего hiew, но IMHO никому не нужен. Вариант 2), то есть plugin manager не имеет ничего общего с теперешней функциональностью hiew.



    Поэтому, если Евганию интересен второй вариант, он может начать его реализацию, и попутно превратить hiew в первый пяток non-free plug-ins, на основе которых, community напишет пирамиду.



    Я бы этим занялся.
     
  5. sen

    sen New Member

    Blog Posts:
    0
    Joined:
    Jan 29, 2005
    Messages:
    47






    весьма похоже что так оно и есть...



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







    hiew вряд ли, если только писать отдельный проект который не умея ничего сам умеет только рулить плагинами, но это совсем отдельная песня....
     
  6. Tim Sobolev

    Tim Sobolev New Member

    Blog Posts:
    0
    Joined:
    Mar 23, 2005
    Messages:
    53
    А что насчет возможности открытия файла с коммандной строки с переключением в нужный режим и переходом на нужный адрес? SAV файлы не подходят, так как это нужно, например, если необходимо перейти к некоторой структуре данных, адрес которой вычислила другая утилита... А генерировать файл макросов и вызывать его при загрузке немного не красивое решение...
     
  7. l0kki

    l0kki New Member

    Blog Posts:
    0
    Joined:
    May 7, 2004
    Messages:
    22
    Location:
    Russia
    а в чем смысл? зачем прилагать столько усилий для cоздания плагинов к коммерческому продукту когда рядом есть freeware и даже open sourse? (я не к тому что мне денег на hiew жалко-просто интересно)



    я не считаю себя супер-программистом :) но согласитесь что к примеру вот эти изменения не представляют из себя что либо значительного - большинство пользователей это и не заметит.



    - поддержка clipboard (Shift-Insert) - видимо исправление cтарой ошибки

    -sav-file теперь пакуется - и что в этом революционного?



    потом навигация по файлу конечно хм... даже интерфейс древнего windasm32 дает больше удобства. Зачем такое дикое количество горячих клавиш F1-F12? Почему нельзя сделать к примеру меню как в том же NortonCommander? Почему нет поддержки многоязычного интерфейса? того же русского нет-хотя мне он и не особо нужен. Но все же я не улавливаю смысла - русскоязычный человек пишет англоязычную программу для того же русскоязычного человека.(насколько я знаю в основном hiew популярен у нас, у них там всякие winhex и иже с ними популярней )



    2Tim Sobolev к примеру:

    hiew.ini --> StartMode = Code

    насчет открытия файла с коммандной строки-я использую hiew

    как плагин к TotalCommander -в принципе там можно создать меню вызывающее файл под курсором с разными ключами командной строки -но я как то никогда этим не пользовался.
     
  8. The Svin

    The Svin New Member

    Blog Posts:
    0
    Joined:
    Jul 6, 2003
    Messages:
    665
    Location:
    Russia
    l0kki

    Это пост о чём вообще?

    Типа: "Не пойму чего всё ещё есть люди которые тащатся от Hiew?", причём вопрос отдаёт риторическим ароматом

    Типа: "Это вообще не вопрос, я то знаю что тащится не с чего"

    Так что ли? Цель то какая? Внимание к себе привлечь что-ли? Чтоб вместо темы топика (интерфейс плагинов) все начали обсуждать твоё мнение о Hiew? Ну так не интересно это - субъективное мнение человека которому Hiew не интересен. Ну скажу я в том же духе - мне ничего что ты написал не нужно, мне все фичи которые ты предлогаешь в hiew - неинтересны, они для меня сделают hiew хуже а не лучше, не один из приведённых тобой альтернативных продуктов для меня не сравнится по скорости, качеству и удобству с Hiew. Видишь у меня даже "по твоему" и не получилось - всё одно рука дрожит и сама собой вставляет "мне", "для меня" и т.п. А вот у тебя не дрожит - взял так и все собственные пристрастия и тараканов объявил "общепризнанными". По кому это ты определил что Hiew "там" не используют и чего то там ему предпочитают? По трём монголам из круга своего общения?, - у меня другое впечатление и у woodman_а и на Win32asmcommunity все приличные кодеры, ревёрсеры и знают и используют Hiew.



    Но главное - тема этого топика никакого отношения к сравнению hiew с чем то ещё не имеет. Она про плагины.

    И подобные посты служат тролями, сбивая с темы.
     
  9. sen

    sen New Member

    Blog Posts:
    0
    Joined:
    Jan 29, 2005
    Messages:
    47






    можно и такую возможность сделать.

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



    Еще ты в комментариях спрашивал не реклама ли обещание работы с дисками - не-е, не реклама. Работает.
     
  10. sen

    sen New Member

    Blog Posts:
    0
    Joined:
    Jan 29, 2005
    Messages:
    47






    ну так возьми то что лежит рядом и пользуйся в свое удовольствие. Зачем здесь столько вопросов спрашивать и флейм начинать? Как и Svin я этого не понял...







    и покажи большинство которое не заметило этого изменения.
     
  11. EvilsInterrupt

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

    Blog Posts:
    0
    Joined:
    Oct 28, 2003
    Messages:
    2,428
    Location:
    Russia
    sen

    Очень хороший продукт твоего труда.



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

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



    Заранее извиняюсь, если вам показалось, это не интересным.
     
  12. l0kki

    l0kki New Member

    Blog Posts:
    0
    Joined:
    May 7, 2004
    Messages:
    22
    Location:
    Russia
    извините что вмешался...чем больше я общаюсь с программистами тем больше убеждаюсь что они народ упрямый, и намного проще разобраться самому чем обьяснить что и как.



    >Не пойму чего всё ещё есть люди которые тащатся от Hiew?

    действительно не пойму. Насколько я знаю подавляющее большинство используют его возможности максимум на 1%. Уж извините ни одного приличного текста показывающего насколько hiew удобен в использовании и незаменим я не видел-все втихую... так?. В основном многое быстрее сделать в альтернативных прогах. Ограничение 8 закладок-к чему это? Количество горячих клавиш огромно- зачем нужно обязательно запоминать их все непонятно-это неудобно imho.В жизни и так слишком много информации которую нужно запоминать.



    > фичи которые ты предлогаешь в hiew - неинтересны, они

    > для меня сделают hiew хуже а не лучше

    галочки в настройках интерфейса никто еще не отменял. Или в настройках ini прописать- не нравится-убирай. Так делают все.



    >знают и используют Hiew

    знают да. а вот по части используют я бы не стал бы столь категорично заявлять. кое кто к примеру рекомендует rta да мало ли вобще альтернатив.



    >Цель то какая?

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



    >: поддержка clipboard (Shift-Insert)“

    > и покажи большинство которое не заметило этого

    > изменения.



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



    Скажем поддержка поиска не только ASCII строк а скажем еще и UNICODE (который тоже довольно часто встречается) была бы значительно заметней на мой взгляд. Пока приходится это делать довольно извращеными дедовскими способами (с) 97-96 год :) Или взять к примеру добавление комментариев.



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



    >ну так возьми то что лежит рядом и пользуйся в свое >довольствие.

    так собственно и делаю :)
     
  13. sen

    sen New Member

    Blog Posts:
    0
    Joined:
    Jan 29, 2005
    Messages:
    47






    один ctrl ты называешь "гораздо больше" ?-)))

    Ctrl-PgUp переходит на уровень вверх. Это раз.

    Два - я не смогу сделать backspace - он мне нужен для fastkey. (для тех кто не знает - в файл-листе набираете 'f''i''l' и курсор находит имена начинающиеся на 'fil...')







    как будет сделан консольный интерфейс так и появится возможность внешних модулей.
     
  14. sen

    sen New Member

    Blog Posts:
    0
    Joined:
    Jan 29, 2005
    Messages:
    47




    понимаешь ли... любой вопрос/утверждение "X лучше/хуже Y" во все времена вызывал только море флейма и больше ничего. Поэтому если тебе не понятно зачем hiew, просто пользуй то что нравится и не забивай голову ерундой.
     
  15. Tim Sobolev

    Tim Sobolev New Member

    Blog Posts:
    0
    Joined:
    Mar 23, 2005
    Messages:
    53
    2sen

    Если все так и работает под 2k -- постараюсь в скором времени стать зарегистрированным пользователем, главное чтобы автор не прекратил их поддержку...

    2l0kki

    Подразумевалось открытие файла с переходом на нужное смещение, а не только переключение режима...
     
  16. captain cobalt

    captain cobalt New Member

    Blog Posts:
    0
    Joined:
    Dec 21, 2003
    Messages:
    222
    Location:
    /ru/perm
    А "Объектно-Ориентированное Программирование" не поможет? ;)
     
  17. EvilsInterrupt

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

    Blog Posts:
    0
    Joined:
    Oct 28, 2003
    Messages:
    2,428
    Location:
    Russia
    /offtop

    sen



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



    что ты скажешь?
     
  18. sen

    sen New Member

    Blog Posts:
    0
    Joined:
    Jan 29, 2005
    Messages:
    47




    экий вы недоверчивый :)))

    действительно первый.
     
  19. EvilsInterrupt

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

    Blog Posts:
    0
    Joined:
    Oct 28, 2003
    Messages:
    2,428
    Location:
    Russia
    /offtop

    sen

    А если я у вас продукт куплю,грамоту получу? :)))

    Уж больно хорош продукт! Уж очень хочется автограф. ;)



    Кстати ваш первый покупатель не Нижнекамец, а переехал в Кам.Поляны и следовательно КамПолянец.
     
  20. MrHammer

    MrHammer New Member

    Blog Posts:
    0
    Joined:
    Jul 9, 2003
    Messages:
    197
    /* конкретно не в тему*/

    sen

    Интересно узнать, расшифровал кто-нить аспаченный файл хью

    и восстановил недостающие байтики, э? :derisive:)) Скока же все-таки настоящих хакеров, хех :derisive: