Come disattivare automaticamente laudio quando le cuffie sono scollegate su Windows 10

Windows 10 può mantenere profili audio separati per diversi dispositivi audio. Per ogni dispositivo audio che colleghi, puoi impostare un livello di volume diverso e quando il dispositivo è connesso, il volume si regolerà automaticamente. Naturalmente, nessuno tiene sempre disattivato un dispositivo audio. Aumenteranno o diminuiranno il volume ma nessuno abitualmente disattiva un dispositivo audio.

Se utilizzi un paio di cuffie con il desktop e spesso devi scollegarle, puoi utilizzare un piccolo script PowerShell che disattiverà automaticamente l'audio quando si scollegano le cuffie.

Questo è qualcosa che fanno i telefoni cellulari, ad esempio, quando scolleghi le cuffie, la musica si interrompe automaticamente. La logica dietro questo è che hai finito di ascoltare la musica o hai rimosso accidentalmente le cuffie e hai bisogno di un modo rapido per spegnerle. La sceneggiatura è stata fondamentalmente scritta su quello stesso principio da  Prateek Singh di GEEKEEFY .

Come disattivare automaticamente laudio quando le cuffie sono scollegate su Windows 10

Disattiva automaticamente l'audio

Apri Blocco note e incolla quanto segue;

[cmdletbinding()] Param() #Aggiunta di definizioni per l'accesso all'API Audio Add-Type -TypeDefinition @' using System.Runtime.InteropServices; [Guid("5CDF2C82-841E-4546-9722-0CF74078229A"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interfaccia IAudioEndpointVolume { // f(), g(), ... sono slot del metodo COM inutilizzati. Definisci questi se ti interessa int f(); int g(); int h(); int io(); int SetMasterVolumeLevelScalar(float fLevel, System.Guid pguidEventContext); int j(); int GetMasterVolumeLevelScalar(out float pfLevel); int k(); intl(); 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)] interfaccia IMMDevice { int Activate(ref System.Guid id, int clsCtx, intactivationParams, out IAudioEndpointVolume aev); } [Guid("A95664D2-9614-4F35-A746-DE8DB63617E6"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interfaccia IMMDeviceEnumerator { int f(); // Inutilizzato int GetDefaultAudioEndpoint(int dataFlow, int role, out IMMDevice endpoint); } [ComImport, Guid("BCDE0395-E52F-467C-8E3D-C4579291692E")] class MMDeviceEnumeratorComObject { } public class Audio { static IAudioEndpointVolume Vol() { var enumerator = new MMDeviceEnumeratorComObject() as IMMDeviceEnumerator; IMMDevice 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)); ritorno epv; } public static float Volume { get {float v = -1; Marshal.ThrowExceptionForHR(Vol().GetMasterVolumeLevelScalar(out v)); return v;} set {Marshal.ThrowExceptionForHR(Vol().SetMasterVolumeLevelScalar(value, System.Guid.Empty));} } public static bool Mute { get { bool mute; Marshal.ThrowExceptionForHR(Vol().GetMute(out mute)); torna muto; } set { Marshal.ThrowExceptionForHR(Vol().SetMute(value, System.Guid.Empty)); } } } '@ -Verbose While($true) { #Pulisci tutti gli eventi nella sessione corrente poiché si trova in un ciclo infinito, per ricominciare da capo quando inizia il ciclo Get-Event | Remove-Event -ErrorAction SilentlyContinue #Registrazione dell'evento e attesa per l'attivazione dell'evento Register-WmiEvent -Class Win32_DeviceChangeEvent Wait-Event -OutVariable Event |Out-Null $EventType = $Event.sourceargs. nuovo evento | ` Ordina-oggetto TIME_CREATED -Decrescente | ` Select-Object EventType -ExpandProperty EventType -First 1 #Logica condizionale da gestire, quando disattivare/riattivare l'audio della macchina utilizzando l'API 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 Write-Verbose " Riattivato [$((Get-Date).tostring())]" } }

Salvalo con l'estensione del file PS1. Assicurati di selezionare "Tutti i file" dal menu a discesa del tipo di file. Dai al file un nome che ti dirà a colpo d'occhio cosa fa. Salvalo in un posto in cui è improbabile che lo elimini per sbaglio, ma anche dove puoi trovarlo facilmente se necessario.

Esecuzione dello script

PowerShell non può semplicemente eseguire automaticamente uno script. C'è una misura di sicurezza integrata che gli impedisce di farlo, ma c'è un modo per aggirarlo. Abbiamo un articolo dettagliato su come puoi fare proprio questo. Segui le istruzioni per eseguire automaticamente lo script PowerShell appena creato e usa un'attività pianificata per avviare lo script ogni volta che avvii il PC.

In alternativa, puoi eseguire manualmente lo script all'avvio del sistema. Lo sto usando da meno di 30 minuti e non so come facevo a vivere senza prima.

Lascia un commento

Windows 11 25H2 ti permetterà di trasferire i dati dal tuo vecchio PC durante la configurazione iniziale

Windows 11 25H2 ti permetterà di trasferire i dati dal tuo vecchio PC durante la configurazione iniziale

La nuova funzionalità "Trasferisci su un nuovo PC" dell'OOBE di Windows 11 25H2 consente di migrare file e impostazioni durante la configurazione utilizzando la rete locale senza OneDrive.

La build 26200.5761 (KB5064093) per Windows 11 25H2 introduce la ripresa delle app Android e altro ancora (Dev)

La build 26200.5761 (KB5064093) per Windows 11 25H2 introduce la ripresa delle app Android e altro ancora (Dev)

L'aggiornamento KB5064093 (build 26200.5761) per Windows 11 viene distribuito con la funzionalità di ripristino delle app Android, una nuova icona della batteria nella schermata di blocco, aggiornamenti dell'agente AI e correzioni.

La build 27774 di Windows 11 aggiunge la funzionalità di protezione amministratore al canale Canary.

La build 27774 di Windows 11 aggiunge la funzionalità di protezione amministratore al canale Canary.

La build 27774 di Windows 11 introduce la funzionalità di protezione amministratore e modifiche al programma di installazione di Windows quando si lavora con le partizioni.

Come scaricare il file ISO ufficiale di Windows 8.1 (2026)

Come scaricare il file ISO ufficiale di Windows 8.1 (2026)

Per scaricare il file ISO di Windows 8.1, apri la pagina di download di Microsoft, seleziona l'edizione, la lingua e fai clic sul pulsante di download.

3 modi per creare un supporto di avvio USB per installare Windows 8.1 (2026)

3 modi per creare un supporto di avvio USB per installare Windows 8.1 (2026)

Per creare una chiavetta USB avviabile con Windows 8.1, puoi utilizzare strumenti di terze parti come Rufus e Ventoy oppure il prompt dei comandi. Ecco come fare.

Come scaricare il file ISO di Windows 11 25H2 per PC arm64 e Copilot+

Come scaricare il file ISO di Windows 11 25H2 per PC arm64 e Copilot+

Per scaricare il file ISO di Windows 11 25H2 per architettura arm64, apri la pagina di download ufficiale, seleziona ISO per Arm64, la lingua e fai clic su Scarica.

Come rimuovere la password di accesso su Windows 11

Come rimuovere la password di accesso su Windows 11

Windows 11 consente di rimuovere la password di accesso a un account tramite l'applet netplwiz o le impostazioni delle opzioni di accesso. Ecco come fare.

Requisiti hardware per il richiamo di Windows

Requisiti hardware per il richiamo di Windows

Quali PC riceveranno Windows Recall? Solo i PC Copilot+, ovvero i PC Windows 11 esistenti senza una NPU di 40+ TOPS, non riceveranno la funzionalità AI.

Interruzione del servizio Microsoft 365 che colpisce i servizi principali in tutto il Nord America (22 gennaio 2026)

Interruzione del servizio Microsoft 365 che colpisce i servizi principali in tutto il Nord America (22 gennaio 2026)

22 gennaio 2026 – Microsoft 365 subisce un'importante interruzione di servizio in Nord America, che compromette l'utilizzo di Teams, Outlook, OneDrive e altri servizi per gli utenti.

Come controllare le specifiche del computer su Windows 11

Come controllare le specifiche del computer su Windows 11

Per trovare le specifiche di un PC con Windows 11, apri Impostazioni > Sistema > Informazioni e verifica CPU, RAM, tipo di sistema, versione del sistema operativo e altro ancora.