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.

Lasă un comentariu

Cum se creează un USB bootabil arm64 (ARM) cu Windows 11 folosind Rufus

Cum se creează un USB bootabil arm64 (ARM) cu Windows 11 folosind Rufus

Creați un stick USB bootabil ARM64 cu Windows 11 cu Rufus. Învățați să descărcați fișierul ISO ARM64 și să pregătiți un stick USB pentru PC-uri ARM, inclusiv PC-uri Copilot+.

Cum se instalează winget pe Windows 11, 10

Cum se instalează winget pe Windows 11, 10

Pentru a instala winget (Windows Package Manager), descărcați App Installer pe Windows 11 și 10 și utilizați comanda winget.

Cum să ocolești contul Microsoft în OOBE pe Windows 11 – metode care încă funcționează

Cum să ocolești contul Microsoft în OOBE pe Windows 11 – metode care încă funcționează

Încă poți ocoli contul Microsoft și internetul pe Windows 11 OOBE cu Registry, WinJS, Domain Joined, Unattended file și instrumente.

Ciclul de viață al Windows 11 pentru Home și Pro

Ciclul de viață al Windows 11 pentru Home și Pro

Ciclul de viață Windows 11 Home și Pro pentru versiunea 25H2 se încheie pe 13.10.2027, iar ciclul de viață 24H2 se încheie pe 13.10.2026. Versiunile Enterprise și Education beneficiază de asistență mai lungă.

Cum se instalează Windows 11 de pe un fișier ISO fără USB

Cum se instalează Windows 11 de pe un fișier ISO fără USB

Pentru a instala Windows 11 dintr-un fișier ISO, trebuie să montați imaginea și să lansați programul de instalare cu opțiunea Nimic pentru a șterge unitatea.

Cum se activează noua funcție de fundal video pe Windows 11 25H2 și 24H2

Cum se activează noua funcție de fundal video pe Windows 11 25H2 și 24H2

Pentru a activa funcția de fundal video în Windows 11, în cea mai recentă versiune Dev sau Beta, executați comanda vivetool /enable /id:57645315.

Cum se setează imagini de fundal live pentru desktop pe Windows 11

Cum se setează imagini de fundal live pentru desktop pe Windows 11

Pentru a seta imagini de fundal live pe Windows 11, deschideți Imagine de fundal live, faceți clic pe Bibliotecă, faceți clic dreapta pe imaginea de fundal live, alegeți Setare ca imagine de fundal.

Cum să conectezi Copilot la Gmail, OneDrive și alte servicii pe Windows 11

Cum să conectezi Copilot la Gmail, OneDrive și alte servicii pe Windows 11

Conectorii Copilot pe Windows 11 permit inteligenței artificiale să găsească fișiere și e-mailuri pe OneDrive, Outlook, Google Drive, Gmail, Google Calendar și Contacte.

Cum se convertește MBR în GPT fără a pierde date pe Windows 10

Cum se convertește MBR în GPT fără a pierde date pe Windows 10

Pentru a converti de la MBR la GPT pentru Windows 11, deschideți WinRE, lansați Promptul de comandă, executați comenzile mbr2gpt /validate și mbr2gpt /convert.

Sfârșitul ciclului de viață al Windows 10: Tot ce trebuie să știi și să faci înainte de 14 octombrie 2025

Sfârșitul ciclului de viață al Windows 10: Tot ce trebuie să știi și să faci înainte de 14 octombrie 2025

Sfârșitul ciclului de viață al Windows 10 este pe 14 octombrie 2025, ceea ce înseamnă că nu mai există actualizări, dar opțiunile includ înscrierea la ESU, upgrade-ul la Windows 11 sau Linux.