Tsp*_*ggy 5 .net c# memory pointers
正如标题所说我试图从我在Cheat Engine的指针扫描中找到的地址中读取.但唯一的问题是我曾经使用的唯一指针只是指针地址+偏移量.我正在使用Visual Studio 2010中的C#.Net 4.0.我想我之前记得看过一些关于它的内容但是我没有想太多,因为它当时并不适用于我.
获取进程或模块ID并将其添加到指针地址然后添加偏移量并从那里读取的东西?但我记不起获取进程ID或模块ID的命令:/
这也是我正在使用的5级指针,我只使用了1级或2级指针,但我猜它大致相同.只需从指针读取地址,直到我得到一个要写入的基址.
如果它有助于我的指针看起来像这样:"ProcessName.exe"+ 003E6D98
"如果你说世界上为什么你需要使用.NET中的指针,那可能会有所帮助" - 约翰桑德斯
我正在为我的一个游戏做培训师.我之前没有用这种类型的指针制作它们,我忘了如何处理这种类型的地址.我想我必须得到模块的ID但我忘记了如何.我实际上对内存和指针非常好我通常只有平均地址,旁边没有进程名称.
OP 有问题回答 - 作为 CW 答案
string sProcessName = "MyProcessName.exe";
Process[] MyProcesses = Process.GetProcessesByName(sProcessName);
IntPtr hProcModuleBA = MyProcesses[0].MainModule.BaseAddress;
IntPtr PointerAddr = new IntPtr(MyPointer.ToInt32() + BaseAddress.ToInt32());
Run Code Online (Sandbox Code Playgroud)
这将在您的进程中搜索 sProcessName,并将其添加到数组“MyProcesses”中。我选择了列表中的第一个来获取 BaseAddress。是 40000 :)