如何在Delphi中调用VB编写的DLL?(50分)

  • 主题发起人 主题发起人 davidc
  • 开始时间 开始时间
D

davidc

Unregistered / Unconfirmed
GUEST, unregistred user!
我在Delphi 5中可以很轻易的调用BCB编写的DLL,但调用VB编写的DLL就始终
告诉我找不到DLL里面的函数,启动程序时告诉我与系统连接的设备不能正常运
转。VB的函数是声明在类模块中的,但在Delphi中怎样建立相似的东东?
是不是可以把它作为OLE调入,具体该怎么做?请高手指点,谢谢!
 
请大家帮帮忙,我现在急用!
 
笨办法,把它包装到一个active x控件中,
在安装到delphi中。
 
VB只能写ActiveX DLL, 和普通的DLL不是一回事.

如果你一定要用,先用regsvr32注册这个DLL ,然后当作axtivex控件import进来
,也许能用.
 
多谢大家的相助,这个问题我已经解决,现在将我的解决方法简单讲述一下:
首先通过Project/Import Type Libbrary 注册这个DLL,然后在这个界面下选择
Install,Delphi会给这个DLL建立一个单元文件,然后在你的工程中Uses这个单元,
因为DLL中的函数是在VB中的类模块里定义的,所以,在你的工程中必须用OCObjectInstance函数将这个类实例化,就可以调用这个类里面的函数了.
 
>>首先通过Project/Import Type Libbrary 注册这个DLL
说法好像不太准确,应该是DLL首先被注册了,你才能import它的类型库.
 
谢谢!
又有了新的收获!
 
怎样实现“用OCObjectInstance函数将这个类实例化”
 
用Delphi/BIN/TDUMP.EXE 查一下 *.Dll中的内容
用LoadLibry打开库
Get其中的函数即可
 
VB写的DLL不是标准的DLL(微软说的),所以不能调用,为什麽不用DELPHI写DLL,那可是什么都可以调用的.
 
多人接受答案了。
 
后退
顶部