C++: How do applications like Cheat Engine and ArtMoney work?

前端 未结 3 1846
萌比男神i
萌比男神i 2021-02-19 22:46

After asking this question (C++: Can I get out of the bounds of my app’s memory with a pointer?),
I decided to accept it isn\'t possible to modify other app\'s memory with p

相关标签:
3条回答
  • 2021-02-19 23:25

    Just to give a plain simple explanation - dump / hot search the process memory for specified value and modify it. You can do it using some plain WinAPI functions or using some native API routines (I suppose so).

    That's obviously the reason why they fail, for example, if game state is stored with some encryption. That's also the reason you would need to change your value several times and then make your search again (to avoid search collisions, because definitely different memory blocks could hold the same value).

    0 讨论(0)
  • 2021-02-19 23:35

    It is possible to read process memory on Windows. There is a function, called ReadProcessMemory in kernel32.dll: http://msdn.microsoft.com/en-us/library/ms680553(v=VS.85).aspx

    This is used by most applications that change memory of other applications. It can also be used to communicate between two processes (though mostly not recommended).

    CheatEngine is a debugger with a non-traditional interface.

    0 讨论(0)
  • 2021-02-19 23:46

    Check these functions: ReadProcessmemory WriteProcessmemory

    0 讨论(0)
提交回复
热议问题