Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
Чиполлино
12 / 12 / 3
Регистрация: 13.05.2012
Сообщений: 112
#1

Меняется указатель? - C++

23.07.2013, 20:58. Просмотров 795. Ответов 8
Метки нет (Все метки)

Привет всем.
Поставил себе задачу, вытащить из одной игры данные (здоровье, деньги, уровень), и отображать их параллельно в программе, с помощью CheatEngine нашел указатель и все смещения, перенес в программный код, запускаю и и.. Ничего, стал опять искать указатель, а он совсем другой (смещения на местах остались), в чем дело, как быть?
Я не знаю, какие подробности нужны, спросите у меня.

Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.07.2013, 20:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Меняется указатель? (C++):

Зачем нужен указатель на указатель при работе с однонаправленным списком? - C++
День добрый. Столкнулся с непониманием этой темы. В частности, совершенно непонятен алгоритм инициализации такого вот списка. Например:...

Указатель this - C++
как в windows Forms // горячую клавишу?

Перезаписывать index.html каждый раз, когда меняется количество файлов в директории - C++
нужно сделать так, чтобы каждый раз когда меняется количество файлов в каталоге C:\\, программа перезаписывала файл index.html ...

Указатель на метод - C++
struct abc{ int a; int b; int c; abc(int na = 0, int nb = 0, int nc = 0):a(na),b(nb),c(nc){}; bool conf(int d){ ...

Указатель на функцию - C++
Доброго времени суток! Кто может посоветовать способ присвоить указателю на функцию значение, т.е. имя функции, если мы не будем...

friend указатель - C++
Есть ли что-то типа этого в стандарте: class A { protected: double a; public: typedef double (*td) (double x); td a; ...

8
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,190
23.07.2013, 21:00 #2
Цитата Сообщение от Чиполлино Посмотреть сообщение
Поставил себе задачу, вытащить из одной игры данные (здоровье, деньги, уровень), и отображать их параллельно в программе, с помощью CheatEngine нашел указатель и все смещения,
и как ты их нашел?
0
Чиполлино
12 / 12 / 3
Регистрация: 13.05.2012
Сообщений: 112
23.07.2013, 21:13  [ТС] #3
Цитата Сообщение от ValeryS Посмотреть сообщение
и как ты их нашел?
Сначала с помощью отсеивания нашел нужный динамический адрес, стал отслеживать обращения к нему (в самой игре меняя значение здоровья), с помощью деббагера увидел смещение и откуда было обращение, шел таким же путем (поднимался выше по адресам, соответственно увеличивая количество смещений), пока не добрался до статического адреса.
0
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,190
23.07.2013, 21:44 #4
Цитата Сообщение от Чиполлино Посмотреть сообщение
пока не добрался до статического адреса.
какого статического адреса? ты с файлом работал?или с образом в памяти? к процессу подключился?
0
Чиполлино
12 / 12 / 3
Регистрация: 13.05.2012
Сообщений: 112
24.07.2013, 07:13  [ТС] #5
Цитата Сообщение от ValeryS Посмотреть сообщение
какого статического адреса? ты с файлом работал?или с образом в памяти? к процессу подключился?
К процессу подключился, работал с памятью, искал указатель.
0
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,190
24.07.2013, 08:16 #6
Цитата Сообщение от Чиполлино Посмотреть сообщение
К процессу подключился, работал с памятью, искал указатель.
и почему ты уверен что в следующий раз этот указатель будет лежать по тому же месту?
искал относительно или абсолютный адрес?
да и код бы хотелось посмотреть
0
Чиполлино
12 / 12 / 3
Регистрация: 13.05.2012
Сообщений: 112
24.07.2013, 08:48  [ТС] #7
Там дело не в коде совсем, а в моем видимо непонимании сути вещей.
Вот я залил скриншоты моих действий http://rghost.ru/47628209
В конечном итоге, при перезапуске игры, указатель меняется, а смещения остаются, как будто можно подняться выше (найти указатель на указатель), но я не могу этого сделать.
0
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,190
24.07.2013, 09:01 #8
Цитата Сообщение от Чиполлино Посмотреть сообщение
конечном итоге, при перезапуске игры, указатель меняется,
разумеется, система положила экзешник по другому адресу
Цитата Сообщение от Чиполлино Посмотреть сообщение
как будто можно подняться выше (найти указатель на указатель), но я не могу этого сделать.
прочитай про устройство PE файла

Добавлено через 1 минуту
файлы в следующий раз сюда прикрепляй
"расширенный режим" скрепочка

Добавлено через 3 минуты
судя по картинкам ты нашел автоматическую переменную лежащую в стеке
0
Чиполлино
12 / 12 / 3
Регистрация: 13.05.2012
Сообщений: 112
24.07.2013, 09:03  [ТС] #9
Спасибо, хорошо.
0
24.07.2013, 09:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.07.2013, 09:03
Привет! Вот еще темы с ответами:

Умный указатель ComPtr - C++
Равноценна ли запись с простым указателем #include <d3d11_1.h> ID3D11Device *device_11_0 = nullptr; ID3D11Device1 *device_11_1 =...

Указатель на метод класса. - C++
Программа отказывается присваивать метод класса указателю. Как исправить? test.cpp: In function ‘int main()’: test.cpp:66: error:...

Указатель на пользовательский тип - C++
Чёто туплю, почему когда передаёшь переменную (например int) параметром через адрес в функцию (параметр - указатель на этот тип), то в теле...

Указатель на абстрактный шаблонный класс - C++
Есть абстрактный шаблон класса и 3 производных от него шаблонов классов. Так же есть шаблонная функция, в которую нужно передать указатель...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru