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

Вниз

Раздел импорта   Найти похожие ветки 

 
GrayFace ©   (2005-07-29 02:37) [0]

Такая задача: я хочу добавить в редактор карт Heroes 3 WOG монстров из WOG (их нельзя ставить в замки). Я нашел место, куда вставить свой код и хочу поставить туда вызов функции своей библиотеки.
Я добавил ее в раздел импорта, но не знаю, по какому адресу будет находиться ссылка на нее.

А заодно, близкий вопрос - зачем в Delphi для каждой импортируемой функции создаются маленькие заглушки с кодом call [$aabbccdd]? Почему этот код просто не всавляется в место вызова.


 
n0name   (2005-07-30 08:39) [1]

>Я добавил ее в раздел импорта, но не знаю, по какому адресу будет находиться ссылка на нее.
Это как? То есть ты хочешь узнать по какому адресу она загружена?


 
Digitman ©   (2005-07-30 14:17) [2]


> хочу добавить в редактор карт Heroes 3 WOG монстров из WOG
>


галиматьища какая-то : "монстры" , "WOG", "Heroes", "замки" ..

КАКОЕ отношение вся этя тряхомудия имеет к таблице импорта pe-модуля ?

каого вообще ляда ты полез править IAT вручную ?!

какая тебе разница, что и куда там Делфи "всавляет" касаемо импорта ?!


 
GuAV ©   (2005-07-30 15:12) [3]


> А заодно, близкий вопрос - зачем в Delphi для каждой
> импортируемой функции создаются маленькие заглушки с
> кодом call [$aabbccdd]? Почему этот код просто не
> всавляется в место вызова.


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


 
PAVIA ©   (2005-07-30 15:51) [4]

Я вобще не понимаю, что написал GrayFace.


> Почему этот код просто не всавляется в место вызова.

Не знаю почему у тебя он не вставляеться, у всех он вставляется.


> Не знаю, но предполагаю

Сделано это для того чтобы знать адресс функции. Так-как DLL может быть загружена в "произвольное" место.


> Я добавил ее в раздел импорта, но не знаю, по какому адресу
> будет находиться ссылка на нее.

Ну кто тебе сказал, что ссылка будет?


> Такая задача: я хочу добавить в редактор карт Heroes 3 WOG
> монстров из WOG (их нельзя ставить в замки).

Как, это связано со всем остальным не представляю.


 
GuAV ©   (2005-07-30 16:06) [5]


> Так-как DLL может быть загружена в "произвольное"
> место.


И что дальше ?


 
alpet ©   (2005-07-30 18:02) [6]

GrayFace ©   (29.07.05 02:37)
1. Какой толк от того, что разделе импорта exe-файла редактора вдруг обьявится твоя фукнция. Только что DLL будет подгружаться и все. Редактор сам никоим образом не возжелает вызвать эту функцию в необходимый тебе момент.
2. "Заглушки" кстати имеют вид:
mov eax,eax
jmp [_idata.func_pointer]
Можешь считать для успокоения, что вызовы функций у библиотеки подгружаемой run-time выполняются без таких заглушек.


 
GrayFace ©   (2005-07-31 03:47) [7]

Я хочу добавить в одно место определенный код. Для этого я решил заменить там одну команду на вызов процедуры из моей dll. (процедура будет начинаться с замещаемой комманды)

Digitman ©   (30.07.05 14:17) [2]
каого вообще ляда ты полез править IAT вручную ?!

Ну, не совсем вручную - использовал LordPE.

PAVIA ©   (30.07.05 15:51) [4]
> Такая задача: я хочу добавить в редактор карт Heroes 3 WOG
> монстров из WOG (их нельзя ставить в замки).

Как, это связано со всем остальным не представляю.


Чтобы было ясно, что я не крякерством занимаюсь.



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

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

Наверх




Память: 0.48 MB
Время: 0.028 c
14-1124690422
TUser
2005-08-22 10:00
2005.09.25
Эхо Москвы


1-1125651518
Talant
2005-09-02 12:58
2005.09.25
все ссылки в memo


1-1125822158
RayGun
2005-09-04 12:22
2005.09.25
QuickReport или экспорт в Excel


14-1125988244
ilya39
2005-09-06 10:30
2005.09.25
http://msdn.microsoft.com/library/rus/


1-1125486062
Piero
2005-08-31 15:01
2005.09.25
Как сделать диалог для выбора компьютера в сети