Windows 10 - Quels services et fonctionnalités Windows, etc. sont inutiles et peuvent être désactivés en toute sécurité ?

Je suis un utilisateur avancé de Windows, bidouilleur et bricoleur. J’utilise l’Explorateur Windows, cmd, le Panneau de configuration, PowerShell et tout ce qui est accessible depuis le Panneau de configuration très souvent.

Récemment, j’ai effectué une installation de réparation/mise à jour sur mon ordinateur, mis à jour mon système d’exploitation de Windows 10 2009 vers Windows 10 20H2 (Windows 10 Pro N pour Stations de travail x64), car j’ai exécuté les commandes suivantes :

dism /online /cleanup-image /scanhealth
dism /online /cleanup-image /restorehealth
dism /online /cleanup-image /restorehealth /source:D:\sources\install.wim
sfc /scannow

Encore et encore et elles continuaient de dire que mon “système va bien, tout est corrigé…” malgré le fait que mon système n’allait pas bien et que tout restait non corrigé…

Il existait une myriade de petits problèmes, et j’ai tout essayé de ce que j’ai pu trouver en ligne sauf réinstaller le système d’exploitation car je ne voulais pas réinstaller Windows à nouveau. Je soupçonne qu’ils doivent être liés au registre, causés par mes modifications du système, car mon matériel est modeste (sous-dimensionné), n’ayant que 4 Go de RAM avec Intel HD Graphics, mémoire primaire utilisable totale de 3798 Mo, et un CPU quad-core à 2,00 GHz…

Jusqu’à présent, voici ce que j’ai fait à mon système. J’ai désactivé des dizaines de services et fonctionnalités inutiles, car je sais que je n’en ai pas besoin.

Je n’administre pas de serveur de quelque type que ce soit. Je n’utilise pas de services de streaming, je ne chiffre pas mon disque dur, et je n’ai aucun périphérique Bluetooth ou Xbox ou autre gadget.

Je ne suis pas dans un groupe résidentiel, je ne partage pas de fichiers, je n’utilise pas NFS, je n’ai aucun contact, j’utilise une connexion Ethernet câblée PPPoE haut débit, mon ordinateur est un bureau, et je n’utilise pas d’imprimantes.

Je n’utilise pas de périphériques d’interface humaine, je n’ai pas de carte à puce, je ne synchronise pas les paramètres, et je n’utilise pas la lecture automatique et l’exécution automatique…

Fichier WindowsServicesToBeDisabled.txt

AppHostSvc
BDESVC
BthAvctpSvc
CDPSvc
CertPropSvc
CscService
DPS
DeviceAssociationService
DiagTrack
DusmSvc
EFS
FDResPub
FontCache
FontCache3.0.0.0
IISADMIN
MSMQ
MSMQTriggers
NetMsmqActivator
NfsClnt
PcaSvc
PhoneSvc
PrintNotify
QWAVE
RemoteAccess
RemoteRegistry
RmSvc
SCPolicySvc
SCardSvr
SSDPSRV
ScDeviceEnum
SessionEnv
SharedAccess
ShellHWDetection
Spooler
SysMain
TabletInputService
TapiSrv
TermService
UmRdpService
WSearch
WbioSrvc
WdiServiceHost
WdiSystemHost
WerSvc
WlanSvc
WwanSvc
autotimesvc
bthserv
fdPHost
ftpsvc
hidserv
icssvc
vds
wercplsupport

Fichier WindowsFeaturesToBeDisabled.txt

Printing-PrintToPDFServices-Features
Printing-XPSServices-Features
SearchEngine-Client-Package
MSRDC-Infrastructure
TelnetClient
TFTP
TIFFIFilter
Printing-Foundation-Features
Printing-Foundation-InternetPrinting-Client
Printing-Foundation-LPDPrintService
Printing-Foundation-LPRPortMonitor
Windows-Identity-Foundation
WCF-HTTP-Activation
WCF-NonHTTP-Activation
IIS-WebServerRole
IIS-WebServer
IIS-CommonHttpFeatures
IIS-HttpErrors
IIS-HttpRedirect
IIS-ApplicationDevelopment
IIS-Security
IIS-RequestFiltering
IIS-NetFxExtensibility
IIS-NetFxExtensibility45
IIS-HealthAndDiagnostics
IIS-HttpLogging
IIS-LoggingLibraries
IIS-RequestMonitor
IIS-HttpTracing
IIS-URLAuthorization
IIS-IPSecurity
IIS-Performance
IIS-HttpCompressionDynamic
IIS-WebServerManagementTools
IIS-ManagementScriptingTools
IIS-IIS6ManagementCompatibility
IIS-Metabase
WAS-WindowsActivationService
WAS-ProcessModel
WAS-NetFxEnvironment
WAS-ConfigurationAPI
IIS-HostableWebCore
WCF-HTTP-Activation45
WCF-TCP-Activation45
WCF-Pipe-Activation45
WCF-MSMQ-Activation45
IIS-StaticContent
IIS-DefaultDocument
IIS-DirectoryBrowsing
IIS-WebDAV
IIS-WebSockets
IIS-ApplicationInit
IIS-ASPNET
IIS-ASPNET45
IIS-ASP
IIS-CGI
IIS-ISAPIExtensions
IIS-ISAPIFilter
IIS-ServerSideIncludes
IIS-CustomLogging
IIS-BasicAuthentication
IIS-HttpCompressionStatic
IIS-ManagementConsole
IIS-ManagementService
IIS-WMICompatibility
IIS-LegacyScripts
IIS-LegacySnapIn
IIS-FTPServer
IIS-FTPSvc
IIS-FTPExtensibility
MSMQ-Container
MSMQ-DCOMProxy
MSMQ-Server
MSMQ-ADIntegration
MSMQ-HTTP
MSMQ-Multicast
MSMQ-Triggers
IIS-CertProvider
IIS-WindowsAuthentication
IIS-DigestAuthentication
IIS-ClientCertificateMappingAuthentication
IIS-IISCertificateMappingAuthentication
IIS-ODBCLogging
DataCenterBridging
SmbDirect
HostGuardian
MultiPoint-Connector
MultiPoint-Connector-Services
MultiPoint-Tools
Windows-Defender-Default-Definitions
WorkFolders-Client
HypervisorPlatform
VirtualMachinePlatform
Client-ProjFS
Containers-DisposableClientVM
Microsoft-Hyper-V-All
Microsoft-Hyper-V
Microsoft-Hyper-V-Tools-All
Microsoft-Hyper-V-Management-PowerShell
Microsoft-Hyper-V-Hypervisor
Microsoft-Hyper-V-Services
Microsoft-Hyper-V-Management-Clients
Client-DeviceLockdown
Client-EmbeddedShellLauncher
Client-EmbeddedBootExp
Client-EmbeddedLogon
Client-KeyboardFilter
Client-UnifiedWriteFilter
DirectoryServices-ADAM-Client
Windows-Defender-ApplicationGuard
ServicesForNFS-ClientOnly
ClientForNFS-Infrastructure
NFS-Administration
Containers
SMB1Protocol
SMB1Protocol-Client
SMB1Protocol-Server
SMB1Protocol-Deprecation

Invite de commandes (je peux utiliser PowerShell, mais cmd est plus simple et je peux juste double-cliquer sur un fichier .bat pour l’exécuter…) :

for /f "delims=" %%i in (%CD%\WindowsFeaturesToBeDisabled.txt) do (
  echo %%i
  dism /online /disable-feature /featurename:%%i
)
for /f "delims=" %%i in (%CD%\WindowsServicesToBeDisabled.txt) do (
  echo %%i
  sc config %%i start=disabled
)
reg add HKLM\SYSTEM\CurrentControlSet\Services\BluetoothUserService_1bb7a33 /v Start /t REG_dword /d 4 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\CDPUserSvc_1bb7a33 /v Start /t REG_dword /d 4 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\ConsentUxUserSvc_1bb7a33 /v Start /t REG_dword /d 4 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\PimIndexMaintenanceSvc_1bb7a33 /v Start /t REG_dword /d 4 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\OneSyncSvc_1bb7a33 /v Start /t REG_dword /d 4 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\wscsvc /v Start /t REG_dword /d 3 /f
REG ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Attachments /v SaveZoneInformation /t REG_dword /d 00000001 /f
REG ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Associations /v LowRiskFileTypes /t REG_SZ /d ".avi;.bat;.com;.cmd;.exe;.htm;.html;.lnk;.mpg;.mpeg;.mov;.mp3;.msi;.m3u;.rar;.reg;.txt;.vbs;.wav;.zip;" /f
REG delete HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Associations /v ModRiskFileTypes /f
REG ADD "HKCU\Environment" /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F

À ce jour, je n’ai pas trouvé de moyen de modifier directement les paramètres de stratégie de groupe et la modification du registre ne change pas ce qui est défini dans gpedit.msc, donc je vais juste lister les changements que j’ai effectués :

\Windows Components\Autoplay Policies     disabled
\Windows Components\Biometrics     disabled
*SmartScreen  all Turned off
\Windows Components\OneDrive     disabled
\Windows Components\Search     all disabled
\Windows Components\Sync your settings     all "Do not sync" enabled
\Windows Components\Windows Mobility Center     turned off

Maintenant, ai-je désactivé quelque chose qui est absolument nécessaire à Windows ? Sans cela, Windows deviendra-t-il instable, se comportera-t-il de manière erratique et s’arrêtera-t-il même instantanément, ou cela causera-t-il un gel aléatoire de Windows le rendant complètement non réactif toutes les 6 heures environ, ou les Paramètres Windows détecteront-ils un dépassement de tampon basé sur la pile et planteront-ils, ou sera-t-il impossible d’exécuter toutes les applications UWP appx ? Qu’ai-je fait de mal…

Mise à jour : Maintenant je me suis enfin souvenu ! Le souvenir m’est soudainement revenu après m’avoir échappé si longtemps… Maintenant je peux confirmer qu’aucun des problèmes ne provenait de mes modifications du système. J’ai cherché sur Google chacun d’entre eux et me suis assuré que je n’en avais pas besoin, et mon système fonctionnait bien sans eux…

Non, tout cela est survenu peu après que j’ai interrompu l’exécution de Windows Update, car il s’est mis à jour automatiquement sans mon consentement ni même ma connaissance, et Windows Module Installer Worker utilisait 50% du disque dur (j’ai un disque dur externe de 2 To), des centaines de mébioctets de RAM, 33% du CPU et ralentissait horriblement mon PC, et il continuait de tourner…

Alors je l’ai tué ; j’ai arrêté WMIW (TiWorker.exe)… Je me suis dit que c’était bon, tout allait bien se passer… Mais c’est ensuite que le système a dégénéré… Maintenant je ne comprends pas. Pourquoi DISM et SFC ne peuvent-ils pas réparer la mise à jour Windows échouée ?

Mise à jour : Quelqu’un voulait connaître la marque exacte de mon ordinateur, bien que je souhaite préserver ma vie privée et que je pense personnellement que c’est sans rapport. Je vais publier les spécifications système de mon ordinateur ci-dessous (en images, car les images disent plus que les mots) :

Et concernant le stockage :

Ne perdez pas votre temps à désactiver des services. Cela ne fera que le rendre légèrement plus rapide au détriment de la fiabilité, de la sécurité et de la facilité d’utilisation. La configuration par défaut est très bien.

Vous avez besoin de plus de RAM. 4 Go ne suffisent tout simplement plus de nos jours et vous la partagez avec l’iGPU. Avec moins de 4 Go de RAM, le système va fortement s’appuyer sur la pagination, ce qui ralentira tout.

Votre carte mère utilise de la mémoire DDR3 au format portable (SODIMM). Ajoutez 4 Go supplémentaires pour que le double canal fonctionne et obtenir des performances supplémentaires.

Votre module de mémoire actuel est de la DDR3 (pas de la DDR3L) et l’autre devrait l’être aussi. Le module actuel est capable de fonctionner à 1600 MHz, mais la carte mère le limite à 1333 MHz, donc pas besoin de payer plus pour plus que cela (cela ne fera pas de mal d’avoir un module plus rapide, vous n’en bénéficierez simplement pas mais la valeur de revente pourrait être plus élevée). Le prix d’un tel module est d’environ 12$ là où j’habite si vous acceptez d’acheter des pièces d’occasion.

Concernant Defender, il se désactive automatiquement quand un autre antivirus est installé, donc il est soit déjà désactivé, soit vous n’avez pas de meilleur logiciel qui fait la même chose.

Je suis vraiment un expert donc je ne laisserais pas passer les virus et logiciels malveillants

Les experts savent qu’ils ne peuvent pas se faire confiance à 100%. Ils utilisent des scanners antivirus en temps réel, sauf s’ils sont considérés comme un risque dans leur modèle. Pour la plupart d’entre eux, ils ne le sont pas. Vous n’êtes pas un professionnel de la sécurité, donc vous devriez définitivement utiliser un antivirus.