vc 读取内存偏移地址时 在xp下完全正常,但在win7下 无错误但读取错误 是何问题

wangxiucn 2013-05-30 06:04:25
//获取窗口句柄
HWND gameh=::FindWindow(NULL,title);
//获取窗口进程ID
DWORD processid;
::GetWindowThreadProcessId(gameh,&processid);
//打开指定进程
HANDLE processH=::OpenProcess(PROCESS_ALL_ACCESS,false,processid);
//读指定进程 内存数据
DWORD byread;//实际读取的字节数
LPCVOID pbase=(LPCVOID)(0x0108CCC0);//基址 即读取数据的起始内存地址
LPVOID nbuffer=(LPVOID)&m_num;// 存放数据的缓冲区
::ReadProcessMemory(processH,pbase,nbuffer,4,&byread);
::ReadProcessMemory(processH,(LPVOID)(&nbuffer+0x294),&nbuffer,4,&byread);
UpdateData(false); //更新变量的值到 编辑框


代码功能 在xp系统下 读值 正常 在win7下 却不行 不知道 为什么, 新手 请高手 帮帮我
...全文
99 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangxiucn 2013-05-31
  • 打赏
  • 举报
回复
知道原因了
wangxiucn 2013-05-30
  • 打赏
  • 举报
回复
不行呀 还是 那样 老大
oyljerry 2013-05-30
  • 打赏
  • 举报
回复
run as Administrator

18,358

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧