【问题标题】:Selecting a web browser installed选择安装的网络浏览器
【发布时间】:2012-11-20 08:52:22
【问题描述】:

我想做以下事情:

使用 ANSI c++ 代码

如果找到默认浏览器,我想检查安装的浏览器(最好是基于 Windows 的机器上的默认浏览器)

我将使用 wxlaunchdefaultwebbrowser - wxWidgets 2.8.12 ;否则我只想找到 Internet Explorer(Windows XP、Windows Server 2003、Windows Server 2008 上相同的默认版本)并将其与 wxlaunchDefaultwebbrowser 一起使用,我使用的是 wxWidgets 2.8.12。

当我安装 mozilla firefox 并手动将其设置为默认浏览器时,我在没有安装 mozilla 的情况下在 Win XP SP3 上对其进行了测试,他的链接打开了。之前我可能安装了 IE 6.0 并安装了 Chrome,但是它提示无法打开默认浏览器(错误 5:访问被拒绝)。

所以我正在寻找大多数自动设置(没有手动设置)

【问题讨论】:

  • 在 Windows 上,要么 A) 为 URL 设置了默认处理程序,要么 B) 没有安装 Web 浏览器。只需调用 wxLaunchDefaultBrowser,它就会做你想做的事。
  • 没有 Linux/BSD/MacOS 我不会称之为跨平台
  • 同样适用于 Linux 和 OS X,不能说适用于 BSD 发行版。

标签: c++ firefox cross-platform wxwidgets


【解决方案1】:

如果您可以使用 Windows API,请使用带有 URL 的“ShellExecute”API,它将在默认浏览器中打开它。顺便说一句,wxlaunchDefaultwebbrowser 将启动默认浏览器对吗?您还想知道默认浏览器的详细信息吗?

【讨论】:

  • 他真的要开始吗?还是只知道是哪一个?
  • 他提到他想用 wxlaunchDefaultwebbrowser 启动 ;) 我相信 API 会选择默认浏览器设置!
  • 是的 wxlaunchdefaultbrowser 确实选择它自己的,但我希望浏览器选择的自动化(最好是 IE)以防万一没有设置为默认浏览器
  • 我不确定 Windows 是否允许您没有默认的网络浏览器。如果确实如此,您不需要完整路径,因为 explorer.exe 应该会自动找到,因为它应该存在于 %PATH% 目录之一中
  • 存在环境变量 %PATH%,如果它们不包含完整路径,操作系统正在寻找可执行文件。如果您打开 cmd 并输入 iexplore.exe,即使没有完整路径,它也应该打开。
猜你喜欢
  • 2014-04-10
  • 1970-01-01
  • 2013-11-17
  • 2018-07-08
  • 1970-01-01
  • 2012-10-30
  • 1970-01-01
  • 2011-08-04
  • 1970-01-01
相关资源
最近更新 更多