Можно ли изменить громкость в Windows XP через командную строку?
4 ответа
NirCmd это приложение, которое делает это и многое другое.
Пример использования:
- Увеличить объем системы на 2000 единиц (из 65535)
nircmd.exe changesysvolume 2000
- Уменьшить системный объем на 5000 единиц (из 65535)
nircmd.exe changesysvolume -5000
- Установите громкость на максимальное значение
nircmd.exe setsysvolume 65535
- безгласный
nircmd.exe mutesysvolume 1
- Unmute
nircmd.exe mutesysvolume 0
Создайте файлы JavaScript:
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
Покажите регулятор громкости, чтобы вы могли видеть, что вы делаете:
sndvol
(or maybe sndvol32)
Изменить громкость:
cscript voldown.js
Примечание. Этот подход надежно работает на машинах, на которых я пытался его использовать. Ответ Хелен на вопрос StackOverflow от Sibo Lin об этом указывает на то, что приглушение звука ненадежно, но изменение громкости может быть не таким надежным. Я подозреваю, что уровень надежности может быть разным на разных машинах. В этом подходе используется технология имитации нажатия клавиш, в частности, клавиши регулировки громкости на улучшенной мультимедийной клавиатуре. В то время, когда Windows начала поддерживать это, такая клавиатура была в основном мало используемой несерьезной функцией, которая предлагала функциональность, которая ранее была доступна только с пользовательскими драйверами. Меня не удивило бы, если бы этот код был менее отточенным и менее вероятным, чтобы работать на некоторых различных (возможно, более старых) аппаратных средствах, которые там есть. Все это говорит, у меня не было проблем с этим сам.
Кредиты:
- На этот ответ сильно повлиял ответ Райана на вопрос Сибо Линя об изменении громкости в командной строке. (Имея хорошее представление о том, как это сделать, я искал пример того, как это сделать.)
- Я подозреваю, что Эд Уилсон «Эй, сценарист!»блог на Microsoft: статья об использовании сырого сценария для настройки громкости динамика, возможно, была (прямым или косвенным) источником вдохновения для многих людей, предложивших этот подход.
Одно предостережение: этот вопрос был помечен Windows XP. Я только что попробовал это в Windows 10. Я знаю, что использовал это в Windows 7 (по крайней мере, достаточно, чтобы проверить это). Когда я впервые начал видеть встроенную поддержку Microsoft для этих улучшенных клавиатур во времена Windows ME, я думаю, что это, вероятно, будет хорошо работать и в WinXP. Я не помню, тестировал ли я это с этой операционной системой. Тем не менее, если этот подход не работает, я не ожидаю, что он вызовет проблемные побочные эффекты.
Прочитав эти посты и посмотрев альтернативы, я решил написать свою собственную утилиту командной строки под названием SetVol, чтобы установить громкость. Он работает немного проще, чем описано в некоторых других постах на этой странице, вот несколько примеров, которые вы вводите в командной строке:
setvol 75
setvol -10
setvol +12
setvol mute
setvol unmute
Есть и другие варианты. Я выпустил его как бесплатное программное обеспечение, и вы можете посетить www.rlatour.com/setvol для получения дополнительной информации и загрузки копии.
наслаждаться
Вследствие и дальнейшего упрощения 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%
сохранить его как файл .bat и выполнить, передав параметр
Например: sound 60
установит громкость звука 60%
убедитесь, что вы поместили bat-файл рядом с nircmd или в %windir%
(или определите его папку в %path%
)