3

我对基础知识很感兴趣。我不知道从哪里开始。我创建了这个测试程序:

#include <stdio.h>

int main()
{
    char* test = "TEST04560";
    getchar();
    printf("%s\n", test);
}

目标是使用外部程序定位“TEST04560”的内存地址。我知道如何使用ReadProcessMemoryWriteProcessMemory但我不知道如何在程序的内存中搜索特定的字符串。非常感谢任何正确方向的提示。

4

1 回答 1

2

什么操作系统?大多数操作系统都有某种“调试”工具,允许您观察/修改其他进程(当然,如果您有权限)。

在 Linux 上,这是ptrace.

在 Windows 上,有ReadProcessMemory, 和朋友

对于搜索任何类型的数据,有memcmp. 如果你知道如何使用ReadProcessMemory,你肯定对这个功能很熟悉。

于 2013-01-18T06:08:06.703 回答