vb使用ReadProcessMemory读取程序内存
ReadProcessMemory pHandle, ByVal &HCFD3D4, life, 4, 0& 这句代码里的byval 什么作用 ? 怎么个用法?经过测验 不加这个会返回错误的数值。 如果把这个地址要换成变量 应该怎么加这个byval和这个&H? 如果设成byval 变量的话会提示dll错误....怎么解决?
追问:你试一下 下面那个会出现什么dll错误
不好意思 是我错了 没写as long
ReadProcessMemory pHandle, ByVal &HCFD3D4, life, 4, 0& 这句代码里的byval 什么作用 ? 怎么个用法?经过测验 不加这个会返回错误的数值。 如果把这个地址要换成变量 应该怎么加这个byval和这个&H? 如果设成byval 变量的话会提示dll错误....怎么解决?
追问:你试一下 下面那个会出现什么dll错误
不好意思 是我错了 没写as long
答案:ByVal是传值,Byref是传址,可以ByVal 直接数,也可以ByVal 变量,&H是16进制的意思
ByVal &HCFD3D4就是直接把16进制数CFD3D4传递给调用函数,如果不加ByVal,缺省是Byref,也就是传递该数值所在的地址,结果当然就完全不一样了,如果用变量:
Dim m As Long
m = &HCFD3D4
ReadProcessMemory pHandle, ByVal m, life, 4, 0&
上一个:VB不要MSDN能用吗
下一个:vb小白询问一个问题