Me gustaría saber cómo puedo mostrar la ubicación de los archivos de programa (x86) en el símbolo del sistema. Estoy usando Windows 7 de 64 bits.
He intentado:
echo %programfiles(x86)%
y echo %programfiles%
,
ambos de los cuales solo muestranC:\Program Files
Cuando verifiqué manualmente el registro,
HKLM / Software / microsoft / windows / currentversion ,
los programfilesdir
puntos C:\Program Files
y
HKLM / Software / WOW64 / Microsoft / winodws / currentversion ,
los programfilesdir
puntos a C:\Program Files (x86)
.
Pero, ¿por qué siempre se me muestra con C: \ Archivos de programa?
Respuestas:
En una máquina de 64 bits que se ejecuta en modo de 64 bits:
echo %programfiles%
==>C:\Program Files
echo %programfiles(x86)%
==>C:\Program Files (x86)
En una máquina de 64 bits que se ejecuta en modo de 32 bits (WOW64):
echo %programfiles%
==>C:\Program Files (x86)
echo %programfiles(x86)%
==>C:\Program Files (x86)
En una máquina de 32 bits que se ejecuta en modo de 32 bits:
echo %programfiles%
==>C:\Program Files
echo %programfiles(x86)%
==>%programfiles(x86)%
fuente
Otra variable de entorno relevante es:
% ProgramaW6432%
Entonces, en una máquina de 64 bits que se ejecuta en modo de 32 bits (WOW64):
De Wikipedia :
Referencia: http://en.wikipedia.org/wiki/Environment_variable
fuente
En una máquina con Windows de 64 bits, echo% programfiles (x86)% imprime C: \ Program Files (x86)
fuente
En mi humilde opinión, un punto que falta en esta discusión es que cualquier variable que use, está garantizado que siempre apuntará a la carpeta apropiada. Esto se vuelve crítico en los raros casos en los que Windows está instalado en una unidad que no sea C: \
fuente