如果我在运行窗口中输入 iexplore,它会运行 Internet Explorer。我推测这意味着 C:\Program Files\Internet Explorer 在我的路径环境变量中,但事实并非如此。我检查了我的用户变量和系统变量。那么 Windows 如何知道在哪里查找这类东西?
我想我应该提一下我目前正在使用 Windows 8.1。
答案1
计算机已使用应用程序注册使用此程序。要查看此类可执行文件的列表,请查看 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
例如:
reg QUERY "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths"
这显示了可执行文件。要显示更多信息,请使用:
reg QUERY "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths" /s
实际上,这只是检查可执行文件的位置之一。MSDN 应用程序注册页面有一个名为“查找应用程序可执行文件”的部分,其中提到了这一点以及“ShellExecuteEx”函数可以使用的一些其他位置。该函数由一些编程代码使用,包括运行对话框,但可能不是传统命令提示符使用的函数,因此您可能会对特定命令获得不同的结果(取决于您尝试从哪里运行命令)。
答案2
您无法像其他程序一样从命令行或 PowerShell 运行 Internet Explorer,因为它的可执行文件不在 下C:\Windows\System32
。变量%SystemRoot%
引用路径C:\Windows\System32
,并且是 Run 和 Powershell 等程序默认从中执行程序的位置,因为它们的路径从那里开始,除非另有说明。Internet Explorer 的可执行文件位于:
C:\Program Files\Internet Explorer\iexplore.exe
对于 64 位
和
C:\Program Files (x86)\Internet Explorer\iexplore.exe
对于 32 位
您可以使用上述路径执行 Internet Explorer,或者输入这些在批处理文件中:
%SystemRoot%\explorer.exe "C:\Program Files\Internet Explorer\iexplore.exe"
和:
%SystemRoot%\explorer.exe "C:\Program Files(x86)\Internet Explorer\iexplore.exe"
希望这可以帮助。