62.txt

来自「VB文章集(含API、窗口、数据库、多媒体、系统、文件、等等)」· 文本 代码 · 共 49 行

TXT
49
字号
如何取得磁盘序列号?
 

调用API函数 GetVolumeInformation。

API声明:

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

程序:

Private Sub Form_Load()
  Dim sDriveLetter As String 
  Dim RetVal As Long 
  Dim lpName As String 
  Dim nSize As Long 
  Dim nSerial As Long 
  Dim lpMaxComp As Long 
  Dim nFileFlags As Long 
  Dim lpFileName As String 
  lpName = Space(255)
  lpFileName = Space(255)
  nSize = 255

  sDriveLetter = "a:\" ’这里你可以指定任何盘号

  RetVal = GetVolumeInformation(sDriveLetter, lpName, _
   nSize, nSerial, lpMaxComp, nFileFlags, lpFileName, nSize)
  '你可以看出,不仅能得到序列号,还可以得到其他很多信息

  If RetVal = 0 Then 
    '这里是你的错误处理代码
    Exit Sub 'Quit the subroutine
  Else 
    lblDriveSerial.Caption = CStr(nSerial) 
    '假定你已经建立了这个标签,将在标签上显示序列号.
  End If
End Sub
 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?