VB 如何读取别的进程内存数据?

ashflying 2014-10-15 10:54:01
前面代码已获取别的程序窗口的hwnd
下面的代码用来读取其某个long型数据
已通过CE获取到long型数据的内存地址是:001529BC
为何下面的代码读不出数据来?

GetWindowThreadProcessId hwnd, pid
pHandle = OpenProcess(PROCESS_ALL_ACCESS, False, pid)
If (pHandle = 0) Then Exit Sub
lRet = ReadProcessMemory(pHandle, &H1529BC, lngTouZhuZhuang, 4, 0&)

lret返回值=0
lngTouZhuZhuang的值=0

求高手指教
...全文
578 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2014-10-16
  • 打赏
  • 举报
回复
用http://download.csdn.net/detail/caozhy/1859731这个工具自己调试。
ashflying 2014-10-15
  • 打赏
  • 举报
回复
改成这样就好了,能不能自己给自己分? lRet = ReadProcessMemory(pHandle, ByVal &H1529BC, lngTouZhuZhuang, 4&, 0&)
Tiger_Zhao 2014-10-15
  • 打赏
  • 举报
回复
你不把函数的声明贴出来,谁知道是这样的错误。
比如 API-Guide 的例子,里面 ReadProcessMemory 的第二个参数就是声明为 ByVal 的,你原先那样的调用方式就是正确的。

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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