General

6.174 WMI - HardDiskInfo (Informazioni sull'HD)
  Alessandro Baraldi
La funzione che segue mostra come estrarre le caratteristiche dell'HardDisk attraverso la Classe Win32_DiskDrive di WMI.
Maggiori informazioni sull'argomento possono essere lette al link:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/win32_diskdrive.asp
Public Function retHardDiskInfo()
On Error Resume Next
   Dim strComputer As String
   Dim objWMIService As Object
   Dim objItem As Object
   strComputer = "."
   Set objWMIService = GetObject("winmgmts:" _
   & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
   For Each objItem In objWMIService.ExecQuery("Select * from Win32_DiskDrive", , 48)
      objItem.size = objItem.size / 1000000000
      Debug.Print "Hostname:" & vbTab & objItem.SystemName & vbCr & _
                  "Disk Type: " & vbTab & objItem.InterfaceType & vbCr & _
                  "Model: " & vbTab & vbTab & objItem.manufacturer & vbCr & _
                  "Media Type: " & vbTab & objItem.MediaType & vbCr & _
                  "Disk Number :" & vbTab & objItem.deviceID & vbCr & _
                  "Disk Size: " & vbTab & objItem.size & " MB" & vbCr & _
                  "Status: " & vbTab & objItem.Status & vbCr & _
                  "Partitions: " & vbTab & objItem.Partitions & vbCr & _
                  "BytesPerSector: " & vbTab & objItem.BytesPerSector & vbCr & _
                  "TotalCylinders: " & vbTab & objItem.TotalCylinders & vbCr & _
                  "TotalHeads: " & vbTab & objItem.TotalHeads & vbCr & _
                  "TotalSectors: " & vbTab & objItem.TotalSectors & vbCr & _
                  "TotalTracks: " & vbTab & objItem.TotalTracks & vbCr & _
                  "TracksPerCylinder: " & vbTab & objItem.TracksPerCylinder
   Next
   Set objItem = Nothing
   Set objWMIService = Nothing
End Function


Se pensate di avere del materiale freeware interessante e volete pubblicarlo, allora leggete qui.