Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

PE-формат, dll\'ки и экспорт из них...

1.1K
24 февраля 2002 года
L0kY
3 / / 20.04.2000
Нет ли у кого-нибудь подробного описания структуры IMAGE_EXPORT_DIRECTORY (IMAGE_DIRECTORY_ENTRY_EXPORT)?
Дело в том, что мне надо определить параметры принимаемые функциями, которые экспортирует ДЛЛька. Может кто-то знает как это попроще сделать?
606
24 февраля 2002 года
Soulless
18 / / 20.03.2000
Получить параметры функции не получится,в
IMAGE_EXPORT_DIRECTORY хранится только адрес на функцию.Аргументы передаются через стек.
Функция "знает" что ей передают и сама извлекает параметры из стека.
526
24 февраля 2002 года
advisor
44 / / 20.03.2000
http//hi-tech.nsys.by8101/pub/coding/iczelion/etc/import.php
может это поможет?
1.1K
25 февраля 2002 года
L0kY
3 / / 20.04.2000
Цитата:

On 2002-02-24 1114, Soulless wrote
Получить параметры функции не получится,в
IMAGE_EXPORT_DIRECTORY хранится только адрес на функцию.Аргументы передаются через стек.
Функция "знает" что ей передают и сама извлекает параметры из стека.


Вот мне как раз и нужно то место в ДЛЛ,которым "функция "знает" что ей передают"
ведь ты правильно говоришь - именно функция знает что ей брать из стека!

606
25 февраля 2002 года
Soulless
18 / / 20.03.2000
Большинство стандартных функций работают со
стековым кадром.В начале функции

push ebp
mov ebp,esp

Потом что-то вроде
mov bx,[bp+0a]
.......
mov ax,[bp+06]
.......
mov cx,[bp+08]

Это извлекаются параметры из стека,притом
извлекаются они не в обязательно в начале
функции.О типе параметров судить нельзя,
только о размере,в данном случае все по 16 бит.
Количество параметров посчитать тоже проблематично.Если уж очень надо,то можно
написать анализатор кода,который будет извлекать кол-во и размер аргументов.
Только вероятность правильного определения будет зависеть от конкретной библиотеки
и конкретной функции

[ Это Сообщение было отредактировано Soulless в 2002-02-25 1144 ]
1.1K
01 марта 2002 года
L0kY
3 / / 20.04.2000
Спасибо... кстати, мне подсказали еще, что вся инфа о функции (параметры, возвращаемый тип, ...) кодируется компилятором в её имени (в том что хранится в таблице экспорта в ДЛЛ), и что можно попробовать вытащить её с помощью UnDecorateSymbolName...
Спасибо всем еще раз!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог