Благодаря ссылке, предоставленной and31415, я смог McGyver найти решение, используя утилиту Device Console (DevCon).
Я скопировал инструкции о том, как получить инструмент из этого ответа:
DevCon - это инструмент командной строки, который отображает подробную информацию об устройствах и позволяет искать устройства и управлять ими из командной строки. DevCon включает, отключает, устанавливает, настраивает и удаляет устройства на локальном компьютере и отображает подробную информацию об устройствах на локальных и удаленных компьютерах.
Загрузите соответствующий пакет .cab
зависимости от операционной системы:
Откройте архив .cab
и извлеките файл с именем fil[some letters and numbers]
. Это должно быть около 80 КБ.
- Переименуйте его в
devcon.exe
.
Используя этот инструмент, я смог выяснить, какой идентификатор оборудования был для моей звуковой карты, и использовать его для включения и отключения устройства. Поскольку мне просто нужно переключить устройство, My Batch file выглядит просто так:
devcon.exe disable "PCI\VEN_13F6&DEV_8788&SUBSYS_85221043"
devcon.exe enable "PCI\VEN_13F6&DEV_8788&SUBSYS_85221043"
Эта длинная строка является идентификатором устройства. Чтобы найти это, я использовал команду findall
DevCon, передавая вывод в текстовый файл для удобного поиска.
devcon.exe findall * > C:\output.txt
В поисках имени моего устройства я скопировал нужную мне строку.
Примечание. К сожалению, для запуска пакета по-прежнему требуются права администратора, но это небольшая проблема (которую я, возможно, смогу решить на более позднем этапе). Но пока это работает для меня.