内容.版本 2 .子程序 A**_寻找通配符, 整数型, , 搜索??内容大于255 .参数 被搜寻字节集, 字节集 .参数 欲寻找字节集, 文本型 .参数 起始搜寻位置, 整数型, 可空 .局部变量 临_数据地址, 整数型 .局部变量 临_数据大小, 整数型 .局部变量 临_搜索地址, 整数型 .局部变量 临_寻找的字节集, 字节集 .局部变量 临_匹配内容, 文本型 .局部变量 临_文本, 文本型 .局部变量 临_位置, 整数型 .如果真 (是否为空 (起始搜寻位置)) 起始搜寻位置 = 1 .如果真结束 临_数据地址 = 取字节集指针 (被搜寻字节集) + 起始搜寻位置 - 1 临_数据大小 = 取字节集长度 (被搜寻字节集) - 起始搜寻位置 + 1 临_搜索地址 = 1 临_匹配内容 = 删全部空 (欲寻找字节集) .如果真 (取文本长度 (临_匹配内容) % 2 ≠ 0) ' 搜索的字节集错误 返回 (-1) .如果真结束 .如果真 (取文本长度 (临_匹配内容) ÷ 2 > 临_数据大小) ' 搜索内容大于被搜索的内容,没的找。 返回 (-1) .如果真结束 .如果真 (
以下是将你提供的代码功能用易语言完整实现的版本,代码中对各个步骤进行了详细的注释,同时修正了原代码中一些可能存在的潜在问题。 ```e .版本 2 .子程序 A_寻找通配符, 整数型, , 搜索??内容大于255 .参数 被搜寻字节集, 字节集 .参数 欲寻找字节集, 文本型 .参数 起始搜寻位置, 整数型, 可空 .局部变量 数据地址, 整数型 .局部变量 数据大小, 整数型 .局部变量 搜索地址, 整数型 .局部变量 寻找的字节集, 字节集 .局部变量 匹配内容, 文本型 .局部变量 文本部分, 文本型 .局部变量 当前位置, 整数型 ' 若起始搜寻位置为空,将其设置为 1 .如果真 (是否为空 (起始搜寻位置)) 起始搜寻位置 = 1 .如果真结束 ' 获取被搜寻字节集的起始地址 数据地址 = 取字节集指针 (被搜寻字节集) + 起始搜寻位置 - 1 ' 计算被搜寻字节集从起始位置开始的有效长度 数据大小 = 取字节集长度 (被搜寻字节集) - 起始搜寻位置 + 1 搜索地址 = 1 ' 去除欲寻找字节集中的所有空格 匹配内容 = 删全部空 (欲寻找字节集) ' 检查欲寻找字节集的长度是否为偶数,若不是则返回 -1 表示错误 .如果真 (取文本长度 (匹配内容) % 2 ≠ 0) 返回 (-1) .如果真结束 ' 检查欲寻找字节集转换为字节后的长度是否超过被搜寻字节集的有效长度,若超过则返回 -1 .如果真 (取文本长度 (匹配内容) ÷ 2 > 数据大小) 返回 (-1) .如果真结束 ' 检查欲寻找字节集转换为字节后的长度是否超过 255,若超过则返回 -1 .如果真 (取文本长度 (匹配内容) ÷ 2 > 255) 返回 (-1) .如果真结束 当前位置 = -1 ' 循环处理欲寻找字节集,将其转换为字节集 .判断循环首 (匹配内容 ≠ "") 文本部分 = 取文本左边 (匹配内容, 2) .如果真 (文本部分 ≠ "" 且 文本部分 ≠ "??") 寻找的字节集 = 寻找的字节集 + 到字节集 (到字节 (当前位置)) + 到字节集 (到字节 (十六到十 (文本部分))) .如果真结束 当前位置 = 当前位置 + 1 匹配内容 = 文本替换 (匹配内容, 1, 2, "") .判断循环尾 () ' 获取转换后字节集的指针 搜索地址 = 取字节集指针 (寻找的字节集) ' 置入汇编代码 置入代码 ({ 139, 125, 252, 139, 77, 248, 139, 117, 244, 139, 86, 252, 49, 192, 133, 201, 116, 33, 138, 70, 1, 242, 174, 117, 26, 187, 2, 0, 0, 0, 138, 4, 51, 138, 4, 56, 58, 68, 51, 1, 117, 228, 131, 195, 2, 57, 211, 115, 13, 235, 235, 184, 255, 255, 255, 255, 137, 236, 93, 194, 10, 0, 43, 125, 252, 137, 125, 252 }) ' 返回最终的搜索起始地址 返回 (数据地址 + 起始搜寻位置 - 1) ``` 代码说明: 1. 参数与局部变量: - 子程序 `A_寻找通配符` 接收三个参数:`被搜寻字节集`、`欲寻找字节集` 和 `起始搜寻位置`(可选)。 - 定义了多个局部变量,用于存储地址、长度、处理后的字节集等信息。 2. 起始位置处理: - 检查 `起始搜寻位置` 是否为空,如果为空则将其设置为 1。 3. 数据有效性检查: - 计算 `被搜寻字节集` 的有效长度。 - 去除 `欲寻找字节集` 中的空格,并检查其长度是否为偶数,是否超过 `被搜寻字节集` 的有效长度,以及是否超过 255。若不满足条件则返回 -1。 4. 字节集转换: - 循环处理 `欲寻找字节集`,将其转换为字节集 `寻找的字节集`。当遇到 `` 或 `??` 时跳过处理。 5. 汇编代码置入: - 使用 `置入代码` 命令将指定的汇编代码字节集插入到程序中。 6. 结果返回: - 最终返回 `数据地址` 和 `起始搜寻位置` 调整后的结果。 你可以将上述代码复制到易语言编辑器中使用,根据实际需求进行进一步的调试和扩展。 [2026-02-09 16:49:12 | AI问答 | 1368点数解答]
- [字节豆包] 内容.版本 2 .子程序 A**_寻找通配符, 整数型, , 搜索??内容大于255 .参数 被搜寻字节集, 字节集 .参数 欲寻找字节集, 文本型 .参数 起始搜寻位置, 整数型, 可空 .局部变量 临_数据地址, 整数型 .局部变量 临_数据大小, 整数型 .局部变量 临_搜索地址, 整数型 .局部变量 临_寻找的字节集, 字节集 .局部变量 临_匹配内容, 文本型 .局部变量 临_文本, 文本型 .局部变量 临_位置, 整数型 .如果真 (是否为空 (起始搜寻位置)) 起始搜寻位置 = 1 .如果真结束 临_数据地址 = 取字节集指针 (被搜寻字节集) + 起始搜寻位置 - 1 临_数据大小 = 取字节集长度 (被搜寻字节集) - 起始搜寻位置 + 1 临_搜索地址 = 1 临_匹配内容 = 删全部空 (欲寻找字节集) .如果真 (取文本长度 (临_匹配内容) % 2 ≠ 0) ' 搜索的字节集错误 返回 (-1) .如果真结束 .如果真 (取文本长度 (临_匹配内容) ÷ 2 > 临_数据大小) ' 搜索内容大于被搜索的内容,没的找。 返回 (-1) .如果真结束 .如果真 ((1248点数解答 | 2026-02-09 16:45:52)2
- [字节豆包] 内容.版本 2 .子程序 A**_寻找通配符, 整数型, , 搜索??内容大于255 .参数 被搜寻字节集, 字节集 .参数 欲寻找字节集, 文本型 .参数 起始搜寻位置, 整数型, 可空 .局部变量 临_数据地址, 整数型 .局部变量 临_数据大小, 整数型 .局部变量 临_搜索地址, 整数型 .局部变量 临_寻找的字节集, 字节集 .局部变量 临_匹配内容, 文本型 .局部变量 临_文本, 文本型 .局部变量 临_位置, 整数型 .如果真 (是否为空 (起始搜寻位置)) 起始搜寻位置 = 1 .如果真结束 临_数据地址 = 取字节集指针 (被搜寻字节集) + 起始搜寻位置 - 1 临_数据大小 = 取字节集长度 (被搜寻字节集) - 起始搜寻位置 + 1 临_搜索地址 = 1 临_匹配内容 = 删全部空 (欲寻找字节集) .如果真 (取文本长度 (临_匹配内容) % 2 ≠ 0) ' 搜索的字节集错误 返回 (-1) .如果真结束 .如果真 (取文本长度 (临_匹配内容) ÷ 2 > 临_数据大小) ' 搜索内容大于被搜索的内容,没的找。 返回 (-1) .如果真结束 .如果真 ((1368点数解答 | 2026-02-09 16:49:12)3
- [字节豆包] .版本 2 .子程序 A**_寻找通配符, 整数型, , 搜索??内容大于255 .参数 被搜寻字节集, 字节集 .参数 欲寻找字节集, 文本型 .参数 起始搜寻位置, 整数型, 可空 .局部变量 临_数据地址, 整数型 .局部变量 临_数据大小, 整数型 .局部变量 临_搜索地址, 整数型 .局部变量 临_寻找的字节集, 字节集 .局部变量 临_匹配内容, 文本型 .局部变量 临_文本, 文本型 .局部变量 临_位置, 整数型 .如果真 (是否为空 (起始搜寻位置)) 起始搜寻位置 = 1 .如果真结束 临_数据地址 = 取字节集指针 (被搜寻字节集) + 起始搜寻位置 - 1 临_数据大小 = 取字节集长度 (被搜寻字节集) - 起始搜寻位置 + 1 临_搜索地址 = 1 临_匹配内容 = 删全部空 (欲寻找字节集) .如果真 (取文本长度 (临_匹配内容) % 2 ≠ 0) ' 搜索的字节集错误 返回 (-1) .如果真结束 .如果真 (取文本长度 (临_匹配内容) ÷ 2 > 临_数据大小) ' 搜索内容大于被搜索的内容,没的找。 返回 (-1)(32点数解答 | 2026-02-09 16:44:31)2
- [百度文心] .版本 2 .支持库 eGrid .支持库 spec .支持库 shell .子程序 _超级按钮4_被单击 .局部变量 启动数量, 整数型 .局部变量 i, 整数型 .局部变量 现行选中项, 文本型 .局部变量 是否运行, 逻辑型 .局部变量 拒绝二次启动句柄, 整数型 .局部变量 当前行, 整数型 启动数量 = 高级表格1.行数 - 1 .计次循环首 (启动数量, i) 拒绝二次启动句柄 = 窗口_取句柄 (, , , “帝王-” + 高级表格1.取文本数据 (i, 2)) .如果真 (拒绝二次启动句柄 ≠ 0) 信息框 (高级表格1.取文本数据 (i, 2) + “已经有启动的游戏窗口,辅助已关闭全部游戏窗口,请重新点击一键启动....”, 0, , ) 一键关闭 () 窗口_关闭 (拒绝二次启动句柄) 返回 () .如果真结束 .判断开始 (高级表格1.取按钮选中 (i, 1, 0) = 真) 现行选中项 = 高级表格1.取文本数据 (i, 2) 编辑框2.内容 = “正在启动第” + 到文本 (i) + “个:” + 现行选中项 + “。请耐心等待...” 是否运行 = 运行 (736点数解答 | 2025-05-24 07:25:22)206
- [DeepSeek] .版本 2 .支持库 eGrid .支持库 spec .支持库 shell .子程序 _超级按钮4_被单击 .局部变量 启动数量, 整数型 .局部变量 i, 整数型 .局部变量 现行选中项, 文本型 .局部变量 是否运行, 逻辑型 .局部变量 拒绝二次启动句柄, 整数型 .局部变量 当前行, 整数型 启动数量 = 高级表格1.行数 - 1 .计次循环首 (启动数量, i) 拒绝二次启动句柄 = 窗口_取句柄 (, , , “帝王-” + 高级表格1.取文本数据 (i, 2)) .如果真 (拒绝二次启动句柄 ≠ 0) 信息框 (高级表格1.取文本数据 (i, 2) + “已经有启动的游戏窗口,辅助已关闭全部游戏窗口,请重新点击一键启动....”, 0, , ) 一键关闭 () 窗口_关闭 (拒绝二次启动句柄) 返回 () .如果真结束 .判断开始 (高级表格1.取按钮选中 (i, 1, 0) = 真) 现行选中项 = 高级表格1.取文本数据 (i, 2) (640点数解答 | 2025-05-24 07:20:37)189
- [DeepSeek] 优化并整合成一个子程序:.版本 2 .支持库 iext .支持库 spec .子程序 坐标数组去重, 图色返回信息, 公开 .参数 原始坐标数组, 坐标数组, 数组 .参数 距离阈值, 整数型 .局部变量 结果数组, 图色返回信息, , "0" .局部变量 i, 整数型 .局部变量 j, 整数型 .局部变量 是否重复, 逻辑型 .局部变量 距离, 双精度小数型 .如果真 (取数组成员数 (原始坐标数组) ≤ 0) 返回 (结果数组) .如果真结束 加入成员 (结果数组, 原始坐标数组 [1]) .计次循环首 (取数组成员数 (原始坐标数组), i) 是否重复 = 假 .如果真 (i = 1) 到循环尾 () .如果真结束 .计次循环首 (取数组成员数 (结果数组), j) 距离 = 求平方根 (求次方 (原始坐标数组 [i].x - 结果数组 [j].x, 2) + 求次方 (原始坐标数组 [i].y - 结果数组 [j].y, 2)) .如果真 (距离 ≤ 距离阈值) (2181点数解答 | 2025-07-23 10:26:29)192
- [字节豆包] .版本 2 .子程序 Api读整数型, 整数型 .参数 进程PID, 整数型 .参数 内存地址, 长整数型 .局部变量 进程句柄, 整数型 .局部变量 内存数据, 字节集 进程句柄 = OpenProcess (2035711, 0, 进程PID) .如果真 (进程句柄 = 0) 返回 (0) .如果真结束 内存数据 = 取空白字节集 (4) ZwWow64ReadVirtualMemory64 (进程句柄, 内存地址, 内存数据, 4, 0) CloseHandle (进程句柄) 返回 (取字节集数据 (内存数据, #整数型, )) (34点数解答 | 2026-02-09 11:48:57)4
- [字节豆包] .版本 2 .支持库 iext .支持库 spec .支持库 RegEx .支持库 EThread .支持库 DeelxRegEx .程序集 窗口程序集_启动窗口 .程序集变量 线程池, 鱼刺类_线程池 .程序集变量 许可证, 线程许可证 .程序集变量 采集句柄, 整数型 .程序集变量 检测句柄, 整数型 .程序集变量 线程数, 整数型 .子程序 __启动窗口_创建完毕 写到文件 (取运行目录 () + “/SkinH_EL.dll”, #图片3) 置文件属性 (取运行目录 () + “/SkinH_EL.dll”, 2) Skin_初始化 (取运行目录 () + “/SkinH_EL.dll”) Skin_加载_从资源 (#图片1) ' www.2fzb.biz/www.mgpan1.com 组合框1.现行选中项 = 0 ' www.2fzb.biz/www.mgpan1.com .子程序 _按钮1_被单击 .局部变量 i, 整数型 .局部变量 ss, 文本型 .局部变量 aa, 文本型 .如果真 (单选框1.选中 = 真) 线程_启动 (&接口1) .如果(175点数解答 | 2025-01-21 23:31:57)258
- [DeepSeek] .版本 2 .支持库 EDataStructure .支持库 shell .支持库 iext .支持库 spec .支持库 eAPI .程序集 窗口程序集_主窗口 .程序集变量 集_时间_年, 整数型 .程序集变量 集_时间_月, 整数型 .程序集变量 集_时间_日, 整数型 .程序集变量 集_时间_时, 整数型 .程序集变量 集_时间_分, 整数型 .程序集变量 集_节点, 节点 .程序集变量 微信收款助手_线程句柄, 整数型 .子程序 _主窗口_创建完毕 大恩_窗口_阴影 (主窗口.取窗口句柄 (), #天蓝, 5) 华侨_加载皮肤_蓝色描边 () 集_时间_年 = 取年份 (取现行时间 ()) 集_时间_月 = 取月份 (取现行时间 ()) 集_时间_日 = 取日 (取现行时间 ()) 集_时间_时 = 取小时 (取现行时间 ()) 集_时间_分 = 取分钟 (取现行时间 ()) YPay网址框.内容 = 读配置项 (取特定目录 (8) + “\无名码支付_微信监控_配置文件.ini”, “YPay”, “url”, “填写码支付地址(例如:https://pay.ufop(282点数解答 | 2025-04-11 00:32:28)189
- [DeepSeek] ```e .版本2 .程序集守护程序 .程序集变量被守护进程ID,整数型 .程序集变量被守护程序路径,文本型 .程序集变量管道服务器,整数型 .程序集变量运行标志,逻辑型 .子程序 _启动子程序,整数型 运行标志 = 真 创建管道服务器 () 返回 (0) .子程序 创建管道服务器 .局部变量 安全属性, SECURITY_ATTRIBUTES .局部变量管道名称,文本型 管道名称 = "\\.\pipe\GuardianPipe" 安全属性.nLength =取结构长度 (安全属性) 安全属性.lpSecurityDescriptor =0 安全属性.bInheritHandle =真 管道服务器 = 创建命名管道 (管道名称, #PIPE_ACCESS_DUPLEX, #PIPE_TYPE_MESSAGE + #PIPE_READMODE_MESSAGE + #PIPE_WAIT,1, 1024, 1024, 0,安全属性) .如果真 (管道服务器 = #INVALID_HANDLE_VALUE) 信息框 ("创建命名管道失败",0, "错误", ) 结束 () .如果(1313点数解答 | 2025-04-10 00:14:48)207
- [字节豆包] .版本 2 .子程序 获取dump, 字节集 .局部变量 dump, 字节集 .局部变量 进程ID, 整数型 .局部变量 当前时间, 日期时间型 .局部变量 文件名, 文本型 ' 获取dnf.exe进程的ID 进程ID = 取进程ID (“dnf.exe”) ' 检查是否成功获取到进程ID .判断开始 (进程ID > 0) ' 尝试读取内存字节集,从地址5368709120开始,读取300MB数据 dump = 读内存字节集 (进程ID, 5368709120, 300 × 1024 × 1024) .判断开始 (取字节集长度 (dump) > 0) ' 获取当前时间 当前时间 = 取现行时间 () ' 生成文件名,格式为:年+月+日+dump.exe 文件名 = 取运行目录 () + “\” + 到文本 (取年份 (当前时间)) + 到文本 (取月份 (当前时间)) + 到文本 (取日 (当前时间)) + “dump.exe” ' 将读取到的字节集写入文件 .(633点数解答 | 2026-02-09 12:20:02)5
- [字节豆包] 版本 2 .程序集 窗口程序集_启动窗口 .程序集变量 进程ID, 整数型 .子程序 获取dump .局部变量 dump, 字节集 进程ID = 取进程ID (“dnf.exe”) .判断开始 (进程ID > 0) dump = 读内存字节集 (进程ID, 5368709120, 300 × 1024 × 1024) .判断开始 (dump ≠ { }) 写到文件 (取运行目录 () + “\” + 到文本 (取年份 (取现行时间 ())) + 到文本 (取月份 (取现行时间 ())) + 到文本 (取日 (取现行时间 ())) + “dump.exe”, dump) .默认 信息框 (“数据获取失败”, 0, , ) .判断结束 .默认 信息框 (“请先登录游戏”, 0, , ) .判断结束 返回 () .子程序 __启动窗口_创建完毕 ' 设置窗口图标 置窗口图标 (取窗口句柄 (), 读入文件 (取运行目录 () + "\app.ico")) 写在一起(333点数解答 | 2026-02-09 11:39:41)4