Open Internet Explorer from Chrome using a protocol handler (ie:url) Open Internet Explorer from Chrome using a protocol handler (ie:url) windows windows

Open Internet Explorer from Chrome using a protocol handler (ie:url)


Create a Protocol Handler

save this script as 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"

Then run the script to install the keys in your registry. It will look like this:

registry

Now links that use the ie: protocol will open in Internet Explorer.

<a href="ie:https://www.google.com/">Google</a>

Demo Page


After few tests, I move to another strategy.I'm targetin an intermediate batch script instead.And the batch split the protocol and the url, and open IE.

Here is the batch:

echo %1%set var=%1set var=%var:~4,-1%Start "" "%ProgramFiles%\Internet Explorer\iexplore.exe" %var%


Here is a solution that should solve the problem with extended url's that contain parameters and special characters (&, % etc.)

Like this:https://www.google.com/search?q=open-internet-explorer-from-chrome-using-a-protocol-handler&oq=open-internet-explorer-from-chrome-using-a-protocol-handler&aqs=chrome..69i57j69i60l3.1754j0j4&sourceid=chrome&ie=UTF-8

Replace the command in reg file with this:

powershell -windowstyle hidden -command "& {$Url = '%1' ;  $Url = $Url -replace 'ie:',''; $IE=new-object -com internetexplorer.application ; $IE.navigate2($Url) ; $IE.visible=$true }"