Вопрос

У меня есть Windows 7 64 бит профессионального издания на компьютере, который я построил сам, так что нет производителя, чтобы спросить. Я использую на борту звуковой карты, которая имеет 7.1 и оптические выходы. Оптический вывод подключен к DENON AMP, который контролирует динамики.

У меня есть система докладчика подключена к моему компьютеру через оптический порт на моей звуковой карте. Когда я использую стандартные драйверы Windows, я получаю только стерео вывод, поэтому я установил драйвер Arettek HD Audio. Это дает мне звук объемного звучания успешно, однако он не связывает это как стандартный динамик, поэтому, когда я подключаю наушники и определите их как наушники, ничего не происходит, аудио все еще идет в динамику системы и ничего к наушникам.

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

Я попытался найти аппаратные идентификаторы, которые
1. «HDAUDIO FUNC_01 & VEN_10EC & DEV_0888 и SOCSISIS_105BA601»
2. «HDAUDIO FUNC_01 & VEN_10EC & DEV_0888 & SOCSISIS_105BA601 & REV_1000»

Я планировал создать пакетный скрипт с помощью devcon (альтернатива командной строки для диспетчера устройств.) Используя код ниже, чтобы отключить или включить устройство

devcon disable "HDAUDIO\FUNC_01&VEN_10EC&DEV_0888&SUBSYS_105BA601*"
devcon enable "HDAUDIO\FUNC_01&VEN_10EC&DEV_0888&SUBSYS_105BA601*"

Однако Devcon не удается отключить эти устройства, поскольку оптическое соединение находится на звуковой карте, и я могу отключить только всю звуковую карту, которая также отключает наушники.

Я немного потерял, что делать сейчас, и я действительно не хочу, чтобы мой брат нужно было играть с отключающими устройствами.

Я открыт для любых предложений. Я рад использовать любой язык, чтобы сделать это. Я уверен, что должен быть способ сделать это от C, но я не смог найти любую информацию об этом. Я был бы признателен за любые предложения. Я очень рад написать программу самому, но если кто-то может по крайней мере указать мне в правильном направлении к API или что-то вроде Devcon или каким-то образом на некотором языке, чтобы сделать это. В настоящее время я знаю VB6, VB.NET, VB Script, Java и пакетные скрипты и PowerShell довольно хорошо и иметь некоторые знания C, C ++ и C # .NET.

любая и вся помощь будет оценена

С уважением
Декстер

Это было полезно?

Решение

Вы можете попробовать с этим:

devcon /r disable @"HDAUDIO\FUNC_01&VEN_10EC&DEV_0888&SUBSYS_105BA601*"
devcon /r enable @"HDAUDIO\FUNC_01&VEN_10EC&DEV_0888&SUBSYS_105BA601*"

С уважением,

Пал

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top