取得磁碟机之Volumn及Serial Number
时间:2007-12-23 来源:不详 作者:迈克DB
这两项磁碟机资料须使用API函数方可取得,代码如下:
Private 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
Function GetVolumn(X As String) As String
If Len(X) < 3 Then
X = Left(X, 1) & ":\"
Else
X = Left(X, 3)
End If
Dim nRet As Long, VolName As String, VolSN As Long, MaxCompLen As Long
Dim VolFlags As Long, VolFileSys As String
VolName = Space$(256)
VolFileSys = Space$(256)
nRet = GetVolumeInformation(X, VolName, Len(VolName), _
VolSN, MaxCompLen, VolFlags, _
VolFileSys, Len(VolFileSys))
If nRet = 1 Then
GetVolumn = VolName
Else
GetVolumn = ""
End If
End Function
dedecms.com
Function GetNumber(X As String) As String
If Len(X) < 3 Then
X = Left(X, 1) & ":\"
Else
X = Left(X, 3)
End If
Dim nRet As Long, VolName As String, VolSN As Long, MaxCompLen As Long
Dim VolFlags As Long, VolFileSys As String
VolName = Space$(256)
VolFileSys = Space$(256)
nRet = GetVolumeInformation(X, VolName, Len(VolName), _
VolSN, MaxCompLen, VolFlags, _
VolFileSys, Len(VolFileSys))
If nRet = 1 Then
GetNumber = VolSN
Else
GetVolumn = ""
End If
End Function
前面的Declare陈述式宣告一个API函数(GetVolumeInformation),可取得磁碟机的两项资料。
文章评论
共有位Admini5网友发表了评论 查看完整内容