Réponses:
NirCmd est une application qui fait cela et plus encore.
Exemple d'utilisation:
nircmd.exe changesysvolume 2000
nircmd.exe changesysvolume -5000
nircmd.exe setsysvolume 65535
nircmd.exe mutesysvolume 1
nircmd.exe mutesysvolume 0
nircmd
.
Créez les fichiers 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
Affichez le contrôle du volume pour voir ce que vous faites:
sndvol
(or maybe sndvol32)
Modifiez le volume:
cscript voldown.js
Remarque: cette approche a fonctionné de manière fiable sur les machines sur lesquelles j'ai essayé de l'utiliser. La réponse d'Helen à la question StackOverflow de Sibo Lin à ce sujetindique que le muting n'est pas fiable, mais le changement de volume peut ne pas être aussi fiable. Je soupçonne que le niveau de fiabilité peut être différent sur différentes machines. Cette approche utilise la technologie de mimétisme d'une frappe, et en particulier une touche de contrôle du volume sur un clavier multimédia amélioré. Au moment où Windows a commencé à prendre en charge cela, un tel clavier était essentiellement une fonctionnalité frivole peu utilisée qui offrait des fonctionnalités qui n'étaient auparavant disponibles qu'avec des pilotes personnalisés. Cela ne me surprendrait pas si ce code était moins raffiné et moins susceptible de fonctionner sur certains des différents matériels (peut-être plus anciens) qui existent. Cela dit, je n'ai pas eu de problèmes avec ça moi-même.
Crédits:
Une mise en garde: cette question a été balisée avec Windows XP. Je viens de l'essayer dans Windows 10. Je sais que je l'ai utilisé dans Windows 7 (au moins assez pour le tester). Comme j'ai commencé à voir la prise en charge intégrée de Microsoft pour ces claviers améliorés à l'époque de Windows ME, je pense que cela fonctionnera probablement bien sous WinXP. Je ne me souviens pas si j'ai réellement testé cela avec ce système d'exploitation. Pourtant, si cette approche ne fonctionne pas bien, je ne m'attends pas à ce qu'elle provoque des effets secondaires problématiques.
pip install SendKeys
(package Python pur pour émuler les frappes), suivi de python -c "from SendKeys import playkeys; playkeys([(0xAE, True), (0xAE, False)])"
, qui émule une simple pression et relâchement de la touche de volume. Pour émuler 100 presses distinctes (par exemple), vous pouvez insérer * 100
après la fermeture ]
et avant la finale )
.
Après avoir lu ces articles et recherché des alternatives, j'ai décidé d'écrire mon propre utilitaire de ligne de commande, appelé SetVol, pour régler le volume. Cela fonctionne un peu plus simplement que ce qui est décrit dans certains des autres articles de cette page, voici quelques exemples que vous saisiriez à l'invite de commande:
setvol 75
setvol -10
setvol +12
setvol mute
setvol unmute
Il existe également d'autres options. Je l'ai publié en tant que freeware, et vous êtes invités à visiter www.rlatour.com/setvol pour plus d'informations et pour télécharger une copie.
Prendre plaisir
errorlevel
(afin que je puisse enregistrer le paramètre actuel pour le restaurer plus tard)
Posséder et simplifier davantage 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%
enregistrez-le en tant que fichier .bat et exécutez-le en passant un paramètre
par exemple: sound 60
va régler le volume sonore à 60%
assurez-vous de placer le fichier bat à côté du nircmd ou dans %windir%
(ou définissez son dossier dans %path%
)