Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];

Вниз

Кто юзает Total Commander   Найти похожие ветки 

 
SPeller   (2004-02-13 13:54) [0]

Всем доброго времени суток!

Наваял я тут плагин к ТС для просмотра импорта и экспорта PE файлов. Вроде Dependency Walker"а. Кому интересно - смотрите тут:

http://spellersoft.narod.ru/plugins/peviewer/


 
Ru   (2004-02-13 14:32) [1]

ти диви, працює :)


 
SPeller   (2004-02-13 14:50) [2]


> ти диви, працює :)

Что это было?


 
Ru   (2004-02-13 14:55) [3]

>SPeller © (13.02.04 14:50) [2]

пока не замечу глюков считай спасибо. :)


 
Юрий Зотов   (2004-02-13 15:19) [4]

> SPeller © (13.02.04 13:54)

Мои искренние поздравления! Действительно, хорошая работа.

Есть предложение. IMHO, если он просматривает DLL, то должен уметь просматривать и BPL (причем, даже без правки кода). Но не просматривает. Возможно, просто потому, что просто не заточен под расширение BPL. Если заточить - было бы еще лучше.


 
SPeller   (2004-02-13 15:32) [5]


> Юрий Зотов © (13.02.04 15:19) [4]

Сап плагин будет кушать абсолютно всё. Дело всё в том, что я изначально поставил только основные расширения. В wincmd.ini есть строки X_detect="...", в которых прописывается функция, с помощью которой тотал выбирает, загружать плагин с данным файлом или нет (X - номер плагина). Плагин изначально выставляет такую строку:

X_detect="EXT = "EXE" | EXT = "DLL" | EXT = "OCX" | EXT = "SYS""

Чтобы просматривать ещё и bpl - нужно изменить на такую:

X_detect="EXT = "EXE" | EXT = "DLL" | EXT = "OCX" | EXT = "SYS" | EXT="BPL""

И таким же макаром для любого расширения.


 
SPeller   (2004-02-13 15:34) [6]

Если не знаете, то найдите в wincmd.ini секцию

[ListerPlugins]

и строку вроде

1=C:\Wincmd\Plugins\_Dev\peview\peviewer.wlx

и допишите ниже неё

1_detect="EXT = "EXE" | EXT = "DLL" | EXT = "OCX" | EXT = "SYS" | EXT="BPL""


 
Юрий Зотов   (2004-02-13 15:50) [7]

> SPeller

Сделал, работает. Большое спасибо, очень удобный получился инструмент. Вероятно, есть смысл добавить расширение BPL сразу, чтобы не править INI вручную.

Судя по всему, в этих вопросах Вы дока. Не подскажете ЦЕНТРАЛИЗОВАННУЮ ссылку, где можно найти еще и другие плагины?


 
SPeller   (2004-02-13 16:02) [8]

http://www.wincmd.ru


> Вероятно, есть смысл добавить расширение BPL сразу, чтобы
> не править INI вручную

Дело в том, что то что одним очень нужно - другим нужно меньше. Пока что я планирую добавить в архив инструкции как расширять количество расширений. Если пожеланий будет много на какое-то расширение, то добавлю в дефолтовые. Возможно, напишу небольшую утилитку для более удобного редактирования списка расширений, если это не появится в будущих версиях ТС.


 
BorisMor   (2004-02-13 16:10) [9]

К сожелению для 6,01 не работает помоемму :(
Там и расширение у плагинов другое wfx и матерится если переименовать файл...


 
Mystic   (2004-02-13 16:11) [10]

Работает (5.51)
Хотя вернул себе плагин твоего конкурента FileInfo.wlx --- информации больше. Будешь продожать --- знакомь с версиями ;)

> Юрий Зотов © (13.02.04 15:50) [7]
http://www.ghisler.com/plugins.htm


 
}|{yk   (2004-02-13 16:11) [11]

хороший плагин. Но у меня кажется такой уже был (посмотрю дома)


 
Ru   (2004-02-13 16:17) [12]

>BorisMor © (13.02.04 16:10) [9]

в 6 открываешь по F3 любую txt (например Readme) Вид>Настройка>LS плигин>Добавить


 
BorisMor   (2004-02-13 16:20) [13]

[12] Ru © (13.02.04 16:17)
Да не разобрался...
Поклеп. SPeller извини.


 
SPeller   (2004-02-13 16:23) [14]


> BorisMor © (13.02.04 16:10) [9]
> К сожелению для 6,01 не работает помоемму :(
> Там и расширение у плагинов другое wfx и матерится если
> переименовать файл...

Там же readme, специально по-русски написал :)


> Mystic © (13.02.04 16:11) [10]
> Работает (5.51)
> Хотя вернул себе плагин твоего конкурента FileInfo.wlx ---
> информации больше. Будешь продожать --- знакомь с версиями
> ;)

Вот мне бы побольше wish"ей, чтобы я был вкурсе что народу надо. Напиши что тебе в fileinfo больше всего нужно и чего не хватает.


 
BorisMor   (2004-02-13 16:31) [15]

[14] SPeller © (13.02.04 16:23)
что тебе в fileinfo больше всего нужно
Список секций с указанием на какую из них идет точка входа.
Я пользуюсь Stud PE. Вот там довольно удобно это cделанно.

[10] Mystic © (13.02.04 16:11)
В FileInfo не заметил список импортируемых функций. Бывает надо.


 
Skier   (2004-02-13 16:35) [16]

>SPeller © (13.02.04 13:54)
Поставил. Полезная штука. Спасибо !


 
SPeller   (2004-02-13 16:38) [17]

Люди, вы вот попользуйтесь, да скажите чего ещё хотелось бы!


 
DDA   (2004-02-13 16:48) [18]


> SPeller ©

Что то с датой у тебя в истории 0.02 [13.04.2004]:


 
SPeller   (2004-02-13 16:58) [19]

:-))) Щас поправлю


 
Mystic   (2004-02-13 17:02) [20]

> BorisMor © (13.02.04 16:31) [15]

Дам есть дамп секций (например):

EXPORTS TABLE:
Name: fileinfo.wlx
Characteristics: 00000000h
TimeDateStamp: 3EDF65BAh -> 06/05/2003 18:46:02
Version: 0.00
Ordinal base: 00000001h
# of functions: 00000004h
# of Names: 00000004h

Entry Pt Ordn Name
00009060h 1 ListCloseWindow
00008900h 2 ListLoad
000092F0h 3 ListPrint
00008F90h 4 ListSendCommand


Часто использемая задача --- узнать, какая загружается DLL и найти конфликты. Но обычно это делается на машинах, где нет WinCmd и плагинов.

Сказать, что пользуюсь ним часто не могу. Иногда возникает потребность в использовании Hiew-шника (список секций, дизассемблер, ресурсы (ResHacker), ...)


 
Skier   (2004-02-13 17:07) [21]

Господа, а где бы достать плагин, который позволяет просматривать
файлы *.pas с подсветкой синтаксиса. Был у меня такой да вот затерялся...:(


 
SPeller   (2004-02-13 17:26) [22]

Я планирую вот что:
- Сначала сортировку по столбцам сделать.
- сделать закладки, на которых будет информация. Думаю замастрячить это как-нить покомпактнее.
- таблица секций и онфа о них.
- аттачиться к работающим процессам не планирую вообще - пусть они сами по себе работают и моя прога не будет причиной чьего-то краха
- хочу определение компилятора, как в stud_pe
- просмотр ресурсов
- пока вобщем всё.
- дизассемблера тоже не будет :)

ЗЫ: а просмотр функций импорт/экспорта в stud_pe - до боли корявый :)


> Mystic © (13.02.04 17:02) [20]
> Дам есть дамп секций (например):

А в табличной форме пойдёт? Я ещё сделаю функцию копирования данных в буфер в тестовом виде.


> Skier © (13.02.04 17:07) [21]
> Господа, а где бы достать плагин, который позволяет просматривать
> файлы *.pas с подсветкой синтаксиса. Был у меня такой да
> вот затерялся...:(

На wincmd.ru что-то было, но, видимо в данный момент сайт переезжает из-за чего недоступен. Как заработает - заходи смотри.


 
Suntechnic   (2004-02-13 18:12) [23]

Skier © (13.02.04 17:07) [21]
Господа, а где бы достать плагин, который позволяет просматривать
файлы *.pas с подсветкой синтаксиса. Был у меня такой да вот затерялся...:(


У меня вот этот стоит hpg_ed.wlx. Он много ещё чего подсвечивать умеет и даже позволяет редактировать. Меня вполне устраивает. Могу намылить если есть желание, весит всего около 500k.

>All
У меня в свою очередь вопрос. Я всем доволен в WC(TC) и лично для себя лучше оболочки пока не видел, но... меня просто убивает невозможность переименовать файл с клавиатуры (то что F2 в Explorer). Модет есть какая хитрая комбинация клавиш, о которой я не знаю или есть возможность это исправить?


 
BorisMor   (2004-02-13 19:59) [24]

[23] Suntechnic © (13.02.04 18:12)
типа Shift-F6 ?

[20] Mystic © (13.02.04 17:02)
Да действительно есть... Надо было пару раз колесико прокрутить :)

[22] SPeller © (13.02.04 17:26)
- хочу определение компилятора, как в stud_pe
Посмотри как это сделанно в PE Sniffer из PE Tools
http://www.uinc.ru/
Там есть список сигнатур(в виде обычного текстового файла) по которым определяется на чем написан exe"шник.
Правдо определяет не всегда корректно, по сравнению с тем же stud_pe


 
Suntechnic   (2004-02-13 20:42) [25]

BorisMor © (13.02.04 19:59) [24]
типа Shift-F6 ?


Угу :) Я даже умудрился переназначить эту комбинацию на привычную клавишу F2.


 
SPeller   (2004-02-14 09:45) [26]


> Посмотри как это сделанно в PE Sniffer из PE Tools

А можно поточнее сылку, а то я там не нашёл такого.


 
Skier   (2004-02-14 10:00) [27]

>Suntechnic © (13.02.04 18:12) [23]

> Могу намылить если есть желание, весит всего около 500k.

вышли, пожалуйста. адрес в анкете...


 
BorisMor   (2004-02-14 11:19) [28]

[26] SPeller © (14.02.04 09:45)
Дал ссылку что в About была. Найти там действительно трудно.
http://neox.pisem.net/download.html


 
Digitman   (2004-02-14 12:31) [29]


> SPeller © (13.02.04 17:26) [22]


> аттачиться к работающим процессам не планирую вообще


а напрасно ..

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

рассмотри эту идейку для потенц.реализации в плагине ..

ничего сложного там нет, и при корректной реализации ты никоим образом не помешаешь работающим процессам

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

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


 
SPeller   (2004-02-14 14:51) [30]


> > аттачиться к работающим процессам не планирую вообще
> а напрасно ..

Я подумаю, но сейчас могу сказать что это будет один из последних wish"ей. Я так понимаю, что тебе просто надо просмотреть список процессов, которые загрузили данную ДЛЛ? Если да, то, в принципе, я могу в будущем добавить это как отдельную вкладку.


> BorisMor © (14.02.04 11:19) [28]

Спасибо, посмотрю что там имеется.


 
DDA   (2004-02-14 16:24) [31]

А что ,никто ошибку не нашёл в этом плагине ?

> SPeller ©

Тогда принимай.
Поставил твой плагин.Мне иногда приходиться просматривать свои ехе-шники которые написал на Delphi.Ну дак вот ,если я просматрел свой ехе-шник через F3 и сработал твой плагин то Delphi по F9 не сможет скомпилировать новый файл и скажет
(типа не может сделать выходной файл)(типа он используется уже)
Так вот наверное ты забываешь закрывать дескриптор файла.


 
DDA   (2004-02-14 16:25) [32]

Проблема решается только после закрытия Total Commandera


 
Digitman   (2004-02-14 16:37) [33]


> SPeller



> надо просмотреть список процессов, которые загрузили данную
> ДЛЛ


не обязательно именно DLL

любой модуль, имеющий PE-формат

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


 
SPeller   (2004-02-14 17:28) [34]


> Так вот наверное ты забываешь закрывать дескриптор файла.

Не забываю. Просто он закрывается при выходе. Наверное, стоит закрывать сразу же. Учту.


 
DDA   (2004-02-14 21:24) [35]


> Наверное, стоит закрывать сразу же

Да, уж лучше сразу.


 
SPeller   (2004-02-21 08:01) [36]

Только что заметил:

> # of functions: 00000004h
> # of Names: 00000004h

Наверное, очень удобно считать количесво функций в шестнадцатеричной системе :) "А у вас ДЛЛ BF9 функций экспортирует" :-)

Скоро обновка будет.


 
Gero   (2004-02-21 08:43) [37]

Вот пара багов:

1. Если формат exe неправильный (то есть это не программа) выскакивает сообщение об ошибке и плагин предстает в уродливом виде.

2. Не работают Lister"ские горячие клавиши!


 
SPeller   (2004-02-21 10:55) [38]


> Gero © (21.02.04 08:43) [37]
> Вот пара багов:
>
> 1. Если формат exe неправильный (то есть это не программа)
> выскакивает сообщение об ошибке и плагин предстает в уродливом
> виде.

Это я отчасти знаю. В будущую обновку включу более жесткую проверку.


> 2. Не работают Lister"ские горячие клавиши!

А там и работать-то нечему. Клавиши вроде A, S, N, P, F7, F5 и т.п. - просто не имеют смысла. Ctrl+P, Ctrl+A, Ctrl+C - аналогично. 1..7 - та же история. Кроме того, клавиши без всяких ctrl, alt используются списками для поиска элементов в них. Поэтому их поддержку я пока что делать не собираюсь. Лень мышкой поводить или нижать Alt и выбрать то что надо? :) Хотя, управляющие клавиши вроде Alt+O сделать можно будет для быстрого ддоступа к элементам меню.


 
SPeller   (2004-02-21 15:41) [39]

Ну вот, обновился:

[+] Добавлена сортировка данных всех списков по любому столбцу по возрастанию и убыванию. Можно, так же, оставлять списки без сортировки, тогда данные будут идти в порядке, в котором он были считаны из файла. Естественно, все состояния сохраняются в конфиге.

[*] Теперь файл модуля закрывается сразу же после прочтения информации из него. Раньше файл не закрывался пока был открыт ТС.

[+] Небольшое улучшение интерфейса: показывается количество функций/модулей в списках.

[+] Добавлено копирование данных списков в буфер обмена. Копировать можно как текущий итем, так и полностью все. Формат копируемых данных описывается в файле COPY.FMT (см. CopyFmt_rus.txt для подробностей). Информация из этого файла читается каждый раз перед копированием.

[*] Улучшена защита от "неправильных" модулей, имеющих отличный от PE формат.

Всем качать и тестить :)
http://spellersoft.narod.ru/plugins/peviewer/


 
Gero   (2004-02-21 19:09) [40]

> 1..7 - та же история

Иногда приходится просматривать exe в режиме "Только текст".
Приходится Alt"ом или мышкой клацать, что не очень удобно.



Страницы: 1 2 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.55 MB
Время: 0.014 c
7-43913
Ozone
2003-12-18 10:22
2004.03.14
Web-камера


3-43316
Ramdom
2004-02-17 13:55
2004.03.14
Не отображаются jpeg картинки в DBImage?


14-43796
Жук
2004-02-17 13:59
2004.03.14
Ура!!! Девушки-программисты существуют !


1-43551
Fants
2004-02-27 19:07
2004.03.14
TreeView


7-43916
Lisa
2003-12-16 17:04
2004.03.14
имя CD





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский