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

【宏】一个简单的宏插件   [复制链接]

    2019-11-11 08:55:16
    模块控件源码
    易语言资源网
    6644 次浏览
    来源链接

前言

  • 什么是宏?
    • 宏是易语言中在编译程序时,通过提供一系列自定义的常量数据参数来调用系统内置或者外部提供的程序接口,获得其处理结果并将其整合进编译结果中,命令参数表中最后一个参数可以被重复添加。

命令实现:

  • 宏插件导出函数名为:“MacroProcessor”,返回值是ErrorCode,即错误信息。(如果没有错误信息就返回NULL, 用字符(0)即可)
  • 宏插件中数据类型均为“IMM_VALUE_WITH_DATA_TYPE”
  • 下面是对于“IMM_VALUE_WITH_DATA_TYPE”部分介绍:
参数含义
m_dtDataType参数数据类型
m_blIsAry是否为数组数据 TRUE/FALSE
m_imm数据指针
m_Data数据地址(实际处理时使用m_imm,这里我觉得叫保留更好)

可以干什么:

  • 我首先想到的当然是内联,于是就把汇编编译器搬了进去(下面是部分命令实现过程):
  • " alt="" />
  • 代码测试:
  • " alt="" />
  • 当然了,还可以进行编码转换处理,比如说进行编译前编码Ansi(当然宏只能处理常量),那么,程序的执行效率理论上会提高(执行命令时不必再次走一下编码过程)

    本宏的使用

  • “ASM”文件夹请放在e的主目录!!!(和汇编插件类似,“需要FASM.DLL支持”)

  • 编译出的“Coding_plugin.dll”请放在“\e\plugins”目录下,这样e系统才会编译宏



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

引用模块





引用支持库


源码文件名 支持库文件名 支持库标识
宏插件_源码.e 系统核心支持库 5.3 d09f2340818511d396f6aaf844c7e325
测试.e 系统核心支持库 5.3 d09f2340818511d396f6aaf844c7e325


[错误报告]   上一篇:QQ群签到源码     下一篇:计算坐标点是否在不规则四边形内...