是否可以通过命令行更改 Windows XP 中的音量?
答案1
近红外命令是一款可以实现上述功能并且还能实现更多功能的应用程序。
使用示例:
- 将系统音量增加 2000 个单位(共 65535 个)
nircmd.exe changesysvolume 2000
- 将系统音量减少 5000 个单位(共 65535 个)
nircmd.exe changesysvolume -5000
- 将音量调至最高值
nircmd.exe setsysvolume 65535
- 沉默的
nircmd.exe mutesysvolume 1
- 取消静音
nircmd.exe mutesysvolume 0
答案2
阅读完这些帖子并寻找替代方案后,我决定编写自己的命令行实用程序 SetVol 来设置音量。它的工作方式比本页上其他一些帖子中描述的要简单一些,以下是一些您将在命令提示符下输入的示例:
setvol 75
setvol -10
setvol +12
setvol mute
setvol unmute
还有其他选择。我已将其作为免费软件发布,欢迎您访问www.rlatour.com/setvol了解更多信息并下载副本。
享受
答案3
制作 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
注意:我尝试使用此方法在机器上可靠地运行。 Helen 对 Sibo Lin 在 StackOverflow 上提出的关于此问题的问题的回答表示静音不可靠,但音量调节可能不那么可靠。我怀疑不同机器的可靠性水平可能不同。这种方法使用模仿按键的技术,特别是增强型媒体键盘上的音量控制键。当 Windows 开始支持此功能时,这种键盘基本上是一个很少使用的无用功能,它提供的功能以前只能通过自定义驱动程序获得。如果此代码不够完善,并且不太可能在某些现有的各种(可能较旧的)硬件上运行,我不会感到惊讶。话虽如此,我自己并没有遇到过麻烦。
致谢:
- 这个答案深受以下因素的影响Ryan 对 Sibo Lin 关于在命令行上更改音量的问题的回答。(对于如何做到这一点,我有了一个好主意,因此我寻找了一些有关如何完成这一点的示例。)
- 我怀疑Ed Wilson 在 Microsoft 上的“Hey Scripting Guy!”博客:有关使用简陋脚本设置扬声器音量的文章可能对许多提出这种方法的人提供了(直接或间接的)启发。
一个警告:这个问题已被标记为 Windows XP。我刚刚在 Windows 10 中尝试过。我知道我在 Windows 7 中使用过它(至少足以测试它)。由于我第一次看到微软在 Windows ME 左右内置了对这些增强型键盘的支持,我认为这在 WinXP 中也可能运行良好。我不记得我是否真的在那个操作系统上测试过它。不过,如果这种方法效果不好,我预计它不会造成有问题的副作用。
答案4
拥有并进一步简化 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%
)