![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Значение переменной чужого приложения [WinXP]
Хинт © (2005-07-14 10:06:00)Возможно ли обращаясь к памяти чужого приложения следить за значением одной из его переменной? Если да, то как? Насколько это тяжело реализовать?
Пример:
Создаем форму, кидаем на неё 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, а потом уже обращаться по этому адресу...
BiN (2005-07-14 15:57:00) [1]Хинт © (14.07.05 15:45) [5]
(WinXP SP2 учетная запись Администратора)
Кстати, в приложенном описании есть перечень поддерживаемых версий ОС и XP SP2 там пока нет.
BiN (2005-07-14 15:54:00) [2]Хинт © (14.07.05 15:45) [5]
2BiN
"Попытка обращения к неверному адресу" =(
(WinXP SP2 учетная запись Администратора)
Как, опять?!
Мои извинения. Вечером выложу новую версию.
BiN (2005-07-14 15:54:00) [3]Удалено модератором
Примечание: Дубль
alpet (2005-07-14 15:49:00) [4]winnergamecheater source code:
http://www.alpet.hotmail.ru/wgcsrc.zip(Delphi6) - Для поиска значения.
Если нужно отлавливать каждое изменение "переменной" - можно воспользоватся отладочным API - в приведенных исходниках это показано.
Хинт (2005-07-14 15:45:00) [5]2BiN
"Попытка обращения к неверному адресу" =(
(WinXP SP2 учетная запись Администратора)
BiN (2005-07-14 11:12:00) [6]Так, немного рекламы -)...
http://binary.front.ru/downloads/kwalk/kwalk.zip
Digitman (2005-07-14 11:11:00) [7]например, ArtMoney
Хинт (2005-07-14 11:01:00) [8]Большое спасибо. Только проблема в том, что необходимо получить значение переменной уже готово приложения =( Есть ли какие-нибудь программы, которые находят абсолютный адрес по значению в памяти процесса?
Digitman (2005-07-14 10:45:00) [9]
> сначала необходимо узнать относительный адрес
собери проект опцией линкера Map File = Details, получишь отн.адрес переменной в секции иниц.данных
зная ImageBase, отн.адрес секции и отн.адрес переменной в этой секции, расчитываешь абс.адрес
имея абс.адрес читаешь собственно значение (ReadProcessMemory)