Quelle est la différence entre %Windir% et %Systemroot% dans l'emplacement du chemin Windows ?
Tous les deux montrent l'emplacement du dossier "Windows".
Réponses
Trop de publicités?Pour compléter la réponse de M. Dave, %SystemRoot%
est une variable intégrée (ainsi qu'une petite poignée d'autres comme %SystemDrive%
). Autrement dit, il n'est pas réellement défini dans le magasin de variables d'environnement à HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
dans le registre.
En revanche, %windir%
est une variable classique et est défini dans le magasin de variables comme %SystemRoot%
. (Il n'y a pas de contrepartie de "variable réelle" à %SystemDrive%
.)
Il n'y a pas vraiment d'importance dans le choix de l'un ou l'autre, mais vous pouvez rencontrer des problèmes d'expansion de variables dans les fichiers batch, auquel cas vous pourriez essayer l'autre. (Je ne me souviens pas d'avoir eu spécifiquement des problèmes à ce sujet, mais il est bon de le garder à l'esprit.)
De plus, %SystemRoot%
(et %SystemDrive%
) sont définies lors du processus d'installation (lorsque vous choisissez le lecteur de destination) et sont donc disponibles dès le début de l'installation de Windows alors que %windir%
est défini à un stade ultérieur pendant l'installation, donc si vous créez une sorte d'installation personnalisée (par exemple OEM, PE, etc.), vous voudrez utiliser %SystemRoot%
.
Sous Win 7 %SystemRoot%
est une variable système en lecture seule tandis que %windir%
peut être modifié et est par défaut défini comme windir=%SystemRoot%
. Le système d'exploitation repose sur %SystemRoot%
. Selon Wikipedia, %WinDir%
précède Windows NT et semble avoir été remplacé par %SystemRoot%
.
Fait amusant - (sur Windows 10 1809) %windir% est toujours tellement essentiel que vous ne pouvez pas exécuter quoi que ce soit en mode élevé sans lui... ce qui signifie QUE VOUS NE POUVEZ PAS RÉELLEMENT LE REMPLACER car l'accès à l'environnement de variable du registre semble nécessiter une élévation :( ... heureusement, le mode sans échec m'a permis de restaurer cette variable et de continuer à avancer