Вниз
Скачать: CL | DM;

Значение переменной чужого приложения   Найти похожие ветки 

 
Хинт ©   (2005-07-14 10:06) [0]

Возможно ли обращаясь к памяти чужого приложения следить за значением одной из его переменной? Если да, то как? Насколько это тяжело реализовать?

Пример:
Создаем форму, кидаем на неё EditBox и две кнопки. Описываем глобальную переменную
str:string[3];

При нажатии одной кнопки присваеваем переменной STR значение текста EditBox"а:
procedure TForm1.Button1Click(Sender: TObject);
begin
str:=edit1.text;
end;


При нажатии другой заносим в переменную str случайный текст:
procedure TForm1.Button2Click(Sender: TObject);
var
i:integer;
begin
for i:=1 to 3 do str[i]:=chr(ord("a")+random(26));
end;


Возможно ли получать значение переменной STR из другой программы?
Насколько я понимаю (может быть ошибаюсь), сначала необходимо узнать относительный адрес переменной STR, а потом уже обращаться по этому адресу...


 
Digitman ©   (2005-07-14 10:45) [1]


> сначала необходимо узнать относительный адрес


собери проект опцией линкера Map File = Details, получишь отн.адрес переменной в секции иниц.данных

зная ImageBase, отн.адрес секции и отн.адрес переменной в этой секции, расчитываешь абс.адрес

имея абс.адрес читаешь собственно значение (ReadProcessMemory)


 
Хинт ©   (2005-07-14 11:01) [2]

Большое спасибо. Только проблема в том, что необходимо получить значение переменной уже готово приложения =( Есть ли какие-нибудь программы, которые находят абсолютный адрес по значению в памяти процесса?


 
Digitman ©   (2005-07-14 11:11) [3]

например, ArtMoney


 
BiN ©   (2005-07-14 11:12) [4]

Так, немного рекламы -)...
http://binary.front.ru/downloads/kwalk/kwalk.zip


 
Хинт ©   (2005-07-14 15:45) [5]

2BiN
"Попытка обращения к неверному адресу" =(
(WinXP SP2 учетная запись Администратора)


 
alpet ©   (2005-07-14 15:49) [6]

winnergamecheater source code:
http://www.alpet.hotmail.ru/wgcsrc.zip (Delphi6) - Для поиска значения.
Если нужно отлавливать каждое изменение "переменной" - можно воспользоватся отладочным API - в приведенных исходниках это показано.


 
BiN ©   (2005-07-14 15:54) [7]

Хинт ©   (14.07.05 15:45) [5]

2BiN
"Попытка обращения к неверному адресу" =(
(WinXP SP2 учетная запись Администратора)


Как, опять?!
Мои извинения. Вечером выложу новую версию.


 
BiN ©   (2005-07-14 15:54) [8]

Удалено модератором
Примечание: Дубль


 
BiN ©   (2005-07-14 15:57) [9]

Хинт ©   (14.07.05 15:45) [5]

(WinXP SP2 учетная запись Администратора)


Кстати, в приложенном описании есть перечень поддерживаемых версий ОС и XP SP2 там пока нет.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.024 c
14-1123759060
Игорь Лан
2005-08-11 15:17
2005.09.04
Посоветуйте где найти компонент


1-1123898980
DFR
2005-08-13 06:09
2005.09.04
Как отловить момент запуска Screen Save`r


1-1123770279
IceBeerg
2005-08-11 18:24
2005.09.04
Как в ячейку StringGrid а вставить ComboBox?


14-1123669362
Petr V. Abramov
2005-08-10 14:22
2005.09.04
Честный способ отъема денег :)


1-1123671846
InVariantian
2005-08-10 15:04
2005.09.04
Интернациолизация проги




   Наверх