求教一下,VB6如何写标准的动态库呢?让别的程序调用的撒

汐-邢 2012-12-17 12:10:22
RT 求大神啊 不知道如何公开函数撒
...全文
211 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
东方之珠 2012-12-19
  • 打赏
  • 举报
回复
VB函数添加大师 我记得2楼嗷嗷叫的老马有一个,跟这个差不多。
汐-邢 2012-12-18
  • 打赏
  • 举报
回复
只能用易语言了 老本家 但是误报NBT 貌似 易语言 被誉为 汉化版的 VB 但是貌似现在 易语言 可以用方法写 驱动了 不知道 VB 能不能做到 咪啪
threenewbee 2012-12-18
  • 打赏
  • 举报
回复


我随便找一个activex控件,你可以看到,它具有5个导出函数,也许你知道用regsvr32注册dll,但是本质上,它只是调用了这个dll的dll(un)registerserver函数。也许你在VB中知道只要“引用”下,就可以调用dll中的对象,而实际上一切都是从dllgetobjectclass开始的。

一句话,VB是一个玩具,虽然它也有很多编程的概念,但是当你“长大”,你必须放下这个玩具。
threenewbee 2012-12-18
  • 打赏
  • 举报
回复
引用 6 楼 worldy 的回复:
引用 3 楼 caozhy 的回复: 引用 2 楼 myjian 的回复: 别的语言难道只能调用API,而不能调用COM库么? 只要那个"别的语言"支持COM,就可以的啊,VB6可以直接生成ActiveX DLL. 没错,本质上说,ActiveX DLL也是一个标准dll,任何可以调用dll的语言/Runtime都可以调用。虽然直接从底层开始以调用标准dll的方式直接调用Activ……
COM接口是什么,怎么通过COM接口调用?10年前我就很好奇这一点,中学时代我就看了《COM本质论》。我想说这一点只是想说,很多人觉得我不屑于了解底层的东西,恰恰相反,如果你只使用VB,就只能对很多基本的概念浅尝辄止。
worldy 2012-12-18
  • 打赏
  • 举报
回复
引用 3 楼 caozhy 的回复:
引用 2 楼 myjian 的回复: 别的语言难道只能调用API,而不能调用COM库么? 只要那个"别的语言"支持COM,就可以的啊,VB6可以直接生成ActiveX DLL. 没错,本质上说,ActiveX DLL也是一个标准dll,任何可以调用dll的语言/Runtime都可以调用。虽然直接从底层开始以调用标准dll的方式直接调用ActiveX不是那么简单。
ActiveX DLL本质上不是标准的dll,两者有很大的差别 前者必须创建对象然后通过对象调用,后者不需要创建对象 前者通过动态连接调用,后者必须通过COM借口进行调用 ....
worldy 2012-12-17
  • 打赏
  • 举报
回复
标准dll就用c,一般标准dll主要用于实现某些算法,不涉及界面,使用c最方便,执行效率也高
threenewbee 2012-12-17
  • 打赏
  • 举报
回复
VB6不支持编写具有用户导出函数的动态链接库。即便你可能看到有文章介绍自己调用链接器产生这样的dll,也无法在除VB之外的语言中调用,因为它们都无法处理VB虚拟机的初始化。你可以考虑使用PowerBasic、Delphi、C等其它相近且支持的语言。
threenewbee 2012-12-17
  • 打赏
  • 举报
回复
引用 2 楼 myjian 的回复:
别的语言难道只能调用API,而不能调用COM库么? 只要那个"别的语言"支持COM,就可以的啊,VB6可以直接生成ActiveX DLL.
没错,本质上说,ActiveX DLL也是一个标准dll,任何可以调用dll的语言/Runtime都可以调用。虽然直接从底层开始以调用标准dll的方式直接调用ActiveX不是那么简单。
嗷嗷叫的老马 2012-12-17
  • 打赏
  • 举报
回复
别的语言难道只能调用API,而不能调用COM库么? 只要那个"别的语言"支持COM,就可以的啊,VB6可以直接生成ActiveX DLL.

7,763

社区成员

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

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