Javascript 从Internet Explorer启动Chrome浏览器

Javascript 从Internet Explorer启动Chrome浏览器,javascript,google-chrome,internet-explorer,hyperlink,Javascript,Google Chrome,Internet Explorer,Hyperlink,我们有一个web应用程序,它有一些功能只在Chrome中工作,我想使用Google Chrome浏览器启动这个web应用程序,通过超链接从Internet explorer将web应用程序的url作为参数。我试过了 file:///C:/Program%20Files%20(x86)/Google/Chrome/application/Chrome.exe 但它下载文件+如何向exe添加参数 您必须将参数传递给chrome,类似这样 start chrome https://www.google

我们有一个web应用程序,它有一些功能只在Chrome中工作,我想使用Google Chrome浏览器启动这个web应用程序,通过超链接从Internet explorer将web应用程序的url作为参数。我试过了

file:///C:/Program%20Files%20(x86)/Google/Chrome/application/Chrome.exe


但它下载文件+如何向exe添加参数

您必须将参数传递给chrome,类似这样

start chrome https://www.google.com/

默认情况下,浏览器无法启动其他程序(插件和扩展可能是例外)。如果可以的话,想象一下恶意用户可能造成的破坏

我不认为会有一个很好的答案,但你可以制作一个.bat文件,将chrome打开到一个特定的URL(假设你使用的是Windows),下载该文件并在下载后单击它

在这种情况下,这是一个有用的答案

您还可以(理论上)对IE进行扩展或降低安全设置,以允许ActiveX控件。部分解决方案。不久前我试着做一些类似的事情,但运气不太好,但如果你下定决心


也许有更好的方法不涉及如此复杂的解决方案?

您可以使用URI方案,Google默认安装一个,由Adam Fowler共享,如下所示:

因此,您可以创建如下链接(请注意URL前的空格):

ChromeHTML://www.bbc.co.uk

但是它坏了!谷歌有一个bug报告,见亚当的文章。如果你想修复这个bug,最好给它添加一些权重/注释

但是,您的下一个决定取决于您是否能够控制web应用程序的部署,因为可以使用注册表修复来修复这些错误


有趣的是,如果您可以部署注册表修复程序,理论上您可以创建自己的URI方案。

我发现自己需要自己实现这一点。后来的Chrome版本似乎破坏了Adam Fowlers博客中描述的修复

我与他取得了联系,他现在更新了自己的帖子,提供了使这项工作正常进行所需的注册表更改

我自己也试过,效果很好

Adam Fowlers博客帖子-如何在Google Chrome中启动URL


非常感谢亚当抽出时间!希望这有帮助。

如果您可以修改所需PC上的IE权限,您可以使用javascript链接启动流程。Mine启动一个自定义程序,启动带有命令行开关和URL的chrome,或打开一个网页,表明他们需要联系它在电脑上安装chrome:

javascript:(new ActiveXObject('Shell.Application')).ShellExecute('\\\\server\\path\\LaunchInChrome.exe', '-incognito --use-system-default-printer https://outlook.office365.com/owa/?realm=xxx http://webserver/MissingChrome.html');

但您可以修改它,直接启动
chrome.exe
。您需要在Intranet区域中启用未标记为安全脚本的ActiveX控件的初始化和脚本编写(我不建议在任何其他区域使用此选项)。

这是一个.reg文件,它创建(在64位Windows上)一个特殊的URL协议,允许您在chrome:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\chrome]
@="Chrome URL Prorocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\chrome\Application]
"ApplicationIcon"="C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe,0"
"ApplicationName"="Google Chrome"
"ApplicationDescription"="Access the Internet"
"ApplicationCompany"="Google LLC"

[HKEY_CLASSES_ROOT\chrome\DefaultIcon]
@="C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe,0"

[HKEY_CLASSES_ROOT\chrome\shell]

[HKEY_CLASSES_ROOT\chrome\shell\open]

[HKEY_CLASSES_ROOT\chrome\shell\open\command]
@="cmd /v:on /c \"set url=%1 & set url=!url:chrome:=! & \"\"\"C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe\"\"\" -- !url!\""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ProtocolExecute\chrome]
"WarnOnOpen"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ProtocolExecute\chrome]
"WarnOnOpen"=dword:00000000

链接应该像chrome:或chrome:google.com。“chrome:”启动chrome之前,部件被删除。

CMD说,
'chrome.exe'不被识别为内部或外部命令…
。你有什么解决办法吗?这个很有效,谢谢。所以我建议你也更新你的答案。