求教一下,VB6如何写标准的动态库呢?让别的程序调用的撒
RT 求大神啊 不知道如何公开函数撒 --------------------编程问答-------------------- VB6不支持编写具有用户导出函数的动态链接库。即便你可能看到有文章介绍自己调用链接器产生这样的dll,也无法在除VB之外的语言中调用,因为它们都无法处理VB虚拟机的初始化。你可以考虑使用PowerBasic、Delphi、C等其它相近且支持的语言。 --------------------编程问答-------------------- 别的语言难道只能调用API,而不能调用COM库么?只要那个"别的语言"支持COM,就可以的啊,VB6可以直接生成ActiveX DLL. --------------------编程问答--------------------
没错,本质上说,ActiveX DLL也是一个标准dll,任何可以调用dll的语言/Runtime都可以调用。虽然直接从底层开始以调用标准dll的方式直接调用ActiveX不是那么简单。 --------------------编程问答-------------------- 标准dll就用c,一般标准dll主要用于实现某些算法,不涉及界面,使用c最方便,执行效率也高 --------------------编程问答--------------------
只能用易语言了 老本家 但是误报NBT
貌似 易语言 被誉为 汉化版的 VB 但是貌似现在 易语言 可以用方法写 驱动了 不知道 VB 能不能做到 咪啪 --------------------编程问答--------------------
ActiveX DLL本质上不是标准的dll,两者有很大的差别
前者必须创建对象然后通过对象调用,后者不需要创建对象
前者通过动态连接调用,后者必须通过COM借口进行调用
.... --------------------编程问答--------------------
COM接口是什么,怎么通过COM接口调用?10年前我就很好奇这一点,中学时代我就看了《COM本质论》。我想说这一点只是想说,很多人觉得我不屑于了解底层的东西,恰恰相反,如果你只使用VB,就只能对很多基本的概念浅尝辄止。 --------------------编程问答--------------------
我随便找一个activex控件,你可以看到,它具有5个导出函数,也许你知道用regsvr32注册dll,但是本质上,它只是调用了这个dll的dll(un)registerserver函数。也许你在VB中知道只要“引用”下,就可以调用dll中的对象,而实际上一切都是从dllgetobjectclass开始的。
一句话,VB是一个玩具,虽然它也有很多编程的概念,但是当你“长大”,你必须放下这个玩具。 --------------------编程问答-------------------- VB函数添加易做图
我记得2楼嗷嗷叫的老马有一个,跟这个差不多。
补充:VB , 基础类