从 Windows 命令行启动默认浏览器及其默认搜索引擎

从 Windows 命令行启动默认浏览器及其默认搜索引擎

是否可以从 Windows 命令行两个都

  • 启动默认 Web 浏览器
  • 让它查询该浏览器中的默认搜索引擎

该命令在这种情况下可以正常工作:

  • Firefox 是默认浏览器,Wikipedia 是默认搜索引擎
  • IE 是默认浏览器,Google 是默认搜索引擎
  • ETC...

如果不存在这样的命令,一个合理的替代方法是从注册表(或存储该信息的地方)检索该信息。

这可能吗?如何实现?

答案1

恐怕这是不可能的。使用默认浏览器启动指定的 URL 很容易,使用

start http://some/url

然而,查询默认搜索引擎并不那么容易,因为不同的浏览器往往会将其存储在截然不同的位置(如果有任何可访问的位置)。例如,Internet Explorer 将其搜索引擎存储在

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes

但 Firefox 和其他浏览器可能将其存储在不同的位置(我的意思是,所有浏览器通用的设置的单一统一位置会为用户带来方便,但开发人员会讨厌它,特别是如果那是一个由微软规定的单一统一位置)。

您可以尝试不同的代码路径,根据默认浏览器确定默认搜索引擎。但默认浏览器也只是松散地指定,可以通过查看与 HTTP 协议处理程序关联的程序来获取。

但这几乎就是猜测,因为悬崖的另一边有大量的工作要做。所以总的来说,我认为这几乎是不可能的,除非你付出比你想要的更多的努力。

预计到达时间: 一些浏览器(例如 Firefox)允许使用默认搜索引擎直接从命令行进行搜索:

firefox.exe -search keyword

或者

opera.exe ? keyword

但这仍然给您带来一个问题:找出默认浏览器并从中确定适当的参数。

答案2

我相当确定Launchy可以做到

它不完全是命令行,但是已经足够接近了。

您可以在一行中输入命令,但它不是一个 shell。

相关内容