易语言支持库“辅助调试支持库1.5#1”绝版发行

下载地址为http://www.dywt.com.cn/vbs/dispbbs.asp?boardid=124&id=68533&star=1

-------------------------------------
辅助调试支持库 (1.5#1版)
-------------------------------------

如果不出意外,这将是“辅助调试支持库”的最后一个版本。

本支持库目前提供以下命令:

调试输出()
验证()
等待()
枚举文件()
枚举子目录()
调用子程序()
推迟调用子程序()
取变量数据地址()

其中,调用子程序() 相比上一版本有了大幅改进,可以调用子程序指针和函数地址,并可以取到被调用子程序的返回值。本命令不再与1.5以前版本兼容!
增加了命令:推迟调用子程序(),取变量数据地址()


------------------------------------------------------------------------------------------------
支持库信息:

    支持库名称及版本:辅助调试支持库 (1.5#1版)
    所支持语言:中文(大陆)
    提供“调试输出()”“验证()”等命令,为调试易语言程序提供便利,增强了易语言核心库中的相关调试命令(“输出调试文本()”“检查()”)。
    1.1#0版增加了“枚举文件()”和“枚举子目录()”命令(对易语言核心库中“寻找文件()”命令的增强),可以很方便地递归处理指定目录下的所有文件或子目录。
    1.2#0版增加了“调用子程序()”命令,支持任意多个参数,参数支持除字节集之外的其它所有基本数据类型。
    1.3#0版增加了“等待()”命令(对易语言核心库中“延时()”命令的增强),在等待期间程序可以响应用户操作。感谢易友王军提议。
    1.5#0版完善了“调用子程序()”,支持调用函数地址,可以取到调用后的返回值,并修正了部分参数传递错误;此外增加了命令“推迟调用子程序()”与“取变量数据地址()”。如果不出意外,这将是“辅助调试支持库”的最后一个版本。
    易语言核心支持库与本支持库所处情形不同,核心库需考虑命令的通用性、扩展性及向后兼容性,而本库只需考虑怎样让用户最方便的使用。
    本支持库后续版本还打算继续增强易语言系统核心支持库中的其它命令,您对哪个命令不满意,欢迎提议。
    本库为一般支持库,需要易系统3.7版本的支持,需要系统核心支持库3.7版本的支持,提供了20种命令。
    操作系统需求: Windows

----- 支持库的作者信息 -----
作者姓名:liigo
电子信箱:liigo@sina.com
主页地址:www.liigo.com
其它信息:祝您一帆风顺,心想事成!


liigo,
2005-12-8

QQ: 175199125
Blog: http://blog.csdn.net/liigo/

开箱即用篇 工程解压后就只有如图所示这些: .vs  —— 一些配置文件,非常重要; JBzlib —— 工程源码、、头文件等; JBzlib.sln  —— 解决方案,安装好 vs2017 双击运行直接可以编译。 先不急着打开解决方案,先打开 JBzlib 文件夹: elib —— 实际上就是易的安装目录下的 sdk 文件夹中的 elib,也就是官方提供的支持开发 SDK,其实可以直接 include 的,但是为了打包我直接复制到工程里,这个是我自己电脑上的,5.4.1版本的 SDK,新版的貌似增加和改变了一些东西,更换的时候注意; zlib-1.2.8 —— zlib 1.2.8 的头文件(其实包括源文件也打包了),同样正常情况下是直接 include 的,但是为了打包我直接复制到工程里; zlibstat.lib —— zlib 的静态链接; *.h、*.cpp、*.def —— 这些就是支持的源文件和头文件等了; 其它 —— vs 工程的文件; 好了现在打开刚才的 JBzlib.sln,注意在此之前一定要安装 好 vs2017 (安装的时候不要省空间,跟 c/c++ 有关的全打勾,包括单个组件也打勾,硬盘不值钱。): JBzlib.h  里的 guid 一定不要自己随便编,用 guidgen.exe 来生成(只要你安装了 vs2017,电脑上就一定有 guidgen.exe,搜索一下,或者易的安装目录下也有): JBzlib.cpp  中是主要部分,包括支持的常量、数据类型、导出命令以及命令的参数都在这里,注意 __E_STATIC_LIB 这个宏(都有汉字说明,别瞎改一般不会错): JBzlib.def 这个导出文件一定要有,改个名字复制进去啥都不用管: 自带了 6 种配置: fne、fne_bak  —— 后者是前者的备份,用来编译生成 *.fne 动态支持,但是无法静编; static_lib、static_lib_bak  —— 后者是前者的备份,用来编译生成和 *.fne 对应的 *_static.lib 静态,从而可以静编 debug、release  —— 创建项目自带的,不用管; 原理半解读篇 上面的部分顾名思义,给开箱即用的朋友用的,下面是解读原理,为什么说是半解读呢?因为也是个半吊子,很多都是玄学,凑合看下。 (注意:均以 vs2017 为例) 新建一个动态链接项目: 然后按照打包的工程进行一些文件的复制粘贴改名啥的的导入啥的,能看到这里的应该这点不成问题吧? 然后打开项目属性页,右上角配置管理器,新建 fne 和 static_lib 的 win32 平台的空配置: 然后按照打包的工程的 fne 和 static_lib 配置一项一项地对应着修改配置,不要问为什么,老夫也不知道为什么,它就这样就可以编译成功,不要问为什么,不要问。。。 注意 fne 和 static_lib 的有一个地方都要改一下,跟你的项目名对应,其它的不要动。。。不要动。。。 原理很简单,vs 提供了这种平台工具集,相当于一种降级,就可以让 vc98 成功 link 了。 但是 ,不要用你所希望使用的链接器无法链接的数据类型和函数,尽可能简单,当然如果你的易用的是 vs2015 甚至 vs2017 的链接器,就会好很多。 为什么要打这么多字配这么多图来分享,因为我希望抛砖引玉,能吸引到有能力的朋友来制作支持,毕竟" 用 VC6.0 做个支持吧 " 这种"厚颜无耻"的请求我都不好意思说出口,但是用 vs2017 的话就不一样了,至少是个先进的 IDE,对吧?希望大伙一起给易这潭死水增添一点活力,不要整天觉得别的语言鄙视自己,丰富类,真正把快速开发、简单易用这些做到,还是可能有活路的。 (写到这里,想了想干脆建了个群用来交流,547525064,专注交流支持制作,我自己是个 vc 苦手,希望来几个大佬日常指导~ 哦对了对了,忘了说分享的这个支持具体的用处了: 网页_gzip解压(),都用过吧,这个就是那个用处。 很多人可能跟我一样,用易写请求的时候,为了不多带一个.dll,都不进行压缩也不接收压缩。 但是做爬虫或者请求频繁的时候这样效率很低,用了 gzip 就不一样了,毕竟网络传输和本地解压相比,是很费很费很费时间和资源的。 解压速度方面,调试模式支持调试模式的 zlibwapi.dll 调用慢不少,但是编译后速度还是一致的,很可观。 支持公开的为数不多的命令全是指针操作(没研究怎么让命令可以是自定义数据,而且指针的比较灵活,因为我觉得 gzip 不可预估长度,是更适合流式解压的。 修改了一下 zy 的 zlib 模块的代码,写了个 网页_gzip解压(),测试不多,有 BUG 反馈或者自行修改。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值