1

Мне нравится играть в Fallout 3, который обычно очень глючит, и даже больше, когда я добавил несколько модов. Само собой разумеется, это сильно падает. Я могу справиться со сбоями, единственная проблема заключается в том, что когда моя звуковая карта попадает в бесконечное воспроизведение в стиле петли.

Я могу остановить зацикливание звука, включив и выключив устройство в диспетчере устройств (отключить / включить), хотя раздражает необходимость постоянно заходить в диспетчер устройств. Поэтому я надеюсь полуавтоматизировать процесс.

Есть ли способ включить и выключить устройство с помощью пакетного сценария? Таким образом, я мог бы просто разместить его на рабочем столе и запустить, когда моя звуковая карта начнет зацикливаться.

2 ответа2

1

Благодаря ссылке, предоставленной and31415, я смог McGyver найти решение, используя утилиту Device Console (DevCon).

Я скопировал инструкции о том, как получить инструмент из этого ответа:

DevCon - это инструмент командной строки, который отображает подробную информацию об устройствах и позволяет искать устройства и управлять ими из командной строки. DevCon включает, отключает, устанавливает, настраивает и удаляет устройства на локальном компьютере и отображает подробную информацию об устройствах на локальных и удаленных компьютерах.

  1. Загрузите соответствующий пакет .cab зависимости от операционной системы:

  2. Откройте архив .cab и извлеките файл с именем fil[some letters and numbers] . Это должно быть около 80 КБ.

  3. Переименуйте его в 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

В поисках имени моего устройства я скопировал нужную мне строку.


Примечание. К сожалению, для запуска пакета по-прежнему требуются права администратора, но это небольшая проблема (которую я, возможно, смогу решить на более позднем этапе). Но пока это работает для меня.

0


на win10 вы можете использовать wmic. Я предпочитаю использовать PNPDeviceID в предложении where. Вы можете сначала запросить точное значение. wmic path Win32_PnPEntity where "PNPDeviceID like '%VEN%'" и когда он у вас есть, используйте:

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

Я нашел очень полезную информацию о wmic здесь

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .