F**ked by Edge (Chromium) Stable

Edge (Chromium) hurts Edge LegacyEdge (Chromium) hurts Edge LegacyEdge (Chromium) hurts Edge LegacyEdge (Chromium) hurts Edge LegacyEdge (Chromium) hurts Edge Legacy
Edge (Chromium) hurts Edge Legacy

Since Edge (Chromium) has its first stable release available, I decided to give it a try, and I am particularly interested in how it behaves under High Contrast mode and what its Live Tiles look like. Aside from being unsatisfied by the current implementation of the two, I got into much larger trouble by installing the stable version of Edge (Chromium), especially via MSI!

When you install Edge (Chromium) Stable, these bad things happen:

  • Website tiles pinned using Edge Legacy are migrated to a shortcut to msedge_proxy.exe and lose Live Tile capability.
  • The migrated tiles will have an entry in Uninstall registry key (i.e., they appear in Uninstall or change a program control panel item). However, the registered uninstaller for them seems to do absolutely nothing, leaving them hanging around.*
  • If you pinned Edge Legacy, it becomes Edge (Chromium). This applies to both Start and Taskbar.
    • However, the migrated Taskbar pinning will have a wrong AppUserModelID. Clicking on the button will launch Edge (Chromium), but the launched program shows up as another Taskbar button.
  • If the group policy allows side-by-side Edge experience, a shortcut called Microsoft Edge Legacy.lnk is created under shell:Common Programs. This shortcut makes Edge Legacy work badly with Taskbar (but is still quite necessary for lay-users).
    • The icon of Edge Legacy on Taskbar is blank if it is not pinned.
    • When pinned, the Taskbar icon is not transparent not High Contrast aware (as opposed to having the Edge Legacy tile appearance).
    • Jump List items are not shown if Edge Legacy is not pinned.
    • Jump List item icons are blank when it is pinned.

* This can be solved (without using regedit.exe) by first uninstalling Edge (Chromium) Stable, then trying to ‘uninstall’ each of these websites. Since the uninstaller for them has been removed (uninstalled), Windows gives you a chance to directly remove these entries.
This can be solved by unpinning this button and repinning Edge (Chromium).

Even worse, when you install Edge (Chromium) Stable using MSI, you get a bonus faulty Microsoft Edge Legacy.lnk shortcut:

Opening this shortcut causes an infinite recursion trying to open itself, crashing whatever process that is ShellExecuting the shortcut. The shortcut apparently points to an explicit shortcut associated with Microsoft.MicrosoftEdge_8wekyb3d8bbwe!MicrosoftEdge inside the Programs folder of Start menu, which is itself after MSI installation.

How do I infer this? If I move this faulty shortcut out, opening it will just do nothing. If I further move a normal one in, opening the faulty one will launch Edge Legacy normally. These suggest that the faulty shortcut will launch a shortcut in Programs folder, and that the one being launched must be explicit (all Store apps have implicit shortcuts in Programs).

A correct shortcut should directly point to Microsoft.MicrosoftEdge_8wekyb3d8bbwe!MicrosoftEdge. This can be made by opening shell:AppsFolder and creating a shortcut for ‘Microsoft Edge’ (icon with white foreground and transparent background).

Finally, when you uninstall Edge (Chromium) Stable, these bad things happen:

  • The migrated pinned tiles are not converted back to Edge Lgeacy ones. I supposed this is API-impossible to do, but at least Microsoft could have converted them to Internet shortcuts. Since msedge_proxy.exe is gone, those pinned websites will not open. The worst thing is that the shortcut command line gives no clue to what URL it is supposed to open (it uses an identifier instead).
  • Microsoft Edge Legacy.lnk is not removed. The bad effect on Taskbar persists until you manually remove this shortcut.

Wasted time

In fact, I wasted way more time before I reached the observation of the faulty shortcut.

Once I find Edge Legacy not launching normally, I tried uninstalling Edge (Chromium), which didn’t help. Next, I tried monitoring the processes to see whether there are some registry leftovers, getting no luck. Then, I suspected Edge binaries were updated to a version aware of Edge (Chromium), so I downloaded a Windows 10 version 1909 ISO image and mounted to see the version of Edge of a clean 1909 install — I acted as TrustedInstaller and manually rewired (created hard links) Edge-related apps under %windir%\SystemApps\… with %windir%\WinSxS.

None of them solved the problem, so I did an in-place upgrade from 1909 to 1909, which normally fixes all system file issues. No luck either. During the course, I figured out that the whole system is affected (Edge not working normally), as the bad effects exist in all user accounts, even newly created ones. One thing that is interesting is that newly created accounts will get an Edge Legacy shortcut (with ‘Legacy’ in its name, and one that does not work) on their Desktop. Before installing and uninstalling Edge (Chromium), new users get a shortcut without ‘Legacy’ in its name.

I was raging. I used Process Monitor to observe more. Then I decided that I could terminate Explorer, use procmon to monitor all API calls related to Edge, create and sign in to a new user account. I did this and switched back to my own account, paused the monitor and observed what caused the shortcut to have the word ‘Legacy’. Finally, a shortcut sitting in shell:Common Programs drew my attention. It was then that I discovered this naughty shortcut.

Some advice

To Microsoft: Your MSI installer is supposed to be used in enterprise environments and enterprise customers are among the most likely one to need side-by-side Edge experience (for compatibility). Yet the very MSI installer completely messes up Edge SxS. Good software quality!

To lay-users: Prepare to get random crashes if you install Edge (Chromium) Stable using MSI, in addition to all the cosmetic problems of Edge Legacy caused solely by installing Edge (Chromium). I would say it is even safer to use non-stable Edge.

Bonus Resources. Here are the shortcuts generated in different ways:

Please enable JavaScript to view the comments powered by Disqus.