IE 11, being so standard compliant, has broken a lot of web sites, so Microsoft created a compatibility list to render those sites (by domain) in IE 10 mode, or lower. I found the URL of the compatibility list in my registry at:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\
BrowserEmulation\CVListPreviousDownloadUrl
but I don't see any need to manually process this file since the browser control has functionality in it already to do so.
It works fine in IE, however, we use the hosted webbrowser control, and it apparently does not use the list by default. Based on previous experience, I suspect a FeatureControl
reg key is turning the compatibility list on for the browser control. When I rename our application to iexplore.exe, it works. However, I see no documentation that does this.
Out of desperation, I whipped up a program that turns on all features that, according to the docs, are on by default for IE. It also matches entries of IE in the registry. Obviously, it didn't work.
THE QUESTION:
Does anyone know of a way to make the browser control use compatibility lists without renaming the app to iexplore.exe? As proven, the functionality is built in; we just need a way to turn it on. I am aware of FEATURE_BROWSER_EMULATION
, and I have it set, but this serves a completely different purpose.
EDIT 1
I found this social msdn post from March 2011 stating that:
The Compatibility View list is an XML file maintained by Microsoft. As far as I know, there is no such API which helps access the Compatibility View list.
I'm curious if there is any update to this.