Quando il sistema operativo vede la presenza di troppi dispositivi dello stesso tipo, per esempio schede audio, cuffie e microfoni, può, in determinate occasioni o programmi, gestirli male e causarne un malfunzionamento, in genere mi capita con l’audio delle barre telefoniche o i programmi di chat aziendali. Si rende così necessario disattivare la periferica che crea il problema.

Dalla Gestione dispositivi sarebbe molto semplice, tasto destro del mouse sopra la periferica e si sceglie abilita/disabilita dal menu, solo che bisogna essere amministratori del sistema e quando fornisco supporto ai miei utenti remoti loro non lo sono. Vediamo così dei cmdlet alternativi per poterlo fare da remoto con PowerShell.

Come attivare/disattivare periferiche sistema operativo direttamente PowerShell

Prestate attenzione a cosa tentate di disattivare, non fatelo con periferiche troppo importanti, come la scheda video per esempio, che potrebbero poi impedirvi l’utilizzo del computer.

Lista periferiche

Con il cmdlet Get-PnpDevice possiamo vedere la lista di tutte le periferiche presenti nel computer, quelle in Status OK, invece quelle in Status Unknown sono attualmente scollegate.

I dati che ci interessano di più sono Class e FriendlyName, dato che questa ultima voce può essere piuttosto lunga ne possiamo usare anche solo una parte nei comandi che andremo a eseguire.

Come attivare/disattivare periferiche sistema operativo direttamente PowerShell

Possiamo filtrare il tipo di componenti, con questo comando selezioniamo solo le schede di rete:

  • Get-PnpDevice -PresentOnly -Class Net

Se dobbiamo disattivare la scheda di rete virtuale di VirtualBox il comando da usare è questo:

  • Get-PnpDevice -PresentOnly -Class Net | Where-Object Name -Match "VirtualBox" |Disable-PnPDevice -Confirm:$False

Come vedete nel Match ho messo solo una parte del FriendlyName visualizzato con il comando precedente.

Se dobbiamo poi riattivare la stessa scheda di rete il comando cambia di poco:

  • Get-PnpDevice -PresentOnly -Class Net | Where-Object Name -Match "VirtualBox" |Enable-PnPDevice -Confirm:$False

Come attivare/disattivare periferiche sistema operativo direttamente PowerShell

Comandi simili anche per le schede audio, in questo caso con Poly nel comando vado a disattivare sia la cuffia che il microfono.

  • Get-PnpDevice -PresentOnly -Class AudioEndpoint
  • Get-PnpDevice -PresentOnly -Class AudioEndpoint | Where-Object Name -Match "Poly" |Disable-PnPDevice -Confirm:$False
  • Get-PnpDevice -PresentOnly -Class AudioEndpoint | Where-Object Name -Match "Poly" |Enable-PnPDevice -Confirm:$False

Come attivare/disattivare periferiche sistema operativo direttamente PowerShell