f4b1.com
***

Script .bat pour supprimer les notifications de mise à jour Windows 10 sous Windows 7 / 8.1
fabien on 03/06/2016 14:07:39 updated on 03/06/2016 14:38:02



Depuis la sortie du dernier système d'exploitation de Microsoft, il faut bien se rendre à l'évidence, la firme tente par tous les moyens de convaincre le plus d'utilisateurs possible de passer sous Windows 10. La pratique de forcer la main avec différents popup et l’icône de GWX.exe qui persiste à s'afficher à côté de l'heure à vraiment dérangé beaucoup de monde. Mais pas à cause de cette mise en avant en elle-même, plutôt parce qu'il est compliqué de s'affranchir de ses différentes incitations à passer sous Windows 10 alors que l'on se trouve sur Windows 7 ou 8.1.

Il est ainsi compliqué de se débarrasser facilement de ces pop-up et notifications pour installer Windows 10, je vous en avais déjà parlé dans un précédent article et le seul moyen simple était de désinstaller à la main les différentes mises à jour. Un travail assez fastidieux. Mais des bons petits gars proposent depuis quelque temps maintenant différents scripts sur le web qui permet de supprimer automatiquement l'ensemble des mises à jour et logiciel concernant Windows 10.

C'est d’autant plus pratique que ces mises à jour ont parfois tendance à s'installer toutes seules au milieu des autres ... Il suffit donc d'enregistrer le script suivant au format .bat, de le lancer en administrateur et le tour est joué ! Au revoir les messages concernant Windows 10 sous Windows 7 ou Windows 8.1 ainsi que le programme GWX.exe. De plus si vous constatez que l’icône de gwx.exe revient, ou que vous avez de nouveaux pop up pour Windows 10, il vous suffit de relancer à nouveau le script ;) Très pratique donc, vous pouvez en abuser !

  1. @echo off
  2.  
  3. :: before anything, let's specify what "yes" is interpreted in your language (for takeown)
  4. for /F "tokens=3 delims= " %%G in ('reg query "hklm\system\controlset001\control\nls\language" /v Installlanguage') do (
  5. if [%%G] equ [040C] ( set yes=o ) else ( set yes=y )
  6. )
  7. :: First, we escalate privileges of the terminal
  8. :checkPrivileges
  9. NET FILE 1>NUL 2>NUL
  10. if '%errorlevel%' == '0' ( goto gotPrivileges ) else ( goto getPrivileges )
  11. :getPrivileges
  12. if '%1'=='ELEV' (echo ELEV & shift /1 & goto gotPrivileges)
  13. echo.
  14. echo Invoking UAC for Privilege Escalation
  15. setlocal DisableDelayedExpansion
  16. set "batchPath=%~0"
  17. setlocal EnableDelayedExpansion
  18. echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\OEgetPrivileges.vbs"
  19. echo args = "ELEV " >> "%temp%\OEgetPrivileges.vbs"
  20. echo For Each strArg in WScript.Arguments >> "%temp%\OEgetPrivileges.vbs"
  21. echo args = args ^& strArg ^& " " >> "%temp%\OEgetPrivileges.vbs"
  22. echo Next >> "%temp%\OEgetPrivileges.vbs"
  23. echo UAC.ShellExecute "!batchPath!", args, "", "runas", 1 >> "%temp%\OEgetPrivileges.vbs"
  24. "%SystemRoot%\System32\WScript.exe" "%temp%\OEgetPrivileges.vbs" %*
  25. exit /B
  26. :gotPrivileges
  27. if '%1'=='ELEV' shift /1
  28. setlocal & pushd .
  29. cd /d %~dp0
  30. :: privilege escalation OK
  31. color 0a
  32. echo GWX / GWX Schedule / Windows spy updates search & destroy
  33. echo ----------------------------------------------
  34. timeout 3
  35. color 0e
  36. :: now time to remove nasty update
  37. echo Uninstalling KB2952664 (Get Windows 10 assistant)
  38. wusa /uninstall /kb:2952664 /quiet /norestart
  39. echo Uninstalling KB2976978 (telemetry for Win8/8.1)
  40. wusa /uninstall /kb:2976978 /quiet /norestart
  41. echo Uninstalling KB2977759 (telemetry for Win7)
  42. wusa /uninstall /kb:2977759 /quiet /norestart
  43. echo Uninstalling KB2990214 (Get Windows 10 for Win7)
  44. wusa /uninstall /kb:2990214 /quiet /norestart
  45. echo Uninstalling KB3021917 (installs telemetry for CEIP)
  46. wusa /uninstall /kb:3021917 /quiet /norestart
  47. echo Uninstalling KB3022345 (telemetry)
  48. wusa /uninstall /kb:3022345 /quiet /norestart
  49. echo Uninstalling KB3035583 (GWX Notification)
  50. wusa /uninstall /kb:3035583 /quiet /norestart
  51. echo Uninstalling KB3044374 (Get Windows 10 for Win8.1)
  52. wusa /uninstall /kb:3044374 /quiet /norestart
  53. echo Uninstalling KB3068708 (telemetry)
  54. wusa /uninstall /kb:3068708 /quiet /norestart
  55. echo Uninstalling KB3075249 (telemetry for Win7/8.1)
  56. wusa /uninstall /kb:3075249 /quiet /norestart
  57. echo Uninstalling KB3080149 (telemetry for Win7/8.1)
  58. wusa /uninstall /kb:3080149 /quiet /norestart
  59. echo Uninstalling KB3112336 (New Win8.1-^>10 upgrade scenario)
  60. wusa /uninstall /kb:3112336 /quiet /norestart
  61. echo Uninstalling KB3112343 (New Win7-^>10 upgrade scenario)
  62. wusa /uninstall /kb:3112343 /quiet /norestart
  63. echo Uninstalling KB3123862 (Updated capabilities to upgrade Windows 8.1 and Windows 7)
  64. wusa /uninstall /kb:3123862 /quiet /norestart
  65. timeout 30
  66. :: then taking ownership of remnant folders
  67. echo Take control for all folders GWX
  68. timeout 3
  69. :: let's check if GWX was already removed
  70. set error=0
  71. if not exist %windir%\System32\GWX set error=%error%+1
  72. if not exist %windir%\SysWOW64\GWX set error=%error%+1
  73. if %error%==2 goto error1
  74. takeown /F %windir%\System32\GWX /A /R /D %yes%
  75. takeown /F %windir%\SysWOW64\GWX /A /R /D %yes%
  76. takeown /F %windir%\System32\Tasks\Microsoft\Windows\Setup /A /R /D %yes%
  77. echo Change rights for all folders GWX
  78. timeout 3
  79. icacls %windir%\System32\GWX /grant "%username%":(F) /T /C
  80. icacls %windir%\SysWOW64\GWX /grant "%username%":(F) /T /C
  81. icacls %windir%\System32\Tasks\Microsoft\Windows\Setup /grant "%username%":(F) /T /C
  82. :: ok, now time to kill executable and remove this shit out of our computer
  83. echo Delete all GWX files and folders
  84. timeout 3
  85. echo Before kill GWX.exe if necessary
  86. taskkill /f /t /im GWX.exe
  87. timeout 3
  88. del /F /S /Q /A %windir%\System32\GWX\*
  89. rd /S /Q %windir%\System32\GWX
  90. :: some error handling (see eof)
  91. if exist %windir%\System32\GWX goto error2
  92. del /F /S /Q /A %windir%\SysWOW64\GWX\*
  93. rd /S /Q %windir%\SysWOW64\GWX
  94. if exist %windir%\SysWOW64\GWX goto error2
  95. :: removing related sheduled tasks
  96. del /F /S /Q /A %windir%\System32\Tasks\Microsoft\Windows\Setup\*
  97. rd /S /Q %windir%\System32\Tasks\Microsoft\Windows\Setup\gwx
  98. rd /S /Q %windir%\System32\Tasks\Microsoft\Windows\Setup\GWXTriggers
  99. :: setting policy to disable GWX
  100. reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\Gwx
  101. reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\Gwx /v DisableGwx /t REG_DWORD /d 1
  102. :: prevent further upgrade
  103. ::reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade
  104. ::reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade /v AllowOSUpgrade /t REG_DWORD /v 0
  105. ::reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade /v ReservationsAllowed /t REG_DWORD /v 0
  106. color 0a
  107. echo Cleaned. Don't forget to hide these updates in Windows update to prevent reappearance.
  108. echo Have a nice day.
  109. pause
  110. exit
  111. :error1
  112. color 0c
  113. echo GWX does not seems to be installed, exiting.
  114. pause
  115. exit
  116. :error2
  117. color 0c
  118. echo Cannot remove GWX folder, are you really running this as admin? exiting.
  119. pause



Comments


You must be loged to add a comment !