Cum să dezactivați automat sunetul când căștile sunt deconectate pe Windows 10

Windows 10 poate păstra profiluri audio separate pentru diferite dispozitive audio. Pentru fiecare dispozitiv audio pe care îl conectați, puteți seta un nivel diferit de volum, iar atunci când dispozitivul este conectat, volumul se va regla automat. Desigur, nimeni nu ține un dispozitiv audio dezactivat tot timpul. Vor crește sau scădea volumul, dar nimeni nu dezactivează în mod obișnuit un dispozitiv audio.

Dacă utilizați o pereche de căști cu desktopul și deseori trebuie să le deconectați, puteți utiliza un mic script PowerShell care va opri automat sunetul atunci când vă deconectați căștile.

Este ceva ce fac telefoanele mobile și anume, când deconectați căștile, muzica se oprește automat. Logica din spatele acestui lucru este că fie ați terminat de ascultat muzică, fie v-ați scos din greșeală căștile și aveți nevoie de o modalitate rapidă de a le opri. Scenariul a fost scris practic pe același principiu de către  Prateek Singh de la GEEKEEFY .

Cum să dezactivați automat sunetul când căștile sunt deconectate pe Windows 10

Dezactivați automat sunetul

Deschideți Notepad și lipiți următoarele;

[cmdletbinding()] Param() #Adăugarea de definiții pentru accesarea Audio API Add-Type -TypeDefinition @' utilizând System.Runtime.InteropServices; [Guid("5CDF2C82-841E-4546-9722-0CF74078229A"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interfață IAudioEndpointVolume { // f(), g(), ... sunt sloturi pentru metoda COM neutilizate. Definiți-le dacă vă pasă int f(); int g(); int h(); int i(); int SetMasterVolumeLevelScalar(float fLevel, System.Guid pguidEventContext); int j(); int GetMasterVolumeLevelScalar(out float pfLevel); int k(); int l(); int m(); int n(); int SetMute([MarshalAs(UnmanagedType.Bool)] bool bMute, System.Guid pguidEventContext); int GetMute(out bool pbMute); } [Guid("D666063F-1587-4E43-81F1-B948E807363F"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interfață IMDevice { int Activate(ref System.Guid id, int clsCtx, int activationParams, out IAudioEndpointVolume aev); } [Guid("A95664D2-9614-4F35-A746-DE8DB63617E6"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interfață IMMDeviceEnumerator { int f(); // Unused int GetDefaultAudioEndpoint(int dataFlow, int rol, out IMDevice endpoint); } [ComImport, Guid("BCDE0395-E52F-467C-8E3D-C4579291692E")] clasa MMDeviceEnumeratorComObject { } public class Audio { static IAudioEndpointVolume Vol() { var enumerator = new MMDeviceEnumeratorComObject()numerator IMM; IMDevice dev = null; Marshal.ThrowExceptionForHR(enumerator.GetDefaultAudioEndpoint(/*eRender*/ 0, /*eMultimedia*/ 1, out dev)); IAudioEndpointVolume epv = null; var epvid = typeof(IAudioEndpointVolume).GUID; Marshal.ThrowExceptionForHR(dev.Activate(ref epvid, /*CLSCTX_ALL*/ 23, 0, out epv)); return epv; } public static float Volum { get {float v = -1; Marshal.ThrowExceptionForHR(Vol().GetMasterVolumeLevelScalar(out v)); return v;} set {Marshal.ThrowExceptionForHR(Vol().SetMasterVolumeLevelScalar(valoare, System.Guid.Empty));} } public static bool Mute { get { bool mute; Marshal.ThrowExceptionForHR(Vol().GetMute(out mute)); returnează mut; } set { Marshal.ThrowExceptionForHR(Vol().SetMute(valoare, System.Guid.Empty)); } } } '@ -Verbose While($true) { #Curățați toate evenimentele din sesiunea curentă, deoarece este într-o buclă infinită, pentru a începe din nou când bucla începe Get-Event | Remove-Event -ErrorAction SilentlyContinue #Înregistrarea evenimentului și așteptarea declanșării evenimentului Register-WmiEvent -Class Win32_DeviceChangeEvent Wait-Event -OutVariable Event |Out-Null $EventType = $Event.sourceargs. eveniment nou | ` Sort-Object TIME_CREATED -Descendent | ` Select-Object EventType -ExpandProperty EventType -Primul 1 #Logica condiționată de gestionat, Când să dezactivați/dezactivați sunetul mașinii folosind API-ul Audio If($EventType -eq 3) { [Audio]::Mute = $true Write-Verbose "Muted [$((Get-Date).tostring())]" } elseif($EventType -eq 2 -and [Audio]::Mute -eq $true) { [Audio]::Mute = $false Scriere-Verbose " Dezactivat [$((Get-Date).tostring())]" } }

Salvați-l cu extensia de fișier PS1. Asigurați-vă că selectați „Toate fișierele” din meniul derulant tip fișier. Dați fișierului un nume care vă va spune dintr-o privire ce face. Salvați-l într-un loc unde este puțin probabil să îl ștergeți accidental, dar și unde îl puteți găsi cu ușurință dacă aveți nevoie.

Rularea Scriptului

PowerShell nu poate rula automat un script. Există o măsură de securitate încorporată care îl împiedică să facă acest lucru, dar există o cale de ocolire. Avem un articol detaliat despre cum poți face exact asta. Urmați instrucțiunile pentru a rula automat scriptul PowerShell pe care tocmai l-ați creat și utilizați o sarcină programată pentru a porni scriptul de fiecare dată când porniți computerul.

Alternativ, puteți rula manual scriptul atunci când porniți sistemul. Îl folosesc de mai puțin de 30 de minute și nu știu cum trăiam fără el înainte.

Leave a Comment

Cum să oprești computerul de pe telefon

Cum să oprești computerul de pe telefon

Cum să oprești computerul de pe telefon

Repararea și remedierea actualizării Windows 7

Repararea și remedierea actualizării Windows 7

Practic, Windows Update funcționează împreună cu registry-ul și diferite fișiere DLL, OCX și AX. În cazul în care aceste fișiere se corupesc, majoritatea funcțiilor

Returnil Virtual System 2010 – Virtualizați-vă sistemul

Returnil Virtual System 2010 – Virtualizați-vă sistemul

Noile suite de protecție a sistemului au apărut ca ciupercile în ultima vreme, toate aducând încă o soluție antivirus/detectare a spamului și, dacă ai noroc...

Cum se activează Bluetooth pe Windows 10/11

Cum se activează Bluetooth pe Windows 10/11

Află cum să activezi Bluetooth pe Windows 10/11. Bluetooth trebuie să fie activat pentru ca dispozitivele tale Bluetooth să funcționeze corect. Nu-ți face griji, este simplu!

PDF Rider este un software open source excelent pentru gestionarea PDF-urilor

PDF Rider este un software open source excelent pentru gestionarea PDF-urilor

Anterior, am analizat NitroPDF, un cititor PDF excelent care permite utilizatorului să convertească documente în fișiere PDF cu opțiuni precum îmbinarea și divizarea PDF-urilor.

Curățați fișierul text cu Text Cleanser

Curățați fișierul text cu Text Cleanser

Ați primit vreodată un document sau un fișier text care conține caractere inutile redundante? Textul conține multe asteriscuri, cratime, spații goale etc.?

Caseta de căutare rapidă Google în bara de activități din Windows 7

Caseta de căutare rapidă Google în bara de activități din Windows 7

Atât de mulți oameni m-au întrebat despre mica pictogramă dreptunghiulară Google de lângă Windows 7 Start Orb din bara mea de activități, încât în ​​sfârșit am decis să public asta.

Remediere pentru uTorrent în Windows 7

Remediere pentru uTorrent în Windows 7

uTorrent este de departe cel mai popular client desktop pentru descărcarea torrentelor. Chiar dacă funcționează perfect pentru mine în Windows 7, unii oameni au probleme...

2 instrumente minunate care îți amintesc să-ți relaxezi ochii

2 instrumente minunate care îți amintesc să-ți relaxezi ochii

Toată lumea trebuie să ia pauze frecvente în timp ce lucrează la calculator; dacă nu ia pauze, există șanse mari să-ți iasă ochii de sus (bine, nu să-ți iasă ochii de sus).

82 de utilitare Windows esențiale open source sub o singură capotă

82 de utilitare Windows esențiale open source sub o singură capotă

Este posibil să existe mai multe aplicații cu care, ca utilizator obișnuit, ești foarte obișnuit. Majoritatea instrumentelor gratuite utilizate în mod obișnuit necesită o instalare dificilă,