Launch Internet Explorer from a link in Chrome
Asked Answered
G

8

14

I want to have a link in Chrome, e.g.,

Open Link

that when you click on it in the Chrome browser that it launches the link in an Internet Explorer (IE) window.

How can I do this? I believe it is possible and may involve adding some settings in the registry.

PS: I can't use any browser extension, e.g., IETab or any of this. It has to launch the Internet Explorer on the machine.

Guv answered 26/2, 2015 at 13:47 Comment(8)
possible duplicate of Open IE browser in Firefox/Chrome pageMancuso
I already looked at that link but no one gives example of a batch file and the registry settings answer doesn't explain in a good way how to add these. Looking for a concrete example if anyone hasGuv
Found this, looks useful: msdn.microsoft.com/en-us/library/ie/aa767914%28v=vs.85%29.aspxMancuso
Thanks, I had also found this and tried to follow it but I can't understand it fully. I wish there was a step by step guide on how to add the keys to the registry and then what to reference in a html page.Guv
Got that guide working Bulk but it passes the %1 as alert so link it tries to launch is alert:google.ie . looking into how to change that bit nowGuv
You can create a protocol handlerCalabash
without creating handler is it possible to launch IE from chrome?Sherl
@PraveenGopal above is the only way I could find but maybe someone else may knowGuv
G
11

OK, so I did the following which works:

HKEY_CLASSES_ROOT
   alert
      (Default) = "URL:Alert Protocol"
      URL Protocol = ""
      DefaultIcon
         (Default) = "iexplore.exe,1"
      shell
         open
            command
               (Default) = cmd /k set myvar=%1 & call set myvar=%%myvar:alert:=%% & call "C:\Program Files (x86)\Internet Explorer\iexplore.exe" %%myvar%% & exit /B

Then have your link:

<a href="alert:www.google.ie">link</a>
Guv answered 26/2, 2015 at 16:16 Comment(14)
can you please provide us the details information how are you using this script to open a link in IE from chrome browser.Gretchen
@Gretchen you want to know why I want to do this? It is for an application that is running in Chrome but links to another application that only runs in IEGuv
i want to know how you have implemented this is in web application and details steps for creating HKEY handler in windowsGretchen
@Guv This solution working fine on windows 7, but not on windows 10. Can suggest an alternative for windows 10 ?Backman
@MadhurSodhi is the path to your IE still C:\Program Files (x86)\Internet Explorer\iexplore.exe ?Guv
@Guv I am using this path "%ProgramFiles%\Internet Explorer\iexplore.exe" and it's the correct path to IE. The real issue is when the link is clicked a windows popup comes up that states "you will need new app to open this alert"Backman
@MadhurSodhi sounds strange. it may be the case that windows 10 chrome combination has blocked this. I'm not too sure of a workaround at the moment. can you try the original code with IE 32bit as in exampleGuv
@Guv This works for me, But It always shows alert to open IE can't we remove that alert? Any help?Muscarine
@Guv Hi, I have removed alert: part but still no hope. can you please suggest exactly from where to remove. Thanks!Muscarine
@Muscarine emove & call set myvar=%%myvar:alert:=%%Guv
CANNOT HANDLE SPECIAL CHARACTERS example.com?a=1&b=2 will be stripped to example.com?a=1Finance
I got this working with chrome, but it doesn't work on ms edge. Is there something else to be done if I have to get this working on MS edge?Coheman
Do you mean create a .reg file and let user register url scheme for opening by other application by themselves?Heist
@Ternence.Lin yes save the script as a .regGuv
C
6

All previous answers mention HKEY_CLASSES_ROOT, but how do we use it? Where can we use it? It is not mentioned.

But now I have the solution. Please follow the below steps.

  1. Open a new Notepad document and paste the below code in Notepad
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\iehttp]
@="URL:Open with IE Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\iehttp\shell]
[HKEY_CLASSES_ROOT\iehttp\shell\open]
[HKEY_CLASSES_ROOT\iehttp\shell\open\command]
@="cmd /V /C \"set URL=%1&& set URL=!URL:iehttp=http!&&cmd /c \"\"C:\\Program Files (x86)\\Internet Explorer\\iexplore.exe\"\" !URL!\""
  1. Ctrl + S
  2. Give a name like: iphttp.reg + save on the desktop
  3. After that, double-click on iphttp.reg file from the desktop, and for the first popup, click on Yes

Done from the Registry side, there isn't any need to refresh or restart the computer. It will give two links for testing:

 <a href="http://www.google.com" target="_blank">Open Same Browser</a>
 <a href="iehttp://www.google.com">Open With IE</a>

That's it. It is working fine now.

Limitation: from jQuery, JavaScript it's not working as per my understanding.

Cacodyl answered 27/5, 2020 at 8:50 Comment(2)
In case if you face &amp; challenge then use this one @="cmd /V /C set "URL=%1" & set URL=!URL:iehttp:=! & "!ProgramFiles(x86)!\Internet Explorer\iexplore.exe" !URL!" don't use this one @="cmd /V /C \"set URL=%1&& set URL=!URL:iehttp=http!&&cmd /c \"\"C:\\Program Files (x86)\\Internet Explorer\\iexplore.exe\"\" !URL!\""Cacodyl
The only answer that explains the solution - thanks!Prologue
S
3

Building on the responses from topcat3 and danieln, I tweaked the solution to get rid of the annoying lingering DOS window. Here's what works nicely for me:

HKEY_CLASSES_ROOT
    alert
    (Default) = "URL:Alert Protocol"
    URL Protocol = ""
    DefaultIcon
        (Default) = "iexplore.exe,1"
    shell
        open
            command
                (Default) = cmd /v /k set "myvar=%1" & set myvar=!myvar:alert:=! & start "" /B "!ProgramFiles!\Internet Explorer\iexplore.exe" !myvar! & exit
Sahib answered 30/5, 2018 at 19:30 Comment(2)
Re "get rid of the annoying lingering DOS window": What is the gist of it? How does it work? What is the principle of operation? Please respond by editing (changing) your answer, not here in comments (but *** *** *** *** *** without *** *** *** *** *** "Edit:", "Update:", or similar - the answer should appear as if it was written today).Parry
OK, the OP has left the building: "Last seen more than 5 years ago". Perhaps somebody else can chime in?Parry
B
3

Starting with Chrome 74, legacy browser support (LBS) is built into Google Chrome. The behavior meets the needs you describe, i.e., (pun intended) certain URLs are opened in a new Internet Exploder window, and not in a tab in Chrome.

From Google's official site on LBS:

As an administrator, you can automatically switch users between Chrome Browser and another browser. Deploy Legacy Browser Support (LBS) and use policies to specify which URLs open in an alternative browser. For example, you can ensure that browser visits to the internet use Chrome Browser, but visits to your organization’s intranet use Internet Explorer®.

For older versions of Chrome (≤73), a separate install is needed, namely the "legacy browser support extension". The P.S. to the question explicitly excludes browser extensions, but the reason seemed to be that clicking on the link should open a separate Internet Explorer window.

Basrelief answered 23/9, 2019 at 6:30 Comment(1)
Good solution if you have access to modifying your organisations browser settingsGuv
G
2

Great solution topcat3!

To fix it for Internet Explorer 11, the link must contain https:// or http://:

<a href="alert:https://www.google.com">open Google Chrome in Internet Explorer</a>

And I tweaked the registry command with the ProgramFiles variable:

cmd /k set myvar=%1 & call set myvar=%%myvar:alert:=%% & call "%%ProgramFiles%%\Internet Explorer\iexplore.exe" %%myvar%% & exit /B
Gainey answered 17/3, 2017 at 13:13 Comment(0)
D
1

Simplified solution from topcat3 and made it work on Windows 10.

HKEY_CLASSES_ROOT
    alert
    (Default) = "URL:Alert Protocol"
    URL Protocol = ""
    DefaultIcon
        (Default) = "iexplore.exe,1"
    shell
        open
            command
                (Default) = cmd /V /C set "arg1=%1" & set arg1=!arg1:alert:=! & "!ProgramFiles(x86)!\Internet Explorer\iexplore.exe" !arg1!
Diestock answered 1/8, 2019 at 14:47 Comment(1)
I didn't try it out but happy you got it working :)Guv
H
0

You can use IE Tab for Chrome. It invokes an Internet Explorer frame inside your Chrome browser. It worked well for me.

Hockey answered 18/10, 2017 at 10:15 Comment(2)
While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes.Pitchman
While this may help for similar scenarios, topcat3 explicitly disqualified this solution in the post scriptum (p.s.) to the question.Basrelief
A
0

You can use the following code tweaked for ftp links for IE.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\iehttp]
@="URL:Open with IE Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\iehttp\shell]
[HKEY_CLASSES_ROOT\iehttp\shell\open]
[HKEY_CLASSES_ROOT\iehttp\shell\open\command]
@="cmd /V /C \"set URL=%1&& set URL=!URL:iehttp=ftp!&&cmd /c \"\"C:\\Program     Files (x86)\\Internet Explorer\\iexplore.exe\"\" !URL!\""
Alcaraz answered 9/5, 2022 at 8:46 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.