Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.11;
Скачать: CL | DM;

Вниз

Функции из DCU   Найти похожие ветки 

 
ПсихЪ ©   (2004-06-21 09:41) [0]

Как можно узнать имена функций, елси есть DCU, но нету PAS файла?


 
Digitman ©   (2004-06-21 10:26) [1]

в дизайн-тайм набери в IDE-редакторе имя интересующего модуля (оно должен фигурировать в USES), набери "точку" следом за именем модуля - IDE откроет выпадающий список глобально доступных идентификаторов модуля


 
Amoeba ©   (2004-06-21 11:35) [2]

Можно воспользоваться утилитой DeDe.


 
Семен Сорокин ©   (2004-06-21 11:41) [3]

dcu2pas - увидишь заголовки


 
ПсихЪ_клон   (2004-06-23 13:20) [4]

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

> Digitman

Так и поступил, только вот там есть 2 функции, которые каким-то образом скрыты... ): Я знаю, что они там есть, но как их осмотреть, хотя бы список их параметров - не знаю... ): Они экспортятся в DLL.


 
Amoeba ©   (2004-06-23 14:06) [5]

DeDe должен помочь.


 
evvcom ©   (2004-06-23 14:54) [6]


> Они экспортятся в DLL.

Они не обязательно экспортятся в dll из этого dcu и в том же виде. То что доступно другим модулям (в том числе и в секции exports) должно быть обязательно в интерфейсной части модуля. А это увидишь как советовал Digitman. Tot? если курсор стоит после точки (или части набранного имени), а список скрылся, можно нажать Ctrl+Space


 
ПсихЪ_клон   (2004-06-23 15:21) [7]


> evvcom

Дык в том-то и дело, что эти функции вероятно не доступны для других модулей, но при создании DLL с этим модулем они экспортятся...


 
evvcom ©   (2004-06-23 15:30) [8]

Конечно, можно сделать и такое, но я бы назвал этот способ "через ж...". Если делалось как принято, то что-то здесь не так. В любом случае, можно поискать в каком-нибудь hex-редакторе название этой "стелс"-функции. Если названия нет, а реально она там присутствует, то точно "через ж..." сделано, а если есть, то функция должна быть в interface секции.


 
ПсихЪ_клон   (2004-06-23 15:37) [9]

Название есть, его там можно обнаружить обычным поиском при открытии сего файла в ВинКоме по F3. Но кроме вышеописанного способы эти функции больше никак определить не удаётся. Вот сейчас DeDe-таки скачал, посмотрим его изнутри... (:


 
Digitman ©   (2004-06-23 15:45) [10]


> ПсихЪ_клон


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

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


 
Digitman ©   (2004-06-23 15:51) [11]

есть и иной вариант, безо всяких внешних дизассемблеров

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

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


 
ПсихЪ_клон   (2004-06-23 16:51) [12]

Всё!!! (:
DeDe - мегарулез!!! (:
Спасибо всем, кто помогал мне советами!
Разобрался!

Нужно было написать безглючную версию этого файлика. Он был весь проглюченный и без исходников, теперь всё отлично! (:

Ещё раз всем спасибо!



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

Текущий архив: 2004.07.11;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.041 c
10-1019023031
Michelson
2002-04-25 10:50
2004.07.11
EntityBean и PrimaryKey


3-1086756262
maxi
2004-06-09 08:44
2004.07.11
SQL запрос


1-1088445066
XeLax
2004-06-28 21:51
2004.07.11
Как узнать все параметры ключа реестра?


6-1084522330
0597345
2004-05-14 12:12
2004.07.11
Как работать с WinSock на АПИ?


1-1088592793
Akella
2004-06-30 14:53
2004.07.11
Проблемы с QuickRep