45fan.com - 路饭网

搜索: 您的位置主页 > 网络频道 > 阅读资讯:IE7的窗口结构的详细信息

IE7的窗口结构的详细信息

2016-09-07 09:09:26 来源:www.45fan.com 【

IE7的窗口结构的详细信息

与IE6不同,IE7的窗口结构做了很大的改动。

IEFrame (主窗口)
|
|-- WorkerW (导航栏,即地址栏部分,还包括IE7特有的搜索栏)
| |
| |-- ReBarWindow32
|
|-- CommandBarClass
| |
| |-- ReBarWindow32
|
|-- TabWindowClass (smaple:http://www.sina.com)
|
|-- Shell DocObject View
|
|-- Internet Explorer_Server (浏览器窗口)


为了支持多页面,IEFrame下可能会有多个TabWindowClass子窗口,每个TabWindowClass对应一个网页。

WorkerW-ReBarWindow32 (导航栏)下面还有三个子窗口,分别是:
TravelBand ,负责IE7左上角的前进、后退所在的工具栏部分
Address Band Root , 负责地址栏部分
UniversalSearchBand ,负责IE7特有的搜索栏部分
这三个子窗口其下还有1到3级的子窗口,不一一列出!

CommandBarClass-ReBarWindow32 负责IE窗口的第二行,包括收藏夹,TAB,常用工具栏等。

与以往版本还有一个很大的差别,就是窗口所在线程。
IE6之前, Internet Explorer_Server 和 工具栏等其它UI元素都处在同一线程。因此,使用BHO时,所在的线程和UI线程是相同的。

IE7中,每个 TabWindowClass/Internet Explorer_Server 都处在一个独立的线程,都和IE的其它UI线程分离。其它UI包括:
IEFrame 、WorkerW导航栏、CommandBarClass (TAB和常用工具栏), 都在同一个线程中。因此在IE7中,如果在BHO中要挂钩子,或子类化窗口,应该考虑到跨线程的问题。
 

本文地址:http://www.45fan.com/a/question/73606.html
Tags: 窗口 结构 IE7
编辑:路饭网
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部