Главная страница
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.009 c
4-1230131731
Добежал
2008-12-24 18:15
2011.08.28
Получения пути к папке "Мои документы" (CSIDL_PERSONAL)


2-1305528128
ZV
2011-05-16 10:42
2011.08.28
Начинает напрягать Index out of bound (**)


2-1305650677
Артём
2011-05-17 20:44
2011.08.28
Копирование значения в CheckListBox -> ListBox


1-1264840745
Igorishe
2010-01-30 11:39
2011.08.28
Изменить цвет Caption в TTabSheet


2-1305549187
Соня
2011-05-16 16:33
2011.08.28
ADOConnection