如何用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
---------------------------
确定
---------------------------

请各位帮帮忙!

...全文
157 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
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

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧