为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 易语言相关 > 易语言模块源码 正文

易语言实现多线程安全Hook

三叶资源网 2019-09-16 14:58:59 易语言模块源码 2417 ℃ 1 评论

该模块包含了小量编程时常用的函数集:

取变量栈指针、A2W、W2A,Call(任意数量参数,内部会维护栈平衡),取函数真实地址(可为Naked函数,需自己维护栈平衡),以及部分堆函数;

还有两个比较特殊的:

一是SDK_OBJ里边的函数集,允许用户通过This控制类,包括读写成员,调用方法,设置对象实例

二十SDJ_InlineHook,我翻了很多论坛里边的代码,都是直接jmp,要调用原函数时再暂时复原调用的。

这个方法有一个隐患,就是在多线程中,如果一个线程暂停Hook,恰好这个函数又被另一个线程调用,则那个线程调用的是原函数!没有被Hook。

本人采用的方法是写入jmp,调用原函数的时候,把原函数前几句代码拷入内存再加上jmp,如此便可保证在多线程下的安全了。

另外本Hook采用链表机制,可以乱序卸载。

@肉鱼

文件下载

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

已有1位网友发表了看法:

  • 模块官网

    模块官网  评论于 [2020-03-04 17:14:56]  回复

    线程安全+跨线程+易语言

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
会员系统短网址接口EDB数据库源码注释QQ空间触屏版协议UDP源码url编解码线程池操作RSA易语言多开中控源码硬笔FX3U通信服务器sock5易语言游戏开发算法模块源码GIF录屏运算模块微信扫码支付Ex_Ui登陆界面
最新评论