如何用VB制作ActiveX dll?

cockhorse 2003-12-11 10:14:54
我直接在dll的类模块中写:

Public Sub Test()
Dim fForm As New frmTT 'frmTT是已经建立的form
fForm.Show
End Sub

然后在调用的程序中:
Public Declare Sub Test Lib "TT.dll" ()

但是一调用Test就会出现错误提示:
---------------------------
工程1
---------------------------
运行时错误 '453':

不能找到入口点 Test 在 TT.dll
---------------------------
确定
---------------------------

请各位帮帮忙!

...全文
87 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
golden24kcn 2003-12-12
首先你的引用方式是不对的,应该先编译active dll这个工程,生成dll后,在要引用它的工程里点"工程"->"引用",找到这个dll,引有它,如果有冲突,那么你一定是使用的工程组,这种情况你的确可以不用引用它就使用,就像online说的,你的设用方法应该是

dim a as yourdll
set a=new yourdll
a.test

回复
busisoft 2003-12-11
选择菜单“工程-〉引用”,把前面的钩去掉
回复
cockhorse 2003-12-11
谢谢,可是我在引用的时候出现下面的错误提示:

---------------------------
Microsoft Visual Basic
---------------------------
名称与已存在的模块、工程或对象冲突
---------------------------
确定 帮助
---------------------------

我该怎么把原来有的引用删除呢?
回复
online 2003-12-11
Dim obj As project.Class1
Private Sub Command1_Click()
Set obj = New project.Class1
obj.Test
End Sub

vb中写不出这样标准的dll,只能是activex dll
这种com组件需要注册的
Public Declare Sub Test Lib "TT.dll" ()
回复
rainstormmaster 2003-12-11
呵呵,vb生成的dll文件是activex接口的,要先 引用 ,再使用

假如你的dll的类模块名为mytest。则你应该在你的程序中加入对TT.dll的引用后(工程 引用 浏览 选择TT.dll,并选择确定),然后用类似的代码使用

dim a as new mytest
call a.test

回复
发动态
发帖子
VB基础类
创建于2007-09-28

7453

社区成员

VB 基础类
申请成为版主
社区公告
暂无公告