子程序名称定位插件(用于无标记定位异常代码的地址)含Demo
作用:
静态/黑月编译后会生存同名的txt文件,内含 子程序名称,代码起始偏移,代码结束偏移;
根据以上文件,可以实现不在源码中做标记的情况下,进行发布版本的异常定位!
支持加壳定位,前提是子程序中的代码没有被加密壳混淆,如压缩壳与没有进行虚拟/变异处理的VMP壳等.
支持易语言模块中的子程序.
目前支持易语言5.90,因为是动态定位特征码,所以理论上相邻版本也可以用.
奉上源码与demo.

以文本形式输出是为了直观调试,易友们也可以修改成输出二进制文件或更友好的格式.
偏移相对于映像基址.如果是EXE一般为0x00400000,DLL不固定
-------------------------------------------------------------------------------------------------------------------------------------------------------
前几天我在论坛上下载了个异常通知辅助模块(作者东灿,修改者QIQI)
配合工具效果还可以.
就是得添加一大堆代码来定位错误的函数名,不仅影响执行效率,还容易担心软件会被小白破解
正所谓不怕贼偷就怕贼惦记,所以我还是放弃使用他了.
这时候我就萌生出能不能写个把子程序名称和所在内存地址导出的插件.
也没花多少时间,在参考了小色开源的WonderWall插件后我终于确定了可行性!
第二天初版就写好了,经过几天的修改现在已经兼容黑月与静态编译.
本来想先发支持库,等我自己体验下,没得修改了再开源.主要是没有时间,干脆直接开源了.希望大神能完善完善.
现在可以支持定位到错误的子程序名以及调用者的子程序名.我相信还有进步空间,多敲几行代码可以定位到行号什么的.
我也不知道网上有没有类似这样的插件,但起码我没见过.
插件源码,成品以及demo源码
引用模块
| 源码文件名 | 模块文件名 | |
|---|---|---|
| 插件支持库.e |
| |
| demo.e |
|
引用支持库
| 源码文件名 | 支持库文件名 | 支持库标识 |
|---|---|---|
| hook4e.e | 系统核心支持库 5.7 | d09f2340818511d396f6aaf844c7e325 |
| 插件支持库.e | 系统核心支持库 5.7 | d09f2340818511d396f6aaf844c7e325 |
| demo.e | 系统核心支持库 5.7 | d09f2340818511d396f6aaf844c7e325 |
| 一个错误的模块.e | 系统核心支持库 5.7 | d09f2340818511d396f6aaf844c7e325 |
-
易语言android无障碍千战 2020-09-16 -
利用易语言组件自制快捷启动千战 2020-09-16 -
易语言希尔排序之自定义数据类型排序千战 2020-09-16 -
填充前后文本到指定长度千战 2020-09-15 -
实例_Wininet 置代理地址(立即生效无需重启)千战 2020-09-15 -
超级列表框设置颜色(不闪烁版本)删除表项记得处理颜色数组+置行高千战 2020-09-15 -
小白盒 扫码枪 二维码扫描设备 键盘钩子源码千战 2020-09-15 -
WOL远程开机千战 2020-09-14 -
熊出没之拼图游戏千战 2020-09-14 -
Ylink(纯UI)千战 2020-09-14


