小编Jak*_*ake的帖子

在C#中使用Cheat Engine中的指针

关于该计划

我有一个程序写入我正在试验的游戏的记忆.当我使用常规静态地址时,代码对我很有用,但出于某种原因,一旦找到工作指针,我似乎无法做到这一点.例如,我在指针扫描几次后在Cheat Engine中找到了这个:

在此输入图像描述

每次加载游戏并编辑值时,此地址都有效.问题是我不明白如何在我的程序中使用它.这是我尝试插入值的声明变量:

bool UnlimitedAmmo = false;
string AmmoPointer = "031B7324"; // <--- The address
int[] AmmoOffset = { 0x2c, 0x1e8, 0x3c8, 0x6d4, 0x508 }; // <--- It's pointers
int AmmoToFill = 1337; // <--- The Amount of ammo to give
Run Code Online (Sandbox Code Playgroud)

我传递这些变量如下:

MyMemory.ReadProcess = MyProcess[0];
MyMemory.Open();

int PointerAddress = HexToDec(AmmoPointer);
int[] PointerOffest = AmmoOffset;
int BytesWritten;
byte[] ValueToWrite = BitConverter.GetBytes(AmmoToFill);
string WrittenAddress = MyMemory.PointerWrite((IntPtr)PointerAddress, ValueToWrite, 
  PointerOffest, out BytesWritten);
MyMemory.CloseHandle();
Run Code Online (Sandbox Code Playgroud)

我曾经使用静态地址(对于不同的游戏),一旦插入地址和偏移量,我的代码工作正常.这次我很难过.任何帮助和解释都将深表感谢.提前致谢.

c# memory pointers cheat-engine

13
推荐指数
1
解决办法
5185
查看次数

标签 统计

c# ×1

cheat-engine ×1

memory ×1

pointers ×1