如何取得磁碟机之Volumn及SerialNumber
来源:优易学  2010-1-15 17:52:15   【优易学:中国教育考试门户网】   资料下载   IT书店
适用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),可取得磁碟机的两项资料。

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训