如何在VB6.0里动态使用具有事件的对象(又来一篇)

有些对象有事件,如果使用声明为Object的方式,是无法得到事件的.

想使用其事件就得引用此DLL.

如果既想动态调用DLL中的对象,又想使用对象的事件,可以试一下本文的方法(完整代码见后).

总体思路比较简单,如下:

一,利用EditTlb工具(Matthew Curland大师作品,后面有下载)打开目标DLL,直接另存为TLB.
然后再用EditTlb打开这个TLB,改一下GUID,类接口的名称,保存备用.

二,EXE工程里引用这个TLB,利用其中与DLL中对象一模一样的接口,写好事件相
关代码.

三,使用CreateObject创建对象.
如果DLL正确地注册了,那么就会成功,否则会失败.

其中EditTlb工具是重点,让本来需要用ODL语言生成TLB的过程成为过去....

在这种应用中,完全没必要折腾ODL语言,所以有工具还是用工具吧....

关于PowerVB的工具,我打了个包,包括EditTlb在内.还有本文的示例代码:

下载文件 点击下载此文件

PS:

之前在原BLOG里也写了一篇,地址:

..2/blogview.asp?logID=329&cateID=2

现在这篇写得详细一些,感觉应该比原来那篇好懂点吧~~

评论: 0 | 引用: 0 | 查看次数: 1931