回答:
NirCmdは、それ以上のことを行うアプリケーションです。
使用例:
nircmd.exe changesysvolume 2000
nircmd.exe changesysvolume -5000
nircmd.exe setsysvolume 65535
nircmd.exe mutesysvolume 1
nircmd.exe mutesysvolume 0
nircmd
。
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
注:このアプローチは、使用しようとしたマシン上で確実に動作します。 これに関するSibo LinのStackOverflow質問に対するヘレンの回答は、ミューティングの信頼性が低いことを示しますが、ボリュームの変更はそれほど信頼性がない場合があります。信頼性のレベルはマシンによって異なる可能性があります。このアプローチでは、キーストローク、特に拡張メディアキーボードのボリュームコントロールキーを模倣する技術を使用しています。Windowsがこれをサポートし始めた時点では、そのようなキーボードは基本的にはあまり使用されない軽薄な機能であり、以前はカスタムドライバーでのみ利用できた機能を提供していました。このコードの洗練度が低く、既存のさまざまな(おそらく古い)ハードウェアの一部で動作する可能性が低い場合、私は驚かないでしょう。とはいえ、私自身は問題を抱えていません。
クレジット:
1つの注意点:この質問はWindows XPでタグ付けされています。これをWindows 10で試しました。これをWindows 7で使用したことがわかっています(少なくともテストするには十分です)。Windows MEの頃にこれらの強化されたキーボードに対するMicrosoftの組み込みサポートを最初に目にし始めたとき、WinXPでも勝つと思われます。そのオペレーティングシステムで実際にテストしたかどうかは思い出せません。それでも、このアプローチがうまく機能しない場合、問題のある副作用を引き起こすとは思わない。
pip install SendKeys
(キーストロークをエミュレートするための純粋なPythonパッケージ)。続いてpython -c "from SendKeys import playkeys; playkeys([(0xAE, True), (0xAE, False)])"
、ボリュームキーを1回押して放すことをエミュレートします。(たとえば)100の異なるプレスをエミュレートする* 100
には、終了後]
、最終の前に挿入できます)
。
これらの投稿を読み、代替手段を探したので、ボリュームを設定するために、SetVolという独自のコマンドラインユーティリティを作成することにしました。このページの他の投稿で説明されているものよりも少し簡単に機能します。コマンドプロンプトで入力する例を次に示します。
setvol 75
setvol -10
setvol +12
setvol mute
setvol unmute
他のオプションもあります。私はそれをフリーウェアとしてリリースしました。詳細についてはwww.rlatour.com/setvolにアクセスし、コピーをダウンロードしてください。
楽しい
errorlevel
(私は後でそれを復元するために、現在の設定を保存することができますので)
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%
)ことを確認してください