首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

GetMemory 获得内存数据有关问题

2012-01-22 
GetMemory 获得内存数据问题int GetMemory(DWORD pid, int add){LPCVOID address (LPCVOID) add//虚拟

GetMemory 获得内存数据问题
int GetMemory(DWORD pid, int add)
{
  LPCVOID address = (LPCVOID) add; //虚拟地址 
  HANDLE handle; //句柄 
LPVOID data = malloc(4); //获得的虚拟地址数据 
handle = OpenProcess(PROCESS_ALL_ACCESS, 0, pid);
if(!ReadProcessMemory(handle, address, data, 4, 0)){
printf("ReadProcessMemory Error!\n");
  }
CloseHandle(handle);
return (int)temp;
}

这个函数是获得内存虚拟地址数据的,但是不清楚为什么一直出问题.请朋友帮我解决下,谢谢了.

[解决办法]
与add的值有关,如果add的值不在进程的地址范围内就会出错。还有一点,OpenProcess有失败的时候。

热点排行