在C#中使用具有多个偏移量的指针

问题描述 投票:0回答:1

我有一个CheatEngine脚本

game.exe+2F6D0E8]+478]+560]+198]+60]+470

而且我想在C#中使用它

            long num = MemoryHelper.ReadMemory<long>(MemoryHelper.BaseAddress + 0x2F6D0E8, 8, false);
            num = MemoryHelper.ReadMemory<long>(num + 0x470, 8, false);
            num = MemoryHelper.ReadMemory<long>(num + 0x60, 8, false);
            num = MemoryHelper.ReadMemory<long>(num + 0x198, 8, false);
            num = MemoryHelper.ReadMemory<long>(num + 0x560, 8, false);
            num = MemoryHelper.ReadMemory<long>(num + 0x478, 8, false);

            Debug.WriteLine("Offset" + num);

但是它返回0,我在做什么错呢?

c# pointers offset cheat-engine
1个回答
0
投票

一切都在最后一个偏移量上中断,您必须单独使用它。喜欢

        long num = MemoryHelper.ReadMemory<long>(MemoryHelper.BaseAddress + 0x2F6D0E8, 8, false);
        num = MemoryHelper.ReadMemory<long>(num + 0x470, 8, false);
        num = MemoryHelper.ReadMemory<long>(num + 0x60, 8, false);
        num = MemoryHelper.ReadMemory<long>(num + 0x198, 8, false);
        num = MemoryHelper.ReadMemory<long>(num + 0x560, 8, false);
        //num = MemoryHelper.ReadMemory<long>(num + 0x478, 8, false);

        Debug.WriteLine("Offset" + (num + 0x478);
© www.soinside.com 2019 - 2024. All rights reserved.