动态调用库函数支持库 (1.1#0版)

上一篇 / 下一篇  2007-04-10 20:27:45

  • 文件版本: V1.0
  • 开发商: 本站原创
  • 文件来源: 本地
  • 界面语言: 简体中文
  • 授权方式: 免费

一、动态调用DLL

就是用LoadLibrary、GetProcAddress和FreeLibrary,没什么新鲜的

比较有创意的是用一个命令就可调各种不同的API,支持_stdcall(WINAPI)和__cdecl(C方式)调用方式(可以调用一些用C语言编写的DLL了

自定义类型数据不能直接代入参数,要用字节集类型代替。除非自定义数型的成员都为整数型或4字节的类型(和易语言数据对齐字节数有关)。

二、调用COM对象

用另一种全新思路重新进行调用,支持参数的空、传址,取回错误信息、自动生成源码

例子演示对精灵助手的调用

三、调用IUNKNOWN接口

例子演示了快捷方式的创建和查询操作,结束了易语言调用IUNKNOWN接口对象比较烦琐的历史,可以使用很多功能,当然还要对这类接口有一定的了解才行

 

 1.1#0版更新:

1、修改_cdecl调用方式的BUG,和枚举常量缺少和错误(如果你已经生成过源码,须重新生成,因为枚举常量顺序变了)

2、“未知接口”增加创建、取接口和是否为空的方法。用于方便创建和调用IUnknown接口

 1.0#2版更新:

1、修改调用一些COM对象出错的问题(不是IDISPATCH接口)

2、增加错误陷井,调用COM对象更稳定

3、修改自动产生源码时IUNKNOWN类型不对,但仍有少数参数类型出错,以易语言本身的查看()为准

4、增加了精灵例子的内容,示范用枚举接口枚举所有动作名称,和用易语言伪造SINK事件接收器,接收所有精灵的事件,现在可以使用精灵全部功能了,甚至比原来编的精灵支持库更强,看看我怎么用这个支持库和易语言能人之所不能。图片点击可在新窗口打开查看

图片点击可在新窗口打开查看还是菜鸟太多,不了解这个支持库的代势,只看到第一个动态调用的,第一个功能实际上是后面调用接口而准备的。别看这个支持库的命令少,越接近低层的东东,编写的就越灵活,更能编出强大的功能,几乎所有继承IUNKNOWN接口的,都可以调用了,VB都做不到这点,当然查看相应的H文件才能确定方法序号和参数,这要有VC的基础

后记:本来说过不再编写支持库,不过看到新版易语言不是那么回事。不能调用API,不能自定义API用到的数据结构,功能扩展完全要依靠类库,所以突发奇想,或许到时可以用这种动态调用的方式来解决,就难免心痒痒,忍不住要动手验证一下图片点击可在新窗口打开查看图片点击可在新窗口打开查看

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-10-15  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 835
  • 文件数: 6
  • 建立时间: 2006-05-27
  • 更新时间: 2007-04-10

RSS订阅

Open Toolbar