C#里如何调用vb6写的dll

有个vb工程文件,里面包括多个类模块,每个类模块里有个相同的函数
例如a工程文件里有类b、类c,类b和类c里面有函数d
现在要动态调用b或c的d函数,就是说我传个字符是b,就能调用到b类的d函数

第1个回答  2016-06-29
需要注册才能在com中出现!regsvr32 *.dll
放到bin下可以保证运行时通过。因为程序在运行时,会自动到bin下自动寻找所需的dll.追问

肯定是要注册了来,不注册的话引用不了
现在的情况是我直接引用这个dll可以这样调用到d函数

a.b 对象名 = new a.b();
对象名.d();
但是这样的情况就是写死了,如果我想调用c类的d函数,就要还要写这么一段代码,如果有几百个类,那就不科学了

本回答被网友采纳
第2个回答  2021-02-17

win+r

WPF 中C#怎样调用VB6.0库生成的dll文件
把你生成的dll文件复制到bin文件夹下,然后再添加一下,

vb6.0怎样调用c#的dll?
可以调用,c#下面有一个工具可以把c#等编写的dll转换为com形式!之后就可以调用了

如何用VB6写一个DLL文件,供其他程序调用?谢谢@!
VB6先创建一个ActiveX DLL 工程 TestDll 在里面加上下面的代码 Function Test(str As String) As Boolean Test = True MsgBox str End Function 编译成activex dll即可 这个dll不是基于C++的标准动态链接库,但却是应用开发效率很高的activeX dll,此控件可以被MFC、Delphi、网页上的javascript和vbscript...

vb6引用C#生成的dll后如何发布到其他计算机?
可以调用,c#下面有一个工具可以把c#等编写的dll转换为com形式!之后就可以调用了

C#写的DLL文件,怎么在VB6中调用
比如%7.2f点前面的7代表输出的数的宽度,也就是位数~包括小数点后的数字;点后的2代表小数点后面的数字的个数;,一般只写成%.2f,比如floatPI=3.1415printf("%.2f",PI)输出结果为3.14

█c# 为什么有的dll不能直接引用,必须regsvr32 注册后 才能引用?_百度...
需要注册的DLL是COM组件,COM组件不是通过文件直接访问。必须通过regsvr32注册,将组件的信息写入组册表,当你先引用COM组件时,系统可以枚举出系统全部已经注册了的组件。所以COM组件的DLL必须组册才能中。传统标准的DLL,需要C#用本地化的方式调用。和VB6调用API一样 而只有.NET的DLL文件,C#才能直接引用...

VB.net编写的dll,供vb6调用时dll中的函数不可见?
GetImage"的方法,则可以在DLL代码中按如下方式声明该方法:Public Function GetImage() As String ' 在这里编写方法的代码 End Function 同样,如果您希望YCImageDo类型拥有一个名为"ImagePath"的属性,则可以在DLL代码中按如下方式声明该属性:Public Property ImagePath As String ...

vb6.0和vb.net有什么区别?
vb.net运行需要机器安装.net框架,在这个平台下,vb.net可以很方便的 与其他语言相互协作,例如:c#,c++.net等 而vb估计只能通过调用dll文件才能与其他语言的程序交互了吧 区别就太多了,这个不好说清楚,但要论简单,那肯定是vb6.0相比之下更简单,但应用当然是vb.net更广了,这也不一定,要看你...

VB6.0与VB.NET有什么区别?
1.3 VB.NET 编辑器和编译器你可以在记事本或VS.NET IDE等任意文本编辑器中撰写上述代码,然后保存为HelloWorld.vb。 代码编写完成之后,要么在命令行、要么在VS.NET IDE中编译它。在Microsoft .NET Framework SDK中已经包括VB.NET编译器vbc.exe[][1],从IDE或是命令行都可以调用。要从命令行编译HelloWorld.vb,请...

一个C#问题,比如说现在我用C#编出了个软件,在没有装vs的电脑上就不能...
网上很多exe不需要.net就可以运行的,不是c#写的,有可能使用的是更低层的语言编译器,比如c++写的(即使是早期c++,也是基于windows的框架下,需要用到一些windows的环境的,而且有些dll是自己写的,也需要安装程序的,除非你能确保你所安装的那台电脑拥有你所需要调用的dll,大多数的软件都会有安装...

相似回答