¿Es posible alternar dispositivos habilitados/deshabilitados desde la línea de comandos, similar al Administrador de dispositivos?

¿Es posible alternar dispositivos habilitados/deshabilitados desde la línea de comandos, similar al Administrador de dispositivos?

Me gusta jugar Fallout 3, que normalmente tiene muchos errores, y más aún una vez que agregué algunas modificaciones. No hace falta decir que falla mucho. Puedo lidiar con los bloqueos, el único problema es cuando esto ocurre, mi tarjeta de sonido queda atrapada en una reproducción de estilo bucle sin fin.

Puedo detener el bucle de audio activando y desactivando el dispositivo en el Administrador de dispositivos (Desactivar/Activar), aunque es molesto tener que acceder al Administrador de dispositivos todo el tiempo. Así que espero semiautomatizar el proceso.

¿Existe alguna forma de encender y apagar un dispositivo mediante un script por lotes? De esa manera podría colocarlo en el escritorio y ejecutarlo cuando mi tarjeta de sonido comience a funcionar en bucle.

Respuesta1

En Windows 10 puedes usar wmic. Prefiero usar PNPDeviceIDla cláusula donde. Primero puede consultar el valor exacto:

wmic path Win32_PnPEntity where "PNPDeviceID like '%VEN%'" 

Una vez que lo tengas, entonces usa:

wmic path Win32_PNPEntity where "PNPDeviceID='yourPNPDeviceIDname'" call disable

Encontré información muy útil sobre wmic.aquí

Respuesta2

Gracias al enlace proporcionado por and31415, pude ofrecerle a McGyver una solución utilizando la utilidad Device Console (DevCon).

He copiado las instrucciones sobre cómo obtener la herramienta desdeesta respuesta:

DevCones una herramienta de línea de comandos que muestra información detallada sobre los dispositivos y le permite buscar y manipular dispositivos desde la línea de comandos. DevCon habilita, deshabilita, instala, configura y elimina dispositivos en la computadora local y muestra información detallada sobre los dispositivos en las computadoras locales y remotas.

  1. Descargue el .cabpaquete adecuado según el sistema operativo:

  2. Abra el .cabarchivo y extraiga el archivo llamado fil[some letters and numbers]. Debería tener unos 80 KB.

  3. Cambie el nombre a devcon.exe.

Con esta herramienta, pude averiguar cuál era el ID de hardware de mi tarjeta de sonido y usarlo para habilitar y deshabilitar el dispositivo. Dado que simplemente necesito alternar el dispositivo, Mi archivo por lotes simplemente se ve así:

devcon.exe disable "PCI\VEN_13F6&DEV_8788&SUBSYS_85221043"
devcon.exe enable "PCI\VEN_13F6&DEV_8788&SUBSYS_85221043"

Esa cadena más bien larga es la ID del dispositivo de hardware. Para encontrar esto, utilicé findallel comando de DevCon, canalizando la salida a un archivo de texto para facilitar la búsqueda.

devcon.exe findall * > C:\output.txt

Buscando el nombre de mi dispositivo, copié la cadena que necesitaba.


Nota:Desafortunadamente, el lote todavía requiere privilegios de administrador para ejecutarse, pero ese es un problema pequeño (y es posible que pueda solucionarlo).resolver en una etapa posterior). Pero por ahora esto me funciona.

información relacionada