![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Пользователь
Регистрация: 12.06.2012
Сообщений: 41
|
![]()
Здравствуйте. Задача такая, хочу сделать небольшую утилиту для одной игры, которая бы показывала текущее количество жизней. Нагуглил, что можно отсеить значения программой Cheat Engine и найти адрес, а вот как мне зная этот адрес, к примеру, вывести значение жизней в Edit1 или записать в переменную?
Буду рад даже ссылкам на уроки... Гуглил по этой теме целый день, но так ничего и не нашёл ![]() |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]()
Копать здесь (особое внимание на последний ответ). По сути, Вы должны написать программу-отладчик, которая будет отлаживать целевой процесс. Стандарт языка не предлагает таких средств, они зависят от операционной системы.
Обратите внимание: многие коммерческие продукты могут содержать антиотладочные приёмы различной степени тяжести. Если речь идёт о достаточно старой (условно - 10-15 летней давности) игре, игра может принять Ваши действия за попытку взлома защиты и начать сопротивляться, так что задача станет заметно интереснее. Также обратите внимание: в случае, если структура данных, хранящая данные о жизнях, находится в динамической памяти, её адрес может быть различным при различных запусках программы. В этом случае потребуется отследить цепочку адресов до т.н. "корневого множества" (стека и глобальных переменных), и в программе идти оттуда: взять значение B по адресу A, затем значение C по адресу B и т.д. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 12.06.2012
Сообщений: 41
|
![]()
Спасибо огромное.
ReadProcessMemory(); - это то что нужно, всё получилось! Репутацию повысил! |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подписаться на событие другого приложения | Tolias | C# (си шарп) | 6 | 07.03.2012 17:59 |
ошибка приложения инструкция по адресу "0х00400000" обратилась к памяти по адресу "0х00400000". Память не может быть "wr | sanalia | Помощь студентам | 0 | 30.09.2011 22:20 |
Узнать HWND компонента другого приложения | Revenant Mar Sara | Общие вопросы Delphi | 1 | 16.07.2010 02:50 |
Запуск другого приложения | Sparky | Общие вопросы по Java, Java SE, Kotlin | 3 | 18.10.2009 11:03 |
Вызов одного приложения из другого | zalum | Общие вопросы Delphi | 8 | 24.04.2009 10:05 |