Как можно программно изменить аудиоустройство по умолчанию в системе Vista / Win 7? Используя C # или вызов Win API?
WinMM API должен обеспечивать требуемую функциональность.
Вы должны использовать сообщение DRVM_MAPPER_PREFERRED_SET, которое отправляется с функцией waveOutMessage ().
Документация: http://msdn.microsoft.com/en-us/library/aa909789.aspx
Однако, если вы пытаетесь отправить звуковой сигнал самостоятельно, вам следует обратиться к библиотеке WinMM.Net.
http://winmm.codeplex.com