VB6找到指针指向的内存地址 30
例如:指针基地址为:00513578偏移量:F43FC就是说查看指针指向的内存地址用VB6实现。...
例如:指针基地址为:00513578 偏移量:F43FC 就是说查看指针指向的内存地址
用VB6实现。 展开
用VB6实现。 展开
展开全部
#include <stdio.h>
#include <iostream>
int main(int argc, char* argv[])
{
int *p;
int address=0x400000;//比如你要把地址值0x400000赋给整型指针p
memcpy(&p,&address,4);
std::cout<<*p;//输出p指向的地址的整型值
//注意:这很可能会报内存访问错误,因为内存分配是由操作系统干预的,用户不能想在哪个地址读写就在哪个地址读写
}
至于基址偏址也是一样的原理,只不过address值通过计算获得
VB要完成这个任务真新很麻烦。
指针变量 p,在c++中可以简单的用 *p 来访问,那在 vb 中怎么访问呢?
在 vb 中,我们可以使用 copymemory函数别名。
declare sub vbgettarget lb "kernel32" alias "rtlmovememory"(target as any,byval lpoint as long,byval cbcopy as long)
例子:
dim pointer as long
dim target as integer
dim i as integer
i=128
pointer=varptr(i) '获得指针
vbgettarget target,pointer,lenb(target)
debug.print target
追问
看不懂,还是非常谢谢你,我是得到一个游戏的指针地址,因为游戏每次重新启动,其他的内存地址都改变了,只有这个指针地址没改变。而且它指向的内存数据也是正确的,但是就是不知道如何用VB操作它。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询