Die Lösung für alle Ihre quälenden Windows-Automatisierungsprobleme: AutoIt !
Setzen Sie dieses AutoIt und kompilieren Sie es
;-----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)
Erstellen Sie nun eine Verknüpfung und geben Sie im Ziel den Pfad zur kompilierten ausführbaren Datei an. Geben Sie als Argument die Nummer des Audiogeräts in die Liste ein, zu der Sie wechseln möchten. (Um zum obersten Element in der Liste zu wechseln, geben Sie 1, das zweite Element in der Liste, geben Sie 2 usw. ein.) Wenn Sie eine Tastenkombination möchten, verwenden Sie das Feld Tastenkombination im Eigenschaftenfenster der Verknüpfung.
Ich habe nach einer Möglichkeit gesucht, um das zu tun, was Sie wollten, und festgestellt, dass es in Vista / 7 keine programmgesteuerte Möglichkeit gibt, Audiogeräte umzuschalten. Microsoft hat nicht entschieden, dass Programmierer dies tun müssen. Deshalb erstelle ich dieses Skript, um den Prozess zu automatisieren. Es ist nicht das Beste, da es das Fenster öffnet, um das Gerät zu ändern (erforderlich), aber es ermöglicht das Erstellen von Verknüpfungen, um das Ausgabegerät für Ihren Sound zu ändern.
Default Audio Changer ist meiner Meinung nach derzeit die beste Lösung.
Es werden undokumentierte Systemaufrufe verwendet, anstatt Tastatureingaben zu simulieren, sodass Sie es ohne Bedenken in Vollbildanwendungen verwenden können.
quelle
@Dan Walker Schöne Lösung, aber nicht perfekt;)
In diesem Skript wird das Vorhandensein einer Datei verwendet, um ein Umschalten tatsächlich durchzuführen, sodass Sie dieselbe Verknüpfung verwenden können, um zwischen Wiedergabegeräten zu wechseln. Es ist nur eine einfache Bearbeitung:
quelle
Ich habe das eine Weile gegoogelt und das einzige, was den Trick für mich getan hat, ist ein Skript von AutoHotKey. Der einzige Wunsch, den ich habe, ist, dass dies im Hintergrund gemacht wird. Hier ist das Skript:
Sie können es an Ihre Bedürfnisse anpassen
quelle
SendInput {Down}
stattdessen verwendenControlSend,SysListView321,{Down}
. Ich musste auch die Anzahl der {Downs} ändern, um sie an meine Audiogeräte anzupassen.Die Lösung von fakt wirkt wie ein Zauber. Hier ein kleines Skript für Autohotkey, das das erste Audiogerät als Standard auswählt, wenn Sie "F4" und das zweite, wenn Sie "F3" drücken. Diese Version funktioniert mit allen Windows-Versionen. Getestet mit Win 7 64.
quelle
@cptloop Default Audio Changer war ziemlich gut, würde aber ärgerlicherweise kein Gerät als Standardkommunikationsgerät festlegen, nachdem es als Standardgerät festgelegt wurde.
Das hat mich dazu gebracht, Audio Switcher zu finden , der mehrere zusätzliche Funktionen hat:
Das einzige, was mir nicht gefällt, ist, dass Sie keinen einzigen Hotkey zum Umschalten zwischen zwei Geräten verwenden können. Jeder muss mit einem eigenen Hotkey konfiguriert werden. Allerdings befindet sich v2.0 in der Entwicklung und verspricht einige Funktionsverbesserungen sowie die Unterstützung von Plugins. Sie haben auch die zugrunde liegende API veröffentlicht, sodass es möglich ist, Ihre eigene maßgeschneiderte Lösung zu erstellen.
Bearbeiten: Gemäß xenolightning / AudioSwitcher_v1 # 607 ist die Möglichkeit zum Umschalten / Wechseln von Geräten bereits in Version 2.0 implementiert.
quelle
Ein weiteres gutes Programm dafür ist Audio Router. Es ist ein kostenloses Programm (GPL) mit 64-Bit- und 32-Bit-Betriebssystemversionen. Hier ist der GitHub-Link des Programms:
Audio Router
Hier ist ein einfaches GIF, wie es verwendet wird:
quelle