Hi, I’m David, a Senior Architect here at Browsium. As you may have noticed in the UniBrows 1.2 release, we now include two different versions of the IE6 engine; the standard IE6 engine you’re used to seeing and a new IE6 Legacy engine. While both engines render pages as IE6, there are some subtle but important differences between the two that will determine which engine is most appropriate to use with your web app.
The standard UniBrows IE6 engine offers the most support for upgrading to the latest released version of Internet Explorer while keeping your IE6-dependent applications running. Whether you’re running the standard UniBrows IE6 engine inside IE8 or IE9, you can be confident that the page is rendering the same in both browsers. The UniBrows IE6 Legacy engine, on the other hand, can only run on a PC with IE8 installed.
You might wonder why you’d ever want to use the IE6 Legacy engine with this kind of restriction; and if your web applications are running just fine with the standard UniBrows IE6 engine, there really isn’t a reason to move to the IE6 Legacy engine. However, if you have any ActiveX controls that are throwing errors even when running inside the standard IE6 engine, the IE6 Legacy engine offers much better support for older plugins that can’t run in browsers after IE6 without crashing.
While we’d rather not force this kind of decision on customers, there are some technical limitations keeping us from providing the improved plugin support of the UniBrows IE6 Legacy engine on a PC running IE9 at this time. The changes between IE6 and IE9 are significant enough that several IE6 files are no longer directly compatible with certain system files that are upgraded as part of the IE9 install. However, by introducing a few files from IE8, we can mitigate these incompatibilities. IE6 is able to communicate with the IE8 libraries and the IE8 libraries work correctly with the new system files. We get the benefits of the IE6 rendering engine, but at the cost of reduced support for older ActiveX controls. These same IE8 files that allow us to run on a machine with IE9 cause errors when older ActiveX plugins try to access the features they expect to be present in an IE6 install.
The following table sums up the usage and tradeoffs of the two UniBrows IE6 engine versions:
|Engine||Use it when…||Limitations…|
|IE6||You need basic IE6 compatibility||May not support all ActiveX controls|
|IE6 Legacy||You need IE6 compatibility with some older ActiveX controls (like those found in Siebel)||Does not run in IE9|
If you need to use the IE6 Legacy engine for the improved ActiveX control support, we recommend keeping your Internet Explorer deployment strategy consistent and exclusively running IE8 until your legacy dependencies are resolved. We are actively looking into ways to offer the improved plugin support of the IE6 Legacy engine on PCs running IE9; we know you don’t want any one piece of software dictating your upgrade path. We stand behind our goal of putting the browser you need inside the browser you want.
Improved legacy application support is just one of the many new features in the 1.2 release of UniBrows. Keep an eye on our blog for details on more features and usage scenarios.