2

在我的公司,我们必须在 IE 中测试我们的应用程序,但我更喜欢使用 Chrome 作为我的默认浏览器。我制作了以下简单的批处理脚本,试图在 IE 中启动与我的公司相关的链接,或者在 Chrome 中启动它。该脚本如下所示,并且似乎在命令行中运行良好。

set url=%1
echo %url%|findstr /i companyname >nul:
if %errorlevel%==1  goto :co_not_found
:co_found
    "C:\Program Files\Internet Explorer\iexplore.exe" %url%
    goto :gensuite_end
:co_not_found
    "C:\Program Files\Google\Chrome\Application\chrome.exe" %url%
:co_end

现在,我几天来一直在尝试将这个小玩意设置为我计算机的默认浏览器。这是我编辑的一些注册表项的列表。出于某种原因,Windows 仍然使用 IE 作为默认浏览器。

HKEY_CURRENT_USER\Software\Clients\StartmenuInternet  (Default) = DEFAULTBROWSER
HKEY_CURRENT_USER\Software\Classes\http  (Default) = C:\browserFix.exe
HKEY_CURRENT_USER\Software\Classes\http\shell\open\command  (Default) = C:\browserFix.exe
HKEY_CURRENT_USER\Software\Classes\https  (Default) = C:\browserFix.exe
HKEY_CURRENT_USER\Software\Classes\https\shell\open\command  (Default) = C:\browserFix.exe
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\http\shell\open\command  (Default) = C:\browserFix.exe
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\https\shell\open\command  (Default) = C:\browserFix.exe
HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet (Default) = DEFAULTBROWSER
HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\DEFAULTBROWSER  (Default) = Default Browser, LocalizedString = C:\browserFix.exe
HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\DEFAULTBROWSER\shell\open\command  (Default) = C:\browserFix.exe

如果我转到控制面板 > 程序 > 默认程序 > 关联文件类型或协议,然后双击 HTTP 或 HTTPS,我只会看到 Google Chrome 和 IE 的选项。没有浏览选项。最后,我希望能够以编程方式执行此操作。但是为了看看我是否可以让它显示出来,我将这些条目基于 Google Chrome 的条目。

HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\DEFAULTBROWSER\Capabilities\StartMenu  StartMenuInternet = Default Browser Fixer
HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\DEFAULTBROWSER\Capabilities\URLAssociations  http and https = C:\browserFix.exe

看起来 Windows 甚至还没有将程序视为浏览器,更不用说默认浏览器了。谁能指出我正确的方向?请记住,我希望将来能够使用安装程序批处理脚本来执行此操作。

提前致谢!
杰克

4

1 回答 1

0

程序必须有注册表项,表明它可以处理特定类型的文件。有关一般所需注册表项的详细信息,请参阅http://msdn.microsoft.com/en-us/library/windows/desktop/ee872121(v=vs.85).aspx及其链接,以及http://msdn .microsoft.com/en-us/library/aa767914(v=vs.85).aspx了解如何注册 URI 协议处理程序。

于 2012-05-11T19:47:44.293 回答