My DebugBar
Stay tuned : rss feed

Wiki Home

DebugBar Doc





edit SideBar

DebugBar Home > WikiIETester

:: How Does It Work ::

Introduction :

IETester is embedding multiple versions of Internet Explorer rendering engine (called Trident) into one process.

Trident is an ActiveX control, thus a COM object, and can be embedded into any application.

IEtester is using this logic to embed engines, but hooks the COM functions to redirect calls to custom IE versions instead of the standard one installed on the OS.

Enabling custom engines :

IETester is downloading all the different engine versions at startup.

Then for each tab, IETester keeps the version information and redirect dll/com calls to custom versions initially loaded.

The following pictures show the difference between Internet Explorer which is embedding Trident using the standard way and IETester which is hooking Win32 functions to use custom Trident versions:

List of hooked dlls :

Here is the list of engines/features/dlls hooked by IETester when using a custom engine :

  • Trident engine (mshtml.dll / shdocvw.dll / ieframe.dll)
  • Javascript engine (jscript.dll)
  • Http functions (urlmon.dll / wininet.dll)
  • PNG transparency functions (dxtmsft.dll / dxtrans.dll / imgutil.dll / pngfilt.dll)