Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.09.04;
Скачать: [xml.tar.bz2];

Вниз

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

 
Хинт ©   (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 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.09.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.01 c
14-1123630646
IncRed
2005-08-10 03:37
2005.09.04
Как зарегистрироваться на RSDN.Ru


1-1124106094
Denis.ua
2005-08-15 15:41
2005.09.04
Drag&Drop из грида в мемо


14-1123924242
PZ
2005-08-13 13:10
2005.09.04
Чтобы это значило ?


3-1122012785
Hursand
2005-07-22 10:13
2005.09.04
displaytext


6-1116580918
EGK
2005-05-20 13:21
2005.09.04
Не работает apache shared module под 2 Apache





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский