呃,查了一下资料,一些操作系统,硬盘是不支持访问的。所有无法获取。
mark wmi
Dim WMI = GetObject("WinMgmts:root\WMI")
Dim Objs = WMI.ExecQuery("SELECT * F ROM MSAcpi_ThermalZoneTemperature")
For Each Obj As object In Objs
Dim 温度 = Convert.ToDouble(Convert.ToDouble(obj.CurrentTemperature.ToString()) - 2732) / 10
msgbox(温度)
Next
Objs = WMI.ExecQuery("SELECT * F ROM MSStorageDriver_ATAPISmartData")
For Each Obj As object In Objs
output.show( "Active:" & vbTab & Obj.active)
output.show("TotalTime:" & vbTab & Obj.TotalTime)
output.show("InstanceName:" & vbTab & Obj.InstanceName)
output.show("SelfTestStatus:" & vbTab & Obj.SelfTestStatus)
Next
Dim Bian()
For Each Obj As object In Objs
Bian = Obj.VendorSpecific
For i As Integer = 2 To UBound(Bian)
If Bian(i) = 9 Then
MsgBox("硬盘累计运行" & Bian(i + 11) * 256 + Bian(i + 10) * 256 + Bian(i + 9) * 256 + Bian(i + 8) * 256 + Bian(i + 7) * 256 + Bian(i + 6) * 256 + Bian(i + 5) & "小时")
End If
Next
Next
http://bbs.csdn.net/topics/310215227