我正在制作一个 Visual Basic 2008 应用程序,并且希望能够更改特定内存地址的值。例如,我想将内存地址处的值更改0xB7CE50
为100000
. 有什么简单的方法可以做到这一点?
问问题
873 次
4 回答
2
我相信 Cody Beer 正在运行一个游戏并寻找一个程序,如 HxD 或类似的东西,这将允许他编辑主存储器,以便他可以将他在游戏中的金额更改为最大金额。VS 是错误的工具。
于 2010-03-04T21:27:37.347 回答
1
您通常只需使用调试器,并将要更改的变量放在 Watch 窗口中,然后只需键入新值即可。
看来您需要一种 .NET 程序修改另一个程序的特定内存地址的方法。
据我所知,.NET 无法做到这一点,而且在 .NET 之外几乎没有办法做到这一点。正如我所建议的,您可以使用调试器来执行此操作。为了从程序中执行此操作,您的程序必须是调试器!
好消息是这是可能的。请参阅Visual Studio 调试器可扩展性。不要因为它似乎需要 Visual Studio 而被推迟。您可能不知道的是,可以基于 Visual Studio 创建一个外观和行为完全像独立可执行文件的程序。
我相信还有一些方法可以通过使用 Windows SDK 中描述的 API 来“成为调试器”,但我不知道它们的文档在哪里。
于 2010-03-04T02:26:21.167 回答
0
您将需要一个内存编辑器软件,例如 TSearch 等……不确定 VS 是否可以。
于 2015-01-26T00:01:21.687 回答
0
它通过GUI操作很容易。
- 从 Debug -> Windows -> Memory 1-4 打开四个内存视图之一
- 在地址字段上键入正确的地址。
- 更改正确地址的值。
谢谢。
于 2013-09-06T05:52:56.330 回答