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

Вниз

Как прочитать память у DLL (ReadProcessMemory):DllName.dll+offset   Найти похожие ветки 

 
Vincent   (2010-02-02 22:25) [0]

Как читать и изменять память у процесса я знаю:

var
 h,HandleWindow,ThreadId,ProcessId : Cardinal;
 buf:dword;
 read:Cardinal;
const
 Address = $.........;
begin
 h := FindWindow(nil,"Заголовок окна");
 if h = 0 then Exit;
 ThreadId := GetWindowThreadProcessId(h,@ProcessId);
 HandleWindow := OpenProcess(PROCESS_ALL_ACCESS,False,ProcessId);
 ReadProcessMemory(HandleWindow,ptr(Address),@result,4,read);
 CloseHandle(HandleWindow);


Вот только интересующее значение находится в области загруженной DLL которую юзает программа. Как прочитать значение в этом случае?

То есть нужно прочитать данные по адресу DllName.dll+offset


 
Сергей М. ©   (2010-02-02 22:36) [1]


> интересующее значение находится в области загруженной DLL
> которую юзает программа


Да по барабану где оно находится)
Выше штанов под названием "виртуальное адресное пространство процесса" все равно не прыгнуть.


> HandleWindow := OpenProcess(


Какой еще к лешему Window ?

Ф-ция OpenProcess() никаких дел дел с окнами не имеет.


 
Vincent   (2010-02-02 22:54) [2]


> Какой еще к лешему Window ?
> Ф-ция OpenProcess() никаких дел дел с окнами не имеет.

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


> Да по барабану где оно находится)
> Выше штанов под названием "виртуальное адресное пространство
> процесса" все равно не прыгнуть.

??? Т.е. открыв идентификатор процесса с полными правами я могу обращаться к адресам и в загруженной ею длл?
Если я попытаюсь открыть интересующий адрес (dll+offset) напрямую я получаю неверное число.


 
Vincent   (2010-02-02 23:00) [3]

Странно... Недавно не заботала. Уже заработала... Чудеса...))
Ладно всеравно спасибо)



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

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

Наверх




Память: 0.47 MB
Время: 0.008 c
3-1262248374
12
2009-12-31 11:32
2011.08.28
можно как-то сделать быстрее?


15-1304972992
Юрий
2011-05-10 00:29
2011.08.28
С днем рождения ! 10 мая 2011 вторник


15-1304886593
Юрий
2011-05-09 00:29
2011.08.28
С днем рождения ! 9 мая 2011 понедельник


2-1305598216
Gu
2011-05-17 06:10
2011.08.28
Узнать список обновлений виндов


15-1305145802
Юрий
2011-05-12 00:30
2011.08.28
С днем рождения ! 12 мая 2011 четверг