3. IE 4-8 Architecture
• HTML Parse and Render …
MsHtml
• Browser UX … BrowseUI /
ShDocVw -> IEFrame (IE7+)
• Networking Stack … WinInet and
UrlMon
• Scripting … Active Scripting Host
4. APIs by IE
• Web Browser controls using COM APIs
• Browser Helper Object (BHO) APIs for browser extension (ex. Toolbar
etc)
• Pluggable Protocol Moniker
• ActiveScripting
5. Active Scripting
• COM interfaces to bind scripting engine
• For Engine API
• For Host API
• Used by
• IE (3?-8)
• Windows Scripting Host
• Active server page (IIS)
• Office
• 3rd party Apps
10. Implement Scripting Engine
• Engine must implement IAcriptScript* interfaces such as
IActiveScriptHost etc
• When using on IE, mark as safe like ActiveX control
11. Debugger Support
• Debugging APIs (COM APIs) to integrate IDE
• Profiler API is IE9+
• PDM (Process Debug Manager)
12. Conclusion
• Active Scripting is the binding interface used by IE8 (not IE9+)
• APIs is for host, engine and debugging
• Bye Bye IE8!
13. References
• Windows Script interfaces
• https://msdn.microsoft.com/en-us/library/fdee6589%28v=vs.94%29.aspx
• Active Scripting APIs: Add Powerful Custom Debugging to Your Script-
Hosting App
• https://msdn.microsoft.com/en-us/library/bb984890.aspx
• Microsoft Press – Inside Windows Debugging