取得磁碟機之Volumn及Serial Number
來源:程序員人生 發布時間:2014-04-20 18:38:41 閱讀次數:3666次
適用Access97、2000
這兩項磁碟機資料須使用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
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),可取得磁碟機的兩項資料。
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈