使用协议处理程序(即:url)从Chrome打开Internet Explorer

Ras*_*ler 13 windows internet-explorer handler protocol-handler

我已按照以下步骤操作,但对我来说无法正常工作。 Chrome中的自定义协议处理程序

基本上,我没有自定义应用。我只想创建一个处理程序以使用特定的URL打开IE。

这是我的规定:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\ie]
"URL Protocol"="\"\""
@="\"URL:IE Protocol\""

[HKEY_CURRENT_USER\Software\Classes\ie\DefaultIcon]
@="\"explorer.exe,1\""

[HKEY_CURRENT_USER\Software\Classes\ie\shell]

[HKEY_CURRENT_USER\Software\Classes\ie\shell\open]

[HKEY_CURRENT_USER\Software\Classes\ie\shell\open\command]
@="\"C:\\Program Files\\Internet Explorer\\iexplore.exe\" \"%1\""
Run Code Online (Sandbox Code Playgroud)

它正在工作,但是...当我从Chrome打开ie:www.google.com时,它要求打开IE,但它在打开的URL中保留了“ ie:” ...这会产生无限循环。

我该如何解决?

谢谢

屏幕截图

Jer*_*yow 5

创建协议处理程序

将此脚本另存为internet-explorer-protocol-handler.reg

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\ie]
"URL Protocol"="\"\""
@="\"URL:IE Protocol\""

[HKEY_CURRENT_USER\Software\Classes\ie\DefaultIcon]
@="\"explorer.exe,1\""

[HKEY_CURRENT_USER\Software\Classes\ie\shell]

[HKEY_CURRENT_USER\Software\Classes\ie\shell\open]

[HKEY_CURRENT_USER\Software\Classes\ie\shell\open\command]
@="cmd /k set myvar=%1 & call set myvar=%%myvar:ie:=%% & call \"C:\\Program Files (x86)\\Internet Explorer\\iexplore.exe\" %%myvar%% & exit /B"
Run Code Online (Sandbox Code Playgroud)

然后运行脚本以将注册表项安装在注册表中。它看起来像这样:

注册表

现在,使用该ie:协议的链接将在Internet Explorer中打开。

<a href="ie:https://www.google.com/">Google</a>
Run Code Online (Sandbox Code Playgroud)

演示页


Ras*_*ler 1

经过几次测试后,我转向另一种策略。我的目标是中间批处理脚本。并且批量拆分协议和url,并打开IE。

这是批次:

echo %1%
set var=%1
set var=%var:~4,-1%
Start "" "%ProgramFiles%\Internet Explorer\iexplore.exe" %var%
Run Code Online (Sandbox Code Playgroud)