谢谢好文啊
呵呵 够实力 谢谢分享
学校一下总是好的 感谢你们的教程
您好 sky大牛 我想请问一个问题
下MessageBoxA断点,会断在调用API的汇编代码段
一般恒大的教程是叫我们直接改跳转实现跳过对话框
但是我按照以往的思路,直接修改跳转实现跳过对话框 结果运行程序崩溃
你回溯到下面的地方,是F8跟过了好像两个MessageBox调用段
https://www.52hb.com/data/attachment/forum/201610/11/233415d4jid2dg7t6zgqdm.jpg
我的疑问就在这,你怎么知道就是这个CALL呢?这个CALL固然有跳转跳过MessageBox,但是这个CALL的内部,也有实现跳过MessageBox的跳转呀?你能告诉我你是怎么想的吗?麻烦你了,谢谢!
lyrong 发表于 2016-10-14 18:44
您好 sky大牛 我想请问一个问题
下MessageBoxA断点,会断在调用API的汇编代码段
一般恒大的教程是叫我们 ...
懂你的意思,就是说两个call分别为A跟B,A Call调用B call,Bcall直接调用MessageBoxA,那么我们从MessageBoxA出来就妥妥的在B call对不对?这时候你就要想,这个Bcall内是否有跳可以跳过,另外还要看一个代码段的问题,一般来说Acall所在的代码段是在区段名为Text段,大概的范围是00401000-00402000内,而Bcall一般不在此范围,最后,就跟MessageBoxA一样,所有代码都可以调用,那么Bcall也只是这个代码的执行者,而不是真正的发布者,,希望能帮到你
Shy 发表于 2016-10-14 19:53
懂你的意思,就是说两个call分别为A跟B,A Call调用B call,Bcall直接调用MessageBoxA,那么我们从Messag ...
恩 理解了大部分 但是你怎么知道BCALL只是执行者而不是发布者呢?这是不是凭借经验来着?
一般来说Acall所在的代码段是在区段名为Text段,大概的范围是00401000-00402000内,而Bcall一般不在此范围
范围在00401000-00402000区间内有什么含义吗?
lyrong 发表于 2016-10-14 20:09
恩 理解了大部分 但是你怎么知道BCALL只是执行者而不是发布者呢?这是不是凭借经验来着?
一般来说Aca ...
这个Bcall是不是执行者,其实你自己可以去用易语言编译个信息框,然后你去返回一下就会知道,含义的话,这个就是个人理解吧,也不能说是特别专业,,具体你可以自己编译一个试一下,直接在易语言里面用信息框命令跟直接用MessageBoxA函数是不一样的,,,
Shy 发表于 2016-10-14 20:42
这个Bcall是不是执行者,其实你自己可以去用易语言编译个信息框,然后你去返回一下就会知道,含义的话, ...
懂了,光看到messagebox还不行,这个只是调用了他的函数,还需要回溯到发布者,也就是关键点,是什么导致出现弹窗错误提示。
感谢分享,学习了。
这个要支持的,好好