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

Вниз

DLL, LoadLibrary и ReadProcessMemory   Найти похожие ветки 

 
Хинт ©   (2005-11-16 20:54) [0]

Есть запакованная dll"ка. Я загружаю её функцией LoadLibrary и хочу сохранить распакованный вариант на диск. Адрес начала dll"ки в памяти моей программы возвращает LoadLibrary, а как же быть адресов конца библиотеки? Как его получить?
И еще один вопрос: если dll"ка не запакована, то в АП моего процесса она отобразится идентично с тем, как лежит на диске?


 
Джо ©   (2005-11-16 20:55) [1]


> начала dll"ки в памяти моей программы возвращает LoadLibrary

Насколько я знаю, ничего подобного она не возвращает.


 
Хинт ©   (2005-11-16 20:57) [2]

Но это факт =) Открыл WinHEX"ом АП процесса, перешел по значению, полученному функцией LoadLibrary и увидел заголовок этой самой библиотеки


 
begin...end ©   (2005-11-16 21:13) [3]

> Хинт ©   (16.11.05 20:54)
> как же быть адресов конца библиотеки? Как его получить?

Мне почему-то пришло в голову CreateToolhelp32Snapshot + Module32First/Module32Next + MODULEENTRY32.modBaseSize.

> Джо ©   (16.11.05 20:55) [1]

Она возвращает хэндл модуля -- это и есть базовый адрес загрузки.


 
Хинт ©   (2005-11-16 21:57) [4]


> Мне почему-то пришло в голову CreateToolhelp32Snapshot +
> Module32First/Module32Next + MODULEENTRY32.modBaseSize.


Судя по этой статье
http://www.delphikingdom.com/asp/articles_forum.asp?ArticleID=775
такой вариант не будет работать под NT (или я что-то не так понял)


 
Джо ©   (2005-11-16 22:00) [5]

[2] Хинт ©  
[3] begin...end ©

Да, я уже проверил, высказываение в [1] не соответствует действительности.


 
Хинт ©   (2005-11-16 22:02) [6]


> Мне почему-то пришло в голову CreateToolhelp32Snapshot +
> Module32First/Module32Next + MODULEENTRY32.modBaseSize.

"Как оказалось, в kernel32.dll от NT нет функций для работы TLHelp32"


 
begin...end ©   (2005-11-16 22:04) [7]

> Хинт ©   (16.11.05 21:57) [4]
> такой вариант не будет работать под NT

Да, именно под NT -- не будет. Потому что там нет функций Tool Help.
Под более современными системами на основе NT (2000, XP) -- будет.


 
Хинт ©   (2005-11-16 22:13) [8]

Большое спасибо. Попробую сделать через Tool Help.


 
Digitman ©   (2005-11-17 09:21) [9]


> загружаю её функцией LoadLibrary и хочу сохранить распакованный
> вариант


загрузка и распаковка, мягко говоря, разные разности)

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



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

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

Наверх




Память: 0.48 MB
Время: 0.068 c
15-1136196244
PARUS
2006-01-02 13:04
2006.01.29
CPL


15-1136411705
GanibalLector
2006-01-05 00:55
2006.01.29
MsAgent


2-1137410503
ломтик
2006-01-16 14:21
2006.01.29
x:= (32434234/77545) mod 5; ERROR!


2-1136728923
AlexOld
2006-01-08 17:02
2006.01.29
Копирование двух массивов в один


9-1116686883
!Trinix
2005-05-21 18:48
2006.01.29
Вопросы по моделям в игре