谢谢阅读,
我正在玩一个在线游戏,以自学一些关于 ReadProcessMemory API 的知识。
我正在尝试使用游戏内聊天室并将其显示在我的应用程序中。使用应用程序,我能够搜索并找到所需数据的内存地址,但遇到了一些困难。
这是我用来从进程内存中读取的代码:
Dim ProcessToReadFrom As Process = Process.GetProcessesByName("MyGameName")(0)
'Pass the process to a new instance of our NativeMemoryReader class
Dim MemoryReader As New NativeMemoryReader(ProcessToReadFrom)
Dim address_to_read As Integer = Convert.ToInt32("006e3218", 16)
'Read 400 bytes from some address in the process
Dim MemoryBytes() As Byte = MemoryReader.ReadMemory(New IntPtr(address_to_read), 400)
MsgBox("ascii: " & System.Text.Encoding.ASCII.GetString(MemoryBytes).Trim())
MemoryReader.Dispose()
它使用此处显示的 MemoryReader 类:http ://www.vbforums.com/showthread.php?p=3819578
使用这段代码,我每次都能拉出一行聊天,这就是我的问题
- 数据分布在(006E3218-006E6B46)的许多地址中,从该范围获取所有数据的最佳方法是什么?
非常感谢您花时间阅读本文!
希望你的,
史蒂夫