windows当我在 Windows 运行对话框(即按+时出现的对话框R)中输入“firefox”时,firefox 将启动。
但是,“firefox.exe”不在我的,%path%
因为当我在中输入“firefox”时cmd.exe
,我得到
‘firefox’ 不是内部或外部命令,也不是可运行程序或批处理文件。
因此,显然可执行文件不需要在 Windows 中被发现%path%
,即可被运行对话框发现。这是如何工作的?
答案1
显然,运行对话框不仅检查 %path% 环境变量,还检查“应用程序路径”注册表项。 从有关运行对话框的 TechRepublic 文章:
您可以通过在“打开”文本框中键入可执行文件的名称并单击“确定”来启动某些第三方应用程序,即使这些应用程序的路径未出现在路径环境变量中。之所以可以这样做,是因为某些应用程序的安装过程会将可执行文件的路径添加到名为“App Paths”的特殊注册表项中。
注册表中的相关位置是HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
和HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Paths
(最后一个特定于用户)。您可以使用 regedit 在其中添加自己的“应用程序路径”。
答案2
新版 Windows 上的“运行”对话框也会运行开始菜单中的快捷方式。我不确定这是从什么时候开始起作用的……它可能可以追溯到 Windows 95,但我不这么认为。
编辑:这个答案是错误的。正确答案是 App Paths 注册表项,如上所述。