如题:
已知内存首地址pBeginAddr如下:
LPVOID pBeginAddr=lpSystemInfo.lpMinimumApplicationAddress;
现在需要取出以该地址为基地址,i为偏移地址的内存中的值,与一DWORD类型变量进行比较,应怎么办?
如下的代码应怎样改正?请大师指点LPVOID pBeginAddr=lpSystemInfo.lpMinimumApplicationAddress;
DWORD dVar;
for(int i=0;i<4096;i++)
{ if((DWORD)(((DWORD)pBeginAddr+i))==dVar) { cout<<"找到变量"<<endl;
}
}
已知内存首地址pBeginAddr如下:
LPVOID pBeginAddr=lpSystemInfo.lpMinimumApplicationAddress;
现在需要取出以该地址为基地址,i为偏移地址的内存中的值,与一DWORD类型变量进行比较,应怎么办?
如下的代码应怎样改正?请大师指点LPVOID pBeginAddr=lpSystemInfo.lpMinimumApplicationAddress;
DWORD dVar;
for(int i=0;i<4096;i++)
{ if((DWORD)(((DWORD)pBeginAddr+i))==dVar) { cout<<"找到变量"<<endl;
}
}
解决方案 »
- 发送自定义消息的问题
- 跪~~急~vc6.0 调用webservice
- 重叠IO处理并发数据出现的问题,已附上代码请大家看看,哪里处理不对?
- 大家好,小弟问一个,要在vc中加汇编程序要怎么弄啊?
- 解决图型编辑问题(付款2000元)
- 求《Visual C++ 6.0 技术内幕》第五版的光盘源码
- strtoke出错了,高分求助
- 有没有做过刻录机编程的同行,我们交流一下。
- 想找人做个小项目
- vc到底适合用来干什么???
- 请教把16进制数的TXT文件,转换成2进制数文件。用什么做好做?
- hp的snmp++中的例子receive_trap.cpp编译运行为何不能接收到trap.trap_port为什么设为10162?
if (*((DWORD*)(pGeginAddr + i)) == dVar)
...
DWORD dVar;
for(int i=0;i<4096;i++)
{ if((DWORD)(*((BYTE*)pBeginAddr+i))==dVar) {cout<<"找到变量"<<endl;
}
}
LPVOID pBeginAddr=lpSystemInfo.lpMinimumApplicationAddress;
DWORD dVar;
for(int i=0;i<4093;i++) // 因为DWORD类型占4byte,而内存中页多数为4096byte对齐,
// 当i=4092时就已经访问完从pBeginAddr开始的4096字节了。
{ if(*PDWORD(PBYTE(pBeginAddr) + i) == dVar) {cout<<"找到变量"<<endl;
}
}