GetPhysicalDriveSerialNumber = "0000-0000"
On Local Error Resume Next
Dim sComputerName$
sComputerName = Environ$("COMPUTERNAME")
Dim WMI_Obj As Object, WMI_ObjProps As Object, ObjClsItem As
Object
Set WMI_Obj = GetObject("winmgmts:\" & sComputerName & "\root\cimv2")
Set WMI_ObjProps = WMI_Obj.ExecQuery("Select * from Win32_PhysicalMedia", , 48)
Dim sRet As String
For Each ObjClsItem In WMI_ObjProps
If ObjClsItem.Tag = "\\.\PHYSICALDRIVE" & CStr(ID) Then
' ici le serial en
base16 ou 10
sRet = Trim$(ObjClsItem.SerialNumber)
' conversion base10
If Not (LenB(sRet) = 16) Then
sRet = GetBase10FromBase16(sRet)
' ok, retour
If bSepar Then
GetPhysicalDriveSerialNumber = UCase$(LeftB$(sRet, 8) & "-" & RightB$(sRet, 8))
Else
GetPhysicalDriveSerialNumber = UCase$(sRet)
End If
Exit For
End If
Next ObjClsItem
Set ObjClsItem = Nothing
Set WMI_ObjProps = Nothing
Set WMI_Obj = Nothing
End Function
Private Function GetBase10FromBase16(ByVal sStr As String) As String
Dim i As Integer
sStr =
Replace
(sStr, "20",
vbNullString)
GetBase10FromBase16 = Space$(8)
For i = 1 To 15 Step 2
Mid$(GetBase10FromBase16, i \ 2 + 1, 1) = Chr$(Val("&H" & Mid$(sStr, i, 2)))
Next i
End Function
facilement adaptable en VB.NET, ou voir également dans les sources présentes sur VbFrance....
Prenez un instant pour répondre à [forum/sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 4 nov. 2008 à 13:25
le code WMI VB6 que je t'ai donné permet de récupérer le numéro de série PHYSIQUE d'un DISQUE DUR
18 minutes plus tard tu disais bloquer sur la conversion VB.net. je te demandais donc de montrer ce que tu avais fait pour t'aider sur les points bloquants. si c'est juste "j'y arrive pas", alors en effet il faut parfois plus de 18 minutes...
j'ai aussi indiqué de chercher dans les sources
le code que tu fournies là renvoie diverses infos, et tu demandes malgré tout d'expliquer...
le minimum est de te renseigner sur l'API
GetVolumeInformation
que tu utilises...
pour info elle est capable de renvoyer un serial, ce dernier sera le
numéro de série LOGIQUE d'une PARTITION
Prenez un instant pour répondre à [forum/sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp