要什么动态链接库?用API就行了
Public Declare Function GetVolumeInformation Lib "kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long) As Long
Public Function GetVolumeSerial(ByVal Driver As String) As String
'返回指定硬盘的序列号,16进制字符串
'Driver 盘符,格式:c:\ , d:\
Dim lngTmp1 As Long
Dim lngTmp2 As Long
Dim lngSerial As Long
Call GetVolumeInformation(Driver, vbNullString, 0, lngSerial, lngTmp1, lngTmp2, vbNullString, 0)
GetVolumeSerial = Hex(lngSerial)
End Function
硬盘序列号: 英文名 Hard Disk Serial Number, 该号是出厂时生产厂家为
区别产品而设置的, 是唯一的, 是只读的, 利用硬盘序列号的
加密往往是利用其唯一和只读的特性, 大多是针对有序列号的
IDE HDD而言, 对于没有序列号或SCSI HDD硬盘则无能为力,
这也是利用它进行加密的局限性.