Private Declare Function GetVolumeInformation Lib "kernel32.dll" _
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 NoSerieDisque(strDrive As String) As Long
Dim SerialNum As Long
Dim Res As Long
Dim Trucnull As Long
Dim Strnul As String
Res = GetVolumeInformation(strDrive, Strnul, _
Trucnull, SerialNum, Trucnull, Trucnull, Strnul, Trucnull)
NoSerieDisque = SerialNum
End Function
'**********************
'**********************
Sub test()
x = "N° de série du disque dur : "
MsgBox x & NoSerieDisque("I:\")
End Sub