vb.net开发dll vb6调用dll

VB.net编写的dll,供vb6调用时dll中的函数不可见?在您的代码中vb.net开发dll , 您已经成功使用了RegAsm命令将DLL注册为COM组件vb.net开发dll,并在VB6中成功引用了该组件的类型库文件(TLB文件) 。此外,您还在VB6代码中声明了一个YCImageDo类型的对象,并成功创建了该对象 。
但是,当您尝试使用YCImageDo对象的属性和方法时,却发现这些成员不可见 。这可能是因为在编写DLL代码时您没有正确地声明这些成员的可见性 。
在VB.NET中,您可以使用"Public"关键字来声明一个类型的成员(属性、方法、过程等)对外可见,而使用"Private"关键字则声明该成员仅在类型内可见 。如果您希望YCImageDo类型的成员在VB6代码中可见,则应将这些成员声明为Public类型 。
例如 , 如果您希望YCImageDo类型拥有一个名为"GetImage"的方法,则可以在DLL代码中按如下方式声明该方法vb.net开发dll:
Public Function GetImage() As String
' 在这里编写方法的代码
End Function
同样,如果您希望YCImageDo类型拥有一个名为"ImagePath"的属性 , 则可以在DLL代码中按如下方式声明该属性:
Public Property ImagePath As String
怎样用VB.NET写和调用DLl窗体一、带窗体的dll创建
1、先新建 类库(testdll),在项目中添加两个窗体form1(主窗体)、form2,为了与后面的调用区分分别命名为fm1,fm2;并在fm1窗体中添加一个按钮用来调用fm2如下图
2、在fm1窗体代码中先引用fm2,按钮代码调用fm2.如图
3、生成dll,(class1.vb中不需要写任何代码)
二、调用dll
1、新建 一个windows应用程序并添加一个按钮用来调用dll中的窗体,选 择 “项目”-“添加引用”,选择刚才创建的testdll
2、窗体代码中先引用testdll,再定义一个testdll中的fm1对象,最后执行对象的show方法
3、运行结果如下:
在Visual Studio中用VB.Net如何创建自己的动态连接库dll?新建---类库---把你的函数放在新建的类库中-----生成ClassLibrary1
在net程序中---引用----对应目录下的ClassLibrary1.dll
对应的代码定义如:
Dim
mydll
As
New
ClassLibrary1.Class1
最后就可以用mydll调用你的函数MyFunction了:
mydll
.MyFunction(1,
2)
注意:vb.net编写的DLL不能用
API函数
的方式通过Declare宣告,只能引用的方式使用
vb.net要编写的DLL能被vb6.0引用,需要先在编译属性中选择“为COM
互操作
注册”打勾
然后在Visual
Studio
2008
命令提示中运用RegAsm命令加/tlb命令生成tlb文件
例如:c:\ReleaseRegAsm
ClassLibrary1.dll
/tlb回车就会在当前目录生成ClassLibrary1.tlb文件
vb6.0中引用ClassLibrary1.tlb即可 。
怎么用VB编写DLL?打开VBvb.net开发dll,然后先中“ActiveX Dll”工程 , 然后开始编辑 。
编完后,保存一般是以“.cls”和“.vbw”保存 。这时你选择“文件”菜单,弹出下拉框 , 选中“生成.dll”选项,它就会在上面弹出一个进度条“正在生成.dll文件” 。
生成以后是一个有好象齿轮状vb.net开发dll的图标 。如果你要引用,就开一个“标准EXE”工程 , 然后在“工程”选项中,单击“引用” 。
找到你刚才的“.dll”的文件名,在前面的复选框中打勾,就可以引用你刚才在那里面写的方法了 。
【vb.net开发dll vb6调用dll】vb.net开发dll的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于vb6调用dll、vb.net开发dll的信息别忘了在本站进行查找喔 。

    推荐阅读