vb用copymemory 读取内存数据问题

feiye333 2011-10-03 05:15:10
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByVal Destination As Any, ByVal Source As Any, ByVal Length As Long)
Private Sub Command1_Click()
Dim x As Variant '用于读出的结果存放变量
CopyMemory x, ByVal Int(&H14B234), 4
MsgBox x
End Sub


内存中数据已经用CheatEngine知道地址,为什么老是提示类型不匹配,如果把x设置成long型,直接vb出错退出,求指导
...全文
475 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
worldy 2011-10-05
  • 打赏
  • 举报
回复
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByVal Destination As Long, ByVal Source As long, ByVal Length As Long)
Private Sub Command1_Click()
Dim x As Long '用于读出的结果存放变量
CopyMemory varptr(x), Int(&H14B234), 4
MsgBox x
End Sub

嗷嗷叫的老马 2011-10-05
  • 打赏
  • 举报
回复
[分享]网上流传的一个游戏修改器(VB6代码)
http://www.m5home.com/bbs/thread-1344-1-1.html

其它进程,参考这个吧.
feiye333 2011-10-05
  • 打赏
  • 举报
回复
谢谢worldy 结果和Lactoferrin的一样,显示不了正确的值,老马你的程序下了,运行也是找不到正确的值。我通过获得ce的列表框内容实现算了。谢谢大家
Lactoferrin 2011-10-04
  • 打赏
  • 举报
回复
你得确认&H14B234是个有效的地址,然后不要直接在vb6里面运行,用到api的最好都生成exe来运行
feiye333 2011-10-04
  • 打赏
  • 举报
回复
Lactoferrin vb还是出现出错信息,然后vb就关了
Lactoferrin 2011-10-04
  • 打赏
  • 举报
回复
RtlMoveMemory只针对当前进程
嗷嗷叫的老马 2011-10-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lactoferrin 的回复:]
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByRef Destination As Any, ByRef Source As Any, ByVal Length As Long)
Private Sub Command1_Click()
Dim x As long
CopyMemory x, By……
[/Quote]+1
feiye333 2011-10-04
  • 打赏
  • 举报
回复
谢谢 Lactoferrin
生成exe文件可以运行,但是和ce查出来的值不一样。ce 查出来的是对的,还有一个问题就是取出来的值一直是一个数。而ce 是根据程序的数字变化而变化的。
Lactoferrin 2011-10-03
  • 打赏
  • 举报
回复
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByRef Destination As Any, ByRef Source As Any, ByVal Length As Long)
Private Sub Command1_Click()
Dim x As long
CopyMemory x, ByVal &H14B234, 4
MsgBox x
End Sub
贝隆 2011-10-03
  • 打赏
  • 举报
回复

1,486

社区成员

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

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