web-dev-qa-db-fra.com

Dites à Windows 7 d'arrêter d'essayer de mettre à niveau vers Windows 10?

Un client exécutant Windows 7 Home doit avoir réservé ou approuvé la mise à niveau de Windows 10, car je vois tous les jours des messages indiquant que l'installation de la mise à niveau échoue.

Ce client n'est pas prêt pour Windows 10, il est donc bon que l'installation échoue. Mais comment le faire cesser d'essayer? Une fois l'autorisation accordée pour la mise à niveau, comment puis-je révoquer cette autorisation afin qu'elle cesse d'essayer de mettre à niveau?

J'ai exécuté l'utilitaire de résolution des problèmes de Windows Update pour effacer les mises à jour et j'ai désinstallé et caché KB3035583, mais la tentative de mise à niveau est toujours en cours. Dans le Gestionnaire des tâches, il n'y a pas de processus GWX.EXE.

Message d'échec du journal des événements:

Log Name:      System
Source:        Microsoft-Windows-WindowsUpdateClient
Date:          8/5/2015 1:28:58 AM
Event ID:      20
Task Category: Windows Update Agent
Level:         Error
Keywords:      Failure,Installation
User:          SYSTEM
Description:   Installation Failure: Windows failed to install the following update with 
               error 0x80240020: Upgrade to Windows 10 Home.

Lignes pertinentes de WindowsUpdate.log:

2015-08-05  01:28:57:885    1068    6698    Agent   *************
2015-08-05  01:28:57:885    1068    6698    Agent   ** START **  Agent: Installing updates [CallerId = AutomaticUpdates]
2015-08-05  01:28:57:885    1068    6698    Agent   *********
2015-08-05  01:28:57:885    1068    6698    Agent     * Updates to install = 1
2015-08-05  01:28:57:885    1068    6698    Agent     *   Title = Upgrade to Windows 10 Home
2015-08-05  01:28:57:885    1068    6698    Agent     *   UpdateId = {27E79986-1150-4342-BDD2-76DF82C768D5}.201
2015-08-05  01:28:57:885    1068    6698    Agent     *     Bundles 1 updates:
2015-08-05  01:28:57:885    1068    6698    Agent     *       {FCD6621E-F5D4-4A95-AD43-28F0C58DD2F3}.201
2015-08-05  01:28:58:181    1068    6698    DnldMgr Preparing update for install, updateId = {FCD6621E-F5D4-4A95-AD43-28F0C58DD2F3}.201.
2015-08-05  01:28:58:181    27280   6f84    Misc    ===========  Logging initialized (build: 7.6.7601.18917, tz: -0700)  ===========
2015-08-05  01:28:58:181    27280   6f84    Misc      = Process: C:\Windows\system32\wuauclt.exe
2015-08-05  01:28:58:181    27280   6f84    Misc      = Module: C:\Windows\system32\wuaueng.dll
2015-08-05  01:28:58:181    27280   6f84    Handler :::::::::::::
2015-08-05  01:28:58:181    27280   6f84    Handler :: START ::  Handler: Windows Setup Install
2015-08-05  01:28:58:181    27280   6f84    Handler :::::::::
2015-08-05  01:28:58:181    27280   6f84    Handler   : Updates to install = 1
2015-08-05  01:28:58:181    1068    5ecc    AU  >>##  RESUMED  ## AU: Installing update [UpdateId = {27E79986-1150-4342-BDD2-76DF82C768D5}]
2015-08-05  01:28:58:181    1068    5ecc    AU    # WARNING: Install failed, error = 0x80240020 / 0x00000000
2015-08-05  01:28:58:181    27280   6f84    Handler   : WARNING: Exit code = 0x80240020
2015-08-05  01:28:58:181    1068    5ecc    AU  Write OSUpgradeState =14 with OSUpgradephase =2
2015-08-05  01:28:58:181    27280   6f84    Handler :::::::::
2015-08-05  01:28:58:181    27280   6f84    Handler ::  END  ::  Handler: Windows Setup Install
2015-08-05  01:28:58:181    27280   6f84    Handler :::::::::::::
10
Mark Berry

Plus loin, Google m'a conduit à une clé de registre qui semble contrôler le processus de mise à niveau.

La machine qui essayait de mettre à niveau avait ces valeurs:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade]
"KickoffDownload"=dword:00000001
"KickoffSource"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade\State]
"OSUpgradeState"=dword:0000000e
"OSUpgradeStateTimeStamp"="2015-08-04 15:59:55"
"OSUpgradePhase"=dword:00000002

Une autre machine Windows 7, sur laquelle j'avais supprimé KB3035583 avant que Windows 10 soit publiée (et bloquait ainsi la mise à niveau), avait ces valeurs:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade\State]
"OSUpgradeState"=dword:00000001
"OSUpgradeStateTimeStamp"="2015-07-28 10:09:55"

J'ai mis à jour le registre sur l'ordinateur "en cours de mise à niveau" pour qu'il corresponde au registre de l'ordinateur "bloqué", puis j'ai redémarré l'ordinateur.

De plus, grâce au commentaire de @Ramhound, j'ai trouvé un dossier caché $ Windows. ~ BT avec 5,1 Go de contenu. J'ai exécuté le nettoyage de disque et supprimé les "fichiers d'installation Windows temporaires". Ce dossier est maintenant parti.

Nous verrons si cela bloque avec succès la mise à niveau.

Mise à jour 7 août 2015

La machine a cessé d'essayer de mettre à niveau vers Windows 10, de sorte que la modification du registre doit avoir fonctionné. Les valeurs que j'ai définies il y a deux jours n'ont pas changé.

14
Mark Berry

C’est maintenant facile avec Never 1 , un utilitaire portable permettant d’empêcher les mises à niveau de Windows 10.

1
Iain