Bir toplu iş dosyasıyla varsayılan ses aygıtını değiştirme


22

Windows 10'da, çalıştırdığımda kulaklığım ile hoparlörlerim arasında varsayılan ses cihazı olarak geçiş yapmamı sağlayan bir toplu iş dosyası yazmaya çalışıyorum. Herhangi bir üçüncü taraf yazılımı kullanmak istemiyorum.

Etrafta arama yapmayı denedim ama sadece işe yaramayan eski scriptler buldum ve HKCU:\Software\Microsoft\Windows\CurrentVersion\Applets\Volume Control\artık var olmayan bir yola atıfta bulunuyorum . Bu konuda Windows 10 kayıt hakkında herhangi bir bilgi bulamıyorum, ayrıca ne yaptığımdan emin değilseniz kayıtla çok fazla uğraşmaktan rahat değilim.


1
3. tarafı da kullanmak istemiyorsanız pes ederseniz, yaklaşık 5 yıldır audioswit.ch/er [evet bu gerçek URL] kullanıyorum. Kısayol tuşu da değiştirilebilir. [bağlantı yok.]
Tetsujin

Yanıtlar:


33

Herhangi bir üçüncü taraf yazılımı kullanmak istemediğiniz için teşekkür ederiz, ancak bir ~ 100kb exe kullanmanın sakıncası yoksa , komutlarla Nircmd'yi kullanabilirsiniz :

nircmd setdefaultsounddevice "Speakers" 1

veya

nircmd setdefaultsounddevice "Headphones" 1

Aşağıda listelenen ses aygıtlarınızın tam adını kullandığınızdan emin olmanız gerekir Playback Devices(sistem tepsisindeki ses kontrolüne sağ tıklayın). PropertiesÖzellikle adlar herhangi bir şekilde çakışıyorsa, bunları daha basit adlarla yeniden adlandırmak daha kolay olabilir .

1Komut anlamına hangi "Varsayılan Aygıt" sonunda. Kullanılması, 2"Varsayılan İletişim Aygıtı" anlamına gelir.


Gerçekten bir üçüncü taraf aracı kullanmak istemiyorsanız, varsayılan ses cihazımı değiştirdiğimde değişen bir kayıt defteri anahtarının farkı burada sizin için yararlı olabilir, ancak tam olarak ne olduğunu bilmiyorum yapıyor. Varsayılan olup olmadığını belirtmek için 1 veya 0 kadar basit değildir.

resim açıklamasını buraya girin


Benden +1. Bu en iyi yol. Gerçekten nircmd'in sabit diskinizde bir yere yerleştirilmesini istemiyorsanız (inan bana, harika) o zaman alternatif iki kez değiştirmek ve burada belirtilen anahtarın reg ihracatını yapmak ve doğru .reg'i çalıştırmak olacaktır. dosya. Bunun işe yarayacağından emin değilim, ama bu benim alternatif yaklaşımım olacak.
LPChip

Cevabınız için teşekkürler, aslında kendimi nircmd üzerine tökezledim, ancak herhangi bir üçüncü taraf yazılımı olmadan bunu yapmanın bir yolunu bulmayı gerçekten çok merak ettim. Başka bir yöntem çıkmazsa, kullanmayı düşünürüm.
zerothehero

+1. Kayıt defteri yaklaşımını denedi, ancak önerildiği kadar kolay değil (en azından W10 ile).
NirCmd'i

6

Windows 8'den beri (veya daha önce?) PC'nin ses yapılandırması saklanır HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Render. Altında RenderGUID adlı anahtarlar, her içeren vardır DeviceStatekökünde dword değeri. Ama nasıl kodlanır?

MSDN'deki DEVICE_STATE_XXX Sabitlerine bakın :

  • 1 Aktif
  • 2 Engelli
  • 4 Mevcut değil
  • 8 Fişsiz

Yani powershell / bat komut dosyası 1 ve 2 arasında geçiş yapmak için hile yapmalısınız.

EDIT: İnsan tarafından okunabilir aygıt adı almak için alt anahtarın {b3f8fa53-0004-438e-9003-51a46e139bfc},6altındaki okuyunProperties


Merhaba Aziz, bunu W10 altında denedim, ancak sadece bir kez çalıştı - ve toplu olarak önceki cihaza geçmeye çalıştığımda, ses için tepsi simgesine tıkladığınızda aldığınız listeden aniden kayboldu. Ayrıca önce o kayıt defteri anahtarı için izin almak gerektiğini buldum (bkz. Groovypost.com/howto/… )
MBaas
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.