-
-
[求助]VS2003,VS2005获取函数地址错误求助
-
发表于:
2016-1-13 15:32
4448
-
[求助]VS2003,VS2005获取函数地址错误求助
DWORD WINAPI test(
LPVOID lpParameter // thread data
)
{
_asm{
mov eax,lpParameter
push eax
add eax,0x20
push eax
mov eax,0x68f740
call eax
}
}
void CrxfzDlg::OnBnClickedButton3()
{
// TODO: 在此添加控件通知处理程序代码
DWORD tmp=0;
//LPCONTEXT Lpcontext;
//GetThreadContext(GetCurrentThread(),Lpcontext);
//tmp=Lpcontext->Eip;
tmp=(DWORD)&test;
_asm{
MOV EAX,test
lea ecx,test
}
}
如上很简单的小程序,给tmp赋予函数test的地址,vs2003自动窗口如下
+ &test 0x00414100 "U嬱侅?" char *
赋值完以后
tmp 0x0041120d unsigned long
tmp的值不是0x414100而是0x41120d,一开始vs2003出这个问题,后来我换vs2005正常了,调试了几次vs2005也这样了,请问怎么回事,该怎么设置啊???
我的操作系统是64位的win7
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!