Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.06.2011, 17:17   #1
Djanius
Пользователь
 
Аватар для Djanius
 
Регистрация: 24.01.2009
Сообщений: 16
Восклицание Как найти указатель на динамическую переменную

Здравствуйте.
Подскажите, как найти указатель на динамическую переменную? Игра World of Warcarft, с помощью артмани нахожу нужную мне ячейку памяти, далее ищу указатель на этот адрес не находит ничего, делаю поиск указателя на начало блока памяти находит, но их столько, что за год не передрать) 200+ тысяч указателей, пытаюсь отсеять, отсеивается примерно 100 тысяч указателей и на этом все. Как быть? Что я не так делаю или как это лучше сделать? Буду рад всем советам!
Djanius вне форума Ответить с цитированием
Старый 02.06.2011, 19:42   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

> нахожу нужную мне ячейку памяти, далее ищу указатель на этот адрес

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

записывайте что вам надо прямо в найденную ячейку, оставьте в покое указатели

Update. а, вспомнил, у вас проблема в том, что адрес ячейки каждый раз разный. Тогда есть 2 пути:

а) повторить работу артмани. Если она может найти, что вам надо, то и вы сможете (теоретически).
б) дизассемблировать бинарник, понять, кто когда и зачем пишет/читает в найденную ячейку и либо подправить бинарник, либо, зная кто и как пишет, брать адрес ячейки из статической части программы

Скорей всего ваша ячейка — часть большой структуры или поле класса, так что прямого указателя на неё и не будет.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."

Последний раз редактировалось veniside; 02.06.2011 в 19:48.
veniside вне форума Ответить с цитированием
Старый 02.06.2011, 21:28   #3
Djanius
Пользователь
 
Аватар для Djanius
 
Регистрация: 24.01.2009
Сообщений: 16
По умолчанию

Цитата:
Сообщение от veniside Посмотреть сообщение
> а) повторить работу артмани. Если она может найти, что вам надо, то и вы сможете (теоретически).
Вот в том-то и вопрос, как это сделать, если по результатам артмани там десятки, а то и сотни тысяч указателей? Как отследить такое количество переходов и добраться до статического адреса?
Djanius вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как найти динамическую переменную? Djanius Общие вопросы Delphi 2 01.06.2011 17:41
Как сделать одну динамическую библиотеку из нескольких статических? VIIIP Общие вопросы C/C++ 0 20.10.2010 17:25
Как записать (считать) динамическую строку в (из) файл(а)? C++ Сергей089 Помощь студентам 2 10.02.2010 22:00
Как создать динамическую матрицу? prikolist Общие вопросы C/C++ 2 16.04.2009 15:51
как использовать указатель this z3rg Общие вопросы C/C++ 2 16.03.2009 23:28