C++: Как приложениям нравится работа Механизма и ArtMoney Обмана?

После задавания этого вопроса (C++: я могу выйти из границ памяти своего приложения с указателем?),
Я решил признать, что не возможно изменить память другого приложения с указателями (с современной ОС).

Но если это не возможно, как программам нравится работа ArtMoney и CheatEngine?

Спасибо

10
задан Community 23 May 2017 в 12:30
поделиться

3 ответа

Проверьте эти функции: ReadProcessmemory WriteProcessmemory

13
ответ дан 3 December 2019 в 21:19
поделиться

Чтобы дать простое объяснение - дамп / горячий поиск памяти процесса для указанного значения и его изменение. Вы можете сделать это с помощью простых функций WinAPI или некоторых подпрограмм собственного API (я так полагаю) .

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

0
ответ дан 3 December 2019 в 21:19
поделиться

В Windows можно читать память процесса . В kernel32.dll есть функция ReadProcessMemory : http://msdn.microsoft.com/en-us/library/ms680553 (v = VS.85) ) .aspx

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

CheatEngine - отладчик с нетрадиционным интерфейсом.

4
ответ дан 3 December 2019 в 21:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: