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

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

易语言5.32编写宏插件

三叶资源网 2019-06-22 12:25:43 易语言例程 2188 ℃ 1 评论
.版本 2

.程序集 程序集1
.程序集变量 s_pBuffer, 整数型

.子程序 _启动子程序, 整数型

返回 (0)

.子程序 Dll入口函数, 逻辑型, 公开
.参数 hModule, 整数型
.参数 ul_reason_for_call, 整数型
.参数 lpReserved, 整数型

.如果 (ul_reason_for_call = #DLL_PROCESS_ATTACH)

.否则
    .如果真 (ul_reason_for_call = #DLL_PROCESS_DETACH)
        ' 释放所保持的内存
        .如果真 (s_pBuffer ≠ 0)
            HeapFree (GetProcessHeap (), 0, s_pBuffer)
        .如果真结束

    .如果真结束

.如果结束
返回 (真)

.子程序 MacroProcessor, 文本型, 公开
.参数 apImmArgs, 整数型, , IMM_VALUE_WITH_DATA_TYPE
.参数 nNumImmArgs, 整数型
.参数 pProcessResult, 整数型, , IMM_VALUE_WITH_DATA_TYPE
.局部变量 szErrorMessage, 文本型, , , 用作返回错误信息
.局部变量 pImmArg, IMM_VALUE_WITH_DATA_TYPE
.局部变量 ProcessResult, IMM_VALUE_WITH_DATA_TYPE

' 释放上一次调用所使用的内存
.如果真 (s_pBuffer ≠ 0)
    HeapFree (GetProcessHeap (), 0, s_pBuffer)
    s_pBuffer = 0
.如果真结束

.循环判断首 ()
    .如果真 (nNumImmArgs ≠ 1)  ' 参数数目不为1(本插件只能处理一个参数)
        szErrorMessage = “参数数目错误”
        跳出循环 ()
    .如果真结束

    ' 获得第一个参数数据
    RtlMoveMemory1 (pImmArg, apImmArgs, 12)

    ' 设置所返回数据的数据类型和数组类型
    ProcessResult.m_dtDataType = pImmArg.m_dtDataType  ' 数据类型一致
    ProcessResult.m_blIsAry = pImmArg.m_blIsAry  ' 数组类型也一致

    .如果 (pImmArg.m_blIsAry)  ' 参数数据不为数组
        szErrorMessage = “无效的参数数据类型”
        跳出循环 ()
    .否则
        .如果真 (pImmArg.m_dtDataType = #MDT_INT)
            ProcessResult.m_imm = pImmArg.m_imm + 1
            RtlMoveMemory2 (pProcessResult, ProcessResult, 12)
        .如果真结束

    .如果结束

.循环判断尾 (假)
返回 (szErrorMessage)

@ysc3839

文件下载

Tags:

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

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

  • 易语言

    易语言  评论于 [2020-04-07 15:43:45]  回复

    易语言写插件

欢迎 发表评论:

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

网站分类
随机tag
Hadoop深度学习对比两块内存下载链接解析M3U8视频批量转码QQ邮箱IOCP精易源码POST登录抖音支付文件枚举POST上传自动回复XML解析器钓鱼文件搜索微信扫码支付借呗微信发卡机器人qzonetoken
最新评论