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

网站首页 > 易语言相关 > 易语言例程 正文

易语言yasm汇编引擎调用源码

三叶资源网 2019-06-06 10:10:02 易语言例程 2017 ℃ 2 评论

易语言yasm汇编引擎调用源码

@aiwei

.版本 2
.支持库 spec
.支持库 shell

.程序集 窗口程序集_启动窗口

.子程序 _按钮2_被单击
.局部变量 time, 整数型
.局部变量 BIN, 字节集

time = 取启动时间 ()
BIN = Yasm (0, 编辑框1.内容)
调试输出 (“time :” + 到文本 (取启动时间 () - time), BIN)


.子程序 Yasm, 字节集
.参数 byte, 整数型, 可空, 0=0x86 1=0x64
.参数 代码, 文本型
.局部变量 函数地址, 整数型, , , ' 本源码来自三叶资源网(www.sanye.cx)
.局部变量 模块句柄, 整数型
.局部变量 info, type_yasm
.局部变量 输出代码, 字节集
.局部变量 输出长度, 整数型
.局部变量 输出错误, 文本型

输出代码 = 取空白字节集 (取文本长度 (代码))
输出错误 = 取空白文本 (1024)
输出长度 = 0
info.type = 选择 (byte = 0, 0, 1)
info.pTextCode = 取变量数据地址 (代码)
info.pOutBin = 取变量数据地址 (输出代码)
info.pSize = 取变量数据地址 (输出长度)
info.pError = 取变量数据地址 (输出错误)
.如果 (汇编 (取变量数据地址 (info.type)))
    输出代码 = 取字节集左边 (输出代码, 输出长度)
.否则
    输出代码 = {  }
    调试输出 (输出错误)
.如果结束
返回 (输出代码)

.子程序 汇编, 逻辑型
.参数 info, 整数型
.局部变量 value, 整数型
.局部变量 ptr, 整数型
.局部变量 Hmoudle, 整数型
.局部变量 path, 文本型

path = 取特定目录 (11) + “yasm.dll”
.如果真 (文件是否存在 (path) = 假)
    写到文件 (path, #yasm)
.如果真结束
value = 1
Hmoudle = LoadLibraryA (path)
.如果真 (Hmoudle < 1)
    返回 (假)
.如果真结束
ptr = GetProcAddress (Hmoudle, “Yasm_asm”)
.如果真 (ptr < 1)
    FreeLibrary (Hmoudle)
    返回 (假)
.如果真结束
调用子程序 (ptr, , value, info)
FreeLibrary (Hmoudle)
返回 (value = 0)
文件下载

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

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

欢迎 发表评论:

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

网站分类
随机tag
UDP源码API辣妈帮标签浏览器吃鸡辅助检测代理IP黑月版鼠标源码靠边隐藏LOL界面UI刺激战场枚举图片微信易包做插件python list取QQKEY图像缩放COMHOOK类模块源码小号桃源挖矿
最新评论