[Batch] Fichier .bat de Nettoyage, Optimisation Windows 11

Vous trouverez ici des scripts pour faciliter la gestion de votre ordinateur. Ils sont proposés tels quels par le rédacteur du message. La team ne vérifie pas la qualité de ces éléments et n'assure pas le support ni la maintenance. Vous les utilisez sous votre seule responsabilité.
Règles du forum
Pour les créateurs de scripts

Veuillez noter que les scripts que vous partagez ici sont proposés tels quels et la team ne vérifie pas leur qualité.
Nous vous rappelons que nous n'assurons ni le support ni la maintenance des scripts publiés.

Pour faciliter leur utilisation par les autres membres de la communauté, respectez ces consignes :
.
  • Utilisez les préfixes de langage pour taguer les messages.
  • Assurez-vous que vos scripts sont clairs et bien documentés
.
Merci de votre compréhension et de votre contribution.
Avatar du membre
rayman95
Modérateur
Modérateur
Messages : 1877
Enregistré le : mer. 9 déc. 2020 22:41
A remercié : 584 fois
A été remercié : 1175 fois
    Windows 10 Firefox

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par rayman95 »

viens de tester la V3, et ca fait le taff...
on a les questions O/N si on veut faire ou pas..y a le log a la fin..
peut-etre insister un peu pour le redemarrage a la fin..
bon boulot...
titou
Membre VIP +
Membre VIP +
Messages : 2001
Enregistré le : mer. 28 sept. 2011 15:22
Localisation : france ardeche
A remercié : 5 fois
A été remercié : 11 fois
    Linux Chrome

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par titou »

Merci du retour rayman95 😉

J’ai modifier la fin du script pour un redémarrage plus visible 👍
Le fossé séparant théorie et pratique est moins large en théorie qu’il ne l’est en pratique Toute demande de liens par MP est inutile !
Loic33
Membre VIP +
Membre VIP +
Messages : 325
Enregistré le : ven. 20 mars 2020 11:45
A remercié : 97 fois
A été remercié : 56 fois
    Windows 10 Firefox

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par Loic33 »

Bonjour

pour ma part j'ai demandé à Mistral de me realiser un fichier automatique de nettoyage après vidage de la corbeille

et voici le résultat

et ça fonctionne

@echo off
:: Script de nettoyage pour Windows 11 Pro
:: Ce script vide la corbeille, supprime les fichiers temporaires et nettoie les caches.

:: Vider la corbeille
echo [1/4] Vidage de la corbeille...
echo Y | powershell -command "Clear-RecycleBin -Force"

:: Supprimer les fichiers temporaires
echo [2/4] Suppression des fichiers temporaires...
del /q /f %temp%\*.* 2>nul

:: Supprimer les caches Windows
echo [3/4] Suppression des caches Windows...
del /q /f %windir%\Prefetch\*.* 2>nul
del /q /f %windir%\Temp\*.* 2>nul

:: Lancer l'outil de nettoyage de disque (cleanmgr)
echo [4/4] Lancement du nettoyeur de disque...
cleanmgr /sagerun:1

echo.
echo Nettoyage terminé avec succès !
pause


copier dans le bloc note
bouton droit executer en tant qu'administrateur et voilou !

Bonne journée
La liberté des uns s’arrête ou commence celle des autres
titou
Membre VIP +
Membre VIP +
Messages : 2001
Enregistré le : mer. 28 sept. 2011 15:22
Localisation : france ardeche
A remercié : 5 fois
A été remercié : 11 fois
    Android Chrome

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par titou »

Le script est tres propre en syntaxe 👍
Tout est bon a prendre ;)

Edit 2 : grosse erreur dans mon script
Modifié en dernier par titou le mer. 12 août 2026 17:21, modifié 2 fois.
Le fossé séparant théorie et pratique est moins large en théorie qu’il ne l’est en pratique Toute demande de liens par MP est inutile !
titou
Membre VIP +
Membre VIP +
Messages : 2001
Enregistré le : mer. 28 sept. 2011 15:22
Localisation : france ardeche
A remercié : 5 fois
A été remercié : 11 fois
    Android Chrome

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par titou »

SCRIPT MASTER ULTIMATE v3.8 & RESTORE – GUIDE TECHNIQUE, OPTIMISATION & SÉCURITÉ (WINDOWS 10 & 11)

​Bonjour à tous,
​Voici la présentation détaillée de mon script de maintenance tout-en-un, conçu pour nettoyer en profondeur, booster et protéger Windows 10 et 11 (notamment contre la télémétrie agressive et les fonctionnalités d'IA non désirées comme Windows Recall).
​Ce post détaille précisément sous le capot chaque action effectuée par le fichier batch afin que vous sachiez exactement ce qui est modifié sur votre système. Un script de restauration est également inclus pour tout annuler en cas de besoin.

🛠️ DÉTAIL APPROFONDI DES 13 ÉTAPES DU SCRIPT PRINCIPAL :
  1. Création d'un point de restauration sécurisé :
    Sous le capot : Active la fonction de restauration système si elle était désactivée (Enable-ComputerRestore), force la fréquence de création de points à zéro (SystemRestorePointCreationFrequency) et génère un point nommé Avant_Script_Ultimate_v3 via PowerShell pour garantir un filet de sécurité complet.
  2. Purge agressive des caches et réinitialisation réseau :
    Sous le capot : Force l'arrêt des processus récalcitrants (Edge, Chrome, Windows Store), puis vide de manière combinée (del + rmdir) le dossier temporaire utilisateur (%temp%), le dossier Temp système, le dossier Prefetch de démarrage, le cache WER (rapports d'erreurs), les caches graphiques DirectX (D3DSCache), les caches des navigateurs et du Windows Store, ainsi que le cache des miniatures de l'Explorateur Windows (thumbcache_*.db). Enfin, il vide la Corbeille et réinitialise la pile réseau complète (ipconfig /flushdns, netsh winsock reset, netsh int ip reset).
  3. Nettoyage optionnel du cache des mises à jour (Windows Update) :
    Sous le capot : Arrête les services wuauserv, bits et dosvc pour libérer les verrous, puis purge le contenu du dossier critique SoftwareDistribution\Download et du cache d'optimisation de livraison pour récupérer plusieurs gigaoctets d'espace disque.
  4. Nettoyage optionnel du Magasin de composants (DISM / WinSxS) :
    Sous le capot : Exécute la commande native DISM /online /cleanup-image /startcomponentcleanup /resetbase. Cela supprime définitivement toutes les anciennes versions de fichiers système conservées lors des précédentes mises à jour cumulatives de Windows. Attention : cette action est irréversible et empêche de désinstaller les anciennes mises à jour Windows.
  5. Nettoyage avancé du stockage (Windows.old, Dumps & Pilotes) :
    Sous le capot : S'approprie les droits de sécurité (takeown / icacls) pour éradiquer proprement un éventuel dossier résiduel Windows.old, supprime les fichiers de vidage mémoire de plantage (memory.dmp, minidumps) et utilise pnputil pour purger automatiquement les anciennes versions en double des pilotes OEM (oem*.inf) stockées dans le système.
  6. Purge des journaux d'événements Windows (Event Logs) :
    Sous le capot : Parcourt l'ensemble des journaux d'événements du système via la commande wevtutil el et les vide un par un (wevtutil cl) pour effacer l'historique des connexions, alertes et erreurs enregistrées.
  7. Désinstallation sur-mesure des Bloatwares et Widgets (avec sauvegarde) :
    Sous le capot : Avant toute suppression, le script exporte la liste complète de vos applications UWP installées dans un fichier de sauvegarde XML (AppxPackages_Backup.xml) placé sur le Bureau. Il désinstalle ensuite proprement (via Remove-AppxPackage et Remove-AppxProvisionedPackage) les applications préinstallées inutiles (Xbox, Jeux, Clipchamp, Spotify, Météo, Actualités, Cortana, Teams, etc.) tout en protégeant explicitement vos applications multimédias (Netflix, Disney+, etc.). Il désactive également les widgets et flux d'actualités de la barre des tâches via le registre (TaskbarDa).
  8. Nettoyage du Menu Démarrer et blocage des suggestions Bing :
    Sous le capot : Efface l'historique des fichiers récents (%AppData%\Microsoft\Windows\Recent), supprime les listes de raccourcis automatiques et modifie le Registre (Start_TrackDocs, Start_TrackProgs) pour couper le suivi des documents et applications. Il neutralise aussi l'intégration des recherches Web Bing dans le champ de recherche du Menu Démarrer (DisableSearchBoxSuggestions).
  9. Désactivation des services superflus, télémétrie et Copilot :
    Sous le capot : Modifie le type de démarrage des services lourds ou axés sur la collecte de données (DiagTrack, dmwappushservice, dps, WpcMonSvc, ScardSvr, RemoteRegistry, WalletService, PhoneSvc, TrkWks, MapsBroker) pour les passer en mode désactivé et stoppe leur exécution immédiate. Verrouille également l'assistant Copilot via les clés de stratégies de groupe (TurnOffWindowsCopilot).
  10. Application des règles de registre et désactivation des tâches planifiées :
    Sous le capot : Applique des clés de registre strictes pour brider la télémétrie au niveau le plus bas (AllowTelemetry à 0), désactive l'identifiant publicitaire, la collecte de saisie vocale/textuelle et le suivi d'activité inter-appareils. Il désactive également en arrière-plan plus de 25 tâches planifiées intrusives liées au Programme d'amélioration de l'expérience utilisateur (CEIP), à l'expérience applicative (Compatibility Appraiser, ProgramDataUpdater) et aux diagnostics disque.
  11. Activation du raccourci moderne "Fin de tâche" :
    Sous le capot : Active la clé de registre dédiée (TaskbarEndTask) qui permet de tuer instantanément une application plantée d'un simple clic droit sur son icône épinglée dans la barre des tâches, sans avoir à ouvrir le Gestionnaire des tâches.
  12. Neutralisation complète de l'infrastructure IA et de Windows Recall :
    Sous le capot : Bloque l'ensemble des mécanismes liés à l'intelligence artificielle locale de Windows 11 : désactivation de l'analyse de données IA (DisableAIDataAnalysis), interdiction formelle d'enregistrer des captures d'écran de type Windows Recall (TurnOffSavingSnapshots, AllowRecallEnablement), neutralisation de la fonction Click to Do, bridage des fonctions génératives de Paint et du Bloc-notes (DisableCocreator, DisableGenerativeFill, DisableAIFeatures), et neutralisation du processus hôte d'IA via une redirection de débogueur dans le Registre.
  13. Analyse d'intégrité système SFC (Optionnelle) :
    Sous le capot : Affiche un avertissement critique (recommandant de ne pas l'exécuter sur des versions de Windows modifiées/Lites/AtlasOS pour éviter de corrompre le système) puis lance la commande de vérification des fichiers intègres du système (SFC /scannow) si l'utilisateur valide l'étape.

🔄 LE SCRIPT DE RESTAURATION (RETOUR ARRIÈRE) :
Si une option ne vous convient pas ou si vous rencontrez un souci, le script compagnon (Script_Restore_Ultimate.bat) exécute les actions de réversibilité suivantes :
  • [] Restauration Système : Lance directement l'utilitaire natif RSTRUI.exe pour vous permettre de sélectionner et appliquer le point de restauration créé (Avant_Script_Ultimate_v3).
    [] Réinstallation des Bloatwares : Lit le fichier XML de sauvegarde (AppxPackages_Backup.xml) situé sur le Bureau pour réenregistrer et réinstaller proprement les applications d'origine si nécessaire via PowerShell (Add-AppxPackage).
    [] Rétablissement des Services : Repasse l'ensemble des services désactivés en mode manuel ou automatique et les redémarre.
    [] Réactivation des Tâches Planifiées : Remet en marche toutes les tâches de fond de télémétrie et de maintenance précédemment désactivées.

DÉTAIL TECHNIQUE DE L'EXÉCUTION DES SCRIPTS
  • [] Sécurité et Droits : Vérification systématique des privilèges administrateur (net session) dès le lancement. Si l'utilisateur n'est pas admin, le script s'interrompt proprement avec un message d'alerte.
    [] Horodatage des Logs : Génération d'un fichier journal unique sur le Bureau (ScriptUltimate_v3_[Date_Heure].log) dont le nommage utilise une commande PowerShell sécurisée insensible aux paramètres régionaux du système (yyyyMMdd_HHmmss).
  • Gestion des Flux : Redirection systématique des erreurs vers nul pour garder une interface claire en mode console, tout en consignant les opérations clés dans le fichier log.

📥 SCRIPT 1 : CODE DU SCRIPT MASTER ULTIMATE v3.8 (.BAT) :

Code : Tout sélectionner

@echo off
chcp 65001 >nul
:: ========================================================
:: SCRIPT MASTER ULTIMATE v3.8 - OPTIMISATION ET NETTOYAGE
:: Compatible Windows 10 et 11 
:: ========================================================
COLOR 0A
TITLE Script Master Ultimate v3.8 - Optimisation ^& Nettoyage Windows

:: Verification des privileges Administrateur
net session >nul 2>&1
if %errorLevel% neq 0 (
    echo [!] ERREUR : Ce script doit etre execute en tant qu'Administrateur.
    echo Clic droit sur le fichier .bat -^> "Executer en tant qu'administrateur".
    pause
    exit /b
)

:: ----------------------------------------------------------------------------
:: INITIALISATION DU JOURNAL DE LOG (HORODATAGE SECURISE)
:: ----------------------------------------------------------------------------
for /f "tokens=*" %%a in ('powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; Get-Date -Format 'yyyyMMdd_HHmmss'" 2^>nul') do set "LOGTIME=%%a"
if not defined LOGTIME set "LOGTIME=Maintenance"
set "LOGFILE=%USERPROFILE%\Desktop\ScriptUltimate_v3_%LOGTIME%.log"

echo ======================================================== > "%LOGFILE%"
echo SCRIPT MASTER ULTIMATE v3.8 - LOG DE MAINTENANCE >> "%LOGFILE%"
echo Demarre le %date% a %time% >> "%LOGFILE%"
echo ======================================================== >> "%LOGFILE%"

echo ============================================================================
echo SCRIPT MASTER ULTIMATE v3.8 - MAINTENANCE COMPLETE WINDOWS
echo ============================================================================
echo.
echo Ce script va appliquer les actions suivantes :
echo - 1. Creation d'un point de restauration systeme de securite
echo - 2. Purge des caches (Temp, Prefetch, WER, Edge, Chrome, DNS, Reseau)
echo - 3. Nettoyage optionnel du cache Windows Update (Choix utilisateur)
echo - 4. Nettoyage optionnel du magasin DISM / WinSxS (Choix utilisateur)
echo - 5. Nettoyage avance du stockage (Windows.old, Crash Dumps, Pilotes OEM)
echo - 6. Purge des journaux d'evenements Windows (Event Logs)
echo - 7. Suppression optionnelle des Widgets, Meteo et Bloatwares
echo - 8. Nettoyage optionnel du Menu Demarrer et des suggestions Bing
echo - 9. Desactivation des services superflus, telemetrie et Copilot
echo - 10. Application des regles de registre et taches planifiees
echo - 11. Activation du raccourci "Fin de tache" sur la barre des taches
echo - 12. Blocage de l'infrastructure IA et Windows Recall
echo - 13. Analyse d'integrite systeme SFC (Optionnelle)
echo.
echo [LOG] Fichier journal cree sur le Bureau : %LOGFILE%
echo.
pause

:: ----------------------------------------------------------------------------
:: 1. CREATION D'UN POINT DE RESTAURATION SYSTEME (SECURITE)
:: ----------------------------------------------------------------------------
echo.
echo [1/13] Creation d'un point de restauration systeme...
echo [1/13] Creation du point de restauration systeme... >> "%LOGFILE%"
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRestore" /v "SystemRestorePointCreationFrequency" /t REG_DWORD /d 0 /f >nul 2>&1
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; Enable-ComputerRestore -Drive 'C:'; Checkpoint-Computer -Description 'Avant_Script_Ultimate_v3' -RestorePointType 'MODIFY_SETTINGS'" >nul 2>&1
echo [OK] Point de restauration cree ou tente.
echo [OK] Point de restauration termine. >> "%LOGFILE%"

:: ----------------------------------------------------------------------------
:: 2. NETTOYAGE APPROFONDI DES FICHIERS TEMPORAIRES, CACHES ET RESEAU
:: ----------------------------------------------------------------------------
echo.
echo [2/13] Nettoyage des fichiers temporaires, caches et reinitialisation reseau...
echo [2/13] Purge des fichiers temporaires, caches et reseau... >> "%LOGFILE%"

taskkill /F /IM msedge.exe >nul 2>&1
taskkill /F /IM chrome.exe >nul 2>&1
taskkill /F /IM WinStore.App.exe >nul 2>&1
taskkill /F /IM Microsoft.WindowsStore.exe >nul 2>&1

del /s /f /q "%temp%\*.*" >nul 2>&1
for /d %%i in ("%temp%\*") do rmdir /s /q "%%i" >nul 2>&1
del /s /f /q "%SystemRoot%\Temp\*.*" >nul 2>&1
for /d %%i in ("%SystemRoot%\Temp\*") do rmdir /s /q "%%i" >nul 2>&1
del /s /f /q "%SystemRoot%\Prefetch\*.*" >nul 2>&1
for /d %%i in ("%SystemRoot%\Prefetch\*") do rmdir /s /q "%%i" >nul 2>&1
del /s /f /q "%SystemRoot%\Logs\CBS\*.*" >nul 2>&1
del /s /f /q "%ProgramData%\Microsoft\Windows\WER\*.*" >nul 2>&1

del /s /f /q "%LOCALAPPDATA%\D3DSCache\*.*" >nul 2>&1
del /s /f /q "%LOCALAPPDATA%\Microsoft\Edge\User Data\Default\Cache\*.*" >nul 2>&1
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; $p = $env:LOCALAPPDATA + '\Google\Chrome\User Data\*\Cache\*'; Remove-Item -Path $p -Recurse -Force" >nul 2>&1
del /s /f /q "%LOCALAPPDATA%\Packages\Microsoft.WindowsStore_8wekyb3d8bbwe\LocalCache\*.*" >nul 2>&1

taskkill /f /im explorer.exe >nul 2>&1
timeout /t 1 >nul
del /f /q /s "%LocalAppData%\Microsoft\Windows\Explorer\thumbcache_*.db" >nul 2>&1
start explorer.exe >nul 2>&1

ipconfig /flushdns >nul 2>&1
netsh winsock reset >nul 2>&1
netsh int ip reset >nul 2>&1
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; Clear-RecycleBin -Force" >nul 2>&1

echo [OK] Fichiers temporaires, caches et pile reseau purges.
echo [OK] Purge temporaires, caches et reseau terminee. >> "%LOGFILE%"

:: ----------------------------------------------------------------------------
:: 3. NETTOYAGE OPTIONNEL DES MISES A JOUR WINDOWS (CHOIX UTILISATEUR)
:: ----------------------------------------------------------------------------
echo.
echo [3/13] Nettoyage du cache des mises a jour Windows Update...
echo Ce nettoyage supprime les anciens fichiers de mise a jour (SoftwareDistribution)
echo et le cache P2P pour liberer plusieurs gigaoctets.
echo.
:demande_wu
set "choix_wu="
set /p choix_wu="Voulez-vous nettoyer le cache des mises a jour Windows ? (O/N) : "
if /i "%choix_wu:~0,1%"=="O" goto exec_wu
if /i "%choix_wu:~0,1%"=="N" goto skip_wu
echo [!] Choix invalide. Veuillez repondre par O ou N.
goto demande_wu

:exec_wu
echo.
echo Nettoyage du cache Windows Update en cours (Arret des services, suppression, redemarrage)...
echo [3/13] Execution du nettoyage Windows Update... >> "%LOGFILE%"

powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; Stop-Service wuauserv, bits, dosvc -Force; $p1 = $env:SystemRoot + '\SoftwareDistribution\Download\*'; $p2 = $env:SystemRoot + '\ServiceProfiles\NetworkService\AppData\Local\Microsoft\Windows\DeliveryOptimization\Cache\*'; Remove-Item -Path $p1 -Recurse -Force; Remove-Item -Path $p2 -Recurse -Force; Start-Service dosvc, bits, wuauserv" >nul 2>&1

echo [OK] Cache des mises a jour Windows purge avec succes.
echo [OK] Cache Windows Update purge. >> "%LOGFILE%"
goto suite_section_4

:skip_wu
echo.
echo [INFO] Nettoyage du cache Windows Update ignore par l'utilisateur.
echo [INFO] Nettoyage Windows Update ignore. >> "%LOGFILE%"
:suite_section_4

:: ----------------------------------------------------------------------------
:: 4. NETTOYAGE OPTIONNEL DU MAGASIN DE COMPOSANTS (DISM / WINSXS)
:: ----------------------------------------------------------------------------
echo.
echo [4/13] Nettoyage du magasin de composants (WinSxS)...
echo.
echo ============================================================================
echo /!\ AVERTISSEMENT IMPORTANT - MAGASIN DE COMPOSANTS (WINSXS) : /!\
echo ============================================================================
echo EN ACCEPTANT CE NETTOYAGE (CHOIX O) :
echo TOUTES LES ANCIENNES VERSIONS DE FICHIERS SYSTEME CONSERVEES LORS DES
echo PRECEDENTES MISES A JOUR WINDOWS SONT SUPPRIMEES DU DISQUE.
echo.
echo - GAIN D'ESPACE : LIBERE ENTRE 2 GO ET 8 GO SUR LE DISQUE C:
echo - CONSEQUENCE  : IMPOSSIBLE DE DESINSTALLER LES MISES A JOUR WINDOWS ACTUELLES.
echo ============================================================================
echo.
:demande_dism
set "choix_dism="
set /p choix_dism="Voulez-vous nettoyer le magasin de composants WinSxS ? (O/N) : "
if /i "%choix_dism:~0,1%"=="O" goto exec_dism
if /i "%choix_dism:~0,1%"=="N" goto skip_dism
echo [!] Choix invalide. Veuillez repondre par O ou N.
goto demande_dism

:exec_dism
echo.
echo Nettoyage du magasin de composants DISM en cours (patientez quelques minutes)...
echo [4/13] Execution de DISM /startcomponentcleanup /resetbase... >> "%LOGFILE%"

dism.exe /online /cleanup-image /startcomponentcleanup /resetbase > "%TEMP%\dism_output.tmp" 2>&1

powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; $f = $env:TEMP + '\dism_output.tmp'; $l = $env:LOGFILE; if (Test-Path $f) { Get-Content $f | Where-Object { $_ -notmatch '%%' -and $_ -notmatch '===' -and $_.Trim() -ne '' } | Out-File -FilePath $l -Append -Encoding utf8; Remove-Item $f -Force }" >nul 2>&1

echo [OK] Magasin de composants WinSxS nettoye avec succes.
echo [OK] DISM termine. >> "%LOGFILE%"
goto suite_section_5

:skip_dism
echo.
echo [INFO] Nettoyage DISM ignore par l'utilisateur.
echo [INFO] Nettoyage DISM ignore. >> "%LOGFILE%"
:suite_section_5

:: ----------------------------------------------------------------------------
:: 5. NETTOYAGE AVANCÉ DU STOCKAGE (WINDOWS.OLD, CRASH DUMPS & DRIVER STORE)
:: ----------------------------------------------------------------------------
echo.
echo [5/13] Nettoyage avance du stockage (Windows.old, Crash Dumps, Pilotes OEM)...
echo [5/13] Nettoyage avance du stockage... >> "%LOGFILE%"

if exist "%SystemDrive%\Windows.old" (
    echo [*] Suppression du dossier Windows.old en cours...
    takeown /F "%SystemDrive%\Windows.old" /A /R /D Y >nul 2>&1
    icacls "%SystemDrive%\Windows.old" /T /grant Administrators:F >nul 2>&1
    rmdir /S /Q "%SystemDrive%\Windows.old" >nul 2>&1
)

del /F /S /Q "%SystemRoot%\memory.dmp" >nul 2>&1
del /F /S /Q "%SystemRoot%\Minidump\*.*" >nul 2>&1
del /F /S /Q "%LOCALAPPDATA%\CrashDumps\*.*" >nul 2>&1

powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; $drivers = Get-WindowsDriver -Online -All | Where-Object { $_.Driver -like 'oem*.inf' }; $groups = $drivers | Group-Object -Property OriginalFileName | Where-Object { $_.Count -gt 1 }; foreach ($group in $groups) { $oldDrivers = $group.Group | Sort-Object -Property Date -Descending | Select-Object -Skip 1; foreach ($drv in $oldDrivers) { pnputil.exe /delete-driver $drv.Driver /uninstall /force >$null } }" >nul 2>&1

echo [OK] Nettoyage avance du stockage termine.
echo [OK] Nettoyage avance stockage termine. >> "%LOGFILE%"

:: ----------------------------------------------------------------------------
:: 6. PURGE DES JOURNAUX D'EVENEMENTS WINDOWS (EVENT LOGS)
:: ----------------------------------------------------------------------------
echo.
echo [6/13] Purge des journaux d'evenements Windows...
echo [6/13] Purge des journaux d'evenements... >> "%LOGFILE%"
for /f "tokens=*" %%g in ('wevtutil el 2^>nul') do wevtutil cl "%%g" >nul 2>&1
echo [OK] Journaux d'evenements purges.
echo [OK] Event logs purges. >> "%LOGFILE%"

:: ----------------------------------------------------------------------------
:: 7. SUPPRESSION DES WIDGETS ET BLOATWARES (AVEC EXCLUSIONS)
:: ----------------------------------------------------------------------------
echo.
echo [7/13] Gestion des widgets, meteo/actualites et bloatware...
echo.
echo ============================================================================
echo /!\ ATTENTION - APPLICATIONS ET COMPOSANTS QUI SERONT SUPPRIMEES : /!\
echo ============================================================================
echo - Widgets Windows, Meteo/Actualites de la barre des taches, Copilot, Cortana
echo - Xbox Apps, Solitaire, Clipchamp, Spotify, Films ^& TV, Lecteur Média
echo - Courrier/Calendrier, Nouvel Outlook, Teams, Liens avec Windows, Office Hub
echo - To Do, Power Automate, Skype, OneNote, Météo, Actualités, Bourse, Sports
echo - Hub de commentaires, Obtenir de l'aide, Astuces, Contacts, Cartes, Caméra
echo - Enregistreur vocal, Visionneuse 3D, Pense-bête
echo - TikTok, LinkedIn, Candy Crush
echo.
echo /!\ APPLICATIONS CONSERVEES (EXCLUSIONS) : /!\
echo - Disney+, Instagram, Facebook, Netflix, Prime Video, Capture d'écran
echo ============================================================================
echo.
:demande_bloat
set "choix_bloat="
set /p choix_bloat="Voulez-vous executer ce nettoyage sur-mesure ? (O/N) : "
if /i "%choix_bloat:~0,1%"=="O" goto exec_bloat
if /i "%choix_bloat:~0,1%"=="N" goto skip_bloat
echo [!] Choix invalide. Veuillez repondre par O ou N.
goto demande_bloat

:exec_bloat
echo.
echo [7/13] Suppression sur-mesure des bloatwares, widgets et meteo... >> "%LOGFILE%"
echo Sauvegarde de la liste des paquets et nettoyage en cours...
set "BACKUP_DIR=%USERPROFILE%\Desktop\Bloatware_Backup"
mkdir "%BACKUP_DIR%" 2>nul
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; Get-AppxPackage -AllUsers | Select-Object Name, PackageFullName | Export-Clixml -Path '%BACKUP_DIR%\AppxPackages_Backup.xml'" >nul 2>&1

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SilentInstalledAppsEnabled" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "ContentDeliveryAllowed" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "OemPreInstalledAppsEnabled" /t REG_DWORD /d 0 /f >nul 2>&1

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "TaskbarDa" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Feeds" /v "ShellFeedsTaskbarViewMode" /t REG_DWORD /d 2 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Dsh" /v "AllowNewsAndInterests" /t REG_DWORD /d 0 /f >nul 2>&1

where winget >nul 2>&1
if %errorlevel% equ 0 (
    winget uninstall --id 9NKSQGP7F2NH --accept-source-agreements --silent >nul 2>&1
)

powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; $bloat = @('Microsoft.549981F6DA107', 'Microsoft.Copilot', 'Microsoft.GamingApp', 'Microsoft.XboxApp', 'Microsoft.XboxGamingOverlay', 'Microsoft.XboxIdentityProvider', 'Microsoft.XboxSpeechToTextOverlay', 'Microsoft.MicrosoftSolitaireCollection', 'Clipchamp.Clipchamp', 'SpotifyAB.SpotifyMusic', 'Microsoft.ZuneVideo', 'Microsoft.ZuneMusic', 'microsoft.windowscommunicationsapps', 'Microsoft.OutlookForWindows', 'MicrosoftTeams', 'MSTeams', 'Microsoft.YourPhone', 'Microsoft.MicrosoftOfficeHub', 'Microsoft.Todos', 'Microsoft.PowerAutomateDesktop', 'Microsoft.SkypeApp', 'Microsoft.Office.OneNote', 'Microsoft.BingWeather', 'Microsoft.BingNews', 'Microsoft.BingFinance', 'Microsoft.BingSports', 'Microsoft.WindowsFeedbackHub', 'Microsoft.GetHelp', 'Microsoft.Getstarted', 'Microsoft.People', 'Microsoft.WindowsMaps', 'Microsoft.WindowsCamera', 'Microsoft.WindowsSoundRecorder', 'Microsoft.SoundRecorder', 'Microsoft.3DViewer', 'Microsoft.Print3D', 'Microsoft.MicrosoftStickyNotes', 'TikTok', 'LinkedIn', 'CandyCrush'); foreach ($app in $bloat) { $pattern = '*' + $app + '*'; Get-AppxPackage -Name $pattern -AllUsers | Remove-AppxPackage -AllUsers; Get-AppxProvisionedPackage -Online | Where-Object { $_.DisplayName -like $pattern } | Remove-AppxProvisionedPackage -Online }" >nul 2>&1

echo [OK] Nettoyage effectue. Widgets et meteo desactives.
echo [OK] Bloatwares et Widgets nettoyes. >> "%LOGFILE%"
goto suite_section_8

:skip_bloat
echo.
echo [INFO] Suppression des bloatwares ignoree par l'utilisateur.
echo [INFO] Suppression bloatwares ignoree. >> "%LOGFILE%"
:suite_section_8

:: ----------------------------------------------------------------------------
:: 8. NETTOYAGE OPTIONNEL ET DESACTIVATION DES RECOMMANDATIONS (MENU DEMARRER)
:: ----------------------------------------------------------------------------
echo.
echo [8/13] Gestion du Menu Demarrer, historique et recherche Bing...
echo.
echo ============================================================================
echo /!\ ATTENTION - LISTE DES ACTIONS POUR LE MENU DEMARRER : /!\
echo ============================================================================
echo - Purge complete de l'historique des fichiers recents
echo - Suppression des raccourcis d'acces rapide (Destinations automatiques)
echo - Desactivation du suivi des documents recents (Registre)
echo - Desactivation du suivi des programmes recents (Registre)
echo - Suppression des recommandations et suggestions du Menu Demarrer
echo - Desactivation des recherches Web Bing integrees au Menu Demarrer
echo ============================================================================
echo.
:demande_start
set "choix_start="
set /p choix_start="Voulez-vous nettoyer l'historique et bloquer Bing/Recommandations ? (O/N) : "
if /i "%choix_start:~0,1%"=="O" goto exec_start
if /i "%choix_start:~0,1%"=="N" goto skip_start
echo [!] Choix invalide. Veuillez repondre par O ou N.
goto demande_start

:exec_start
echo.
echo Nettoyage de l'historique et des recommandations en cours...
echo [8/13] Nettoyage menu Demarrer... >> "%LOGFILE%"
del /f /q /s /a "%AppData%\Microsoft\Windows\Recent\*.*" >nul 2>&1
del /s /f /q /a "%AppData%\Microsoft\Windows\Recent\AutomaticDestinations\*.*" >nul 2>&1
del /s /f /q /a "%AppData%\Microsoft\Windows\Recent\CustomDestinations\*.*" >nul 2>&1
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "Start_TrackDocs" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "Start_TrackProgs" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-338388EntireMenuString" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKCU\Software\Policies\Microsoft\Windows\Explorer" /v "DisableSearchBoxSuggestions" /t REG_DWORD /d 1 /f >nul 2>&1

echo [OK] Recommandations du menu Demarrer et recherche Bing desactivees.
echo [OK] Menu Demarrer nettoye. >> "%LOGFILE%"
goto suite_section_9

:skip_start
echo.
echo [INFO] Nettoyage du menu Demarrer ignore par l'utilisateur.
echo [INFO] Nettoyage menu Demarrer ignore. >> "%LOGFILE%"
:suite_section_9

:: ----------------------------------------------------------------------------
:: 9. DESACTIVATION DES SERVICES WINDOWS INUTILES, TELEMETRIE ET COPILOT
:: ----------------------------------------------------------------------------
echo.
echo [9/13] Desactivation des services inutiles, telemetrie et Copilot...
echo [9/13] Desactivation des services telemetrie... >> "%LOGFILE%"

for %%s in (DiagTrack dmwappushservice dps WpcMonSvc ScardSvr RemoteRegistry WalletService PhoneSvc TrkWks MapsBroker) do (
    sc query %%s >nul 2>&1 && (
        sc config %%s start= disabled >nul 2>&1
        net stop %%s >nul 2>&1
        echo Service %%s desactive. >> "%LOGFILE%"
    )
)

sc query stisvc >nul 2>&1 && (
    sc config stisvc start= demand >nul 2>&1
)

reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsCopilot" /v "TurnOffWindowsCopilot" /t REG_DWORD /d 1 /f >nul 2>&1
reg add "HKCU\Software\Policies\Microsoft\Windows\WindowsCopilot" /v "TurnOffWindowsCopilot" /t REG_DWORD /d 1 /f >nul 2>&1

echo [OK] Services secondaires, telemetrie et Copilot verrouilles.
echo [OK] Services traites. >> "%LOGFILE%"

:: ----------------------------------------------------------------------------
:: 10. REGISTRE ET TACHES PLANIFIEES : PERFORMANCES ET ANTI-TRAQUEURS
:: ----------------------------------------------------------------------------
echo.
echo [10/13] Application des regles de registre et desactivation des taches de suivi...
echo [10/13] Application regles de registre et taches... >> "%LOGFILE%"

reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\DataCollection" /v "AllowTelemetry" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\DataCollection" /v "AllowDeviceNameInTelemetry" /t REG_DWORD /d 0 /f >nul 2>&1

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\AdvertisingInfo" /v "Enabled" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\InputPersonalization" /v "RestrictImplicitTextCollection" /t REG_DWORD /d 1 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\InputPersonalization\TrainedDataStore" /v "HarvestContacts" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\Personalization\Settings" /v "AcceptedPrivacyPolicy" /t REG_DWORD /d 0 /f >nul 2>&1

reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\System" /v "EnableActivityFeed" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\System" /v "PublishUserActivities" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\System" /v "UploadUserActivities" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\System" /v "ContinueOnThisDevice" /t REG_DWORD /d 0 /f >nul 2>&1

reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\LocationAndSensors" /v "DisableLocation" /t REG_DWORD /d 1 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Error Reporting" /v "Disabled" /t REG_DWORD /d 1 /f >nul 2>&1

reg add "HKLM\SOFTWARE\Policies\Microsoft\Edge" /v "MetricsReportingEnabled" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "AllowCortana" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Search" /v "BingSearchEnabled" /t REG_DWORD /d 0 /f >nul 2>&1

reg add "HKCU\Control Panel\Desktop" /v "MenuShowDelay" /t REG_SZ /d "100" /f >nul 2>&1
reg add "HKCU\Control Panel\Desktop" /v "WaitToKillAppTimeout" /t REG_SZ /d "2000" /f >nul 2>&1

schtasks /Change /TN "\Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Application Experience\ProgramDataUpdater" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Application Experience\StartupAppTask" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Application Experience\AitAgent" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Application Experience\PcaPatchDbTask" /DISABLE >nul 2>&1

schtasks /Change /TN "\Microsoft\Windows\Customer Experience Improvement Program\Consolidator" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Customer Experience Improvement Program\UsbCeip" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Customer Experience Improvement Program\KernelCeipTask" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Customer Experience Improvement Program\BthSQM" /DISABLE >nul 2>&1

schtasks /Change /TN "\Microsoft\Windows\Feedback\Siuf\DmClient" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload" /DISABLE >nul 2>&1

schtasks /Change /TN "\Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Power Efficiency Diagnostics\AnalyzeSystem" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\NetTrace\GatherNetworkInfo" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Device Information\Device" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Device Information\Device User" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Autochk\Proxy" /DISABLE >nul 2>&1

schtasks /Change /TN "\Microsoft\Windows\Maps\MapsUpdateTask" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Maps\MapsToastTask" /DISABLE >nul 2>&1

schtasks /Change /TN "\Microsoft\Windows\Windows Error Reporting\ReportWer" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Shell\FamilySafetyMonitor" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Shell\FamilySafetyRefreshTask" /DISABLE >nul 2>&1

schtasks /Change /TN "\Microsoft\Office\OfficeTelemetryAgentFallBack" /DISABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Office\OfficeTelemetryAgentLogOn" /DISABLE >nul 2>&1

echo [OK] Regles de registre et taches planifiees configurees.
echo [OK] Registre et taches mis a jour. >> "%LOGFILE%"

:: ----------------------------------------------------------------------------
:: 11. ACTIVATION DU RACCOURCI "FIN DE TÂCHE" SUR LA BARRE DES TÂCHES
:: ----------------------------------------------------------------------------
echo.
echo [11/13] Activation du raccourci "Fin de tache" sur la barre des taches...
echo [11/13] Activation Fin de tache... >> "%LOGFILE%"

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\TaskbarDeveloperSettings" /v "TaskbarEndTask" /t REG_DWORD /d 1 /f >nul 2>&1

echo [OK] Raccourci "Fin de tache" active.
echo [OK] Fin de tache activee. >> "%LOGFILE%"

:: ----------------------------------------------------------------------------
:: 12. BLOCAGE DE L'INFRASTRUCTURE IA & WINDOWS RECALL
:: ----------------------------------------------------------------------------
echo.
echo [12/13] Blocage de l'infrastructure IA et Windows Recall...
echo [12/13] Blocage IA et Recall... >> "%LOGFILE%"

reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsAI" /v "DisableAIDataAnalysis" /t REG_DWORD /d 1 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsAI" /v "TurnOffSavingSnapshots" /t REG_DWORD /d 1 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsAI" /v "AllowRecallEnablement" /t REG_DWORD /d 0 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsAI" /v "DisableClickToDo" /t REG_DWORD /d 1 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsAI" /v "DisableSettingsAgent" /t REG_DWORD /d 1 /f >nul 2>&1
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsCopilot" /v "TurnOffWindowsCopilot" /t REG_DWORD /d 1 /f >nul 2>&1

reg add "HKCU\Software\Microsoft\Paint" /v "DisableCocreator" /t REG_DWORD /d 1 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\Paint" /v "DisableGenerativeFill" /t REG_DWORD /d 1 /f >nul 2>&1
reg add "HKCU\Software\Microsoft\Notepad" /v "DisableAIFeatures" /t REG_DWORD /d 1 /f >nul 2>&1

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\WorkloadsSessionHost.exe" /v "Debugger" /t REG_SZ /d "systray.exe" /f >nul 2>&1

powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; Disable-WindowsOptionalFeature -Online -FeatureName 'Recall' -Remove" >nul 2>&1

echo [OK] Infrastructure IA et Windows Recall bloques.
echo [OK] Blocage IA et Recall effectue. >> "%LOGFILE%"

:: ----------------------------------------------------------------------------
:: 13. DETECTION DE LA VERSION WINDOWS ET ANALYSE D'INTEGRITE (SFC)
:: ----------------------------------------------------------------------------
echo.
echo [13/13] Analyse de l'integrite du systeme (SFC)...

for /f "tokens=*" %%a in ('powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; (Get-CimInstance Win32_OperatingSystem).Caption" 2^>nul') do set "WIN_NAME=%%a"
if "%WIN_NAME%"=="" set "WIN_NAME=Microsoft Windows"

echo.
echo ============================================================================
echo /!\ AVERTISSEMENT IMPORTANT /!\
echo ============================================================================
echo Systeme detecte : %WIN_NAME%
echo.
echo POUR LES VERSIONS WINDOWS MODIFIEES (UNA, LITE, REVIOS, ATLAS, ETC.) :
echo LA VERIFICATION D'INTEGRITE (SFC OU DISM) EST FORTEMENT DECONSEILLEE !
echo EN PRATIQUE, CELA RISQUE DE DEGRADER LE SYSTEME AU LIEU DE LE REPARER.
echo ============================================================================
echo.
:demande_sfc
set "choix_sfc="
set /p choix_sfc="Voulez-vous quand meme executer cette analyse ? (O/N) : "
if /i "%choix_sfc:~0,1%"=="O" goto exec_sfc
if /i "%choix_sfc:~0,1%"=="N" goto skip_sfc
echo [!] Choix invalide. Veuillez repondre par O ou N.
goto demande_sfc

:exec_sfc
echo.
echo Analyse SFC en cours, veuillez patienter...
echo [13/13] Execution de SFC /scannow... >> "%LOGFILE%"

powershell -NoProfile -ExecutionPolicy Bypass -Command "$lastPct = -1; $log = $env:LOGFILE; $psi = New-Object System.Diagnostics.ProcessStartInfo; $psi.FileName = 'sfc.exe'; $psi.Arguments = '/scannow'; $psi.UseShellExecute = $false; $psi.RedirectStandardOutput = $true; $psi.StandardOutputEncoding = [System.Text.Encoding]::Unicode; $proc = [System.Diagnostics.Process]::Start($psi); while (-not $proc.StandardOutput.EndOfStream) { $line = $proc.StandardOutput.ReadLine(); if ($line -match '(\d+)\s*%%') { $pct = [int]$matches[1]; if ($pct %% 20 -eq 0 -and $pct -ne $lastPct) { Write-Host $line; if ($log) { Add-Content -Path $log -Value $line -ErrorAction SilentlyContinue }; $lastPct = $pct } } elseif ($line.Trim() -ne '') { Write-Host $line; if ($log) { Add-Content -Path $log -Value $line -ErrorAction SilentlyContinue } } }; $proc.WaitForExit();"

echo [OK] Analyse SFC terminee.
goto suite_fin

:skip_sfc
echo.
echo [INFO] Analyse SFC ignoree par l'utilisateur.
echo [INFO] Analyse SFC ignoree. >> "%LOGFILE%"

:suite_fin
taskkill /f /im explorer.exe >nul 2>&1
timeout /t 1 >nul
start explorer.exe >nul 2>&1

echo.
echo ============================================================================
echo Votre systeme est nettoye, decharge des bloatwares et optimise.
echo Journal d'execution : %LOGFILE%
echo REDEMARRER LA MACHINE POUR LA PRISE EN COMPTE DES OPTIMISATIONS !
echo ============================================================================
echo Script termine le %date% a %time% >> "%LOGFILE%"
echo.
pause

Un redémarrage de la machine est fortement conseillé après l'exécution de l'un ou l'autre des scripts pour que le système prenne en compte l'ensemble des modifications.

📥 SCRIPT 2 : CODE DU SCRIPT DE RESTAURATION (Script_Restore_Ultimate.bat) :

Code : Tout sélectionner

@echo off
chcp 65001 >nul
:: ========================================================
:: SCRIPT RESTORE ULTIMATE - RETOUR ARRIERE ET REPARATION
:: ========================================================
COLOR 0B
TITLE Script Restore Ultimate - Restauration Systeme
​:: Verification des privileges Administrateur
net session >nul 2>&1
if %errorLevel% neq 0 (
echo [!] ERREUR : Ce script doit etre execute en tant qu'Administrateur.
echo Clic droit sur le fichier .bat -> "Executer en tant qu'administrateur".
pause
exit /b
)
​echo ============================================================================
echo SCRIPT RESTORE ULTIMATE - OPTIONS DE RESTAURATION
echo ============================================================================
echo.
echo Ce script permet de reparer ou restaurer le systeme suite au nettoyage :
echo - 1. Lancer l'assistant de Restauration du Systeme (Point "Avant_Script_Ultimate_v3")
echo - 2. Reinstaller les applications supprimees via le fichier XML de sauvegarde
echo - 3. Reactiver les services Windows deplaces en mode desactive
echo - 4. Reactiver les taches planifiees de telemetrie/maintenance
echo.
pause
​:: ----------------------------------------------------------------------------
:: 1. LANCEMENT DE LA RESTAURATION SYSTEME (REGISTRE, SERVICES, FICHIERS SYSTEME)
:: ----------------------------------------------------------------------------
echo.
echo [1/4] Lancement de l'utilitaire de Restauration du Systeme (RSTRUI)...
echo Selectionnez de preference le point nomme "Avant_Script_Ultimate_v3".
echo.
start "" rstrui.exe
echo [OK] Utilitaire de restauration lance.
echo.
pause
​:: ----------------------------------------------------------------------------
:: 2. REINSTALLATION DES APPS A PARTIR DU SAUVETAGE XML (BLOATWARES)
:: ----------------------------------------------------------------------------
echo.
echo [2/4] Verification d'une sauvegarde d'applications (AppxPackages_Backup.xml)...
set "BACKUP_FILE=%USERPROFILE%\Desktop\Bloatware_Backup\AppxPackages_Backup.xml"
​if exist "%BACKUP_FILE%" (
echo [+] Sauvegarde trouvee sur le Bureau. Voulez-vous reinstaller les applications d'origine ?
set /p choix_apps="Reinstaller les applications ? (O/N) : "
if /i "%choix_apps:~0,1%"=="O" (
echo Reinstallation en cours via PowerShell (veuillez patienter)...
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; $apps = Import-Clixml -Path '%BACKUP_FILE%'; foreach ($app in apps) { Add-AppxPackage -Register -DisableDevelopmentMode -Path \"($app.InstallLocation)\AppXManifest.xml" }" >nul 2>&1
echo [OK] Tentative de reinstallation des applications terminee.
) else (
echo [INFO] Reinstallation des applications ignoree.
)
) else (
echo [INFO] Aucun fichier de sauvegarde XML trouve sur le Bureau. Etape ignoree.
)
echo.
​:: ----------------------------------------------------------------------------
:: 3. REACTIVATION DES SERVICES WINDOWS DESACTIVES
:: ----------------------------------------------------------------------------
echo.
echo [3/4] REACTIVATION DES SERVICES SYSTEME...
echo Remise en mode automatique ou manuel des services de telemetrie/diagnostic...
​for %%s in (DiagTrack dmwappushservice dps WpcMonSvc ScardSvr RemoteRegistry WalletService PhoneSvc TrkWks MapsBroker) do (
sc query %%s >nul 2>&1 && (
sc config %%s start= demand >nul 2>&1
net start %%s >nul 2>&1
echo Service %%s reactive.
)
)
​echo [OK] Services retablis.
echo.
​:: ----------------------------------------------------------------------------
:: 4. REACTIVATION DES TACHES PLANIFIEES
:: ----------------------------------------------------------------------------
echo.
echo [4/4] REACTIVATION DES TACHES PLANIFIEES...
​schtasks /Change /TN "\Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Application Experience\ProgramDataUpdater" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Application Experience\StartupAppTask" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Application Experience\AitAgent" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Application Experience\PcaPatchDbTask" /ENABLE >nul 2>&1
​schtasks /Change /TN "\Microsoft\Windows\Customer Experience Improvement Program\Consolidator" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Customer Experience Improvement Program\UsbCeip" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Customer Experience Improvement Program\KernelCeipTask" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Customer Experience Improvement Program\BthSQM" /ENABLE >nul 2>&1
​schtasks /Change /TN "\Microsoft\Windows\Feedback\Siuf\DmClient" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload" /ENABLE >nul 2>&1
​schtasks /Change /TN "\Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Power Efficiency Diagnostics\AnalyzeSystem" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\NetTrace\GatherNetworkInfo" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Device Information\Device" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Device Information\Device User" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Autochk\Proxy" /ENABLE >nul 2>&1
​schtasks /Change /TN "\Microsoft\Windows\Maps\MapsUpdateTask" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Maps\MapsToastTask" /ENABLE >nul 2>&1
​schtasks /Change /TN "\Microsoft\Windows\Windows Error Reporting\ReportWer" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Shell\FamilySafetyMonitor" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Windows\Shell\FamilySafetyRefreshTask" /ENABLE >nul 2>&1
​schtasks /Change /TN "\Microsoft\Office\OfficeTelemetryAgentFallBack" /ENABLE >nul 2>&1
schtasks /Change /TN "\Microsoft\Office\OfficeTelemetryAgentLogOn" /ENABLE >nul 2>&1
​echo [OK] Taches planifiees reactivees.
echo.
​:: ----------------------------------------------------------------------------
:: FIN DE LA RESTAURATION
:: ----------------------------------------------------------------------------
echo ============================================================================
echo Operations de restauration terminees.
echo REDEMARRER LA MACHINE POUR FINALISER LES CHANGEMENTS !
echo ============================================================================
echo.
pause

Un redémarrage de la machine est fortement conseillé après l'exécution de l'un ou l'autre des scripts pour que le système prenne en compte l'ensemble des modifications.
​Voici la méthode pas à pas, pour transformer le code texte des scripts fournis dans le post en de véritables fichiers exécutables sur votre PC Windows.

1. Ouvrir le Bloc-notes
Aucun logiciel complexe n'est requis :
​Appuyez sur la touche Windows de votre clavier.
​Tapez Bloc-notes et ouvrez l'application.
2. Écrire les commandes
Dans la page blanche, saisissez le script que vous souhaitez lancer.
3. Enregistrer avec l'extension .bat (TRÈS IMPORTANT)
C'est l'étape clé pour que Windows transforme votre texte en script :
​Cliquez sur Fichier puis Enregistrer sous.
​Dans le champ Nom de fichier, écrivez un nom suivi OBLIGATOIREMENT de l'extension .bat (ex : mon_script.bat).
​Dans le menu déroulant Type, modifiez la sélection pour choisir Tous les fichiers (.) (cela évite que Windows n'ajoute secrètement un .txt à la fin).
​Choisissez l'emplacement souhaité (le Bureau par exemple) et validez.
4. Exécuter votre script
Rendez-vous à l'emplacement de votre fichier et cliquez simplement sur ​Executer En Administrateur mon_script.bat pour lancer son exécution instantanée.
Redémarrez l'ordinateur pour la prise en compte du fichier

Modifié en dernier par titou le ven. 14 août 2026 10:39, modifié 12 fois.
Le fossé séparant théorie et pratique est moins large en théorie qu’il ne l’est en pratique Toute demande de liens par MP est inutile !
titou
Membre VIP +
Membre VIP +
Messages : 2001
Enregistré le : mer. 28 sept. 2011 15:22
Localisation : france ardeche
A remercié : 5 fois
A été remercié : 11 fois
    Android Chrome

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par titou »

Mise a jour faite.

Sur la précédente mise a jour, cela supprimer l'outil capture d'écran.

Voici un petit script pour le réinstaller.
(Restauration_Capture.bat)
Spoiler : :

Code : Tout sélectionner

 @echo off
chcp 65001 >nul
TITLE Restauration - Outil Capture d'ecran Windows
COLOR 0B

:: 1. Verification des privileges Administrateur
net session >nul 2>&1
if %errorLevel% neq 0 (
    echo ============================================================================
    echo [!] ERREUR : CE SCRIPT DOIT ETRE EXECUTE EN TANT QU'ADMINISTRATEUR.
    echo ============================================================================
    echo Clic droit sur le fichier .bat -^> "Executer en tant qu'administrateur".
    echo.
    pause
    exit /b
)

echo ============================================================================
echo      RESTAURATION / REINSTALLATION DE L'APPLICATION CAPTURE D'ECRAN
echo ============================================================================
echo.

:: 2. METHODE 1 : Re-enregistrement du paquet AppX (ScreenSketch / SnippingTool)
echo [1/3] Re-enregistrement du paquet AppX local dans Windows...
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; Get-AppxPackage -AllUsers *ScreenSketch* | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register '$($_.InstallLocation)\AppXManifest.xml'}; Get-AppxPackage -AllUsers *SnippingTool* | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register '$($_.InstallLocation)\AppXManifest.xml'}" >nul 2>&1

:: Verification de la presence du paquet
powershell -NoProfile -ExecutionPolicy Bypass -Command "$pkg = Get-AppxPackage -Name *ScreenSketch*; if (-not $pkg) { $pkg = Get-AppxPackage -Name *SnippingTool* }; if ($pkg) { exit 0 } else { exit 1 }" >nul 2>&1
if %errorlevel% equ 0 (
    echo [OK] L'application Capture d'ecran a ete re-enregistree avec succes !
    goto FIN
)

:: 3. METHODE 2 : Reinstallation via Winget (Microsoft Store CLI)
echo [INFO] Application non trouvee en local. Passage a la methode 2...
echo [2/3] Reinstallation propre via Winget...
where winget >nul 2>&1
if %errorlevel% equ 0 (
    winget install --id 9MZ95KL8MR0L --accept-source-agreements --accept-package-agreements
    if %errorlevel% equ 0 (
        echo [OK] Capture d'ecran installee avec succes via Winget !
        goto FIN
    )
) else (
    echo [!] Winget n'est pas disponible sur ce systeme.
)

:: 4. METHODE 3 : Ouverture automatique de la fiche du Microsoft Store
echo.
echo [3/3] Ouverture de la fiche officielle dans le Microsoft Store...
echo Veuillez cliquer sur "Obtenir" ou "Installer" dans la fenetre qui s'ouvre.
timeout /t 2 >nul
start ms-windows-store://pdp/?ProductId=9MZ95KL8MR0L

:FIN
echo.
echo ============================================================================
echo Operation terminee.
echo ============================================================================
echo.
pause
Modifié en dernier par titou le ven. 14 août 2026 10:40, modifié 2 fois.
Le fossé séparant théorie et pratique est moins large en théorie qu’il ne l’est en pratique Toute demande de liens par MP est inutile !
Avatar du membre
rayman95
Modérateur
Modérateur
Messages : 1877
Enregistré le : mer. 9 déc. 2020 22:41
A remercié : 584 fois
A été remercié : 1175 fois
    Windows 10 Firefox

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par rayman95 »

@titou j'ai ce message d'erreur en lancant le script 3.7...


Voulez-vous nettoyer le magasin de composants WinSxS ? (O/N) : o

Nettoyage du magasin de composants DISM en cours (patientez quelques minutes)...
Le terminateur ' est manquant dans la chaîne.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : TerminatorExpectedAtEndOfString


[OK] Magasin de composants WinSxS nettoye avec succes.

dans le log, y a pas moyen de raccourcir le % de scan (mettre 25, 50, 75 et 100ù par exemple) et remettre une ecriture normale...je sais je chipote...pour le reste tout roule..
Spoiler : :
========================================================
SCRIPT MASTER ULTIMATE v3.7 - LOG DE MAINTENANCE
Demarre le 13/08/2026 a 10:34:44,80
========================================================
[1/13] Creation du point de restauration systeme...
[OK] Point de restauration termine.
[2/13] Purge des fichiers temporaires, caches et reseau...
[OK] Purge temporaires, caches et reseau terminee.
[3/13] Execution du nettoyage Windows Update...
[OK] Cache Windows Update purge.
[4/13] Execution de DISM /startcomponentcleanup /resetbase...
[OK] DISM termine.
[5/13] Nettoyage avance du stockage...
[OK] Nettoyage avance stockage termine.
[6/13] Purge des journaux d'evenements...
[OK] Event logs purges.
[7/13] Suppression sur-mesure des bloatwares, widgets et meteo...
[OK] Bloatwares et Widgets nettoyes.
[8/13] Nettoyage menu Demarrer...
[OK] Menu Demarrer nettoye.
[9/13] Desactivation des services telemetrie...
Service DiagTrack desactive.
Service dmwappushservice desactive.
Service dps desactive.
Service WpcMonSvc desactive.
Service ScardSvr desactive.
Service RemoteRegistry desactive.
Service WalletService desactive.
Service PhoneSvc desactive.
Service TrkWks desactive.
Service MapsBroker desactive.
[OK] Services traites.
[10/13] Application regles de registre et taches...
[OK] Registre et taches mis a jour.
[11/13] Activation Fin de tache...
[OK] Fin de tache activee.
[12/13] Blocage IA et Recall...
[OK] Blocage IA et Recall effectue.
[13/13] Execution de SFC /scannow...



D é b u t d e l a n a l y s e d u s y s t è m e . C e t t e o p é r a t i o n p e u t n é c e s s i t e r u n c e r t a i n t e m p s .





D é m a r r a g e d e l a p h a s e d e v é r i f i c a t i o n d e l a n a l y s e d u s y s t è m e .



L a v é r i f i c a t i o n e s t à 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 2 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 3 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 4 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 5 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 6 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 7 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 8 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 0 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 1 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 2 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 3 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 4 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 5 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 6 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 7 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 8 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 9 9 % t e r m i n é e .
L a v é r i f i c a t i o n e s t à 1 0 0 % t e r m i n é e .




L e p r o g r a m m e d e p r o t e c t i o n d e s r e s s o u r c e s W i n d o w s n a t r o u v é a u c u n e v i o l a t i o n d i n t é g r i t é .


Script termine le 13/08/2026 a 10:41:37,19
titou
Membre VIP +
Membre VIP +
Messages : 2001
Enregistré le : mer. 28 sept. 2011 15:22
Localisation : france ardeche
A remercié : 5 fois
A été remercié : 11 fois
    Android Chrome

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par titou »

Merci pour le retour rayman95 👍

Normalement cela devrait être bon 😉
Par palier de 20% (0%, 20%, 40%, 60%, 80%, 100%) au lieu du défilé
et j'ai supprimer un morceau du script pour ne pas supprimer l'outil capture écran.

Restauration - Outil Capture d'écran Windows.
Spoiler : :

Code : Tout sélectionner

@echo off
chcp 65001 >nul
TITLE Restauration - Outil Capture d'ecran Windows
COLOR 0B

:: 1. Verification des privileges Administrateur
net session >nul 2>&1
if %errorLevel% neq 0 (
    echo ============================================================================
    echo [!] ERREUR : CE SCRIPT DOIT ETRE EXECUTE EN TANT QU'ADMINISTRATEUR.
    echo ============================================================================
    echo Clic droit sur le fichier .bat -^> "Executer en tant qu'administrateur".
    echo.
    pause
    exit /b
)

echo ============================================================================
echo      RESTAURATION / REINSTALLATION DE L'APPLICATION CAPTURE D'ECRAN
echo ============================================================================
echo.

:: 2. METHODE 1 : Re-enregistrement du paquet AppX (ScreenSketch / SnippingTool)
echo [1/3] Re-enregistrement du paquet AppX local dans Windows...
powershell -NoProfile -ExecutionPolicy Bypass -Command "$ErrorActionPreference='SilentlyContinue'; Get-AppxPackage -AllUsers *ScreenSketch* | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register '$($_.InstallLocation)\AppXManifest.xml'}; Get-AppxPackage -AllUsers *SnippingTool* | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register '$($_.InstallLocation)\AppXManifest.xml'}" >nul 2>&1

:: Verification de la presence du paquet
powershell -NoProfile -ExecutionPolicy Bypass -Command "$pkg = Get-AppxPackage -Name *ScreenSketch*; if (-not $pkg) { $pkg = Get-AppxPackage -Name *SnippingTool* }; if ($pkg) { exit 0 } else { exit 1 }" >nul 2>&1
if %errorlevel% equ 0 (
    echo [OK] L'application Capture d'ecran a ete re-enregistree avec succes !
    goto FIN
)

:: 3. METHODE 2 : Reinstallation via Winget (Microsoft Store CLI)
echo [INFO] Application non trouvee en local. Passage a la methode 2...
echo [2/3] Reinstallation propre via Winget...
where winget >nul 2>&1
if %errorlevel% equ 0 (
    winget install --id 9MZ95KL8MR0L --accept-source-agreements --accept-package-agreements
    if %errorlevel% equ 0 (
        echo [OK] Capture d'ecran installee avec succes via Winget !
        goto FIN
    )
) else (
    echo [!] Winget n'est pas disponible sur ce systeme.
)

:: 4. METHODE 3 : Ouverture automatique de la fiche du Microsoft Store
echo.
echo [3/3] Ouverture de la fiche officielle dans le Microsoft Store...
echo Veuillez cliquer sur "Obtenir" ou "Installer" dans la fenetre qui s'ouvre.
timeout /t 2 >nul
start ms-windows-store://pdp/?ProductId=9MZ95KL8MR0L

:FIN
echo.
echo ============================================================================
echo Operation terminee.
echo ============================================================================
echo.
pause
Le fossé séparant théorie et pratique est moins large en théorie qu’il ne l’est en pratique Toute demande de liens par MP est inutile !
Avatar du membre
rayman95
Modérateur
Modérateur
Messages : 1877
Enregistré le : mer. 9 déc. 2020 22:41
A remercié : 584 fois
A été remercié : 1175 fois
    Windows 10 Firefox

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par rayman95 »

POUR LES VERSIONS WINDOWS MODIFIEES (UNA, LITE, REVIOS, ATLAS, ETC.) :
LA VERIFICATION D'INTEGRITE (SFC OU DISM) EST FORTEMENT DECONSEILLEE !
EN PRATIQUE, CELA RISQUE DE DEGRADER LE SYSTEME AU LIEU DE LE REPARER.
============================================================================

Voulez-vous quand meme executer cette analyse ? (O/N) : o

Analyse SFC en cours, veuillez patienter...
^ : Le terme «^» n'est pas reconnu comme nom d'applet de commande, fonction, fichier de script ou programme
exécutable. Vérifiez l'orthographe du nom, ou si un chemin d'accès existe, vérifiez que le chemin d'accès est correct
et réessayez.
Au caractère Ligne:1 : 1
+ ^
+ ~
+ CategoryInfo : ObjectNotFound: (^:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException


'$lastPct' n’est pas reconnu en tant que commande interne
ou externe, un programme exécutable ou un fichier de commandes.
[OK] Analyse SFC terminee.

Spoiler : :
========================================================
SCRIPT MASTER ULTIMATE v3.8 - LOG DE MAINTENANCE
Demarre le 13/08/2026 a 18:52:24,50
========================================================
[1/13] Creation du point de restauration systeme...
[OK] Point de restauration termine.
[2/13] Purge des fichiers temporaires, caches et reseau...
[OK] Purge temporaires, caches et reseau terminee.
[3/13] Execution du nettoyage Windows Update...
[OK] Cache Windows Update purge.
[4/13] Execution de DISM /startcomponentcleanup /resetbase...
Outil Gestion et maintenance des images de d‚ploiement
Version : 10.0.19041.3636
Version de l'imageÿ: 10.0.19044.7663
L'op‚ration a r‚ussi.
[OK] DISM termine.
[5/13] Nettoyage avance du stockage...
[OK] Nettoyage avance stockage termine.
[6/13] Purge des journaux d'evenements...
[OK] Event logs purges.
[7/13] Suppression sur-mesure des bloatwares, widgets et meteo...
[OK] Bloatwares et Widgets nettoyes.
[8/13] Nettoyage menu Demarrer...
[OK] Menu Demarrer nettoye.
[9/13] Desactivation des services telemetrie...
Service DiagTrack desactive.
Service dmwappushservice desactive.
Service dps desactive.
Service WpcMonSvc desactive.
Service ScardSvr desactive.
Service RemoteRegistry desactive.
Service WalletService desactive.
Service PhoneSvc desactive.
Service TrkWks desactive.
Service MapsBroker desactive.
[OK] Services traites.
[10/13] Application regles de registre et taches...
[OK] Registre et taches mis a jour.
[11/13] Activation Fin de tache...
[OK] Fin de tache activee.
[12/13] Blocage IA et Recall...
[OK] Blocage IA et Recall effectue.
[13/13] Execution de SFC /scannow...
Script termine le 13/08/2026 a 18:56:06,18
titou
Membre VIP +
Membre VIP +
Messages : 2001
Enregistré le : mer. 28 sept. 2011 15:22
Localisation : france ardeche
A remercié : 5 fois
A été remercié : 11 fois
    Android Chrome

Re: [Batch] Fichier .bat de nettoyage, optimisation

Message par titou »

Ha zut.
Merci du retour rayman95 ;)
La modification par paliers avait tout cassé.

Edit: Parfait je viens de faire un test sur mon pc ;)
Mise a jour du post plus haut.
Edit 2 : Test sur ordinateur d’un collège, nickel aussi 👍
Le script est nickel.
Spoiler : :
​Elle a été éliminée pour trois raisons :
​Suppression des ^ : la commande PowerShell est désormais condensée sur une seule ligne, donc CMD ne transmet plus de symboles ^ parasite à PowerShell.
​Fin des erreurs en cascade : PowerShell ne plante plus au démarrage, donc CMD n'essaie plus d'exécuter la suite du code (comme $lastPct) à sa place.
​Protection des symboles % : les pourcentages ont été doublés (%%) pour éviter que CMD ne détruise les variables PowerShell lors de la lecture du fichier .bat.
​L'analyse SFC s'exécutera proprement et affichera la progression tous les 20 %.
Le fossé séparant théorie et pratique est moins large en théorie qu’il ne l’est en pratique Toute demande de liens par MP est inutile !
Répondre