Batch, quelques explications

Cette page a pour but d'aider un débutant qui comme moi n'a pas trouvé de texte simple
concernant le fonctionnement des fichiers batch.
Ce qui suit demeure sans aucune prétention, et si quelques lignes de code proviennent de votre site,
mille excuses de ne pas vous avoir cité.
Attention, une mauvaise manip peut être désastreuse,
vous pouvez causer des dégats irréversibles dans votre configuration.
L'idéal est un pc de test, même une antiquité !

1 : suppression cookies, fichiers internet temporaires et temp

2 : listage d'un répertoire dans un fichier texte

3 : controle silencieux des Maj windows update manquantes sur un pc

4 : les sauts à l'étiquette

5 : affichage extensions de fichiers, fichiers systême et fichiers cachés

6 : masquage extensions de fichiers, fichiers systême et fichiers cachés

7 : Compteur de temps dans un batch

8 : choix d'un lecteur pour sauvegarde

9 : Contenu de "Downloaded Program Files"

10 : Suppression contenu de "Downloaded Program Files"

Pour faciliter les choses, Panneau de config, option des dossiers,
décochez: "Masquez les extensions de fichiers connus".
Tous vos fichiers se terminent par un point et 3 lettres/chiffres.
.mp3, .wav, .ogg = musique
.jpg, .bmp, .gif = images
.txt= fichier crée avec le bloc note
.doc avec word, .pdf abode acrobat...
.bat = fichiers batch
Pour créer un batch seul le bloc note est nécessaire, votre code est fini?
il suffit "d'enregistrer sous" votre fichier "nom-de-fichier.bat".
1er exemple, copiez le texte dans le cadre ci-dessous, collez-le dans un fichier texte(.txt).
enregistrez ce fichier sous le nom essai.bat

@echo off
echo Bonjour
echo Nous sommes la pour apprendre.
pause

Un double click sur votre fichier le fera s'ouvrir dans une fenêtre noire qui est est appelée : invite de commande.
copie d'écran
Pour appeler cette "console", faites démarrer, exécuter et tapez cmd + entrée
Mieux encore, démarrer, tous les programmes, accessoires, invite de commande.
Il est judicieux d'en créer un raccourci sur le bureau ou dans la barre de lancement rapide.
Pourquoi faire? = cette console qui sert à excuter vos commandes vous délivrera bien des secrets.
On y tape des lignes de commande, ou on automatise des lignes de commandes successives notées dans un batch.
copie d'écran

On regarde les indications du 1er cadre.
@echo off >> sert à masquer vos lignes de commandes, et le déroulement de celles-ci.
si on l'enlève cela donne ceci :
copie d'écran
D:\essai est l'emplacement du batch sur mon DD
ensuite on voit la commande : "D:\essai>echo bonjour"
et le résultat : Bonjour...
Donc "@echo off" pour masquer les commandes, il faut pour appeler l'affichage de votre texte
la commande "echo" "un espace" et "votre message".
"Pause", comme son nom l'indique, stoppe le déroulement du batch et vous demande d'appuyer sur
une touche pour continuer.
Si on l'enlève et que l'on lance le batch, la console s'ouvre et se ferme rapidement,
vous n'avez même pas le temps de voir votre message.

Et cela sert à quoi?

Exemple 1

Haut de page

@echo off
rem suppression fichiers temp cookies et internet temp
del /F /S /Q /A %SystemRoot%\Temp\*.*
del /F /S /Q /A "%USERPROFILE%\Local Settings\Temporary Internet Files\*.*"
del /F /S /Q /A "%USERPROFILE%\Cookies\*.*"
del /F /S /Q /A %SystemRoot%\Cookies\*.*
del /F /S /Q /A "%USERPROFILE%\Local Settings\Temp\*.*"

1ère ligne :
del : la commande "effacer"
Dans une console, tapez : del/?
vous avez l'explication de la syntaxe de la commande, ainsi que les options possibles.
/F /S /Q /A : les options apportées à la commande "del"
/F : Force la suppression de fichiers en lecture seule.
/S : Supprime les fichiers dans tous les sous-répertoires.
/Q : Pas de confirmation avant suppression avec caractères génériques.
/A : Suppression en fonction des attributs (ici : tous les attributs)
%SystemRoot%\Temp\: le chemin du dossier contenant les fichiers à effacer
Dans une console, tapez : set
Vous avez les variables déja contenues dans votre système, dans un batch, il faut entourer la variable de "%".
Nous verrons plus loin comment définir "nos" variables.
Non pas taper "c:\windows", indiquez %SystemRoot%, à quoi ça sert?
immaginez que vous ayez un multi-boot, win98 sur C et XP sur D, votre batch lancé sous XP ira modifier
des fichiers sous 98!! %SystemRoot% lui, sait bien que vous êtes sur D et traduira "D:\windows".
*.* : nom des fichiers à effacer
* : caractère bonus signifiant "tous", donc *.* = "tous les noms de fichiers"."toutes les extensions"

2ème ligne :
"%USERPROFILE%\Local Settings\Temporary Internet Files\*.*"
Si vous retapez : set dans une console, %USERPROFILE% = C:\documents and settings\nom d'utilisateur
Donc je demande la suppression de tous les noms de fichiers avec toutes les extensions possibles,
qu'ils soient cachés, système ou en lecture seule, sans demande de confirmation, ainsi que tous les dossiers
contenus dans C:\documents and settings\nom d'utilisateur\Local Settings\Temporary Internet Files
Attention, tout chemin contenant un espace doit être encadré de "

3ème ligne :
Rien à dire sauf que pourquoi tu mets des " alors qu'il n'y a pas d'espace dans le chemin?
%USERPROFILE% = C:\documents and settings\nom d'utilisateur il y a bien 2 espaces dans le chemin!!!

Exemple 2

Haut de page

@echo off
rem listing des repertoires temp et taches planifiees
dir %SystemRoot%\temp /A /S > list-temp.txt
dir %SystemRoot%\tasks /A /S > list-tache-plan.txt
dir "%SystemDrive%\Documents and Settings\%username%\Local Settings\temp" /A /S > temp-set.txt

rem vous permet d'inscrire des commentaires qui ne seront visibles que si vous éditez votre batch.
Pour éditer un batch, click droit puis édition.
La commande dir sert à lister
Dans une console, tapez : dir/?
/a déja vu plus haut liste les fichiers quels que soient leurs attibuts
/s affiche en plus les sous répertoires et leurs fichiers
> renvoit le résultat de dir dans un fichier, ici des .txt
tous crées dans le répertoire courant, là ou est situé le batch.
Pourquoi "%SystemDrive%\Documents and Settings\%username%\Local Settings\temp" ?
et non pas : "%USERPROFILE%\Local Settings\temp" ?
Pour voir si vous suivez!!

Une 2ème façon de procéder :

@echo off
rem listing des repertoitres temp et taches planifiees
dir %SystemRoot%\temp /A /S > liste.txt
dir %SystemRoot%\tasks /A /S >> liste.txt
dir "%USERPROFILE%\Local Settings\temp" /A /S >> liste.txt

1ère ligne > liste.txt crée le fichier liste.txt et lui colle le contenu de windows\temp
2ème ligne >> liste.txt rajoute à liste.txt le contenu de tache planifiées
3ème ligne >> liste.txt rajoute à liste.txt le contenu de local settings\temp

Une 3ème façon de procéder :

@echo off
rem listing des repertoitres temp et taches planifiees
(
dir %SystemRoot%\temp /A /S
dir %SystemRoot%\tasks /A /S
dir "%USERPROFILE%\Local Settings\temp" /A /S
)> liste.txt

Vous comprenez que les parenthèses entourent les commandes identiques et les cibles
la destination commune est envoyée derrière la 2ème parenthèse

Et pourquoi tu ne mets aucun accent
Ce sont des caractères interdit dans la validation W3C, voir bas de page
Si vous voulez corriger, il faut ouvrir une console, "edit" votre fichier batch,
là vous écrirez vos caractères accentuées convenablement.
copie d'écran
il faut penser à enregistrer les modif.
copie d'écran
et pour quitter.
copie d'écran
Astuce, dans un fichier texte, copiez vos "àéèêû...", vous n'aurez plus à éditer, seulement à copier/coller.
en voici quelques-uns
copie d'écran

Et comment je connais les commandes disponibles?
Ce site, par exemple, les répertorie, on tape la commande avec/? dans une console
c'est le meilleur moyen d'y voir plus clair, sinon dans google = "batch nom-de-commande xp"!
google = "batch imprimer xp" nous révèle : print
console = print/? et re google= batch print xp

Exemple 3

Haut de page

Attention suivez bien, on entre dans le et la pratique
Je souhaite savoir quelles MAJ de windows update il manque sur un pc qui n'a plus de connexion Internet.
Il faut télécharger 4 fichiers:
Microsoft baseline sécurité analyser v2 MBSA 2
Windows update v6 WindowsUpdateAgent v6
Ces 2 fichiers CAB qui contiennent les renseignement sur les MAJ.
wsuscan pour mbsa
muauth pour mbsa
on copie ces 4 fichiers et le batch dans un dossier nommé "essai" sur clé usb ou un cd.

@echo off
rem analyse silencieuse par MBSA
rem yves cathala
echo mbsa microsoft baseline securite analyser
if exist %SystemDrive%\WINDOWS\system32\wucltui.dll goto ok01
echo WindowsUpdate v6 n est pas installe
md %SystemDrive%\essai
copy WindowsUpdateAgent20-x86.exe %SystemDrive%\essai
%SystemDrive%\essai\WindowsUpdateAgent20-x86.exe /q
:ok01
echo WindowsUpdate v6 est deja installe
copy MBSASetup-FR.msi %SystemDrive%\essai
%SystemDrive%\essai\MBSASetup-FR.msi /q
md "%USERPROFILE%\Local Settings\Application Data\Microsoft\MBSA\2.0\Cache"
copy essai\wsusscan.cab "%USERPROFILE%\Local Settings\Application Data\Microsoft\MBSA\2.0\Cache"
copy essai\MUAuth.cab "%USERPROFILE%\Local Settings\Application Data\Microsoft\MBSA\2.0\Cache"
pause
echo lancement mbsa
"%SystemDrive%\Program Files\Microsoft Baseline Security Analyzer 2\mbsacli.exe" /nd > %SystemDrive%\essai\mbsa.txt
pause
rem Votre pare feu vous fera certainement constater une tentative de connexion
rem Ce bill alors.
echo desinstallation mbsa par ajout supp prog
APPWIZ.CPL
pause
echo on recupere le fichier %SystemDrive%\essai\mbsa.txt
echo Appuyez sur une touche si vous voulez lancer maintenant
echo le nettoyage & pause >nul
rmdir /S /Q "%USERPROFILE%\Local Settings\Application Data\Microsoft\MBSA"
rmdir /S /Q %SystemDrive%\essai

Explications:
Condition pour que mbsa fonctionne, il faut que winupdatev6 soit présent sur le système
if exist %SystemDrive%\WINDOWS\system32\wucltui.dll goto ok01
if ... goto
si une condition est remplie : va ou fait
-si tu trouves wucltui.dll dans %SystemDrive%\WINDOWS\system32 c'est que winupdatev6 est déja installé
alors tu sautes à l'étiquette "ok01", et passes sur la re-install inutile de winupdatev6
on affiche le texte : "WindowsUpdate v6 est deja installé"
-si tu n'as pas trouvé wucltui.dll dans %SystemDrive%\WINDOWS\system32 c'est que winupdatev6 n'est pas installé
on ignore le saut à ok01,
md : création d'un dossier, en l'occurence "essai", on y copiera tous les fichiers
on copie l'exe dans %SystemDrive%\essai et on le lance.(pourquoi le copier et le lancer
du disque dur? sur clé usb cela économise sa mémoire flash qui n'est pas eternelle)
ensuite on copie et on installe MBSASetup-FR.msi. l'option /q l'installe de façon silencieuse
on copie ensuite les 2 bases de MAJ dans les dossiers voulus
on lance l'exe fraichement installé en mode console (silencieusement, sans affichage) en lui demandant
d'inscrire le résultat dans le fichier texte "mbsa.txt" avec le ">" dans %SystemDrive%\essai
c'est fini, donc on nettoie,
je n'ai pas trouvé de désinstalleur pour mbsa, donc j'ouvre ajout suppr. de programme par "APPWIZ.CPL"
on le désinstalle manuellement,
un message pour indiquer de récupérer le fichier de résultat mbsa.txt avant nettoyage
une variante de "pause"
echo texte à afficher & pause >nul
attends l'appui sur une touche pour continuer en affichant le texte choisi.
nettoyage par rmdir des 2 dossiers crées pour l'install,
/S supprime le dossier et tous ses sous-dossiers
/Q en mode silencieux, ne demande pas de confirmation style : êtes-vous sûr de vouloir supprimer...

Exemple 4

Haut de page

@echo off
VER | find "NT" > nul
IF not errorlevel 1 GOTO Win_NT
VER | find "2000" > nul
IF not errorlevel 1 GOTO Win_2000
VER | find "XP" > nul
IF not errorlevel 1 GOTO Win_xp
Ver | Find "Millennium" >NUL
If Not ErrorLevel 1 Goto Winmil
VER | find "98" > nul
IF not errorlevel 1 GOTO Win_98
VER | find "95" > nul
IF not errorlevel 1 GOTO Win_95
GOTO no-found
:Win_NT
echo windows NT detecte
pause
goto fin
:Win_2000
echo windows 2000 detecte
pause
goto fin
:Win_xp
echo windows XP detecte
pause
goto fin
:Winmil
echo windows Millenium detecte
pause
goto fin
:Win_98
echo windows 98 detecte
pause
goto fin
:Win_95
echo windows 95 detecte
pause
goto fin
:no-found
echo problème win 3.1 linux ou xp64 ne fonctionnent pas avec ce batch
pause
goto fin
:fin

Explications
On revoie le saut à l'étiquette par goto
Dans une console tapez "ver" vous indique l'OS utilisé
VER | find "NT" > nul
le batch entre "ver", dans le résultat on lui fait chercher par "find" les caractères "nt"
IF not errorlevel 1 GOTO Win_NT toute commande retourne une "errorlevel" si tu ne trouves pas "errorlevel 1" c'est que tu as bien trouvé "NT", alors tu sautes à l'étiquette "Win_NT"
tu affiches le message "windows NT détecté" et tu saute à l'étiquette "fin" qui te fait quitter la console
à quoi ça sert ? Si tu fais un batch avec des commandes qui ne fonctionnent que sous windows 95,
Si "find" ne trouve pas "nt","2000","xp"...>> GOTO no-found >> affichage OS non supporté.
tu case les commandes après "echo windows 95 detecte" cela évite pleins de messages d'erreur
si le batch est lançé sous un OS incompatible.

Exemple 5

Haut de page

@echo off
rem yves cathala
echo affichage extensions de fichiers fichiers caches et systeme
(
@echo Windows Registry Editor Version 5.00
@echo/
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
@echo "Hidden"=dword:00000001
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
@echo "HideFileExt"=dword:00000000
@echo [HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
@echo "HideFileExt"=dword:00000000
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
@echo "ShowSuperHidden"=dword:00000001
)>"%Temp%\job.reg"
regedit /s "%Temp%\job.reg"
del /q "%Temp%\job.reg"
if not exist %Systemroot%\system32\taskkill.exe goto ok01
taskkill /f /im explorer.exe
start explorer.exe
goto end01
:ok01
echo il faut redemarrer pour que les modifications soit appliquees
set choice=
set /p choice=voulez vous redemarrer maintenant (o/n)?
if '%choice%'=='o' goto oui1
if '%choice%'=='n' goto end01
:oui1
SHUTDOWN -r -t 05& goto end02
:end01
echo appuyez sur une touche pour quitter & pause>nul
exit
:end02
exit

Quand je bricole sur un pc qui ne m'appartient pas, j'aime afficher:
les extensions de fichiers, les fichiers systême et les fichiers cachés.
la seule façon que j'ai trouvé pour le faire c'est en modifiant la base de registre
Cela se fait par un fichier .reg
Je tape donc toutes les lignes qui forment mon .reg
les 2 parenthèses qui l'entourent font appliquer la commande qui suit pour chaque ligne
et cela crée dans la-lettre-du-lecteur\windows\temp mon fichier job.reg
la commande regedit me fusionne le contenu du reg dans la BDR
je supprime mon reg par del
pour que les modifications soient appliquées il faut redémarrer le pc
ou arrêter explorer.exe des taches en court et le relancer
sous xp pro "taskkill" permet la seconde solution
si le batch détecte "taskkill" il l'appelle pour tuer explorer.exe puis le relance et sort du batch
si le batch ne détecte pas "taskkill" il saute à l'étiquette "ok01" qui nous ouvre un choix par "set choice="
qui nous offre,
-en choisissant l'étiquette "oui1", d'arrêter le pc par "SHUTDOWN -r -t 05"
05 étant un compte à rebours, le chiffre est indiqué en secondes
-en choisissant l'étiquette "end01", de ne pas forcer l'arrêt du pc et de quitter tout simplement la console.
-inutile de préciser que vous pouvez copier "taskkill.exe" sur le pc en question pour éviter le redémarrage
if exist %SYSTEMROOT%\system32\taskkill.exe goto saut01(si trouvé essaies pas de le copier, saut01)
copy /Y taskkill.exe %SYSTEMROOT%\system32
:saut01

Exemple 6

Haut de page

Commentaires inutiles, c'est le même qu'en 5 mais pour masquer

@echo off
rem yves cathala
echo masquage extensions de fichiers fichiers caches et systeme
(
@echo Windows Registry Editor Version 5.00
@echo/
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
@echo "Hidden"=dword:00000002
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
@echo "HideFileExt"=dword:00000001
@echo [HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
@echo "HideFileExt"=dword:00000001
@echo [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
@echo "ShowSuperHidden"=dword:00000000
)>"%Temp%\job.reg"
regedit /s "%Temp%\job.reg"
del /q "%Temp%\job.reg"
if not exist %Systemroot%\system32\taskkill.exe goto ok01
taskkill /f /im explorer.exe
start explorer.exe
goto end01
:ok01
echo il faut redemarrer pour que les modifications soit appliquees
set choice=
set /p choice=voulez vous redemarrer maintenant (o/n)?
if '%choice%'=='o' goto oui1
if '%choice%'=='n' goto end01
:oui1
SHUTDOWN -r -t 05& goto end02
:end01
echo appuyez sur une touche pour quitter & pause>nul
exit
:end02
exit

Exemple 7

Haut de page

@echo off
rem yves cathala le 15 09 2005
rem compteur de temps ecoulé
date /T >> journal.txt
for /f %%a in ('time /t') do echo heure de debut de travaux %%a >> journal.txt
set temps=%TIME%
set temps=%temps:~0,5%
echo il est = %temps%
set /A heure=%temps:~0,2%
set /A min=%temps:~3,5%
set /A hdeb = %heure% * 60
set /A mdeb = %min%
set /a tpsdeb=%hdeb% + %mdeb%
echo minutes de depart est %tpsdeb% >> journal.txt
echo la on bosse comme des fous
echo les lignes de commandes se succedent
echo ici on arrete plus de tache a executer
echo on va appuyer sur une touche mais
echo on attends au moins une minute pour voir le resultat 8=) & pause >nul
for /f %%a in ('time /t') do echo heure de fin de travaux %%a >> journal.txt
set temps=%TIME%
set temps=%temps:~0,5%
echo il est = %temps%
set /A heure=%temps:~0,2%
set /A min=%temps:~3,5%
set /A hfin = %heure% * 60
set /A mfin = %min%
set /a tpsfin=%hfin% + %mfin%
echo minutes de fin est %tpsfin% >> journal.txt
set /A z=%tpsfin% - %tpsdeb%
IF /I %z% GEQ 60 goto calc02
echo le temps passe est de %z% minutes >> journal.txt
goto exit
:calc02
set /A h=%z% / 60
echo le temps passe est de %h% heures >> journal.txt
set /A g=%z% %% 60
rem merci a breizhbugs sur PCA pour l'aide
echo et %g% minutes >> journal.txt
:exit
start notepad.exe journal.txt

Commentaires à venir

Exemple 8

Haut de page

@echo off
rem yves cathala
rem sauvegarde fichiers sur disk ou cle usb
echo pour exemple creation du dossier %SystemDrive%\essai
md %SystemDrive%\essai\dossier01\dossier02
echo on le remplie
echo.> %SystemDrive%\essai\dossier01\texte01.txt
echo.> %SystemDrive%\essai\dossier01\\dossier02\texte02.txt
echo.> %SystemDrive%\essai\texte03.txt
echo sauvegarde des fichiers
echo tapes la lettre du lecteur de sauvegarde
echo le contenu du dossier essai sera sauvegarde
set /p choix=choisissez la lettre du lecteur :
if %choix%==a goto Menu1
if %choix%==d goto Menu2
if %choix%==e goto Menu3
if %choix%==f goto Menu4
if %choix%==g goto Menu5
if %choix%==h goto Menu6
if %choix%==i goto Menu7
if %choix%==j goto Menu8
if %choix%==k goto Menu9
if %choix%==l goto Menu10
if %choix%==m goto Menu11
if %choix%==n goto Menu12
:Menu1
md a:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* a:\essai
goto menu13
:Menu2
md d:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* d:\essai
goto menu13
:Menu3
md e:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* e:\essai
goto menu13
:Menu4
md f:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* f:\essai
goto menu13
:Menu5
md g:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* g:\essai
goto menu13
:Menu6
md h:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* h:\essai
goto menu13
:Menu7
md i:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* i:\essai
goto menu13
:Menu8
md j:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* j:\essai
goto menu13
:Menu9
md k:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* k:\essai
goto menu13
:Menu10
md l:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* l:\essai
goto menu13
:Menu11
md m:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* m:\essai
goto menu13
:Menu12
md n:\essai
xcopy /Q /E /H %SystemDrive%\essai\*.* n:\essai
goto menu13
:menu13
echo nettoyage
rmdir /S /Q %SystemDrive%\essai

Commentaires à venir

Exemple 9

Haut de page

@echo off
echo/ >list.txt
echo Fichiers contenus dans C:\windows\Downloaded Program Files >>list.txt
echo/ >>list.txt
dir "%windir%\Downloaded Program Files"/s /a >>list.txt
echo/ >>list.txt
echo Et leurs attributs >>list.txt
echo Pour mémoire >>list.txt
echo R : lecture seule >>list.txt
echo A : archive >>list.txt
echo S : systême >>list.txt
echo H : caché >>list.txt
echo/ >>list.txt
attrib "%windir%\Downloaded Program Files\*.*" /S /D>>list.txt
start notepad.exe list.txt

Pour lister le contenu de ce dossier mystérieux
voir les explications du batch n°10 pour plus d'explications
Pour les forumeurs dir-DPF.bat
en téléchargement direct

Exemple 10

Haut de page

@echo off
rem yves cathala
rem suppression contenu DPF
copy "%systemroot%\Downloaded Program Files\desktop.ini" %tmp%\desk.ini
rem on copie desktop.ini qui donne les attributs magiques à ce dossier
rem dans temp et on le renomme pour ne rien écraser
if exist "%systemroot%\Downloaded Program Files\LegitCheckControl.inf" copy "%systemroot%\Downloaded Program Files\LegitCheckControl.inf" %tmp%\leg.inf
rem idem pour Windows geniune validation
cls
del /f /s /q /a "%systemroot%\Downloaded Program Files\*.*"
rem on supprime tous les fichiers
if exist "%systemroot%\Downloaded Program Files\conflict.*" rd /s /q "%systemroot%\Downloaded Program Files\conflict.*"
rem suppression des dossiers les plus connus
rem bien sur on ajoute les dossiers douteux trouvés par la commande find du batch précédent
cls
echo Downloaded Program Files est nettoye
move %tmp%\desk.ini "%systemroot%\Downloaded Program Files"
rem on remet desktop.ini a sa place
if exist %tmp%\leg.inf move %tmp%\leg.inf "%systemroot%\Downloaded Program Files"
rem on remet Windows geniune validation a sa place
cls
ren "%systemroot%\Downloaded Program Files\desk.ini" desktop.ini
rem on le renomme comme a l'origine
if exist ren "%systemroot%\Downloaded Program Files\leg.inf" "%systemroot%\Downloaded Program Files\leg.inf" LegitCheckControl.inf
rem on le renomme comme a l'origine

créez dans C: un dossier nommé zaz
à l'intérieur créez un fichier texte (notepad) zaz.txt
demarrer >> exécuter >> cmd
tapez move c:\zaz "c:\windows\Downloaded Program Files"
maintenant par l'explorateur ouvrez c:\windows\Downloaded Program Files
le dossier zaz et son contenu sont invisibles !
demarrer >> exécuter >> cmd
dir "%windir%\Downloaded Program Files"/s /a >>"%userprofile%\bureau\liste.txt"
sur le bureau ouvrez liste.txt qui lui, montre le contenu réel.
pour supprimer le dossier zaz
demarrer >> exécuter >> cmd
rmdir /s /q "c:\windows\Downloaded Program Files\zaz"

En fouinant, éditez "desktop.ini" de DPF, une ligne de chiffres,
dans la BDR recherchez cette serie de chiffres et vous comprendrez l'invisible.
particularité commune avec "temporary internet files".
Ne demandez plus à quelqu'un de supprimer par l'explorateur windows un fichier dans ce dossier!

Pour les forumeurs empty-DPF.bat
en téléchargement direct

marmotte


Pour les récalcitrants aux batchs:
demarrer >> executer >> faire copier/coller

cmd /c dir /a /s "%windir%\downloaded program files">>"%userprofile%\bureau\dpf.txt"

donne un aperçu très précis sur le bureau (dpf.txt)
ensuite
demarrer >> executer >> faire copier/coller

cmd /c del /f /q /a "%windir%\downloaded program files\nom-du-fichier-à-détruire"

ou

cmd /c rd /s /q "%windir%\downloaded program files\nom-du-dossier-à-détruire"

Je ferais bien déplacer desktop.ini et windows géniune, ensuite détruire DPF
pour le re-créer, mais des fichiers encore méconnus me font hésiter (impôts)

monk


Haut de page

Valid XHTML 1.1! Valid CSS!

à Marlo et Juju