La solución a todos sus molestos problemas de automatización de Windows: AutoIt !
Pon este AutoIt y compilalo
;-----Configuration-----
;The title of the sound config window.
Dim $ConfigWindowTitle = "Sound"
;-----End of configuration----
Dim $ItemNumber = 1
If $CmdLine[0] >= 1 Then ;If we have a parameter...
$ItemNumber = $CmdLine[1] ;...we should press the button the specified number of times.
EndIf
Run("control mmsys.cpl") ;Run the sound control applet and hide it.
WinWaitActive($ConfigWindowTitle) ;Wait for it to be active before sending keystrokes.
Send("{TAB}{TAB}{TAB}{TAB}") ;Put the focus on the list
For $i = 1 to $ItemNumber Step 1
Send("{DOWN}")
Next
Send("!s") ;Press Alt + S to set the selected device as the default.
WinClose($ConfigWindowTitle)
Ahora cree un acceso directo, y en el Destino coloque la ruta al ejecutable compilado. Para una discusión, coloque el número del dispositivo de sonido en la lista a la que desea cambiar. (para cambiar al elemento superior de la lista, coloque 1, el segundo elemento de la lista, coloque 2, etc.). Si desea un método abreviado de teclado, use el campo Tecla de método abreviado en la ventana de propiedades del método abreviado.
Había estado buscando algo para hacer lo que quería hacer, y descubrí que no hay una forma programática de cambiar los dispositivos de audio en Vista / 7. Simplemente no es algo que Microsoft haya decidido que los programadores deben hacer, así que creo este script para automatizar el proceso. No es lo mejor, ya que aparece la ventana emergente para cambiar el dispositivo (necesario), pero hace posible crear accesos directos para cambiar el dispositivo de salida para su sonido.