PDA

View Full Version : Software per disattivare e riattivare le porte USB


Trial4life
19-03-2014, 19:38
Ciao a tutti,
sono alla ricerca di un software in grado di analizzare tutte le porte USB del PC, e che permetta di disattivarle manualmente a proprio piacimento, e riattivarle in qualsiasi momento. Esiste un programma simile?

EinWindir
19-03-2014, 19:46
Ciao a tutti,
sono alla ricerca di un software in grado di analizzare tutte le porte USB del PC, e che permetta di disattivarle manualmente a proprio piacimento, e riattivarle in qualsiasi momento. Esiste un programma simile?

Ma non puoi farlo dalla Gestione dei Dispositivi di Windows?

Trial4life
19-03-2014, 19:49
Ci avevo pensato, ma è un po' caotica la gestione, e quando si tratta di attivare/disattivare per più volte le porte, inizia a diventare scocciante.
Cercavo una via più rapida e semplice, se esiste.

x_Master_x
20-03-2014, 08:52
Con l'utility DevCon (http://msdn.microsoft.com/en-us/library/windows/hardware/ff544707(v=vs.85).aspx) e un semplice .bat puoi fare tutto da solo

Da CMD come amministratore, dai il comando:
devcon status usb\*

A quel punto ti segni l'ID della periferica USB che vuoi disabilitare, es:
USB\ROOT_HUB20\4&1A937E2&0

Oppuire se preferisci puoi controllare manualmente in Gestione Dispositivi --> Tasto destro sulla periferica --> Proprietà --> Dettagli --> ID Hardware

Apri Blocco Note e incolli:

; x_Master_x
@ECHO OFF
"C:\Percorso\devcon.exe" disable "USB\ROOT_HUB20\4&1A937E2&0"

Lo salvi come .bat, tasto destro sul file --> Esegui come amministratore

Per abilitare nuovamente la periferica:

; x_Master_x
@ECHO OFF
"C:\Percorso\devcon.exe" enable "USB\ROOT_HUB20\4&1A937E2&0"

Trial4life
20-03-2014, 14:16
Interessante. Ma come faccio a trovare l'ID di una specifica porta? Perché in gestione periferiche, trovo "Dispositivi di archiviazione di massa USB", il cui ID è lo stesso per ogni porta (ho fatto la prova collegando una penna USB a tutte le porte frontali, e i due ID che compaiono sono sempre "USB\VID_054C&PID_06E5&REV_0001" e "USB\VID_054C&PID_06E5", indipendentemente dalla porta a cui collego la pennetta).

x_Master_x
20-03-2014, 14:25
Invece che "ID Hardware" prova con "ID Compatibili", dovresti trovare delle differenze:
http://i58.tinypic.com/n4jons.jpg

P.S. A me sono diversi anche in ID Hardware, ogni porta USB ha una sua sigla e la posso disattivare a piacimento.

N.B. Non inserire nessuna periferica USB, controlla la porta in Gestione Dispositivi sotto la voce Controller USB, così è la porta che viene disabilitata/abilitata e non la periferica in sè.

Trial4life
20-03-2014, 14:30
Stessa cosa per ID Compatibili, solo che la stringa che si ripete è:
USB\Class_08&SubClass_06&Prot_50
L'unica differenza che ho notato è l'ubicazione: per tre porte diverse c'è scritto: "Port_#0004.Hub_#0009", "Port_#0001.Hub_#0009" e "Port_#0002.Hub_#0009".

Trial4life
20-03-2014, 14:32
P.S. A me sono diversi anche in ID Hardware, ogni USB ha una sua sigla e la posso disattivare a piacimento.

N.B. Non devi inserire nessuna periferica USB, devi controllare la porta in Gestione Dispositivi sotto la voce Controller USB, è la porta che viene disabilitata/abilitata non la periferica in sè.
Ah allora è quello il problema... ma come faccio a quali porte "fisiche" corrispondono queste voci? In tutto ho 13 porte USB, di cui 3 frontali e 10 posteriori (tra cui 2 sono anche eSATA − immagino quindi che corrispondano a quelle due voci "Dispositivo USB composito"). Quali sono le voci che corrispondono alle restanti 11 porte?

http://i57.tinypic.com/2mwi99l.png

x_Master_x
20-03-2014, 14:36
Ah allora è quello il problema... ma come faccio a quali porte "fisiche" corrispondono queste voci?

Un metodo stupido ma efficace, disabilita la porta ed inserisci una pendrive USB, se viene rilevata non è quella la porta disabilitata e passi oltre :D
Una volta che hai finito ti segni tutto su un Blocco Note

Trial4life
20-03-2014, 14:37
Oh no, speravo ci fosse un metodo più efficiente...
Vabbè proverò in questo modo. Grazie dei consigli!

Trial4life
20-03-2014, 14:40
Ah, quali sono le voci da disabilitare in gestioni dispositivi? "Hub radice USB" oppure "Controller Standard Universal Host da PCI a USB"? E come faccio a disattivarle da gestione dispositivi? Devo cliccare su "Disinstalla"? O devo usare per forza il .bat?

x_Master_x
20-03-2014, 14:40
Non mi viene in mente nessun metodo che non sia quello. Di nulla, hai tutto ciò che devi sapere per poter procedere ;)

EDIT: "Controller Standard Universal Host da PCI a USB" vuol dire che hai una scheda PCI a parte per le USB, abbiamo una situazione hardware differente:
http://i59.tinypic.com/2rg135w.jpg

A me sulle periferiche USB appare "Disattiva", stessa cosa per gli Hub

antonio338
20-03-2014, 14:42
deve essere per forza fatto da windows? le puoi disattivare facilmente dal bios

Trial4life
20-03-2014, 14:43
Sì, perché vorrei evitare di dover riavviare il PC ogni volta che devo disattivarla/riattivarla.

Trial4life
20-03-2014, 15:40
Davvero non capisco... usando Devcom ho trovato questi ID:
USB\ROOT_HUB20\4&8066661&0
Name: Hub radice USB
Driver is running.
USB\VID_1532&PID_010B\5&1302F15F&0&2
Name: Dispositivo USB composito
Driver is running.
USB\VID_1532&PID_010B&MI_00\6&10FB6E2D&0&0000
Name: Arctosa Keyboard
Driver is running.
USB\VID_1532&PID_010B&MI_01\6&10FB6E2D&0&0001
Name: Arctosa Keyboard
Driver is running.
USB\VID_1307&PID_0330\00000000000006
Name: Dispositivo di archiviazione di massa US
Driver is running.
USB\VID_1532&PID_000C\5&1B16ACEE&0&1
Name: Dispositivo USB composito
Driver is running.
USB\ROOT_HUB\4&10ECD594&0
Name: Hub radice USB
Driver is running.
USB\ROOT_HUB\4&131FF823&0
Name: Hub radice USB
Driver is running.
USB\ROOT_HUB\4&2382C350&0
Name: Hub radice USB
Driver is running.
USB\ROOT_HUB\4&24F5050&0
Name: Hub radice USB
Driver is running.
USB\VID_1532&PID_000C&MI_00\6&2B57C849&0&0000
Name: Lachesis Mouse
Driver is running.
USB\ROOT_HUB\4&2BB190DB&0
Name: Hub radice USB
Driver is running.
USB\ROOT_HUB\4&48272DF&0
Name: Hub radice USB
Driver is running.
USB\ROOT_HUB\4&E137ADD&0
Name: Hub radice USB
Driver is running.
USB\VID_1532&PID_000C&MI_01\6&2B57C849&0&0001
Name: Dispositivo di input USB
Driver is running.
USB\ROOT_HUB20\4&162E7F43&0
Name: Hub radice USB
Driver is running.

Ho provato a disattivare tramite il file .bat sia "USB\ROOT_HUB20\4&162E7F43&0" sia "USB\ROOT_HUB20\4&8066661&0" (credo siano le voci contenenti "ROOT" a dover essere disattivate, dato che inserendo un dispositivo, il valore diventa "VID_..." e quello è assegnato ed è fisso per ciascun dispositivo). Tuttavia, nonostante abbia disattivato entrambe quelle voci, le porte USB sono ancora tutte funzionanti.... cos'è che sto sbagliando?

x_Master_x
20-03-2014, 16:57
Prova a disabilitare tutti gli Hub tramite Gestione Dispositivi ( tasto destro --> Disabilita ) e vedi se il risultato é lo stesso, ne hai 9 da quel che vedo.

Trial4life
20-03-2014, 17:34
Ennesimo inghippo: facendo le prove disabilitando tutti gli HUB, sono riuscito a disattivare le porte in modo selettivo; tuttavia, è normale che per disabilitare una singola porta, sia necessario disattivare due HUB contemporaneamente? Ad esempio, per disattivare la porta frontale, ho dovuto disattivare queste due voci:

http://i57.tinypic.com/2vkmhdg.png

Stessa cosa per disattivare quella della porta a fianco (solo che in quel caso ho dovuto disattivare gli ultimi due HUB).
Insomma, l'ultimo HUB deve essere sempre disattivato affinché le porte si disabilitino. È normale?

Inoltre, la voce USB\ROOT_HUB&VID8086&PID3B36&REV0005 è quella che disattiva DUE porte (quelle sul pannello superiore del case)... è possibile disattivarne solo una delle due?

x_Master_x
20-03-2014, 19:18
Credo sia assolutamente normale poiché ogni porta é gestita da uno o più controller, gli HUB non sono fisici ma gestiti da Windows quindi potrebbero essere di più rispetto alle USB fisicamente installate. Ad esempio le USB 2.0 potrebbero avere un controller per la versione 2.0 e uno per la retrocompatibilità 1.1

Trial4life
20-03-2014, 19:36
Ah... allora quello che vorrei fare è impossibile! Perché disattivando un HUB non disattivo una sola porta, ma una serie di porte. :(

Trial4life
20-03-2014, 19:53
Ho trovato la soluzione!!! Era molto più banale di quanto sembrava.
In pratica lo scopo era poter attivare/disattivare la webcam integrata nel monitor lasciando il cavo USB sempre attaccato al retro del PC (difficile da raggiungere e quindi scomodo da collegare/scollegare frequentemente).
Così ho usato l'ID del dispositivo della webcam nel file batch, e ora ovunque collego il cavo, viene disattivato solo quel dispositivo.

x_Master_x
20-03-2014, 20:03
Se avessi scritto lo "scopo" prima invece di parlare genericamente di USB da disabilitare avresti risolto ore fa, dal mio primo post ti avrei detto di usare devcon con l'ID della webcam :D
Vale per la prossima volta, scrivi precisamente quello che vuoi fare, più dettagli scrivi più facile e veloce arrivare alla soluzione. Mi raccomando ;)

Trial4life
20-03-2014, 20:23
Eh già hai perfettamente ragione, ti chiedo scusa :D
In realtà avevo posto in quel modo la domanda perché non sapevo del fatto dei controller, e volevo trovare una soluzione più "generale". Se avessi saputo come funzionavano le porte USB ovviamente avrei chiesto direttamente lo scopo. :)

Grazie ancora!

Trial4life
02-05-2016, 23:07
Chiedo scusa in anticipo se riapro il mio post di 2 anni fa...

Ho reinstallato Windows 7 a 64-bit, e sto avendo un problema con la disabilitazione del dispositivo tramite DevCon.

Questo è il messaggio di errore che compare:

http://i68.tinypic.com/2viqzat.jpg

È come se non riconoscesse l'ID dell'hardware (che è rimasto lo stesso rispetto all'OS a 32-bit).

Avete qualche idea? C'entra il fatto che ora ho Windows a 64-bit?

x_Master_x
03-05-2016, 09:09
L'Hardware ID non cambia mai. Se stai usando una versione a 64 Bit di Windows devi usare la versione a 64 Bit di devcon e non quella a 32 Bit. Se già stai usando una versione a 64 Bit di devcon probabilmente non è una versione recente.

Trial4life
03-05-2016, 20:34
Grazie mille! Non ero riuscito a trovare la versione a 64 bit e pensavo ce ne fosse solo una per entrambi, invece cercando meglio sono riuscito a trovarla!
Ora è tutto apposto.

Gentilissimo come sempre