Chrome使用自定义协议打开本地程序并运行IE打开网页

标签:
itjava |
分类: JAVA |
公司的系统基于Chrome开发,最近用户提出一个需求,在Chrome上点击一个链接跳转到一套基于IE开发的系统上。
功能并非不可能实现,但是靠纯Java是不可能实现,所以我们需要用到外部协议,即自定义协议,通过协议打开本地程序。
如下图:
1,复制以下代码到记事本,后缀名改为 *.reg(注册表文件)。
Windows
Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\openIE]
@="URL:OpenIE Protocol"
"URL
Protocol"=""
[HKEY_CLASSES_ROOT\openIE\DefaultIcon]
@="iexplore.exe,1"
[HKEY_CLASSES_ROOT\openIE\shell]
[HKEY_CLASSES_ROOT\openIE\shell\open]
[HKEY_CLASSES_ROOT\openIE\shell\open\command]
@="cmd /c
set m=%1 & call set m=%%m:openIE:=%% & call \"C:\\Program
Files\\Internet Explorer\\iexplore.exe\" %%m%% &
exit"
注:最后一行其实是打开本地程序的路径,根据每台机器的不同可能要修改IE的安装路径。
把记事本后缀改为*.reg后,双击运行。
页面上调用:
《a href =
“openIE:www.baidu.com”》点我使用外部协议运行IE打开百度《/a》
以上即可解决客户提出的需求,不足之处则是在打开IE的时候会弹出一个CMD的小黑框。
解决办法: 链接:http://pan.baidu.com/s/1sllgzxV
密码:ugpk
注:如果使用上述云盘链接提供的方案,则a标签需要修改为:
《a href =
“alert:www.baidu.com”》点我使用外部协议运行IE打开百度并解决CMD小黑框《/a》
即可。