一、带窗体的dll创建
创新互联公司成立与2013年,先为龙山等服务建站,龙山等地企业,进行企业商务咨询服务。为龙山企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
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、运行结果如下:
创建结构体,用结构体传输数据:
Public Structure InValue
Public P As 类型
Public Q As 类型
'其他值定义
End Structure
Public Structure OutValue
Public A() As 类型
Public B As 类型
'其他值定义
End Structure
把Dll内的方法改为:
Public Function calculation(value As InValue) As OutValue
Dim [out] As New OutValue
'处理函数
Return [out]
End Function
引用:
dim ffun as new pla.tua
dim inval as invalue
in.** = **
dim outp as outvalue = ffun.calculation(inval)
上级目录不可以,但是为了保证程序路径改变,引用不会被破坏。可以有几个方法:
1.将DLL文件放在程序同级目录
2.将DLL文件放在程序子目录
3.将DLL文件放在System32目录下(系统目录,可以直接引用DLL)
4.可以将DLL文件打包成资源文件,融合到EXE程序中,每次执行判断同级目录是否有DLL文件,不存在,释放资源文件。