Option ExplicitPrivate Const MAX_PATH = 260Private 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 LongPrivate Sub Command1_Click()
Dim lpVolumeNameBuffer As String
Dim lpVolumeSerialNumber As Long
Dim lpMaximumComponentLength As Long
Dim pFileSystemFlags As Long
Dim lpFileSystemNameBuffer As String
Dim ret As Long
lpVolumeNameBuffer = Space(MAX_PATH + 1)
lpFileSystemNameBuffer = Space(MAX_PATH + 1)
ret = GetVolumeInformation("c:\\", lpVolumeNameBuffer, MAX_PATH + 1, lpVolumeSerialNumber, lpMaximumComponentLength, pFileSystemFlags, lpFileSystemNameBuffer, MAX_PATH + 1)
If ret <> 0 Then
Me.Caption = CStr(lpVolumeSerialNumber)
End If
End Sub
这是一个读硬盘序列的例子,我用六台机器做实验,其中五台机器得到的序列号是一样的:706545925,只有一台是-71*****.这是为什么呢?另外,为什么要做这两步 lpVolumeNameBuffer = Space(MAX_PATH + 1)
lpFileSystemNameBuffer = Space(MAX_PATH + 1)??
Dim lpVolumeNameBuffer As String
Dim lpVolumeSerialNumber As Long
Dim lpMaximumComponentLength As Long
Dim pFileSystemFlags As Long
Dim lpFileSystemNameBuffer As String
Dim ret As Long
lpVolumeNameBuffer = Space(MAX_PATH + 1)
lpFileSystemNameBuffer = Space(MAX_PATH + 1)
ret = GetVolumeInformation("c:\\", lpVolumeNameBuffer, MAX_PATH + 1, lpVolumeSerialNumber, lpMaximumComponentLength, pFileSystemFlags, lpFileSystemNameBuffer, MAX_PATH + 1)
If ret <> 0 Then
Me.Caption = CStr(lpVolumeSerialNumber)
End If
End Sub
这是一个读硬盘序列的例子,我用六台机器做实验,其中五台机器得到的序列号是一样的:706545925,只有一台是-71*****.这是为什么呢?另外,为什么要做这两步 lpVolumeNameBuffer = Space(MAX_PATH + 1)
lpFileSystemNameBuffer = Space(MAX_PATH + 1)??
GetVolumeInformation并不能得到硬件的序列号。
它得到的只是硬盘格式化后生成的一个信息。
用相同的参数格式化硬盘,用这个函数就能得到相同的结果。
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html