I have been spending a good bit of time implementing and learning about Internet Explorer 11’s Enterprise Mode. This feature is great of the enterprise because it allows administrators to tell IE exactly which version, or document mode, of IE to mimic for specific websites. Previous versions of IE had Compatibility Mode, but this feature was only granular to a domain level, meaning your internal sites were all in or all out of Compatibility Mode. Enterprise Mode improves allowing admins to configure settings for individual web sites within your internal domain or specific application on external domains.
The settings for each site are controlled by a site list. This list can be published to a client through group policy (or set manually in the registry) and the list can reside on a File Share, web server or the local filesystem. Microsoft has a free tool to edit the list called the Enterprise Mode Site List Manager. This tool lets you import or add sites to the list, validate that they are online and responding and then save a correctly formated XML file for distribution. The file format includes a version number and this is how IE keeps up with when to download an updated list to use.
I recently ran into an issue with the versioning where the site list won’t update often. If you are trying to add a site to the list for a particular user to solve a problem, there isn’t an easy way to force IE to get a newer copy of the site list when the list is hosted on HTTP. Using HTTP is part of the problem and I suspect the issue likely doesn’t occur on local or file share paths for the site list. The problem seems to be that IE caches the site list when hosted on HTTP and won’t update until the cache expires. Even if IE is relaunched, the cached copy is checked and the version number will match and so no update will occur. To solve this problem and force an update, you need to:
- Clear the IE temporary internet file cache.
- Remove the CurrentVersion value under HKCU\Software\Microsoft\Internet Explorer\Main\EnterpriseMode key
- Restart IE
To help with this, I wrote a quick PowerShell script to delete the key and call the InetCpl control panel and clear the cache, leveraging part of a PowerShell script contributed by Chan V on TechNet.
<# Force Refresh IE Enterprise Mode #> <# Clear IE Cache for User #> RunDll32.exe InetCpl.cpl, ClearMyTracksByProcess 8 <# Remove Version Registry Key #> Remove-ItemProperty -Path 'hkcu:\Software\Microsoft\Internet Explorer\Main\EnterpriseMode' -Name CurrentVersion <# Send Instructions #> Write-Host "Close and restart Internet Explorer to refresh the Enterise Mode site list."