¿Es posible cambiar el volumen en Windows XP a través de la línea de comando?
¿Es posible cambiar el volumen en Windows XP a través de la línea de comando?
Respuestas:
NirCmd es una aplicación que hace eso y más.
Ejemplo de uso:
nircmd.exe changesysvolume 2000
nircmd.exe changesysvolume -5000
nircmd.exe setsysvolume 65535
nircmd.exe mutesysvolume 1
nircmd.exe mutesysvolume 0
nircmd
.
Crea los archivos 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
Muestra el control de volumen para que puedas ver lo que estás haciendo:
sndvol
(or maybe sndvol32)
Cambia el volumen:
cscript voldown.js
Nota: He tenido este enfoque funcionando de manera confiable en máquinas en las que he intentado usarlo. La respuesta de Helen a la pregunta StackOverflow de Sibo Lin sobre estoindica que el silenciamiento no es confiable, pero el cambio de volumen puede no ser tan confiable. Sospecho que el nivel de confiabilidad puede ser diferente en diferentes máquinas. Este enfoque utiliza la tecnología de imitar una pulsación de tecla, y específicamente una tecla de control de volumen en un teclado multimedia mejorado. En el momento en que Windows comenzó a admitir esto, dicho teclado era básicamente una función frívola poco utilizada que ofrecía una funcionalidad que anteriormente solo estaba disponible con controladores personalizados. No me sorprendería si este código estuviera menos pulido y fuera menos probable que funcionara en algunos de los diversos hardware (quizás más antiguos) que hay. Dicho todo esto, no he tenido problemas con eso.
Créditos
Una advertencia: esta pregunta se ha etiquetado con Windows XP. Acabo de probar esto en Windows 10. Sé que lo he usado en Windows 7 (al menos lo suficiente como para probarlo). Cuando comencé a ver el soporte integrado de Microsoft para estos teclados mejorados en la época de Windows ME, creo que es probable que esto también funcione bien en WinXP. No recuerdo si realmente probé esto con ese sistema operativo. Aún así, si este enfoque no funciona bien, no espero que cause efectos secundarios problemáticos.
pip install SendKeys
(paquete Python puro para emular pulsaciones de teclas), seguido de python -c "from SendKeys import playkeys; playkeys([(0xAE, True), (0xAE, False)])"
, que emula una sola pulsación y liberación de la tecla de volumen. Para emular 100 prensas distintas (por ejemplo), puede insertar * 100
después del cierre ]
y antes de la final )
.
Después de leer estas publicaciones y buscar alternativas, decidí escribir mi propia utilidad de línea de comandos, llamada SetVol, para configurar el volumen. Funciona un poco más simple de lo que se describe en algunas de las otras publicaciones en esta página, aquí hay algunos ejemplos que ingresaría en el símbolo del sistema:
setvol 75
setvol -10
setvol +12
setvol mute
setvol unmute
Hay otras opciones también. Lo lancé como software gratuito y puede visitar www.rlatour.com/setvol para obtener más información y descargar una copia.
Disfrutar
errorlevel
(para poder guardar la configuración actual y luego restaurarlo)
Debido y simplificando aún más 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%
guárdelo como un archivo .bat y ejecútelo pasando un parámetro
por ejemplo: sound 60
configurará el volumen del sonido en un 60%
asegúrese de colocar el archivo bat al lado del nircmd o en %windir%
(o defina su carpeta %path%
)