Ist es möglich, die Lautstärke in Windows XP über die Befehlszeile zu ändern?
Ist es möglich, die Lautstärke in Windows XP über die Befehlszeile zu ändern?
Antworten:
NirCmd ist eine Anwendung, die das und mehr leistet.
Anwendungsbeispiel:
nircmd.exe changesysvolume 2000
nircmd.exe changesysvolume -5000
nircmd.exe setsysvolume 65535
nircmd.exe mutesysvolume 1
nircmd.exe mutesysvolume 0
nircmd
.
Machen Sie die JavaScript-Dateien:
echo var oShell = new ActiveXObject("WScript.Shell"); >> volup.js<BR>
echo oShell.SendKeys(String.fromCharCode(0xAF)); >> volup.js
echo var oShell = new ActiveXObject("WScript.Shell"); >> voldown.js<BR>
echo oShell.SendKeys(String.fromCharCode(0xAE)); >> voldown.js
echo var oShell = new ActiveXObject("WScript.Shell"); >> togglemute.js<BR>
echo oShell.SendKeys(String.fromCharCode(0xAD)); >> togglemute.js
Zeigen Sie die Lautstärkeregelung an, damit Sie sehen können, was Sie tun:
sndvol
(or maybe sndvol32)
Ändern Sie die Lautstärke:
cscript voldown.js
Hinweis: Auf Computern, auf denen ich versucht habe, es zu verwenden, hat dieser Ansatz zuverlässig funktioniert. Helens Antwort auf Sibo Lins StackOverflow-Frage dazuDies bedeutet, dass die Stummschaltung nicht zuverlässig ist, die Lautstärke jedoch möglicherweise nicht so zuverlässig geändert wird. Ich vermute, dass die Zuverlässigkeit auf verschiedenen Maschinen unterschiedlich sein kann. Bei diesem Ansatz wird die Technologie der Nachahmung eines Tastenanschlags und insbesondere einer Lautstärkeregelungstaste auf einer erweiterten Medientastatur verwendet. Zu der Zeit, als Windows dies unterstützte, war eine solche Tastatur im Grunde eine wenig genutzte, leichtfertige Funktion, die Funktionen bot, die zuvor nur mit benutzerdefinierten Treibern verfügbar waren. Es würde mich nicht überraschen, wenn dieser Code weniger ausgefeilt wäre und weniger wahrscheinlich auf einigen der verschiedenen (möglicherweise älteren) Hardwarekomponenten funktionieren würde, die es gibt. Trotzdem hatte ich selbst keine Probleme damit.
Credits:
Eine Einschränkung: Diese Frage wurde mit Windows XP getaggt. Ich habe dies gerade in Windows 10 ausprobiert. Ich weiß, dass ich dies in Windows 7 verwendet habe (zumindest genug, um es zu testen). Als ich zum ersten Mal in der Zeit von Windows ME bemerkte, dass Microsoft diese erweiterten Tastaturen unterstützt, konnte ich mir vorstellen, dass dies auch unter WinXP gut funktionieren wird. Ich erinnere mich nicht, ob ich das tatsächlich mit diesem Betriebssystem getestet habe. Trotzdem erwarte ich keine problematischen Nebenwirkungen, wenn dieser Ansatz nicht gut funktioniert.
pip install SendKeys
(reines Python-Paket zum Emulieren von Tastenanschlägen), gefolgt von python -c "from SendKeys import playkeys; playkeys([(0xAE, True), (0xAE, False)])"
einem einzigen Drücken und Loslassen der Lautstärketaste. Um beispielsweise 100 verschiedene Pressen zu emulieren, können Sie * 100
nach dem Schließen ]
und vor dem Finale einfügen )
.
Nachdem ich diese Beiträge gelesen und nach Alternativen gesucht hatte, entschloss ich mich, mein eigenes Befehlszeilendienstprogramm mit dem Namen SetVol zu schreiben, um die Lautstärke einzustellen. Es funktioniert ein bisschen einfacher als in einigen anderen Beiträgen auf dieser Seite beschrieben. Hier sind einige Beispiele, die Sie an der Eingabeaufforderung eingeben würden:
setvol 75
setvol -10
setvol +12
setvol mute
setvol unmute
Es gibt auch andere Möglichkeiten. Ich habe es als Freeware veröffentlicht, und Sie können gerne www.rlatour.com/setvol besuchen, um weitere Informationen zu erhalten und eine Kopie herunterzuladen.
Genießen
errorlevel
(damit ich die aktuelle Einstellung speichern kann, um sie später wiederherzustellen) zurückzugeben
Dank und weitere Vereinfachung von Nircmd
@echo off
rem 65536 is 100%
rem device where zero is the default device
rem left and right
rem supports whole numbers only therefore throws "missing operator" error when specifying 655.36
set /a volume=%1 * 655
nircmd setvolume 0 %volume% %volume%
Speichern Sie es als .bat-Datei und führen Sie es aus, indem Sie einen Parameter übergeben
Beispiel: sound 60
Legt die Lautstärke auf 60% fest
Stellen Sie sicher, dass Sie die bat-Datei entweder neben dem nircmd oder in %windir%
(oder definieren Sie den Ordner in %path%
)