Bonjour à tous,
Je désespère depuis quelques temps car je n'arrive pas à trouver une solutions à ce pb. Voici mes contraintes:
Je fais un batch pour installer silencieusement plusieurs applications.
Pour certaines je passe par le dézippage d'un fichier zip dans program files
Je sais gérer les différents chemin en fonctions des différentes version de windows.... (de façon basique=> adresse en dur c:\.....etc...)
Le problème se complique avec l'adresse du menu démarrer (all users) car apparemment la présence de l'accent pose problème.... surtout pour la version XP car pas d'accent dans vista / W7 et W8
A force de chercher je me suis rendu compte que plusieurs solutions existaient mais je n'ai pas réussi à les mettre en oeuvre....
1) enregistrer d'une certaine façon mon fichier batch pour que l'accent ne pose pas de pb.....
2) récupérer l'adresse du menu démarrer commun dans le registre (je pense que c'est la meilleure façon car du coup peu importe la version de Windows (si la clé est la même.. vous confirmez ?)
Voila ce que j'ai réussi à coder:
J'avoue ne pas comprendre tous les paramètres utilisés pour lire une clé de registre.... si vous pouviez m'éclairer je serai ravi !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 setlocal ENABLEEXTENSIONS set KEY_NAME="HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" set VALUE_NAME="Common Start Menu" rem for /F "usebackq tokens=3" %%A IN (`reg query %KEY_NAME% /v "%VALUE_NAME%="`) do echo %%A
J'ai aussi testé ceci que j'ai trouvé sur le forum....mais...
3) l'utilisation d'un exécutable tiers.... j'ai vu sur le forum "NirCmd".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Pour récupérer la valeur d'une clé : For /f "Skip=4 Tokens=3" %%i In ('Reg Query XXX /v DisplayName') Do YYY
Cette solution me semble aussi intéressante bien que je préfèrerai ne pas utiliser de fichier tiers.... (pas encore tester mais me semble assez facile à utiliser)
4) Peut être y a-t-il autre chose que je n'ai pas encore découvert.
Je vous remercie pour l'aide que vous pourrez m'apporter....
Partager