Wiedergabegerät in Vista via Tray umschalten – Autohotkey machts möglich
Ich nutze Vista. Und das sehr gerne, da es mir gefällt, trotz aller XP ist besser und Windows 7 wird sowieso die Revolution Unkenrufe da draußen.
Und ich spiele viel, und da ich das auch oft mit einem Headset mache, dem schnurlosen Funkheadset HS-1200 von Creative (übrigens ein nettes Teil), kam der Wunsch auf, schnell zwischen den Ausgabegeräten umzuschalten, also zwischen Headset beim Spielen und Besuch des Teamspeaks und den Lautsprechern beim Musik hören, wenn ich z.B am PC arbeite.
Für XP gibts da einiges an Freeware, die sich in der Systray einnisten, für Vista aber nur eines, welches ich fand, dann aber nicht mal funktionierte, es schaltete einfach nicht um. Da Vista keine API zum Umschalten der Soundquelle bietet lag es nahe, das dann einfach über ein kleines Autohotkey Script zu machen, die die Tastendrücke an das entsprechende Systemsteuerungselement übergeben. Autohotkey ist Freeware und auf http://de.autohotkey.com/ herunterladbar.
Die Anzahl der Tastendrücke {DOWN} müssen natürlich für jeden selbst angepasst werden, da sich die Anordnung der Geräte je nach System unterscheiden kann.
Beim ersten Laden setzt es den Ausgang auf Lautsprecher, um einen definierten Ausgangszustand zu haben.
#Persistent ; Im Speicher bleiben
Menu, tray, add ; Traymenu inzufügen
Menu, tray, add, Lautsprecher, LS ; Menupunkt 1 defieren, Routine LS
Menu, tray, add, Headset, HS ; Menupunk 2 definieren, Routine HS
menu, tray, uncheck, Headset ; Headset Haken entfernen
menu, tray, check, Lautsprecher ; Lautsprecher Haken setzen
menu, tray, Icon, %SystemRoot%\system32\MigAutoPlay.exe, 1 ; Trayicon setzen. Wenn Fehlermeldung entfernen oder anpassen
run, mmsys.cpl ; Soundeinstellunge aufrufen
WinWait, Sound,
IfWinNotActive, Sound, , WinActivate, Sound,
WinWaitActive, Sound,
Send, {DOWN}{DOWN}{APPSKEY}a{ENTER}{ESC} ; Tastendrücke senden und Lautsprecher aktivieren – Je nach System die Anzahl der {DOWN} anpassen
returnLS:
menu, tray, uncheck, Headset
menu, tray, check, Lautsprecher
run, mmsys.cpl
WinWait, Sound,
IfWinNotActive, Sound, , WinActivate, Sound,
WinWaitActive, Sound,
Send, {DOWN}{DOWN}{APPSKEY}a{ENTER}{ESC} ; Tastendrücke senden und Lautsprecher aktivieren – Je nach System die Anzahl der {DOWN} anpassen
returnHS:
menu, tray, check, Headset
menu, tray, uncheck, Lautsprecher
run, mmsys.cpl
WinWait, Sound,
IfWinNotActive, Sound, , WinActivate, Sound,
WinWaitActive, Sound,
Send, {DOWN}{APPSKEY}a{ENTER}{ESC} ; Tastendrücke senden und Headset aktivieren – Je nach System die Anzahl der {DOWN} anpassen
return
Das ganze lässt sich natürlich auch auf mehr Ausgänge erweitern, dafür einfach die entsprechen Routinen (HS oder LS) kopieren und anpassen, und natürlich einen anderen Namen geben, dann auch ganz oben im Skript je weiteren Ausgang ein Menu, tray, add, Name des Geräts, Routinenname… hinzufügen.









am 2. Februar 2009 um 17:30 Uhr.
hab dafür n Knopf kann hin und herschalten lsp oder Hs
am 2. Februar 2009 um 19:10 Uhr.
Dafür hab ich nun kein Kabel am Headset
am 4. April 2009 um 05:11 Uhr.
dankeschön… hab mir heute das gleiche Headset gekauft und hatte das selbe Problem…