Что я должен использовать для программирования такого макроса?
3 ответа
Посмотрите на функцию "SoundSet", чтобы достичь того, что вы хотите здесь.
Вы можете использовать devcon от Microsoft
Утилита DevCon - это утилита командной строки, которая выступает в качестве альтернативы диспетчеру устройств. Используя DevCon, вы можете включать, отключать, перезапускать, обновлять, удалять и запрашивать отдельные устройства или группы устройств. DevCon также предоставляет информацию, которая имеет отношение к разработчику драйвера и недоступна в диспетчере устройств.
страница содержит подробный набор информации о том, как ее использовать,
для вашего случая просто положите
devcon find *
Чтобы вывести список экземпляров всех устройств, которые присутствуют на локальном компьютере.
devcon disable <your-sound-card-HardwareID>
чтобы отключить устройства, которые соответствуют определенному оборудованию или идентификатору экземпляра, вы можете использовать подстановочный знак (*)
Чтобы узнать, какие значения реестра соответствуют вашим конкретным запросам макросов, вы можете сделать это с помощью Sysinternals Process Monitor.
Для меня клавиша калькулятора на моей клавиатуре запрашивает значение
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\18\ShellExecute
который установлен в "calc.exe".
Измените это значение, чтобы использовать NirCmd для отключения устройства или ранее упомянутый DevCon для отключения устройства.
пример:
отключить звук
C:\path\to\nircmd.exe mutesysvolume 1
включить звук
C:\path\to\nircmd.exe mutesysvolume 0
или отключить
devcon disable [hardware_id]
и снова включить
devcon enable [hardware_id]