我正在尝试修改Solitaire的值,例如得分。
无论如何,我发现了指针指向的地址(使用CheatEngine),但是我很难注入代码来修改分数。我几乎可以肯定这是我将偏移量添加到基值而不是Windows DEP,我的注入方法或其他任何方式。
这是我正在使用的代码。
#define BASE 0xFFAEAFA8
#define fOFFSET 0x50
#define sOFFSET 0x14
#define VALUE 55555
*(int*)(((*(int*) BASE) + fOFFSET) + sOFFSET) = VALUE;
每当我注入此代码时,我的游戏都会崩溃。如果我修改Cheat Engine中的值而不是代码中的值,则可以正常工作。
答案 0 :(得分:0)
尝试:
volatile int * pScore = (int*)( BASE + fOFFSET + sOFFSET );
*pScore = VALUE;
答案 1 :(得分:0)
我做错了什么:
我需要使用ReadProcessMemory()
API来查找指针指向的地址。然后添加偏移量。