用wmi:Private Sub Command1_Click() Dim strComputer As String Dim objWMIService As Object Dim colProcessList Dim objProcess As Object On Error Resume Next strComputer = "." Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colProcessList = objWMIService.ExecQuery("select * FROM Win32_PhysicalMedia") For Each objProcess In colProcessList enum1 = enum1 + CStr(objProcess.Name) + ", " enum1 = enum1 + CStr(objProcess.SerialNumber) + "," enum1 = enum1 + Chr(13) + Chr(10) Next Debug.Print enum1End Sub
Dim strComputer As String
Dim objWMIService As Object
Dim colProcessList
Dim objProcess As Object
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery("select * FROM Win32_PhysicalMedia")
For Each objProcess In colProcessList
enum1 = enum1 + CStr(objProcess.Name) + ", "
enum1 = enum1 + CStr(objProcess.SerialNumber) + ","
enum1 = enum1 + Chr(13) + Chr(10)
Next
Debug.Print enum1End Sub