易语言资源网 - 做最全的易语言资源下载社区
<易语言软件开发工程师>第10期(预报名) 注册 登录

云的OLE驱动支持库1.0#0(YunOleDriver.fne)   [复制链接]

    2021-03-15 19:49:35
    第三方支持库
    易语言资源网
    699 次浏览
    来源链接

虽然未必是你需要的,但是肯定有用又有趣。

本支持库是封装OCX组件用的。

与官方的NPK封装相比,一可以静态编译,二没有NPK封装OCX组件的底板窗口。

许多年前,老吴说OCX组件必须需要一个CWnd类型的窗口做为底板,才可以收到事件。但是前些天,我突然感悟,易所有的窗口组件都是CWnd类型的,何必再多一个底板窗口?!

于是,我做了这个支持库,不用底板窗口,将OCX组件直接创建在易窗口上。没有了底板窗口,就像不戴套一样,与OCX组件之间少了一层隔膜,多了一份亲密的接触。

一、封装了FLASH组件,才知道多年以前QQ会员专用的魔法表情的透明镂空窗体是怎么做出来的,但是知道得太迟了,当年正火的FLASH组件现在已经被禁用了,如果你能打开例程就可以看到是不是被禁用了,物饰人非。

二、封装IE浏览器组件,所有的按键事件都接上了。还可以挂接指定事件接口,方便用网页做界面的易友,网页就是UNICODE多国语界面的,也是直绘界面,何必他求?!意义和用处自悟,不必多说。

三、封装了丰富文本框RichTextBox组件。TAB键输入,自己用代码补上了。易核心库也卡不住这个键了。

四、封装了MSWinsock组件。是比易的服务器、客户和数据报组件好用一些。

五、封装了ADODB对象。测试可以正常调用。

这次把支持库的方法具体用法说明一下,方便易友做二次修改。虽然有自动生成代码的工具,但是生成代码也有不尽如人意的地方。

首先是类型的常量值要知道一下。

调用的参数表里的类型和取置属性的类型常量:

短整数型 = 2

整数型 = 3

小数型 = 4

双精度小数型 = 5

货币型(易语言没有) = 6

日期时间型 = 7

OLE宽文本(易语言没有的UNICODE字符串) = 8

对象 = 9

错误代码(易语言没有) = 10

逻辑型 = 11

变体型 = 12

未知接口(易语言没有) = 13

文本型 = 14

字节型 = 15

这里注意一下,文本类型,在取置属性用8,表示是原型BSTR宽文本。如果是方法调用的参数表里,表示这个参数是文本的,用14,表示传入的ASCII编码的文本,内部会自动转成所需求BSTR

参数是参考(传址)的需要在类型常量值上加64做为参考的标志,比如:

短整数型指针 = 2 +64=66

整数型指针 = 3 +64=67

小数型指针 = 4 +64=68

双精度小数型指针 = 5 +64=69

货币型指针(易语言没有) = 6 +64=70

日期时间型指针 = 7 +64=71

OLE宽文本指针(易语言没有的UNICODE字符串) = 8 +64=72

对象指针 = 9 +64=73

错误代码指针(易语言没有) = 10 +64=74

逻辑型指针 = 11 +64=75

变体型指针 = 12 +64=76

未知接口指针(易语言没有) = 13 +64=77

字节型指针 = 15 +64=79

这里注意一下,文本类型,没有传址的文本类型,14+64,只有BSTR宽文本指针 8+64。

参数是可空的,同理加上128做为标志,可以和参考标志叠加。

做为修改调用参数表里参数说明,参数表(字节集)从第一个字节开始,与参数排序和类型相对应,每个字节表示对应参数的类型(就是以上的表示方法)。最后参数表以{0,0}做为结束。调用方法内部就可以知道有多少个参数传进来。

修改的范例:

这个取粗体,肯定是返回逻辑值,这里却用变体型返回,这里要改一下才好用

修改方法参数类型,多是变体型的,这在脚本语言是当通用类型用的

类型修改后,只要是支持库内部支持转换的,都能正常调用。



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

支持库信息


支持库名称:云的OLE驱动支持库1.0#0
支持库文件名:YunOleDriver.fne
支持库类型:动态库
支持库开发者:云外归鸟
支持库 GUID:{78B89741-2A1B-4474-BE83-7062BE357E99}
所需链接器:未测试
下载链接:
本地下载
云的OLE驱动支持库1.0#0(YunOleDriver.fne)



[错误报告]   上一篇:云的丰富文本框支持库2.2#0(YunR...     下一篇:鼠标移动轨迹-用贝尔曲线实现...