您的位置:首页 > 编程语言 > VB

详解VB.net编写DLL(动态链接库、应用程序扩展)文件

2013-07-29 16:47 483 查看
首先,我们启动VS(Visual-Studio简称),我使用的是VS2008版本。

新建一个项目-选择内裤(额...不好意思)→类库 ,名称就默认吧.



编写类库没有窗体设计,因此我们不能使用工具箱中的控件..

类库支持Function函数,Sub过程等等....

·我们写个获取程序MD5(我有过一篇曾介绍过http://hi.baidu.com/lipeiyi2006/blog/item/6e63fb1c279ef18086d6b607.html)的Function函数

完整代码如下:

Imports System.IO
Imports System.Security.Cryptography

Public Class Class1
Public Function MD5(ByVal Path As String) As String
Dim fstream As New FileStream(Path, _
FileMode.Open, _
FileAccess.Read)
Dim dataToHash(fstream.Length - 1) As Byte
fstream.Read(dataToHash, 0, fstream.Length)
fstream.Close()

Dim hashvalue As Byte() = CType(CryptoConfig.CreateFromName("MD5"), HashAlgorithm).ComputeHash(dataToHash)
Dim i As Integer
Dim result As String = ""

For i = 0 To hashvalue.Length - 1
result += Hex(hashvalue(i)).ToLower
Next
Return result
End Function '返回MD5值

End Class

PS:如果复制的格式不正确请自行修改。

我们保存之后,选择 “生成-生成ClassLibrary1"



在对应的保存目录下找到"ClassLibrary1.dll",这就是你已经写好的DLL了.

将其复制到Windows目录下,为了避免找不到文件。

在次新建一个工程,选择"Windows窗体应用程序"



如图。

点击菜单中的 "项目-添加引用-浏览"找到你的ClassLibrary1.dll

你可以在"对象浏览器"中查看DLL函数



在Button1的Click事件中写入代码.
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim myDll As New ClassLibrary1.Class1'注意要使用New关键字实例化
Dim FilePath As String = ""
FilePath = InputBox("请输入要获取MD5文件地址", "")
MsgBox(myDll.MD5(FilePath))
End Sub
End Class

运行程序,效果如下:



好了,很简单吧!

在程序中应用DLL出来上述方法外还可以使用Declare语句引用..

你可以写其它函数包装在一个DLL中共同分享吧!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: