VC读取本进程任意内存地址的值怎么读取,高人指点

 我来答
百度网友ded4135
高粉答主

2018-09-03 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2.7万
采纳率:87%
帮助的人:1.2亿
展开全部
每个进程的虚拟地址空间都要划分成各个分区。地址空间的分区是根据操作系统的基本实现方法来进行的。不同的windows内核,其分区也略有不同。

你在用户级就只能访问用户级的地址

32位Windows 2000的用户地址空间范围是0 x 0 0 0 1 0 0 0 0 0 - x B F F E F F F F F

你定义一个指针指向这个范围的任意位置都是可以访问的。
C/C++ code
HANDLE hProcess=::OpenProcess(PROCESS_ALL_ACCESS,FALSE,GetCurrentProcessId());
LPVOID lpBaseAddress=(LPVOID)0x190BA;
DWORD dwValue;if(!::ReadProcessMemory(hProcess,lpBaseAddress,&dwValu¡­
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式