注: 本文简要介绍IE内核在chromium中集成的主要原理和思路,并不涉及具体代码逻辑。
概述
chromium内核中,可以使用IE渲染模式来加载网页。其基本原理,就是将网页资源加载与渲染、事件处理、导航事件消息等等,由原本的blink实现替换为trident实现。
整个开发过程中会涉及到render进程创建使用策略(RenderFrameHostImpl、SiteInstanceImpl相关类)、MessagePump类型切换、mojo通信管道创建及使用、Windows窗口与事件、COM组件(IWebBrowser相关)、Hook技术。 除此以外,需要对chrome的Out-of-Process iframes (OOPIFs)架构、 RenderFrameImpl类、RenderViewImpl类都有一定的了解。
进程模型

兼容模式下,renderer进程不再创建默认的RenderView、RenderFrame以及RenderWidget,改为由trident相关类来接收来自browser进程的网址导航指令,并将加载结果反馈回browser进程。此过程中,mojo通道的browser端保持不变, renderer端由 blink 切换为 trident。


5382

被折叠的 条评论
为什么被折叠?



