开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 5106|回复: 17
收起左侧

[易语言纯源码] 【开源】【2014.11.15】易语言编写支持库模版,动、静态版。

[复制链接]
结帖率:100% (11/11)
发表于 2014-11-15 16:12:30 | 显示全部楼层 |阅读模式   贵州省遵义市
分享源码
界面截图:
是否带模块: 纯源码
备注说明: -
本帖最后由 SalHe 于 2014-11-15 22:11 编辑

静态编译截图.png

!!!当前版本:2014.11.15
!!!更新内容:
!!!          [+]支持编写静态库(至于步骤请往下看)
!!!          [+]增加静态库转换工具, 在随本模版的压缩包内(源码)
!!!          [+]增加 类_写易库.设置_静态库模式() 方法, 用于指定静态库的导出函数名
!!!          [-]对 类_写易库.添加命令() 做了改动,主要修改链接名
!!!          [-]修复易语言无法读取链接名的BUG



========== 1.易支持库机制 ==========
!!!易支持库的库信息、命令信息等等均使用某个结构储存
!!!易源码中的自定义数据类型、类模块、组件即为支持库中的库定义数据类型
!!!易语言通过 GetNewInf() 获取支持库信息
!!!所以支持库必须导出这个函数

========== 2.支持库命令调用 ==========
!!!支持库的命令调用方式也比较特殊
!!!每个命令需要三个参数:返回值指针,参数数目,参数信息指针
!!!做个一个库定义数据类型的方法,每个方法的第一个参数为指向该对象的结构指针

========== 3.简单说下易源码 ==========
!!!易保存源码时没有保存各信息名称(比如命令名、数据类型名),而是保存了索引
!!!所以支持库内的各信息有必要时可以修改
!!!但不要改动TA们的顺序,这会导致前期版本的源码出现问题

========== 4.模版说明 ==========
!!!本模版整天来说思路清晰,代码连小白都能理解
!!!模版多数的参数使用通用型,使得模版简便
!!!模版内没有多说废话, 直接把关键的过了一遍, 足够写支持库了
!!!每条命令都演示了支持库的各种操作,能想到的都先写了
!!!暂时没写组件,目前没什么时间了,玩着电脑也冷~
!!!尽量抽时间将组件的开发也模块化
!!!或者各位有心人士可参考 e\sdk\cpp\samples\HtmlView 写一下

========== 5.关于静态库 ==========
!!!静态库的编译本人提供了两种方式,不过两种方式都必须要符合下面的要求
!!!必须导出(易语言里打上公开属性)库信息通知函数, 函数名必须符合 libName_ProcessNotifyLib 的规则
!!!必须导出所有命令实现函数,函数名必须符合 libName_xxx 的规则
!!!必须导出所有窗口单元信息函数,函数名必须符合 libName_GetInterface_控件英文名。2014.11.13这个版本的模版包括前面的暂时木有组件,所以不会有这个函数
!!!
!!!第一种方法(#静态库模式_SalHe)
!!!将支持库编译
!!!此时还不能做为静态库发布
!!!使用本人写的工具 FNE转LIB 将编译后的支持库转换
!!!转换之后的文件即可作为静态库发布了
!!!工具的使用方法详见工具的自我介绍
!!!
!!!第二种方法(#静态库模式_WonderWall)
!!!下载一个易语言支持库(插件):WonderWall
!!!易语言勾上这个支持库之后并开启静态库编译功能(易语言菜单 -> 工具 -> WonderWall)

!!!易语言菜单 -> 编译 -> 静态库编译
!!!此时再拖入工具中加工(进行符号重命名)
!!!
!!!至于我写的那个工具也放得有源码, 所以要知道原理的话可以看看源码
!!!
!!!那么WonderWall编译静态库为什么要另外弄个模式呢?请转到 类_写易库.添加命令() 查看, 看的更清楚

========== 6.为何选择支持库 ==========
!!!其实用模块扩展程序也是足够了
!!!选择做支持库还是安全的
!!!而且支持库有许多模块做不到的功能

========== 7.关于易功能函数 ==========
!!!顾名思义, 就是易内部提供给支持库的函数
!!!主要的用法呢还是得参考 lib2.h(位于 e\sdk\cpp\elib\lib.h)
!!!虽说是一个C++头文件,但是语文好点、懂易语言就能理解
!!!小学生的语文水平就差不多啦
!!!我还是把一些常用的写到了 类_易功能 这个类里面
!!!各位同学可以看看、、

========== 【最后】 ==========
!!!直说:本人纯属菜鸟一枚, 各路大神勿喷即可

==========  【信息】  ==========
!!!模版:易支持库模版
!!!作者:SalHe(Rabbit Group)
!!!声明:大鸟勿喷即可
!!!日期:2014年11月15日
!!!论坛:
!!!      精易论坛http://bbs.125.la/uid-186545
!!!      易语言官方论坛:http://bbs.eyuyan.com/u.php?uid=633871

其他信息未改动,如需了解,请查看第一版本帖子
http://bbs.125.la/thread-13754951-1-1.html

最后,不喜勿喷

第一个模版里我说过静态库有些问题
如果真的出了问题各位试试改改
可能是我出了问题,小白嘛,多多见谅

上附件。
主要是工具包含文件大约2MB,不能用一个压缩包上传,所以把模版和工具分开
[2014.11.15]fne2lib.zip (1.96 MB, 下载次数: 201)

评分

参与人数 6好评 +3 精币 +48 收起 理由
小鸿同学 + 1 奉上小小红包希望笑纳
醉看ジ笑红颜づ + 1 + 5 支持开源~!感谢分享
一夜白头 + 1 支持开源~!感谢分享
冰点 + 1 + 20 支持开源~!感谢分享
半夏时光 + 1 + 20 支持开源~!感谢分享
longhun + 1 支持开源~!感谢分享

查看全部评分


本帖被以下淘专辑推荐:

结帖率:89% (67/75)

签到天数: 1 天

发表于 2024-7-3 23:37:24 | 显示全部楼层   浙江省宁波市
附件 fne2lib.zip 不能下载了
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
发表于 2016-4-15 17:16:19 | 显示全部楼层   山西省晋中市

感谢楼主分享,非常感谢~~
回复 支持 反对

使用道具 举报

结帖率:37% (7/19)
发表于 2014-11-23 20:50:46 | 显示全部楼层   北京市北京市
排版不错呢   
回复 支持 反对

使用道具 举报

结帖率:86% (49/57)
发表于 2014-11-22 17:19:51 | 显示全部楼层   广西壮族自治区南宁市
同求
回复 支持 反对

使用道具 举报

结帖率:86% (49/57)
发表于 2014-11-22 13:45:50 | 显示全部楼层   广西壮族自治区南宁市
貌似很不错来看看;了
回复 支持 反对

使用道具 举报

结帖率:20% (1/5)
发表于 2014-11-19 14:51:06 | 显示全部楼层   广东省深圳市
学习,很高深的说
回复 支持 反对

使用道具 举报

结帖率:65% (28/43)

签到天数: 6 天

发表于 2014-11-18 22:20:00 | 显示全部楼层   四川省广元市
没好评 了。
回复 支持 反对

使用道具 举报

结帖率:100% (6/6)

签到天数: 5 天

发表于 2014-11-16 12:47:40 | 显示全部楼层   河南省郑州市
不错,收藏学习下~
回复 支持 反对

使用道具 举报

发表于 2014-11-16 08:02:23 | 显示全部楼层   江苏省无锡市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

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

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

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