易语言资源网 - 做最全的易语言资源下载社区
精易论坛授权登录

eWOW64Ext 1.21 修正原模块调试环境与精益助手或某些插件冲突   [复制链接]

    2023-08-14 09:00:54
    模块控件源码
    易语言资源网
    1245 次浏览
    来源链接

eWOW64Ext 1.21 修正版 修正原模块调试环境时与精益助手或某些插件冲突的问题

-------------------------------

易语言开源模块 eWOW64Ext v1.21 最初由作者 npzs 发布

以下为原版开源帖子传送门

https://bbs.125.la/forum.php?mod=viewthread&tid=14361249

-------------------------------

问题表述:在调试环境下调用模块公开子程序时导致被调试程序崩溃直接退出的问题(因为初始化未成功)

一般发生在进行以下操作后:(包含或不仅限于)

首次载入模块/查看模块信息[精益助手]/安装有某些助手插件(如快速定位工具)/编译后的程序某些特定情形下不能启动成功等....

-------------------------------

鉴于本人 wow64_hook 开源模块 是在 eWOW64Ext 的基础上扩展由来故同样存在这些问题

虽然不太影响使用  还是有不少朋友提议修正该问题

鉴于原作者:npzs 舟子商务,不知是否有在论坛活动 或 有无修正计划 尚未可知

故本帖在未经原作者同意下发布eWOW64Ext1.21修正

-------------------------------

eWOW64Ext开源模块 使用 eWOW64ExtInit() 进行初始化模块

其主要作用是组织了一张结构表用于给模块内其他接口快速访问调用

本次修正也主要是采用易语言的写法去重写了这张结构表

已最大可能保留原样和摘取原shellcode片段

重写涉及的子程序主要有eWOW64ExtInit //主要的初始化函数

fn_CalcModOrFuncHash // 用于计算哈希,使其不依赖初始化

GetModuleHandleEx64 // x64哈希取模块基址,使其不依赖初始化

GetProcAddressEx64 // x64哈希取函数入口,使其不依赖初始化

GetModuleHandleEx86 // x86哈希取模块基址,使其不依赖初始化

GetProcAddressEx86 // x86哈希取函数入口,使其不依赖初始化

还有就是一些help程序集中增加了一些必须用到的且大伙不必关注的

删除了原图片资源中两个用于初始化的shellcode

eWOW64Ext 1.21 中 其余代码或者命名均保持原样,只为以上修正,方便其他易友快速参照/摘取/替换



点我下载 (已有 122 次下载)

引用模块


源码文件名 模块文件名
test.e
eWOW64Ext_1.21_修正版.ec


引用支持库


源码文件名 支持库文件名 支持库标识
eWOW64Ext_1.21_修正版.e 系统核心支持库 5.7 d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0
test.e 系统核心支持库 5.7 d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0


[错误报告]   上一篇:修改可空参数是否为空...     下一篇:快捷启动