Option Explicit Private Declare Function GetVolumeInformation Lib _ "kernel32.dll" Alias "GetVolumeInformationA" (ByVal _ lpRootPathName As String, ByVal lpVolumeNameBuffer As _ String, ByVal nVolumeNameSize As Integer, _ lpVolumeSerialNumber As Long, lpMaximumComponentLength _ As Long, lpFileSystemFlags As Long, ByVal _ lpFileSystemNameBuffer As String, ByVal _ nFileSystemNameSize As Long) As Long Private Sub Command1_Click() Dim i As Integer Open App.Path & "\ID.txt" For Output As #1
For i = 67 To 90 Write #1, GetSerialNumber(Chr(i) & ":\") Next
Close #1
MsgBox "完成!" End SubFunction GetSerialNumber(strDrive As String) As String Dim SerialNum As Long Dim Res As Long Dim Temp1 As String Dim Temp2 As String
Private Declare Function GetVolumeInformation Lib _
"kernel32.dll" Alias "GetVolumeInformationA" (ByVal _
lpRootPathName As String, ByVal lpVolumeNameBuffer As _
String, ByVal nVolumeNameSize As Integer, _
lpVolumeSerialNumber As Long, lpMaximumComponentLength _
As Long, lpFileSystemFlags As Long, ByVal _
lpFileSystemNameBuffer As String, ByVal _
nFileSystemNameSize As Long) As Long
Private Sub Command1_Click()
Dim i As Integer
Open App.Path & "\ID.txt" For Output As #1
For i = 67 To 90
Write #1, GetSerialNumber(Chr(i) & ":\")
Next
Close #1
MsgBox "完成!"
End SubFunction GetSerialNumber(strDrive As String) As String Dim SerialNum As Long
Dim Res As Long
Dim Temp1 As String
Dim Temp2 As String
Temp1 = String$(255, Chr$(0))
Temp2 = String$(255, Chr$(0))
Res = GetVolumeInformation(strDrive, Temp1, Len(Temp1), SerialNum, 0, 0, Temp2, Len(Temp2))
GetSerialNumber = CStr(SerialNum)
End Function
有一种方法是识别硬盘的出厂ID,但VB不行,有一个DLL是用VC写的,你在网上找一找,很好用,
vb作这样底层的工作是不行的.
请问一下airon2002(等我有了钱,豆浆买两碗,喝一碗)大侠,dll在哪里下载,如果你哪里有麻烦给我发到邮箱里面
[email protected]
谢谢!
得到硬盘信息的VB程序,比如型号,硬件序列号,扇区数等等。完全VB代码,无需附带任何文件。
CDiskInfo.cls是一个类,本程序例的核心就是这个类,它可以得到很多关于硬盘的信息,有些我也不知道是什么,有兴趣自己看吧。