不在我的路径中的程序如何运行?

Mat*_*hew 57 windows firefox path command-line

可能的重复:
为什么我能够执行不在我的 PATH 环境变量中的程序?

我正在教一位同事有关 %PATH% 的知识,发现如果我运行“Firefox”,它可以工作,但很惊讶地发现它不在我的路径中。

我错过了什么?

JC2*_*2k8 101

如果您尝试仅通过指定名称来运行可执行文件,Windows 将在以下位置查找该文件:

  1. 当前工作目录。
  2. Windows目录只(不子目录中搜索)。
  3. Windows\System32目录。
  4. PATH 环境变量中列出的目录。
  5. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths(也HKEY_CURRENT_USER从 Windows 7 开始)

微软实际上建议在App Paths子项中“注册”应用程序,以避免应用程序需要修改系统PATH环境变量。应用程序的安装程序将注册可执行文件。

  • @马修不客气。请记住,“应用程序路径”子项也存在于 HKCU 配置单元中,用于仅为 **一个用户** 安装的应用程序。 (8认同)
  • 我见过的问题的最佳答案之一。+1 (3认同)
  • 这仅适用于 Windows 运行对话框,在 cmd.exe 和 powershell 中仅使用 1. 到 4.,另请参阅 boot13 的注释。 (2认同)