Detectar hardware USB
Publicado: 21 Jun 2010, 21:46
Hola
Estoy intentando detectar el hardware USB que hay conectado al pc, y de paso obtener información del mismo, como Nombre, descripción, fabricante, número de serie...
Llevo todo el día buscando y buscando, y nada... esto tiene más tela de la que pensaba...
Por suerte, ya no hace mucho, he encontrado un código en el foro inglés que no hace exactamente lo que quiero,sino que solo da el nombre y descripción de los dispositivos conectados, pero ¡algo es algo!:
http://www.autoitscript.com/forum/index ... ntry696460
Estoy seguro, que no debe ser muy difícil modificar el código para que me dé la info sobre cada dispositivo, pero por más que he buscado la clase "Win32_USBControllerDevice", no he encontrado nada, y menos en el foro de AutoIt en inglés (que no sea este código y otro que lista los discos extraíbles).
A ver si alguien tiene idea de como funciona esta clase...
Salu2!
Estoy intentando detectar el hardware USB que hay conectado al pc, y de paso obtener información del mismo, como Nombre, descripción, fabricante, número de serie...
Llevo todo el día buscando y buscando, y nada... esto tiene más tela de la que pensaba...
Por suerte, ya no hace mucho, he encontrado un código en el foro inglés que no hace exactamente lo que quiero,sino que solo da el nombre y descripción de los dispositivos conectados, pero ¡algo es algo!:
Código: Seleccionar todo
; Author - Valuater
$strComputer = "."
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\cimv2")
$colDevices = $objWMIService.ExecQuery ("Select * From Win32_USBControllerDevice")
For $objDevice in $colDevices
$strDeviceName = $objDevice.Dependent
;ConsoleWrite("!>" & $strDeviceName & @CRLF)
$strQuotes = Chr(34)
$strDeviceName = StringReplace($strDeviceName, $strQuotes, "")
$arrDeviceNames = StringSplit($strDeviceName, "=")
$strDeviceName = $arrDeviceNames[2]
$colUSBDevices = $objWMIService.ExecQuery ("Select * From Win32_PnPEntity Where DeviceID = '" & $strDeviceName & "'")
For $objUSBDevice in $colUSBDevices
ConsoleWrite("-->" & $objUSBDevice.Description & @CRLF)
Next
Next
Estoy seguro, que no debe ser muy difícil modificar el código para que me dé la info sobre cada dispositivo, pero por más que he buscado la clase "Win32_USBControllerDevice", no he encontrado nada, y menos en el foro de AutoIt en inglés (que no sea este código y otro que lista los discos extraíbles).
A ver si alguien tiene idea de como funciona esta clase...
Salu2!