Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

PE Viewer 3.0
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
burav



Joined: 07 Oct 2011
Posts: 22

Post (Separately) Posted: Fri Aug 18, 2023 16:00    Post subject: Reply with quote

yozhik wrote:
«Delay directory input is corrupted»

такой надписи у меня нет, TC11x64, Win11
похоже, проблема именно в этом, подождём комментария автора плагина

мой уровень английского даже не позволяет мне понять, что это вообще значит))
Back to top
View user's profile Send private message
yozhik



Joined: 04 May 2014
Posts: 181

Post (Separately) Posted: Fri Aug 18, 2023 16:10    Post subject: Reply with quote

burav wrote:
Win11

Ох, уж эти Виндузы )) Ну, 10-ка пока в фаворе, поэтому стоит учитывать её поведение.

iteg,
Ещё пара моментов. Когда у DLL много ф-ций и зависимостей, то во время его долгого считывания FileInfo отображает маленькую всплывашку Analysing modules... Может стоит и PEViewer так научить? Вроде подружелюбней, чем молчаливое замирание без опознавательных знаков.

Ещё, когда при активной панели Быстрого просмотра перемещаешься клавишами стрелками по файлам, то FileInfo на каждом новом файле вначале на долю секунды активирует вкладку Info, а потом уже переключается на последнюю активную. Чуть мелькает — это есть, да, «не айс». Но с другой стороны это даёт и положительный эффект: когда считывание файла требует времени, я успеваю изучить св-ва файла, а не просто созерцаю задержку. Не знаю, может в FileInfo это вовсе и не фича, а баг Smile , но мне это показалось интересным.

И ещё подопытный:
https://0x0.st/HLLV.zip
в этом комплекте при обращении к файлу EXE PEViewer не определяет присутствие FineObj.dll, хотя по факту она есть (и FileInfo её определяет). PEViewer же маркирует её красным как отсутствующую.
Back to top
View user's profile Send private message
burav



Joined: 07 Oct 2011
Posts: 22

Post (Separately) Posted: Fri Aug 18, 2023 17:06    Post subject: Reply with quote

yozhik wrote:
в этом комплекте при обращении к файлу EXE PEViewer не определяет присутствие FineObj.dll, хотя по факту она есть (и FileInfo её определяет). PEViewer же маркирует её красным как отсутствующую.

похоже на баг. я проверил у себя, отображение всех dll было корректным, отсутствующих не было. я это дело заскриншотил, потом вернулся в окно TC, и снова, контрольно, нажал Ctrl-Q. на этот раз результат был другим)

какой-то рандомный глюк
Back to top
View user's profile Send private message
iteg



Joined: 01 Dec 2011
Posts: 68

Post (Separately) Posted: Sat Aug 19, 2023 19:21    Post subject: Reply with quote

burav и yozhik, спасибо, что участвуете в тестировании!

Собралось несколько проблем:
1) Для https://0x0.st/HL_2.zip сделал оптимизацию получения данных. Стало быстрей. Проверьте у себя.
2) Для FOBJ600.DLL возникала ошибка чтения библиотек отложенного импорта. Ее устранил. Теперь количество модулей такое же как и в FileInfo.
3) По поводу уменьшения размера колонки. Про это знаю. Пока не было времени заняться.
4) Для https://0x0.st/HLLV.zip неправильно определялась директория поиска относительно самого исследуемого модуля. Ошибку устранил.
5)
Quote:
Когда у DLL много ф-ций и зависимостей, то во время его долгого считывания FileInfo отображает маленькую всплывашку Analysing modules
Пока не реализовал, но вынесу в отдельный поток.
6)
Quote:
FileInfo на каждом новом файле вначале на долю секунды активирует вкладку Info, а потом уже переключается на последнюю активную
Хорошо, посмотрю, как это работает в FileInfo.

Выложил тестовый вариант - https://dropmefiles.com/ZXO9W
Достаточно заменить оригинальный файл PEViewer.wlx64 из архива. Если плагин загружен в память, то просто закройте TC и, не запуская PEViewer, замените файл.
Back to top
View user's profile Send private message
yozhik



Joined: 04 May 2014
Posts: 181

Post (Separately) Posted: Sat Aug 19, 2023 22:25    Post subject: Reply with quote

iteg, добрых вам трудов!

1)
iteg wrote:
Стало быстрей. Проверьте у себя.

Теперь вообще летает! Существенно быстрее чем в FileInfo. Спасибо!

2)
iteg wrote:
FOBJ600.DLL возникала ошибка

Теперь всё исправно. Даже (только что обратил внимание) работает корректней, чем 64-битный FileInfo (который почему-то не определил один DLL, расположенный в SysWOW64).

4)
iteg wrote:
неправильно определялась директория поиска

Теперь всё определяется. Я пробовал разные расположения, убирал/возвращал файлы — все связи отслеживаются корректно.
Back to top
View user's profile Send private message
burav



Joined: 07 Oct 2011
Posts: 22

Post (Separately) Posted: Mon Aug 21, 2023 11:37    Post subject: Reply with quote

iteg wrote:
Выложил тестовый вариант - https://dropmefiles.com/ZXO9W
Достаточно заменить оригинальный файл PEViewer.wlx64 из архива. Если плагин загружен в память, то просто закройте TC и, не запуская PEViewer, замените файл.

iteg, спасибо за работу!

Ещё удалил в Wincmd.ini _detect-строку, чтобы проверить новый функционал определения допустимого файла. Пока всё нормально, PE файлы определят с любым расширением, для неправильных PE выдаёт GUI "The image isn't PE image", но TC 11x64 ПАДАЕТ при просмотре каталогов.
https://disk.yandex.ru/d/pi12QdOP8BuHYA

Ещё, не совсем понятно, что означают иконки на вкладке Экспорт/Импорт, в столбце состояние. В FileInfo есть описание на вкладке Options, здесь, в принципе, можно догадаться, но лучше было бы добавить всплывающие подсказки.


Также, при переключении строк на вкладке Ресурсы, туда просачиваются данные откуда-то из недр плагина.
Файл+видео, поясняющее, что происходит:
https://disk.yandex.ru/d/SGTnS303LsW0Rg

Мне кажется, что расширение .SO, которое плагином считается общеизвестным и для которого он всегда рисует GUI, не совсем подходит в список общеизвестных.
SO это, как правило, *nix-библиотеки. Настоящие .SO-файлы, которые с заголовком ELF, плагин не обрабатывает, и выводит для них "The image isn't PE image"
Нашёл у себя в системе несколько .SO-файлов, которые не ELF, а вроде как PE, но это скорее исключение. И если удалить .SO из списка общеизвестных, то эти файлы плагин всё равно подхватит, найдя в них PE заголовок.
Back to top
View user's profile Send private message
iteg



Joined: 01 Dec 2011
Posts: 68

Post (Separately) Posted: Tue Aug 22, 2023 21:00    Post subject: Reply with quote

burav, спасибо за информацию:
1)
Quote:
TC 11x64 ПАДАЕТ при просмотре каталогов

В данной версии полностью переделан алгоритм поиска импортируемых модулей в каталогах. Стало быстрей. Данную ситуацию с падением не получилось проявить. Проверьте у себя.
2)
Quote:
не совсем понятно, что означают иконки на вкладке Экспорт/Импорт

Для статуса импортируемой библиотеки убрал лишний юникодный символ. Оставил только песочные часы и знак вопроса в треугольнике. Стало похоже как FileInfo.
Добавил описание в ReadMe.txt плагина.
Описание статусов импортируемых модулей:
--- 1) пустая строка, цвет черный - библиотека найдена, загружена и все функции тоже найдены.
--- 2) восклицательный знак в треугольнике, цвет красный - библиотека не найдена.
--- 3) восклицательный знак в треугольнике, цвет оливковый - библиотека найдена, загружена, но некоторые функции в ней отсутствуют.
--- 4) песочные часы, цвет отражает смысл первых трех пунктов - библиотека отложенного импорта.
Подсказки пока помечу на будущее.
3) Это ошибка тестовой версии, которую ранее выложил. В данной версии ошибки нет.
4) Расширение SO убрал из списка.
5) По поводу изображения с FileInfo. FileInfo некорректно показывает пути каталогов для импортируемых модулей, т.к. исследуемый модуль I386 и ОС x64, пути должны быть из "C:\Windows\SysWOW64\" как показано в PEViewer. И поэтому FileInfo не нашел библиотеку OLEPRO32.DLL.

Тестовая версия: https://dropmefiles.com/RdEhn

Какой функционал ещё перенять из FileInfo?
Back to top
View user's profile Send private message
burav



Joined: 07 Oct 2011
Posts: 22

Post (Separately) Posted: Tue Aug 22, 2023 21:54    Post subject: Reply with quote

iteg wrote:
Данную ситуацию с падением не получилось проявить. Проверьте у себя.

Проверил на другой машине, использовал абсолютно чистый TC11x64, падение присутствует на тестовой версии 3.0.5.6
https://disk.yandex.ru/i/wFPXj0F5aFpAHA

iteg wrote:
Это ошибка тестовой версии, которую ранее выложил. В данной версии ошибки нет.

Только что проверил на тестовой версии 3.0.5.6, ошибка с мусором в строках по прежнему присутствует

iteg wrote:
Какой функционал ещё перенять из FileInfo?

В недавней работе я использовал поле FILE CHARACTERISTICS из FileInfo


В PE Viewer где-то можно посмотреть такую информацию? нашёл)
iteg, а можно добавить строку с характеристиками в первую вкладку Инфо, или добавить такую опцию? Прям взять и продублировать из Заголовки -> IMAGE_NT_HEADERS -> IMAGE_FILE_HEADER -> Characteristics?
Иногда эта информация бывает полезной при исследовании файлов, но о ней забываешь, когда она не на виду)

А больше из FileInfo перенимать уже практически нечего, кажется) В следующей своей сборке TC буду переезжать на PE Viewer, осталось немного ещё потестировать.

Ещё в работе с файлами PE иногда смотрю цифровую подпись, но её отображение, наверное, уже выходит за рамки плагина?
Back to top
View user's profile Send private message
yozhik



Joined: 04 May 2014
Posts: 181

Post (Separately) Posted: Fri Aug 25, 2023 16:33    Post subject: Reply with quote

iteg wrote:
Какой функционал ещё перенять из FileInfo?

Я тоже тут за прошедшие дни по-всякому присматривался и к FileInfo, и к другим утилитам для PE (например, такая) — ничего нового добавить не могу. Вроде всё хорошее и полезное уже есть (с учётом мелких косметических пожеланий выше). По крайней мере сейчас пока ничего в голову не приходит.
Back to top
View user's profile Send private message
CaptainFlint



Joined: 14 Dec 2004
Posts: 6151
Location: Москва

Post (Separately) Posted: Sat Aug 26, 2023 03:58    Post subject: Reply with quote

Решил тоже опробовать плагин. Действительно, вся полезная информация, вроде бы, присутствует. Очень неплохая альтернатива получается; спасибо за труд! Но вот читабельность на вкладке Headers/Sections значительно ниже, чем у FileInfo. Табличный вид у последнего значительно повышает наглядность, так как выхватывать глазами выровненные данные проще, чем вгрызаться в сплошную мешанину текста. Вот только не знаю, можно ли как-то скрестить древесный вид в PEViewer с многоколоночными строками… Вроде бы, такие контролы существуют, но не уверен, насколько они стандартные.

И ещё пара плюшек, которые сильно повысили бы удобство:
1. Запоминать ширины столбцов в таблицах или автоподстраивать их по содержимому. У меня просмотрщик открывается на весь экран, и получается, что от имён функций/секций до остальных колонок сидит огромное пустое пространство. Можно подтащить колонки, но в следующий раз оно опять прижимает всё вправо.
2. Запоминать свёрнутое/развёрнутое состояние блоков типа IMAGE_FILE_HEADER. В FileInfo переключился на вкладку — и сразу все данные перед глазами. А тут каждый раз приходится заново разворачивать.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
burav



Joined: 07 Oct 2011
Posts: 22

Post (Separately) Posted: Fri Sep 01, 2023 16:23    Post subject: Reply with quote

А 16-битные файлы плагин не поддерживает?
https://disk.yandex.ru/d/LkNgPdzb-70sXQ
Проверил старый плагин PE Viewer 2.0, он не читает, а FileInfo справился
Back to top
View user's profile Send private message
iteg



Joined: 01 Dec 2011
Posts: 68

Post (Separately) Posted: Mon Sep 04, 2023 19:16    Post subject: Reply with quote

Не смог оперативно ответить на сообщения, поэтому разбираем накопленные проблемы:
burav
1)
Quote:
Проверил на другой машине, использовал абсолютно чистый TC11x64, падение присутствует на тестовой версии 3.0.5.6

Падение на каталогах исправлено.
2)
Quote:
Только что проверил на тестовой версии 3.0.5.6, ошибка с мусором в строках по прежнему присутствует

Проблема в том, что файл упакован UPX. Поэтому решил не выводить мусорный текст, а выводить надпись неверного формата строки.
3)
Quote:
а можно добавить строку с характеристиками в первую вкладку Инфо

Добавил "Characteristics" и "DllCharacteristics".
4)
Quote:
Ещё в работе с файлами PE иногда смотрю цифровую подпись

Давно запланировал в одну из следующий версий.
5)
Quote:
А 16-битные файлы плагин не поддерживает?

Да, не поддерживает. Не вижу рациональности в поддержке 16-битных файлов. Лучше время потрачу на расширение функционала для актуальных PE и PE+.

CaptainFlint
6)
Quote:
Но вот читабельность на вкладке Headers/Sections значительно ниже, чем у FileInfo. Табличный вид у последнего значительно повышает наглядность, так как выхватывать глазами выровненные данные проще, чем вгрызаться в сплошную мешанину текста.

Пока не решил кардинально переделывать старый интерфейс. В приоритете расширение функционала. Дерево буду переделывать, т.к. еще очень много системных структур не отображено.
7)
Quote:
Запоминать ширины столбцов в таблицах или автоподстраивать их по содержимому.

Изначально каждая колонка сохраняла свою ширину. Переделал на автоподбор ширины каждой коронки по содержимому и заголовку, но кроме первой. Поэтому первая колонка смещает все остальные вправо. Если убрать это, то все колонки будут с левой стороны. Могу собрать тестовый вариант "все колонки слева".
8 )
Quote:
Запоминать свёрнутое/развёрнутое состояние блоков типа IMAGE_FILE_HEADER.

Сделал по умолчанию раскрытыми узлы дерева "IMAGE_FILE_HEADER" и "IMAGE_OPTIONAL_HEADER".

Предрелизная версия 3.0.6 https://dropmefiles.com/AXc1d
Если есть время, то протестируйте функциональность.


Last edited by iteg on Mon Sep 11, 2023 19:25; edited 1 time in total
Back to top
View user's profile Send private message
yozhik



Joined: 04 May 2014
Posts: 181

Post (Separately) Posted: Tue Sep 05, 2023 00:09    Post subject: Reply with quote

iteg wrote:
Падение на каталогах

У меня более не воспроизводится.
iteg wrote:
первая колонка смещает все остальные вправо

А если путь к папке с файлом длинный, то влево и обрезает имена. И если при открытом Быстром просмотре перемещаешься по файлам клавишами-стрелками, то колонки «прыгают» то влево, то вправо. Не приглянулся мне этот вариант. Или делать всё влево, или возвращать запоминание ширин.

Косметика 5) и 6) из этого поста, пока, наверное, руки не дошли? Скромное напоминание Smile
Back to top
View user's profile Send private message
imig73



Joined: 18 Jun 2013
Posts: 280
Location: г. Иркутск

Post (Separately) Posted: Wed Sep 06, 2023 05:43    Post subject: Reply with quote

Ого, а я смотрю готовится адекватная лёгкая замена fileinfo с расширенными возможностями. Хотелось бы видеть основную информацию крупно и сразу как в fileinfo и тогда переход обеспечен..
Back to top
View user's profile Send private message
burav



Joined: 07 Oct 2011
Posts: 22

Post (Separately) Posted: Fri Sep 08, 2023 18:04    Post subject: Reply with quote

Немного потестировал определение компилятора.
Вот, например, файл CABRK.DLL из дистрибутива TC 11.01 x86.

Как я понимаю, вывод плагина в первой строке примерно должен совпадать с показаниями PE Sniffer, а во второй - с показаниями PEiD.
Похоже, здесь что-то не так
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next
Page 2 of 8

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group