เป็นไปได้ไหมที่จะเปลี่ยนระดับเสียงใน Windows XP ผ่านทางบรรทัดคำสั่ง?
เป็นไปได้ไหมที่จะเปลี่ยนระดับเสียงใน Windows XP ผ่านทางบรรทัดคำสั่ง?
คำตอบ:
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
หมายเหตุ: ฉันมีวิธีการนี้ทำงานได้อย่างน่าเชื่อถือในเครื่องที่ฉันพยายามใช้ คำตอบของเฮเลนสำหรับคำถาม StackOverflow ของ Sibo Lin เกี่ยวกับเรื่องนี้บ่งชี้ว่าการปิดเสียงไม่น่าเชื่อถือ แต่การเปลี่ยนระดับเสียงอาจไม่น่าเชื่อถือเท่าที่ควร ฉันสงสัยว่าระดับความน่าเชื่อถืออาจแตกต่างกันในเครื่องที่แตกต่างกัน วิธีนี้ใช้เทคโนโลยีในการเลียนแบบการกดแป้นและโดยเฉพาะปุ่มควบคุมระดับเสียงบนแป้นพิมพ์สื่อที่ได้รับการปรับปรุง ในขณะที่ Windows เริ่มให้การสนับสนุนแป้นพิมพ์ดังกล่าวนั้นเป็นคุณสมบัติที่ใช้งานเล็กน้อยซึ่งเคยมีฟังก์ชั่นการใช้งานก่อนหน้านี้ที่มีเฉพาะกับไดรเวอร์ที่กำหนดเองเท่านั้น มันจะไม่แปลกใจเลยถ้ารหัสนี้ขัดน้อยกว่าและมีโอกาสน้อยที่จะทำงานกับฮาร์ดแวร์ (อาจเก่ากว่า) บางอย่างที่อยู่ข้างนอก ทั้งหมดที่กล่าวมาฉันไม่ได้มีปัญหากับตัวเอง
เครดิต:
One caveat: คำถามนี้ถูกแท็กด้วย Windows XP ฉันเพิ่งลองสิ่งนี้ใน Windows 10 ฉันรู้ว่าฉันใช้สิ่งนี้ใน Windows 7 (อย่างน้อยก็เพียงพอที่จะทดสอบ) เมื่อฉันเริ่มเห็นการสนับสนุนในตัวของ Microsoft สำหรับแป้นพิมพ์ที่ได้รับการปรับปรุงเหล่านี้ในช่วงเวลาที่ฉันใช้ Windows ME ฉันคิดว่านี่น่าจะชนะ WinXP ได้เช่นกัน ฉันจำไม่ได้ว่าฉันทดสอบสิ่งนี้ด้วยระบบปฏิบัติการจริงหรือไม่ ถึงกระนั้นหากวิธีการนี้ใช้งานไม่ได้ผลฉันไม่คาดหวังว่าจะทำให้เกิดผลข้างเคียงที่เป็นปัญหา
pip install SendKeys
ไพ ธ อนอยู่แล้วฉันจึงสามารถใช้สิ่งนี้ในบรรทัดคำสั่ง: (แพคเกจ Python บริสุทธิ์สำหรับการเลียนแบบการกดแป้นพิมพ์) ตามด้วยpython -c "from SendKeys import playkeys; playkeys([(0xAE, True), (0xAE, False)])"
ซึ่งเลียนแบบการกดครั้งเดียวและปล่อยปุ่มปรับระดับเสียง ที่จะเลียนแบบ 100 กดที่แตกต่างกัน (ตัวอย่าง) คุณสามารถแทรก* 100
หลังจากปิดและก่อนที่สุดท้าย]
)
หลังจากอ่านโพสต์เหล่านี้และมองหาทางเลือกอื่นฉันตัดสินใจที่จะเขียนโปรแกรมอรรถประโยชน์บรรทัดคำสั่งของตัวเองชื่อ SetVol เพื่อตั้งระดับเสียง มันใช้งานได้ง่ายกว่าที่อธิบายไว้ในโพสต์อื่น ๆ ในหน้านี้นี่คือตัวอย่างบางส่วนที่คุณจะป้อนที่ command prompt:
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%
)