前言
看别人操作时, 人家能通过栈回溯,找到流程点(e.g. Show Dialog, Click Button)
我自己做的时候, 和人家的上下文不一样.
自己做了下试验, 原来必须要用trace into(CTRL+F11), 才行.
记录
程序启动后, 在流程点即将进行前, 在OD中先停住, 打开run trace, 再trace into, 然后在进行流程操作.
等流程进行完(e.g. Show Dialog), 在OD中暂停, 按K按钮, 看栈回溯
暂停住后, 离不是系统代码最近的地方,就是流程点了.
用栈回溯法定位栈上数据
如果不是MessageBox那么明显的线索, 定位栈数据后, 可以确定调用点.
从栈上数据的Modify弹出窗口中,拷贝地址, 在CPU窗口, go过去,就找到流程调用点了.