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

Вниз

Поиск значения в памяти процесса   Найти похожие ветки 

 
HF-Trade ©   (2006-12-20 06:14) [0]

Здравствуйте уважаемые.
1.Ищу с помощью АртМани значение в памяти чужого процесса. Значение типа Real.
АртМани находит то что мне нужно. Далее я пытаюсь в своей проге получить доступ к процессу и прочитать по найденному АртМани адресу данное значение, делаю так -

Var
PHandle:DWord;
Pid:DWord;
XXX:Hwnd;

.....

XXX:=FindWindow("XXXX",nil);
Begin
GetWindowThreadProcessId(XXXX,pid);
pHandle := OpenProcess(PROCESS_ALL_ACCESS, False, pid);

......

var
ID:Real;
RetVal:DWord;
begin
ReadProcessMemory(pHandle, ptr($0b150bc4) , @ID, 4,RetVal);
Image1.Canvas.TextOut(0,0,"FloatToStr(ID));

Найденное значение отличаеться от того что находит АртМани, - подскажите плз, может как то по другому читать надо?

2. Адрес который находит АртМани, меняеться каждый раз при перезапуске программы, т.е. я так понимаю что переменная содержащая нужную мне инфу - динамическая, можно как нить при запуске моей проги найти ее?

Если кто может помочь, оставьте асю плз.


 
TUser ©   (2006-12-20 06:44) [1]

Чужая программа написана на Delphi? Уверен, что формат Real там тот же, что и у тебя.

Если переменная - динамическая, то где-то есть указатель, или указатель на указатель или указатель и смещение или  ... .Соотвественно тебе надо найти первую нединимическую переменную и пройти по всей цепочке.


 
Loginov Dmitry ©   (2006-12-20 07:30) [2]

> ID:Real;


Попробуй Real48


 
Сергей М. ©   (2006-12-20 08:17) [3]

The generic type Real, in its current implementation, is equivalent to Double.

Generic real types
Type Range Significant digits Size in bytes
Real 5.0 x 10^-324 .. 1.7 x 10^308 15-16 8

А ты читаешь всего 4 байта.


 
HF-Trade ©   (2006-12-22 19:03) [4]


> Чужая программа написана на Delphi? Уверен, что формат Real
> там тот же, что и у тебя.


хз, на чем она написанна, это 3Д клиент Арены Онлайн, просто друг просил крату написать(неудобная у них карта, пометки свои ставить низя и т.п), я написал(почти), а тут у них клиент обновился, и раньше переменные были типа интегер, а тут реал....да еще и х найдеш...
Формат вроде такой же, по крайней мере в АртМани ставил искать стандартные Флоат... - Находит несколько штук, все они меняються прально при перемещении персонажа. -


> Если переменная - динамическая, то где-то есть указатель,
>  или указатель на указатель или указатель и смещение или
>  ... .Соотвественно тебе надо найти первую нединимическую
> переменную и пройти по всей цепочке.

Как ПРАВИЛЬНО\ГРАМОТНО найти первую нединамическую переменную? В арт мани я могу найти указатель на значение которое ищу, НО нахожу несколько указателей, значения найденных указателей - пусты, соответственно при попытки отсеять их при перемещении персонажа, АртМани отсеивает их все...
(Ну не искать же все указатели на те что я уже нашел..., их же тоже на каждый может быть несколько - так и упариться мона =) )

[2] - Пробовал, не помогло.

[3] - Я ставил и 8 читать, те же яйца=) (И почему тогда АртМани показывает что число 4 байтовое.


 
Loginov Dmitry ©   (2006-12-22 23:25) [5]

Пробуй Single


 
HF-Trade ©   (2006-12-23 05:44) [6]


> Пробуй Single


Точно... затупил(бьюсь головой Ап стену) =) Single - 4 bytes

Насчет динамических переменных, - кто нить подскажет тупому?=)



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
2-1167065394
Slimer
2006-12-25 19:49
2007.01.14
Фильтр


2-1166707776
ЗЗ
2006-12-21 16:29
2007.01.14
Получение данных из blob


2-1167122730
jjj
2006-12-26 11:45
2007.01.14
Работа с запросами


1-1163763391
DelphiLexx
2006-11-17 14:36
2007.01.14
DBGridEh.OnDrawColumnCell не работает отрисовка при потере фокуса


9-1141842727
Storm
2006-03-08 21:32
2007.01.14
Игры с нуля





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский