第1部分 使用HTML和DHTML 1
第1章 Internet Explorer的发展 1
1.1 Internet Explorer版本1和版本2 2
1.2 Internet Explorer版本3 3
1.2.1 ActiveX控件 3
1.2.2 脚本编程支持功能 4
1.2.3 Internet Explorer对象模型 4
1.2.4 WebBrowser控件 4
1.3 Internet Explorer版本4 5
1.3.1 动态HTML 5
1.3.2 数据捆绑 6
1.3.3 增强型WebBrowser控件 6
1.3.4 Explorer Bars 6
1.3.5 浏览器助手对象 8
1.4 Internet Explorer版本5 8
1.4.1 DHTML Behaviors及HTML Components(HTCs) 10
1.4.2 可持久性 10
1.4.3 客户机功能 10
1.4.4 HTML Application 11
1.4.5 打印 11
1.4.6 动态属性 11
1.4.7 XML 11
1.4.8 增强的运行效率 12
1.4.9 使用Internet Explorer 5编程的原因 12
第2章 HTML与脚本制作 15
2.1 HTML简介 16
2.1.1 标记 16
2.1.2 标题 18
2.1.3 文本格式化 19
2.1.4 超级链接 23
2.1.5 图像 23
2.1.6 有序和无序的列表 24
2.1.7 选项框 26
2.1.8 表格 27
2.1.9 内部控件 28
2.1.10 注释 30
2.1.11 框架 30
2.1.12 HTML表单 32
2.2 脚本编程基本内容 33
2.2.1 给网页添加脚本 34
2.2.2 程序语句 35
2.2.3 注释 35
2.2.4 变量 36
2.2.5 数据类型 39
2.2.6 数组 42
2.2.7 运算符 43
2.2.8 表达式 47
2.2.9 利用条件程序语言控制程序流 48
2.2.10 循环 52
2.2.11 子程序和函数 56
2.3 创建简单的脚本应用程序 61
第3章 用DHTML进行程序设计 65
3.1 DHTML对象模型 66
3.1.1 对象 66
3.2 DHTML对象 71
3.2.1 window对象 72
3.2.2 document对象 81
3.2.3 navigator对象 88
3.2.4 event对象 90
3.2.5 form对象 93
3.2.6 对DHTML而言其他一些重要的HTML元素 94
3.3 其他优秀的DHTML特性 97
3.3.1 级联样式表 97
3.3.2 动态属性 100
3.3.3 打印支持 100
3.3.4 鼠标捕获 102
3.3.5 上下文菜单 104
3.4 举例:DHTML Memo和DHTML Ledger程序 104
第4章 编写HTML应用程序 109
4.1 创建HTA 110
4.1.1 〈HTA:APPLICATION〉标记 111
4.2 创建带有客户区域的HTA 117
4.3 其他HTA例子 120
第2部分 创建HTML应用程序 123
第5章 创建ActiveX控件 123
5.1 ActiveX控件是什么? 124
5.1.1 在Web网页中插入ActiveX控件 125
5.1.2 给客户机下载ActiveX控件 128
5.1.3 在Web上获得安全性保障 137
5.2 创建Visual Basic ActiveX控件 142
5.2.1 添加方法 146
5.2.2 添加属性 147
5.2.3 激活事件 147
5.2.4 设置线程模型 148
5.2.5 编译 149
5.2.6 使用PDW组装Visual Basic控件 150
5.2.7 测试 154
5.2.8 为Visual Basic控件编写脚本 155
5.2.9 在HTML中进行初始化 157
5.2.10 打印 158
5.3 创建ATL ActiveX控件 159
5.3.1 添加方法 166
5.3.2 添加属性 168
5.3.3 激活事件 169
5.3.4 ATL控件的加密 172
5.3.5 从HTML中初始化 173
5.3.6 打印 176
5.3.7 为ATL控件编写脚本 178
第6章 掌管WebBrowser控件和自动化Internet Explorer 181
6.1 Internet Explorer体系结构 183
6.1.1 WebBrowser控件宿主 183
6.1.2 SHDOCVW 184
6.1.3 MSHTML 184
6.2 WebBrowser控件和Internet Explorer 184
6.2.1 接口 186
6.3 掌管WebBrowser控件 200
6.3.1 使用Visual Basic 200
6.3.2 使用Visual C++ 206
6.4 自动化Internet Explorer 219
6.4.1 使用Visual Basic 219
6.4.2 使用Visual C++和COM APIs 225
6.5 添加高级功能 235
6.5.1 从ActiveX控件中访问Internet Explorer的IWebBrowser2接口 235
6.5.2 掌管WebBrowser控件时访问框架的IWebBrowser2接口 239
6.5.3 调用Find、View Source以及Internet Options 241
6.6 发布WebBrowser控件 243
第7章 Internet Explorer事件 245
7.1 事件和对外接口 245
7.1.1 IConnectionPointContainer 246
7.1.2 IConnectionPoint 247
7.2 捕获事件的方法 248
7.2.1 在Visual Basic中捕获事件 248
7.2.2 在C++中捕获事件 251
7.2.3 在ATL中捕获事件 255
7.2.4 在MFC中捕获事件 262
7.3 由Internet Explorer 5激发的事件 268
7.3.1 BeforeNavigate2 271
7.3.2 CommandStateChange 273
7.3.3 DocumentComplete 275
7.3.4 DownloadBegin 278
7.3.5 DownloadComplete 278
7.3.6 NavigateComplete2 278
7.3.7 NewWindow2 279
7.3.8 ProgressChange 282
7.4 事件顺序 282
7.5 仅由Internet Explorer使用的事件 283
7.6 从ActiveX控件中处理Internet Explorer事件 284
第8章 访问DHTML对象模型 291
8.1 复习DHTML对象模型 291
8.2 从Visual Basic中访问DHTML对象模型 292
8.2.1 从Web网页中获得数据 296
8.2.2 使用Visual Basic向Web网页中动态地插入数据 302
8.3 从Visual C++中访问DHTML对象模型 305
8.3.1 从Web网页上获得数据 310
8.3.2 使用VC++向Web网页中动态地插入数据 318
8.4 处理DHTML Object事件 322
8.4.1 在Visual Basic中捕获DHTML Objects事件 322
8.4.2 在Visual C++中为DHTML Objects进行事件捕获 324
8.5 从Visual Basic Activex控件中访问DHTML对象模型 329
第9章 高级掌管接口 333
9.1 IDocHostUIHandler 334
9.1.1 GetHostInfo 335
9.1.2 ShowContextMenu 338
9.1.3 TranslateAccelerator 340
9.1.4 扩展DHTML对象模型 343
9.1.5 AtlBrowser 345
9.2 ICustomDoc 348
9.3 WBCustomizer对象 349
9.4 IDocHostShowUI 351
9.5 控制下载和执行的内容 353
第10章 Web Accessories 357
10.1 理解Explorer Bar和Desk区 358
10.1.1 Explorer Bands 358
10.1.2 Comm区 360
10.1.3 Desk区 361
10.2 使用DHTML和脚本创建Explorer Bars 362
10.3 使用C++和COM创建Explorer Bars和Desk Bands 366
10.3.1 实现所需的DLL函数 367
10.3.2 实现需求接口 373
10.3.3 可选接口的实现 380
10.3.4 给容器发送命令 383
10.3.5 为区对象实现Windows程序 384
10.3.6 在区对象中掌管WebBrowser控件 386
10.4 添加工具栏按钮 389
10.4.1 显示Explorer Bars 391
10.4.2 运行COM对象 392
10.4.3 运行脚本 393
10.4.4 运行可执行的文件 393
10.5 添加主菜单项 394
10.6 添加上下文菜单项 394
第11章 DHTML Behaviors和HTML组件 397
11.1 使用默认Behaviors 398
11.1.1 客户端功能 399
11.1.2 持久性 403
11.2 使用由HTML Components创建的Behaviors 407
11.2.1 将Behaviors添加到HTML元素中 407
11.2.2 使用HTC在脚本中创建Behaviors 409
11.2.3 访问包容文档的DHTML对象模型 414
11.2.4 HTC的缺点 417
11.3 使用Binary DHTML Behaviors 418
11.3.1 用C++实现Binary DHTML Behaviors 419
11.4 使用其他的Behavior样例程序 426
第12章 Browser Helper Object 429
12.1 Internet Explorer如何启动BHO 430
12.2 创建BHO 431
12.2.1 IEHelper 431
12.2.2 实现IObjectWithSite 433
12.3 用BHO处理Internet Explorer事件 435
12.4 使用BHO来控制Internet Explorer 440
12.5 注册和取消注册BHO 440
附录 疑难解答和技术支持 443
击键问题 443
MFC 443
ATL和标准C++ 446
Win32 SDK模态对话框 448
区对象 450
技术支持资源 453
新闻组 453
文献 453
Microsoft Knowledge Base 453
Microsoft Developer Support 457