如何获得程序文件的x86环境variables?
我想知道如何在命令提示符下显示程序文件(x86)的位置。 我正在使用Windows 7 64位。
我试过了:
echo %programfiles(x86)%
和echo %programfiles%
,
两者都只显示C:\Program Files
当我手动检查registry时,
HKLM / Software / microsoft / windows / currentversion ,
programfilesdir
指向C:\Program Files
和
HKLM / Software / WOW64 / Microsoft / winodws / currentversion ,
programfilesdir
指向C:\Program Files (x86)
。
但是,为什么我总是用C:\ Program Files文件显示?
在以64位模式运行的64位机器上:
-
echo %programfiles%
==>C:\Program Files
-
echo %programfiles(x86)%
==>C:\Program Files (x86)
在以32位(WOW64)模式运行的64位机器上:
-
echo %programfiles%
==>C:\Program Files (x86)
-
echo %programfiles(x86)%
==>C:\Program Files (x86)
另一个相关的环境variables是:
%ProgramW6432%
所以,在一个以32位(WOW64)模式运行的64位机器上:
- echo%programfiles%==> C:\ Program Files(x86)
- echo%programfiles(x86)%==> C:\ Program Files(x86)
- echo%ProgramW6432%==> C:\ Program Files
维基百科 :
%ProgramFiles%variables指向Program Files目录,该目录存储所有已安装的Windows及其他程序。 英文系统的默认值是“C:\ Program Files”。 在Windows(XP,2003,Vista)的64位版本中,还有%ProgramFiles(x86)%,默认为“C:\ Program Files(x86)”和%ProgramW6432%,默认为“C: \ Program Files“。 %ProgramFiles%本身取决于请求环境variables的进程本身是32位还是64位(这是由Windows-on-Windows 64位redirect引起的)。
参考: http : //en.wikipedia.org/wiki/Environment_variable
在Windows 64位计算机上,echo%programfiles(x86)%会打印C:\ Program Files(x86)
我尝试了在networking上发现的多种变化,而且没有任何变化。 我正在尝试解决与Subtitle Creator的注册问题。
经过一些试验和错误,这是在Windows 7 64位下为我工作的一个。
- 在Windows开始菜单中,在search框中键入CMD。
- 用鼠标右键单击该cmd.exe并select以pipe理员身份运行。
- 如果出现提示,请inputpipe理员密码。
- 现在使用这个命令:%systemroot%\ SysWoW64 \ regsvr32“C:\ Program Files(x86)\ SubtitleCreator \ SCSubtitleFilter.ax”
如果你正在修复一个不同的DLL,你需要使用引号内的DLL的完整path。