卡在读取偏移量/指针处

Stuck at reading offset/pointer

本文关键字:指针 偏移量 读取      更新时间:2023-10-16

我正在读取这样一个进程的内存:

int MEM_BATTLESPEED_ADDR = 0x12EC900; // <- this is a static address
int MEM_battleSpeed;
if (ReadProcessMemory(hProcess,(void *) MEM_BATTLESPEED_ADDR, &MEM_battleSpeed, 4, NULL))   
{
   cout << "MEM_battleSpeed: " << MEM_battleSpeed << "rn"; 
}

地址是静态的,所以当我重新启动应用程序时,它永远不会改变。我可以毫无问题地阅读这篇文章。一切都好。

我的问题是,有些地址不是静态的。我知道偏移量和指针,但我不知道如何阅读以下内容:

[Info]
$Static   = 0x12BCAC8
$Offset_1 = 0x07F8
$Offset_2 = 0x000C
$Offset_3 = 0x0284

如何读取[Info]值?

将偏移量添加到指针的内容中会得到您想要的地址:

Static   = 0x12BCAC8;
Offset_1 = 0x07F8;
ReadProcessMemory(hProcess,(void *) (Static + Offset_1), &value, 4, NULL);