利用WMI獲取USB設備列表Sub Command1_Click() strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colDevices = objWMIService.ExecQuery("Select * From Win32_USBControllerDevice") For Each objDevice In colDevices strDeviceName = objDevice.Dependent MsgBox strDeviceName strQuotes = Chr(34) strDeviceName = Replace(strDeviceName, strQuotes, "") arrDeviceNames = Split(strDeviceName, "=") strDeviceName = arrDeviceNames(1) Set colUSBDevices = objWMIService.ExecQuery _ ("Select * From Win32_PnPEntity Where DeviceID = '" & strDeviceName & "'") For Each objUSBDevice In colUSBDevices Debug.Print objUSBDevice.Description Next Next End Sub
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colDevices = objWMIService.ExecQuery("Select * From Win32_USBControllerDevice")
For Each objDevice In colDevices
strDeviceName = objDevice.Dependent
MsgBox strDeviceName
strQuotes = Chr(34)
strDeviceName = Replace(strDeviceName, strQuotes, "")
arrDeviceNames = Split(strDeviceName, "=")
strDeviceName = arrDeviceNames(1)
Set colUSBDevices = objWMIService.ExecQuery _
("Select * From Win32_PnPEntity Where DeviceID = '" & strDeviceName & "'")
For Each objUSBDevice In colUSBDevices
Debug.Print objUSBDevice.Description
Next
Next
End Sub