Suppréssion clé de registre avec fin de nom aléatoir en batch

- - Dernière réponse : little boy62
Messages postés
3271
Date d'inscription
lundi 11 novembre 2013
Statut
Membre
Dernière intervention
17 octobre 2019
- 9 juil. 2019 à 18:49
Bonjour à tous,

Je prépare un script (batch) pour installer et désinstaller un logiciel de manière automatique.
Il s'avère qu'à la désinstallation, tout se passe bien mais quand je vais dans ajout suppression de programme je vois toujours la ligne.

J'ai fait plusieurs test d'install/desinstall et maintenant je vois 3 fois la ligne !!!

En regardant les clé de registre je vois dans
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\
ces 3 lignes qui correspondent à mon logiciel:
TC12-190704135821
TC12-190704164828
TC12-190705110024

Si je fais lance unitairement les lignes suivantes elles sont bien supprimé:
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\TC12-190704135821" /f
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\TC12-190704164828" /f
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\TC12-190705110024" /f

Par contre j'aimerai dans mon script de désinstalle ajouter la suppression de cette clé de registre mais elle est toujours différente !!!

J'ai essayé cette commande :
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\TC12*"

cela ne fonctionne pas, existe t-il un moyen de supprimer dans:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

tout ce qui commence par TC12 ?

Merci par avance de votre aide.

Cordialement,
Afficher la suite 

1 réponse

Messages postés
3271
Date d'inscription
lundi 11 novembre 2013
Statut
Membre
Dernière intervention
17 octobre 2019
878
0
Merci
Salut.

Regarde ici : https://www.developpez.net/forums/d1616923/general-developpement/programmation-systeme/windows/scripts-batch/lecture-d-clef-registre-differents-formats-possibles/#post8831449

Je l'ai adapté comme ceci



@echo off
FOR /f %%i IN ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" ^| FIND /I "TC12"') DO (
echo "%%i"
pause
)


A toi de finir le code. ;-)


++
Commenter la réponse de little boy62