开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 36979|回复: 278
打印 上一主题 下一主题
收起左侧

[易语言软件开源] 【原创+首发】将文本的易语言代码转换为易命令(流量勿入),支持DLL,数据类型,常量...

    [复制链接]

结帖率:100% (4/4)
跳转到指定楼层
发表于 2018-8-20 16:24:15 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式   四川省宜宾市
分享源码
界面截图:
是否带模块: 纯源码
备注说明: -
这个帖子我先声明下,这个不是标题党,而是真正把易代码(DLL,数据类型,子程序和常量都可以)直接转换为易文件!!!利用了易向导支持库 (2.0#0版)(其实本帖子也是一个教程哦)
记得当时@易正易则 和@镇坛道德标杆 因为一个TXT转成易文件而大打出手(撕 逼而已)然后我就萌生了这个想法
有人记得易向导支持库 (2.0#0版)吗?(别说记得,有没有这个支持库恐怕很多易友都不知道吧?)
而本程序,就是根据易向导支持库来编写的(什么?易向导支持库??编写易向导???之前有这种东西????
还真的有(回去看看黑月和易语言支持库编写向导)
但是向导源码网络是有吗?
有的(曾经有人开源过)
但是那个源码注释也没有啊?命令一脸懵
这个倒是对的!
所以我就动手开始研究易向导支持库(你以为很容易啊,用了2天!!就研究10多个命令)
进入正题:
先来看看这些命令的全部解释:
解释.txt (13.66 KB, 下载次数: 126)
然后呢?加入输入了DLL之类的东西之后怎么办呢??是怎么判断有多少个DLL以及其他的呢???
还记得我的一个帖子吗?
超级用户—易语言代码解析类
http://bbs.125.la/forum.php?mod=viewthread&tid=14089448
(出处: 精易论坛)
当时说这个东东有什么用(现在你看有用了没??)
回到正题:
至于“置作者信息”“置程序信息”这俩命令估计一看就懂
然后进入核心部分
其中有一些东西要许是必须掌握的,那就是(解释):
  
' 数据类型名称:程序项类型    英文名称:AppItemType
' 本数据类型为枚举常量集合类型,共包含 13 个枚举常量值。
' 操作系统需求: Windows
' 本类型用作提供所有可用的程序项类型。
' 枚举常量值<1>的中文名称为“程序集”,英文名称为“Module”,值为1。
' 枚举常量值<2>的中文名称为“子程序”,英文名称为“Sub”,值为2。
' 子程序可以“子程序名称”或“程序集名.子程序名”格式来表示。
' 枚举常量值<3>的中文名称为“全局变量”,英文名称为“GlobalVar”,值为4。
' 枚举常量值<4>的中文名称为“程序集变量”,英文名称为“ModuleVar”,值为8。
' 程序集变量以“程序集名.变量名”格式来表示。
' 枚举常量值<5>的中文名称为“局部变量”,英文名称为“LocalVar”,值为16。
' 局部变量以“子程序名.局部变量名”或“程序集名.子程序名.局部变量名”格式来表示。
' 枚举常量值<6>的中文名称为“子程序参数”,英文名称为“SubArg”,值为32。
' 子程序参数以“子程序名.参数名”或“程序集名.子程序名.参数名”格式来表示。
' 枚举常量值<7>的中文名称为“数据类型”,英文名称为“DataType”,值为64。
' 枚举常量值<8>的中文名称为“数据类型成员”,英文名称为“DataTypeElement”,值为128。
' 数据类型成员以“数据类型名.成员名”格式来表示。
' 枚举常量值<9>的中文名称为“DLL命令”,英文名称为“DllCmd”,值为256。
' 枚举常量值<10>的中文名称为“DLL命令参数”,英文名称为“DllCmdArg”,值为512。
' DLL命令参数以“DLL命令名.参数名”格式来表示。
' 枚举常量值<11>的中文名称为“窗口”,英文名称为“Win”,值为1024。
' 枚举常量值<12>的中文名称为“窗口组件”,英文名称为“WinControl”,值为2048。
' 窗口组件以“窗口名.窗口组件名”格式来表示。
' 枚举常量值<13>的中文名称为“常量或资源”,英文名称为“Resource”,值为4096。
' 组件事件列表:
' 枚举常量值“程序集”所处集合数据类型为“程序项类型”,英文名称为“Module”,值为1。
' 枚举常量值“子程序”所处集合数据类型为“程序项类型”,英文名称为“Sub”,值为2。
' 子程序可以“子程序名称”或“程序集名.子程序名”格式来表示。
' 枚举常量值“全局变量”所处集合数据类型为“程序项类型”,英文名称为“GlobalVar”,值为4。
' 枚举常量值“程序集变量”所处集合数据类型为“程序项类型”,英文名称为“ModuleVar”,值为8。
' 程序集变量以“程序集名.变量名”格式来表示。
' 枚举常量值“局部变量”所处集合数据类型为“程序项类型”,英文名称为“LocalVar”,值为16。
' 局部变量以“子程序名.局部变量名”或“程序集名.子程序名.局部变量名”格式来表示。
' 枚举常量值“子程序参数”所处集合数据类型为“程序项类型”,英文名称为“SubArg”,值为32。
' 子程序参数以“子程序名.参数名”或“程序集名.子程序名.参数名”格式来表示。
' 枚举常量值“数据类型”所处集合数据类型为“程序项类型”,英文名称为“DataType”,值为64。
' 枚举常量值“数据类型成员”所处集合数据类型为“程序项类型”,英文名称为“DataTypeElement”,值为128。
' 数据类型成员以“数据类型名.成员名”格式来表示。
' 枚举常量值“DLL命令”所处集合数据类型为“程序项类型”,英文名称为“DllCmd”,值为256。
' 枚举常量值“DLL命令参数”所处集合数据类型为“程序项类型”,英文名称为“DllCmdArg”,值为512。
' DLL命令参数以“DLL命令名.参数名”格式来表示。
' 枚举常量值“窗口”所处集合数据类型为“程序项类型”,英文名称为“Win”,值为1024。
' 枚举常量值“窗口组件”所处集合数据类型为“程序项类型”,英文名称为“WinControl”,值为2048。
' 窗口组件以“窗口名.窗口组件名”格式来表示。
' 枚举常量值“常量或资源”所处集合数据类型为“程序项类型”,英文名称为“Resource”,值为4096。
' 数据类型名称:程序项属性    英文名称:AppItemProperty
' 本数据类型为枚举常量集合类型,共包含 12 个枚举常量值。
' 操作系统需求: Windows
' 本类型用作提供所有可用的程序项属性。
' 枚举常量值<1>的中文名称为“名称”,英文名称为“Name”,值为1。
' 文本型数据。
' 枚举常量值<2>的中文名称为“备注”,英文名称为“Explain”,值为2。
' 需要文本型数据,如果设置时提供“$”特定字符串,则只清除已有备注内容中所有的标记和模板条件文本,而不实际置入“$”。
' 枚举常量值<3>的中文名称为“常量或资源值”,英文名称为“Context”,值为3。
' 数据类型根据具体常量或资源数据类型定。
' 枚举常量值<4>的中文名称为“数据类型”,英文名称为“DataType”,值为4。
' 譬如变量的数据类型、子程序和DLL命令的返回值数据类型等,数据类型为本支持库中所提供的“程序项数据类型”。
' 枚举常量值<5>的中文名称为“数组类型”,英文名称为“AryType”,值为5。
' 使用形如“xxx”或“xxx, xxx, ...”的格式文本分别提供单维和多维数组定义,其中“xxx”为数值,代表对应维的上限值。
' 枚举常量值<6>的中文名称为“静态”,英文名称为“Static”,值为6。
' 逻辑型数据。
' 枚举常量值<7>的中文名称为“参考”,英文名称为“ByRef”,值为7。
' 譬如变量的“参考”类型,DLL命令的“传址”类型等,为逻辑型数据。
' 枚举常量值<8>的中文名称为“可空”,英文名称为“AllowEmpty”,值为8。
' 逻辑型数据。
' 枚举常量值<9>的中文名称为“公开”,英文名称为“Public”,值为9。
' 逻辑型数据。
' 枚举常量值<10>的中文名称为“收缩”,英文名称为“Hidden”,值为10。
' 提供子程序的收缩隐藏状态,为逻辑型数据。
' 枚举常量值<11>的中文名称为“DLL库文件名”,英文名称为“DllLibFileName”,值为11。
' 文本型数据。
' 枚举常量值<12>的中文名称为“DLL库命令名”,英文名称为“DllLibCmdName”,值为12。
' 文本型数据。
' 组件事件列表:
' 枚举常量值“名称”所处集合数据类型为“程序项属性”,英文名称为“Name”,值为1。
' 文本型数据。
' 枚举常量值“备注”所处集合数据类型为“程序项属性”,英文名称为“Explain”,值为2。
' 需要文本型数据,如果设置时提供“$”特定字符串,则只清除已有备注内容中所有的标记和模板条件文本,而不实际置入“$”。
' 枚举常量值“常量或资源值”所处集合数据类型为“程序项属性”,英文名称为“Context”,值为3。
' 数据类型根据具体常量或资源数据类型定。
' 枚举常量值“数据类型”所处集合数据类型为“程序项属性”,英文名称为“DataType”,值为4。
' 譬如变量的数据类型、子程序和DLL命令的返回值数据类型等,数据类型为本支持库中所提供的“程序项数据类型”。
' 枚举常量值“数组类型”所处集合数据类型为“程序项属性”,英文名称为“AryType”,值为5。
' 使用形如“xxx”或“xxx, xxx, ...”的格式文本分别提供单维和多维数组定义,其中“xxx”为数值,代表对应维的上限值。
' 枚举常量值“静态”所处集合数据类型为“程序项属性”,英文名称为“Static”,值为6。
' 逻辑型数据。
' 枚举常量值“参考”所处集合数据类型为“程序项属性”,英文名称为“ByRef”,值为7。
' 譬如变量的“参考”类型,DLL命令的“传址”类型等,为逻辑型数据。
' 枚举常量值“可空”所处集合数据类型为“程序项属性”,英文名称为“AllowEmpty”,值为8。
' 逻辑型数据。
' 枚举常量值“公开”所处集合数据类型为“程序项属性”,英文名称为“Public”,值为9。
' 逻辑型数据。
' 枚举常量值“收缩”所处集合数据类型为“程序项属性”,英文名称为“Hidden”,值为10。
' 提供子程序的收缩隐藏状态,为逻辑型数据。
' 枚举常量值“DLL库文件名”所处集合数据类型为“程序项属性”,英文名称为“DllLibFileName”,值为11。
' 文本型数据。
' 枚举常量值“DLL库命令名”所处集合数据类型为“程序项属性”,英文名称为“DllLibCmdName”,值为12。
' 文本型数据。


其中我们会用到大量的这些集合常量
首先核心是解析代码:
很简单对吧(调用模块就可以了)
然后进入让人崩溃的部分:
(题外话:写的时候我的心态也差点崩了)
虽然看着很密集(废话),但是注释基本都是精确到行的(废话,不写注释还让易友怎么学习)
其中,有些易友可能看出来了,这些都是需要模板的
模板已经写好,放点图片:
有的小伙伴可能已经看到了,子程序的注释有$(a),这个是标注程序为a的意思(可以便于识别并且在最后部分删除)
然后??
然后就可以以此类推啦……
大部分的源码都加上了注释(打字打得伤心
然后易向导支持库就应该基本都会了~~(那么以后都应该知道易向导是怎么工作的吧?)
(其实写向导真的不难)
打了那么多字(早就打痛了)
最后还是那句老话:源码回复下载!!
最后说一句:如果你觉得可以的话,请:
一下(点2下又不会扣分,而且还会加精币哦!!!加精币哦!!!),源码回复下载!!万水千山总是情,给个好评行不行?人间自有真情在,不给好评不是爱!

易代码转易文件(易向导).zip (347.51 KB, 下载次数: 587)

点评

火钳刘明。谢谢合作   北京市北京市  发表于 2018-8-20 16:54

评分

参与人数 56好评 +45 精币 +97 收起 理由
dzscuz + 1 + 1 新技能已get√
gf5225537 + 1 支持开源~!感谢分享
1592363624 + 1 + 2 我就只是来评个分的,真的没别的
已注销482053 + 1 + 2 新技能已get√
莫桂烨 + 1 感谢分享,很给力!~
Mick + 1 新技能已get√
simonsww + 1 + 1 感谢分享,很给力!~
红夕阳丶 + 1 很好很强悍,坚持下去哦~
dwcq + 1 大神,请收下我的膝盖
liuxiweb + 1 牛叉
易莫名 + 1 + 3 感谢分享,很给力!~
我是菜鸟我怕谁 + 1 感谢发布原创作品,一定好好学习,天天向上
蓝蓝2018 + 1 新技能已get√
石榴熟了 + 3 很棒
xszn + 1 支持开源~!感谢分享
纯情小黄牛 + 1 + 1 精彩文章希望继续努力
tyuttyu + 1 + 2 支持开源~!感谢分享
王先生 + 1 + 1 支持开源~!感谢分享
zzy92sx + 1 支持开源~!感谢分享
回不到的过去 + 1 + 1 支持开源~!感谢分享
badlwolf + 1 + 1 支持开源~!感谢分享
maryma + 1 + 1 支持开源~!感谢分享
onlydbg + 1 + 2 感谢发布原创作品,精易因你更精彩!
被封禁言 + 1 支持开源~!感谢分享
忧郁之子 + 1 + 1 感谢分享,很给力!~
qr99339800 + 1 支持开源~!感谢分享
我是神基本 + 1 + 2 感谢分享,很给力!~
三叶花 + 1 + 2 支持开源~!感谢分享
545176793 + 1 + 2 感谢分享,很给力!~
平凡爷 + 1 感谢发布原创作品,精易因你更精彩!
wg521125 + 1 + 2 新技能已get√
178826559 + 1 + 2 感谢发布原创作品,精易因你更精彩!
zhouw + 1 + 2 支持开源~!感谢分享
熊猫巴布 + 1 + 2 为何你如此优秀
国王软件 + 1 + 2 感谢分享,很给力!~
jxj060 + 1 支持开源~!感谢分享
黑网达人 + 1 + 2 感谢发布原创作品,精易因你更精彩!
wanzhenghe999 + 1 + 2 感谢分享,很给力!~
汉族 + 1 + 2 新技能已get√
够爱 + 1 + 2 万水千山总是情,给个好评我看行~
517027168 + 1 感谢分享,很给力!~
ko44 + 1 + 2 支持开源~!感谢分享
冯古屋 + 1 + 1 支持开源~!感谢分享
juzhen + 1 奉上小小红包希望笑纳
Code123 + 1 很赞同,谢谢!
陈大奶么么哒 + 1 + 3 支持开源~!感谢分享
ffsfdsa + 1 + 2 支持开源~!感谢分享
万里晴空 + 1 + 2 精华终结者
鄉村狼叔 + 1 + 2 支持开源~!感谢分享
这就是用户名 + 1 + 2 支持开源~!感谢分享
zl2017 + 1 + 2 支持开源~!感谢分享
大司命 + 1 + 3 感谢发布原创作品,精易因你更精彩!
空竹 + 1 我读书少,不要骗我
Dora55266839 + 1 支持开源~!感谢分享
第二人生 + 1 + 2 感谢发布原创作品,精易因你更精彩!
冰点 + 1 + 20 感谢发布原创作品,精易因你更精彩!

查看全部评分


本帖被以下淘专辑推荐:

结帖率:100% (4/4)

签到天数: 28 天

来自 275楼
 楼主| 发表于 2018-8-22 10:04:17 | 只看该作者   四川省宜宾市
如果不知道怎么用的,请看这里
把这个编译出来后放在文件夹“wizard”里面
然后用执行易向导的方式一些即可
回复 支持 反对

使用道具 举报

结帖率:81% (17/21)

签到天数: 23 天

274
发表于 2024-3-18 22:01:46 | 只看该作者   河北省石家庄市
优秀的大佬
回复 支持 反对

使用道具 举报

273
发表于 2023-9-3 12:30:06 高大上手机用户 | 只看该作者   河南省郑州市
新手
回复 支持 反对

使用道具 举报

272
发表于 2023-9-3 12:27:06 高大上手机用户 | 只看该作者   河南省郑州市
回复 支持 反对

使用道具 举报

271
发表于 2023-4-14 16:53:48 | 只看该作者   上海市上海市
感谢发布原创作品,一定好好学习,天天向上
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)

签到天数: 5 天

270
发表于 2022-9-17 10:29:47 | 只看该作者   浙江省宁波市
        感谢分享,很给力!~
回复 支持 反对

使用道具 举报

结帖率:100% (2/2)

签到天数: 3 天

269
发表于 2022-9-6 11:01:28 | 只看该作者   河南省信阳市
厉害了
回复 支持 反对

使用道具 举报

268
发表于 2021-12-5 16:43:51 | 只看该作者   河南省漯河市
学习一下,大佬牛皮
回复 支持 反对

使用道具 举报

签到天数: 7 天

267
发表于 2021-11-21 11:20:06 | 只看该作者   云南省曲靖市
可以可以
回复 支持 反对

使用道具 举报

结帖率:55% (6/11)
266
发表于 2021-6-5 07:51:48 | 只看该作者   福建省莆田市
可以可以
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 1 天

265
发表于 2020-8-24 10:07:34 | 只看该作者   山东省济南市

支持开源~!感谢分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表