我正在学习Win32API。 我的程序有两个功能。 我尝试在VC ++中使用调试模式。我在调用dumy函数时设置了一个断点
void CALLBACK Dummy(){
printf("\n Hello Dummy Func!");
}
//////////////////////////////////////////////////////////////////////////
int _tmain(int argc, _TCHAR* argv[]){
(breakPoint) Dummy();
}
当我调用dumy()函数时。程序跳转到地址012110D7作为流程代码
Dummy:
012110D7 jmp Dummy(12113A0h)
虚拟功能的实际地址是12113A0h 我的问题是如何获得虚拟功能的真实地址是12113A0h 我在发布模式下运行时问题已解决。 这是我第一次加入StackOver流程。我希望每个人都能帮助我。谢谢 !!叮咚
答案 0 :(得分:5)
链接器插入此jmp指令以支持Debug配置中的Edit + Continue。这允许您在调试时编辑和编译代码。通过jmp指令的额外间接允许生成函数的不同版本,更改jmp目标以使更改生效。
使用项目+属性,链接器,常规,启用增量链接=否,关闭编辑并继续关闭。