
打开VB,然后先中“ActiveX Dll”工程,然后开始编辑。
编完后,保存一般是以“.cls”和“.vbw”保存。这时你选择“文件”菜单,d出下拉框,选中“生成.dll”选项,它就会在上面d出一个进度条“正在生成.dll文件”。
生成以后是一个有好象齿轮状的图标。如果你要引用,就开一个“标准EXE”工程,然后在“工程”选项中,单击“引用”。
找到你刚才的“.dll”的文件名,在前面的复选框中打勾,就可以引用你刚才在那里面写的方法了。
添加一个标准模块,在模块中声明就可以。如Public Declare Function AccessCheckAndAuditAlarm Lib "advapi32.dll" Alias "AccessCheckAndAuditAlarmA" (ByVal SubsystemName As String, HandleId As Any, ByVal ObjectTypeName As String, ByVal ObjectName As String, SecurityDescriptor As SECURITY_DESCRIPTOR, ByVal DesiredAccess As Long, GenericMapping As GENERIC_MAPPING, ByVal ObjectCreation As Long, GrantedAccess As Long, ByVal AccessStatus As Long, ByVal pfGenerateOnClose As Long) As Long
Public Declare Function AbortPath Lib "gdi32" Alias "AbortPath" (ByVal hdc As Long) As Long
Public Declare Function CloseHandle Lib "kernel32" Alias "CloseHandle" (ByVal hObject As Long) As Long
vb中制作dll的方法:新建时选择ActiveX Dll,工程名改为add 把类模块命名为:myfirstdll (原名为class1)然后就可以写你的dll内容了,比如封装一个函数,这里我们封装一个从1加到n的函数:
Public Function AddN(ByVal n As Integer) As Integer
Dim i As Integer
Dim sum As Integer
For i = 0 To n
sum = i + sum
Next
AddN = sum
End Function
完成保存工作后,选择“文件”——“生成add.dll”
这样一个简单的dll完成了。你可以添加多个函数,复杂度任意!这只是以个简单的例子
下面是调用部分:
假设你有已经有了一个工程,现在需要引用刚才的dll文件。
选择“工程”-“引用”,在d出的对话框中选浏览,选择你刚才生成的add.dll。点确定。如果说出现工程名称重复之类的提示,那是因为你的这个工程,和dll文件的工程名称一样了!你改一下工程名就行了,所以不要在新建工程时偷懒,默认的名称“工程1”会引起不必要的麻烦啊!下面是代码
在声明部分(就是代码的最上面)写:
Dim testdll As myfirstdll
form的load事件里写:
Set testdll = New myfirstdll
引用完成了
调用的代码:
MsgBox (testdll.AddN(5))
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)