Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > От Assembler к C++


Автор: Гость_Vadim 5.4.2004, 19:47
Как при дезассемблировании чужого DLL-модуля разобраться какие параметры принимает та или иная функция?

Автор: oleg1973 5.4.2004, 20:20
имеется в виду КАКИЕ или СКОЛЬКО?
это немного разные весчи

Автор: Гость_Vadim 5.4.2004, 22:14
Вообще-то и КАКИЕ и СКОЛЬКО, если это возможно

Автор: oleg1973 6.4.2004, 00:54
кароче вот тебе теория как определить КОЛИЧЕСТВО параметров передающихся функ
1 вариант- трейсить и дебугить прогу которая юзает либу ( имхо геморойно)
2 вариант
запоминаем адресс стека перед вызовом
вызываем функ к примеру с 10 параметрами равными 0
если кол-во параметров не верно будет ошибка , запускаем дебагер и смотрим где у нас стек
(получается при большом кол-ве параметров все не будут использованы и часть останется лежать в стеке, и естестно адрес возврата будет неверным)
по разнице значений стека перед и после вызовом можно судить о кол-ве тех самых параметров нужных для функ
а вот значения самих параметров только трасировкой и вниканием в код можно вычислить

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)