Communauté Informatique NDFR.net

Communauté Informatique NDFR.net (http://www.ndfr.net/forums/index.php)
-   Windows NT4/2000/XP Client (http://www.ndfr.net/forums/forumdisplay.php?f=51)
-   -   Variables d'environnement (http://www.ndfr.net/forums/showthread.php?t=6431)

whynot 11-07-2005 15:43

Variables d'environnement
 
Afin de limiter les trucs à réinstaller en cas de réinstall windows, je partitionne mon disque en une pitite partoche de 5Go pour windows tout seul et le reste pour tout le reste.

J'installe mes logiciels dans D:\software
Et à chaque petit truc à installer, je browse dans ce répertoire afin de changer le C:\Program Files par défaut.

J'aimerais changer cette variable, mais ça ne marche jamais !
Comme l'indiquent des guides ici et ici ou même la doc officielle MS, il faut définir la variable PROGRAMFILES (Système > Avancé > Variables d'environnement).
Je fais donc ceci (+reboot), en prenant soin au cas où de la définir à la fois en globale et en utilisateur, et rien n'y fait, tous les installeurs (essayés : InstallShield, InnoSetup, NSIS, MSI...) gardent le C:\Program Files.

Quelqu'un a une idée ?

H@kk@s 11-07-2005 17:03

Je vais peux être dire n'importe quoi mais par la base de registre ça doit être fesable je pense non?

whynot 11-07-2005 17:10

Plus que ça, la boîte de dialogue "Variables d'environnement" dont je parle ne fait que modifier des valeurs du registre.

Donc oui ça passe par le registre, et ça doit aussi être faisable directement (sans passer par cette boîte et juste en éditant).

Plus précisément, toutes ces variables se trouvent dans HKCU\Environment, et dans la tradition MS, en doublon à toutplein d'autres endroits ;)

childerik 11-07-2005 18:17

La véritable valeur se trouve ici :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion

Clé : ProgramFilesDir (changer C:\Program Files par la destination que vous voulez)

whynot 11-07-2005 19:24

rrraaaaaaaaaahhhhh merci infiniment childerik.
Ca marche avec cette clé.

Mais la vraie question maintenant c'est : Bordel de $!#$ de gniiiiiiii, pourquoi AUCUN des guides/docs que j'ai trouvés ne cause de ça et donne une méthode erronnée (du moins sous XP) ?

H@kk@s 11-07-2005 19:27

Je ne sait pas pourquoi mais tu as réussi c'est le principale ;) vive la base de registre :D.

childerik 11-07-2005 19:47

Quote:

Originally Posted by whynot
rrraaaaaaaaaahhhhh merci infiniment childerik.
Ca marche avec cette clé.

Mais la vraie question maintenant c'est : Bordel de $!#$ de gniiiiiiii, pourquoi AUCUN des guides/docs que j'ai trouvés ne cause de ça et donne une méthode erronnée (du moins sous XP) ?

De rien : c'est le retour d'expérience ;).

Pk aucune doc y fait référence ? C'est simple : c'est moi qui ai découvert celà http://childerikk.free.fr/smilies/icon_mrgreen.gif.

A moins que qq'un d'autre l'ait découvert aussi et y fasse référence ...

Matt 11-07-2005 19:59

La réponse est simple : les installeurs ont deux façons de fonctionner.
Soit ils utilisent les variables d'environnement (rare).
Soit ils utilisent des variables internes (par exemple {pf} pour Program Files dans InnoSetup). Dans ce second cas, les variables sont généralement initialisées en lisant la clé registre dont parle Childerik.

childerik 11-07-2005 20:23

Quote:

Originally Posted by Matt
La réponse est simple : les installeurs ont deux façons de fonctionner.
Soit ils utilisent les variables d'environnement (rare).
Soit ils utilisent des variables internes (par exemple {pf} pour Program Files dans InnoSetup). Dans ce second cas, les variables sont généralement initialisées en lisant la clé registre dont parle Childerik.

Voilà :)

Sinon, j'ai vu aussi des cas (très rares aussi), où à la place d'une variable d'environnement, c'était un chemin absolu qui était imposé par l'installateur :o. (en parlant de programmes simples, pas de pilotes, de .net framework et cie etc...).

Galaal 11-07-2005 21:03

Cette astuce (comme de nombreuses autres) est présente chez Zebulon.fr


All times are GMT +2. The time now is 05:01.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.