为什么在Windows命令提示符中“start firefox”命令有效?

4
我很好奇在Windows cmd中为什么"start iexplore"和"start firefox"这样的命令能够工作。 它们不是独立的命令。如果你只输入"firefox",你会收到以下错误提示信息: "'firefox'不是内部或外部命令,也不是可运行的程序或批处理文件。"
这表明这是"start"命令的特殊行为。 我的第一个猜测是它与%path%变量的使用方式类似,具有已知目录进行搜索的功能。 通过尝试运行位于firefox同一目录下的另一个可执行文件,我轻松地排除了这种可能性。
我的结论是,在我的计算机上有一个指定的文件路径列表,可以通过在"start"命令后简单地键入它们的文件名来启动它们,而不是整个路径。 想象一下能够将东西添加到这个列表的潜力... 有人知道我在哪里可以找到它吗?
1个回答

6

这是在注册表中

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\

在此键下定义了可以在无需更改路径环境变量的情况下调用的应用程序。
通常调用(在命令行中输入名称)不会在此列表中搜索,但对start命令、Windows Run对话框或调用使用ShellExecuteShellExecuteEx API调用的任何内容的调用,将检查在此列表中定义的应用程序。

寻找应用程序可执行文件 - gavenkoa

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接