View Single Post
Old 07-10-2015, 16:44   #9419
x_Master_x
Senior Member
 
L'Avatar di x_Master_x
 
Iscritto dal: May 2005
Messaggi: 8680
[WIN 10] Disattivare aggiornamenti driver di Windows Update

PREMESSA

Non mi sono interessato molto alla questione "driver che si aggiornano da soli", meglio dire per nulla, ma visto che nessuno ha trovato un metodo per evitare che Windows scarichi i driver automaticamente, a parte disabilitare completamente WU o altre procedure da registro del tutto inutili, la prima idea è stata l'utilizzo delle policy di gruppo. C'è una cosa che Windows Update non può fare, ignorarle. Se attraverso le policy si blocca l'installazione di ogni device o device in base all'ID sarebbe assurdo che Windows Update effettui comunque l'installazione. Potrebbe effettuare al massimo il download ma di certo non l'installazione.


INFORMAZIONI DI BASE


Prima di procedere con la guida vera e propria c'è bisogno di specificare cos'è un ID hardware. E' uno o più codici identificativi che rappresentano la periferica e non dipendono dal sistema operativo, avremo le stesse stringhe su Windows XP e su Windows 10. Dove possiamo trovare questi ID Hardware?

Gestione Dispositivi --> tasto destro sulla periferica di interesse --> Proprietà --> Dettagli --> ID Hardware

Come accennato non è detto che un dispositivo abbia un solo ID Hardware, MSDN ci spiega perché:
Quote:
Originariamente inviato da MSDN
Hardware IDs are the identifiers that provide the most exact match between a device and a driver package. The first string in the list of hardware IDs is referred to as the device ID, because it matches the exact make, model, and revision of the device. The other hardware IDs in the list match the details of the device less exactly. For example, a hardware ID might identify the make and model of the device but not the specific revision. This scheme allows Windows to use a driver for a different revision of the device, if the driver for the correct revision is not available
In pratica la prima voce è la più dettagliata e più si scorre con l'elenco più l'ID è meno descrittivo. A quel punto come comportarci? La soluzione più sicura è copiare tutte le voci relative al dispositivo in questione per bloccare ogni possibilità di aggiornamento, tasto destro su uno degli ID --> Seleziona tutto --> tasto destro su uno degli ID --> Copia ed incollare il tutto ad esempio su un Blocco Note


Windows 10 Pro



Aprire gpedit.msc. Andare al percorso:
Codice:
Configurazione computer\Modelli amministrativi\Sistema\Installazione dispositivi\Restrizioni per l'installazione
A questo punto abbiamo due strade:
  • Disabilitare l'installazione di ogni dispositivo attraverso l'attivazione di:
    Impedisci l'installazione di dispositivi non descritti da altre impostazioni dei criteri
  • Disabilitare l'installazione di uno o più dispositivi attraverso l'attivazione di:
    Impedisci l'installazione dei dispositivi che corrispondono a uno di questi ID
  • In aggiunta a una delle due scelte disattivare la voce ( si può ritenere opzionale ):
    Consenti agli amministratori di ignorare criteri di Restrizioni installazione dispositivi

Il primo punto, per quanto sia efficace per lo scopo della guida, non lo tratterò in questo post. Ritengo sia esagerato bloccare l'installazione di ogni dispositivo, presente e futuro, del PC. Tratterò invece il secondo punto, cioè bloccare l'installazione di uno o più dispositivi attraverso l'ID. Una volta che abbiamo la nostra lista di ID, aprire gpedit.msc ed attivare Impedisci l'installazione dei dispositivi che corrispondono a uno di questi ID, cliccare sul pulsante "Mostra..." ed aggiungere ad ogni riga un ID, una volta finito confermare le schermate. Non è necessario riavviare, la restrizione è attiva da subito.


Abilitare-Disabilitare temporaneamente i criteri


C'è un problema, se vogliamo definirlo tale. Una volta attivata la policy non solo Windows Update, ma anche l'utente non riuscirà ad effettuare l'installazione dei driver per i dispositivi scelti. Come procedere quindi? Basta modificare le voci di registro prima/dopo l'aggiornamento del dispositivo. Si potrebbe anche effettuare l'operazione opposta tramite gpedit.msc ma a quel punto si perderebbe la lista dei dispositivi quindi è preferibile agire da registro

Aprire Blocco Note ed incollare le seguenti stringhe:
Codice:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions]
"DenyDeviceIDs"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\DriverDatabase\Policies\Restrictions]
"DenyDeviceIDs"=dword:00000000
Salvare il file come "Attiva_InstallazioneDriver.reg" ( attenzione non .txt.reg, l'icona è diversa )
La chiave DWORD DenyDeviceIDs può avere solo due valori, 0 e 1, che corrispondono rispettivamente a Disabilitato e Abilitato in riferimento alla policy di gruppo.

Una volta avviato il file "Attiva_InstallazioneDriver.reg" confermare le schermate di avviso per l'aggiunta delle informazioni al registro. Non è necessario riavviare, è già possibile installare l'aggiornamento o i driver del dispositivo.


N.B. Agendo in questo modo si attiva temporaneamente l'installazione di ogni device che fa parte della lista.


Una volta completata l'installazione bisogna effettuare l'operazione opposta, aprire Blocco Note ed incollare le seguenti stringhe:
Codice:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions]
"DenyDeviceIDs"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\DriverDatabase\Policies\Restrictions]
"DenyDeviceIDs"=dword:00000001
Salvare il file come "Disattiva_InstallazioneDriver.reg", eseguirlo e confermare le modifiche. In questo modo ripristineremo l'impostazione iniziale e Windows Update non sarà in grado di aggiornare i dispositivi presenti nella lista. Ovviamente non è necessario creare da zero ogni volta i due file .reg, basta eseguirla solo la prima volta.

La procedura in sintesi sarebbe:
  • Eseguire Attiva_InstallazioneDriver.reg
  • Installare i driver
  • Eseguire Disattiva_InstallazioneDriver.reg
Per ritornare alla situazione di partenza ed annullare tutte le modifiche effettuate in questa guida in gpedit.msc impostare la voce Impedisci l'installazione dei dispositivi che corrispondono a uno di questi ID su Non Configurato


Windows 10 Home



Chi utilizza Windows Home non ha l'Editor Criteri di gruppo locali ma ha comunque la possibilità di agire direttamente da registro per bloccare l'installazione dei driver da parte di Windows Update. Una volta che siamo in possesso dell'elenco degli ID da bloccare, aprire Blocco Note ed incollare le seguenti stringhe:
Codice:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions]
"DenyDeviceIDs"=dword:00000001
"DenyDeviceIDsRetroactive"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions\DenyDeviceIDs]
"1"="HWID_1"
"2"="HWID_2"
"3"="HWID_3"
"4"="HWID_4"
"5"="HWID_5"
Questo file lo si può essere considerare come "schema di base". Gli ID bloccati sono 5 ma è possibile aggiungere altre stringhe semplicemente aumentando il numero progressivo, ad esempio:
Codice:
"6"="HWID_6"
Infine sostituire ai vari HWID_N i propri ID con un semplice copia-incolla rispettando lo schema e le virgolette.
Se il vostro Hardware ID contiene una o più sbarre\slash bisogna raddoppiarle, ad esempio una stringa come:
Codice:
PCI\VEN_00DE&DEV_00C0&CC_0000
Diventa nel .reg:
Codice:
"1"="PCI\\VEN_00DE&DEV_00C0&CC_0000"
Una volta compilato con tutte le informazioni, salvare il file come "Attiva_RestrizioneDriver.reg" ( attenzione non .txt.reg, l'icona è diversa ) eseguirlo e confermare le modifiche. Non è necessario riavviare, la restrizione è attiva da subito. Per controllare che le chiavi siano state aggiunte correttamente:

Start --> regedit. Andare al percorso:
Codice:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions\DenyDeviceIDs
Quindi verificare che i valori corrispondano ai propri ID Hardware. Se il percorso indicato non è presente nel registro assicurarsi di aver creato correttamente il file .reg e ripetere la procedura.


Abilitare-Disabilitare temporaneamente i criteri


C'è un problema, se vogliamo definirlo tale. Una volta attivata la policy non solo Windows Update, ma anche l'utente non riuscirà ad effettuare l'installazione dei driver per i dispositivi scelti. Come procedere quindi? Basta modificare le voci di registro prima/dopo l'aggiornamento del dispositivo.

Aprire Blocco Note ed incollare le seguenti stringhe:
Codice:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions]
"DenyDeviceIDs"=dword:00000000
Salvare il file come "Attiva_InstallazioneDriver.reg"
La chiave DWORD DenyDeviceIDs può avere solo due valori, 0 e 1, che corrispondono rispettivamente a Disabilitato e Abilitato in riferimento alla policy di gruppo.

Una volta avviato il file "Attiva_InstallazioneDriver.reg" confermare le schermate di avviso per l'aggiunta delle informazioni al registro. Non è necessario riavviare, è già possibile installare l'aggiornamento o i driver del dispositivo.


N.B. Agendo in questo modo si attiva temporaneamente l'installazione di ogni device che fa parte della lista.


Una volta completata l'installazione bisogna effettuare l'operazione opposta, aprire Blocco Note ed incollare le seguenti stringhe:
Codice:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions]
"DenyDeviceIDs"=dword:00000001
Salvare il file come "Disattiva_InstallazioneDriver.reg", eseguirlo e confermare le modifiche. In questo modo ripristineremo l'impostazione iniziale e Windows Update non sarà in grado di aggiornare i dispositivi presenti nella lista. Ovviamente non è necessario creare da zero ogni volta i due file .reg, basta eseguirla solo la prima volta.

La procedura in sintesi sarebbe:
  • Eseguire Attiva_InstallazioneDriver.reg
  • Installare i driver
  • Eseguire Disattiva_InstallazioneDriver.reg
Per ritornare alla situazione di partenza ed annullare tutte le modifiche effettuate in questa guida eseguire questo file .reg, la procedura su come crearlo è stata ampiamente trattata in questo post:
Codice:
Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions]

CONSIDERAZIONI FINALI


Per controllare se la guida ha avuto successo provare a disinstallare la periferica con la restrizione e quindi aggiornare i driver, in questo modo:
  • Gestione Dispositivi --> Tasto destro sulla periferica --> Disinstalla --> OK
  • Azione --> Rileva modifiche hardware
  • Tasto destro sulla periferica con il ? --> Proprietà --> Driver --> Aggiorna driver --> Cerca un driver online
Se appare una schermata con la dicitura "Si è verificato un problema durante l'installazione dei driver del dispositivo" l'operazione è avvenuta correttamente. Abilitare temporaneamente l'installazione per ripristinare i driver della periferica

Evitate di inserire due Hardware ID perfettamente identici, ad esempio in una situazione di schede video SLI, controllare accuratamente di aver copiato solo e soltanto valori univoci. Inoltre si consiglia di effettuare le operazioni di restrizione senza essere connessi ad internet per evitare che Windows aggiorni il driver autonomamente prima di aver effettuato le modifiche necessarie ad evitarlo.


CONCLUSIONE


La procedura è testata personalmente ( ed effettuata da una serie di utenti con successo, sia Home che Pro ) una serie di screenshot e .log che lo dimostrano.

Schermata di regedit per verificare le chiavi di registro:





Ricerca driver dopo l'applicazione della restrizione:





WindowsUpdate.log che conferma che l'agent ha cercato i driver:
Codice:
2015/10/21 13:20:36.1400066 804   4044  Agent           * START * Finding updates CallerId = ChkWuDrv  Id = 29
2015/10/21 13:20:36.1400111 804   4044  Agent           Online = Yes; Ignore download priority = No
2015/10/21 13:20:36.1400115 804   4044  Agent           Criteria = Type='Driver' and DriverMatch='Best' and DeviceInstance='IDE\CDROMVBOX_CD-ROM_____________________________1.0_____\5&BD9DC32&0&1.0.0'""
2015/10/21 13:20:36.1400257 804   4044  Agent           ServiceID = {9482F4B4-E343-43B6-B170-9A65BC822C77} Windows Update
2015/10/21 13:20:36.1400266 804   4044  Agent           Search Scope = {Machine}
2015/10/21 13:20:36.1400306 804   4044  Agent           Caller SID for Applicability: S-1-5-21-650416770-2410900852-775855394-1001
Ma alla fine non li ha installati:



Non quotare questo post per eventuali modifiche, citare l'autore
__________________
.
Thread Ufficiali: EasyCrypt ~ Old Files Manager ~ OSD Clock
The real me is no match for the legend
.

Ultima modifica di x_Master_x : 04-11-2015 alle 08:47.
x_Master_x è offline   Rispondi citando il messaggio o parte di esso