第Ⅰ部分 Exchange 2000 Server简介 3
第1章 使用Exchange平台进行开发 3
1.1 Exchange 2000概述 3
1.1.1 Exchange System Manager 3
1.1.2 Active Directory 4
1.1.3 Web存储系统 5
1.1.4协议支持 6
1.1.5 Web存储系统架构 7
1.2使用数据访问工具 7
1.2.1理解数据访问范例 7
1.2.2使用ADO 8
1.2.3使用Exchange CDO 11
1.2.4使用ADSI 13
1.2.5使用XML 15
1.3显示数据 18
1.3.1使用Outlook 2000 18
1.3.2使用Outlook Web Access 19
1.3.3重用Outlook Web Access 20
1.3.4使用Web存储系统窗体 21
1.4升级应用程序 22
1.4.1使用Web存储系统事件 23
1.4.2使用工作流逻辑 24
1.5.2部署Web存储系统应用程序 25
1.5总览 25
1.5.1添加安全功能 25
1.6小结 26
第2章 Exchange和Web存储系统 27
2.1 Exchange在数据存储上的使用 27
2.1.1Web存储系统的益处 27
2.1.2 Exchange与SQL Server 29
2.2了解Exchange的数据存储结构 29
2.2.1 Exchange的过去和现在 30
2.2.2 Web存储系统与Exchange数据库 31
2.2.3使用多重公用Web存储系统的原因 32
2.2.4了解Exchange中使用的名称 34
2.2.5创建新的Web存储系统 35
2.2.6创建公共目录树 35
2.2.7创建和装配公用Web存储系统 36
2.2.8创建虚拟目录 38
2.3在Exchange中使用URL 39
2.3.1 URL基础 40
2.3.2访问公用存储 40
2.3.3访问邮箱 41
2.3.4访问个人项目 43
2.4使用另外的数据访问选项 44
2.4.1 Windows Enplorer 44
2.4.2打开和保存对话框 45
2.5 Web存储系统的更多功能 46
2.5.1查询Web存储系统 46
2.4.3自定义客户应用程序 46
2.5.2复制Web存储系统目录树 47
2.6小结 47
第Ⅱ部分 数据访问 51
第3章 Web存储系统架构 51
3.1 Web存储系统架构概述 51
3.1.1理解Web存储系统架构 52
3.1.2 理解属性和名称空间名称 53
3.1.3 Web存储系统名称空间 54
3.2.1理解内容类 55
3.2内容类简介 55
3.2.2文件夹内容类 56
3.2.3项目内容类 58
3.2.4搜索特定内容类 60
3.2.5使用Content Class Brower了解内容类 62
3.3架构访问方案 63
3.3.1 URL和HTTP 64
3.3.2使用ASP技术的Web应用程序 65
3.3.3 Microsoft Outlook 2000 65
3.4使用自定义应用程序架构 66
3.4.1使用自定义架构的益处 66
3.4.2自定义架构的工作原理 67
3.4.3创建应用程序架构 68
3.4.4定义属性 73
3.4.5定义内容类 76
3.5创建自定义架构 79
3.5.1定义Zoo Management架构 79
3.5.2创建一个动物内容类实例 84
3.6返回应用程序架构信息 85
3.7小结 89
第4章 ADO和Exchange 90
4.1 ADO 2.5和Exchange概述 90
4.1.1 ADO 2.5对象模型 91
4.1.2 Exchange OLE DB供应程序 92
4.1.3理解Record和Recordset间的关系 93
4.1.4理解ADO中的安全性 94
4.2连接到Web存储系统 94
4.2.1为ExOLEDB建立URL 94
4.2.2 使用Connection对象 97
4.3使用Record对象 104
4.3.1使用Open方法 104
4.3.2打开资源 106
4.3.3属性枚举 107
4.3.4保存记录 109
4.3.5创建资源 110
4.3.6给资源附加自定义属性 113
4.4使用Recordset对象 115
4.4.1打开Recordset 116
4.4.2在Recordset中移动 117
4.4.3使用ADO获取文件夹内容 118
4.5使用SQL SELECT语句查询Web存储系统 119
4.5.1使用AddQuotes函数 120
4.5.2建立简单的SELECT语句 120
4.5.3用查询结果打开Recordset 124
4.5.4将Recordset保存为XML 126
4.6 ADO的其他功用 128
4.6.1复制资源 128
4.6.2移动资源 129
4.6.3删除资源 130
4.6.4流内容 131
4.7使用微软Internet发布供应程序和ADO 133
4.8小结 135
第5章 Exchange CDO介绍 136
5.1 CDO概述 136
5.1.1 CDO对象模型 137
5.1.2理解用于Exchange 2000 Server对象模型的CDO 138
5.1.3理解用于Exchange Management Objects对象模型的CDO 138
5.1.4理解用于Exchange Object Model的CDO Workflow 139
5.2.1从类创建对象 140
5.2初步使用CDO 140
5.2.2使用接口 141
5.2.3访问架构属性 142
5.2.4使用URL 143
5.3理解并使用IDataSource接口 143
5.3.1 IDataSource接口的属性与方法 143
5.3.2 IDataSource接口是如何运作的 144
5.3.3使用CDO打开资源 144
5.3.4发现和保存修改 146
5.3.5使用CDO创建新的资源 147
5.3.6从其他对象打开CDO对象 151
5.3.7检查一个文件夹或项目是否存在 152
5.4使用文件夹 154
5.4.1 CDO文件夹对象属性 154
5.4.2使用CDO创建一个文件夹 155
5.4.3启用电子邮件文件夹 156
5.4.4计算文件夹的内容 158
5.5用联系人信息 160
5.5.1联系人属性 160
5.5.2在Web存储系统中创建联系人 168
5.5.3检索vCard信息 169
5.6小结 170
6.1 CDO消息发送概述 171
第6章 CDO消息发送 171
6.1.1 CDO消息发送类与接口 172
6.1.2分析MIME消息 173
6.2设计和发送消息 175
6.2.1发送一个简单的消息 175
6.2.2给消息编址 176
6.2.3添加正文文本 178
6.2.4添加附件 182
6.2.5消息发送的有效架构属性 184
6.2.6发送到文件夹 185
6.2.7投寄到新闻组 186
6.3.1使用持久的Configuration对象 188
6.3设计更复杂的消息 188
6.3.2在域中解析地址 190
6.4处理消息 193
6.4.1查找消息 193
6.4.2打开消息 194
6.4.3检测并保存附件 195
6.4.4阅读作为BodyPart对象的消息 197
6.4.5回复消息 200
6.4.6转发消息 203
6.4.7将消息保存到文件 205
6.5小结 207
7.1.1 CDO日历编排的类和接口 208
第7章 CDO日历编排 208
7.1 CDO日历编排概述 208
7.1.2 Exchange如何存储和格式化日期和时间 210
7.1.3指明时区 211
7.2使用Appointment对象 211
7.2.1创建简单约会 212
7.2.2约会的属性 213
7.2.3使用持久的配置对象 214
7.3会议日程安排 215
7.3.1编排新的会议日程 215
7.3.2检查闲/忙状态 219
7.3.3发布会议 223
7.4重复约会和会议的日程安排 225
7.4.1配置主约会 226
7.4.2定义重复式样 228
7.4.3使用异常 231
7.4.4获取重复主约会 235
7.5使用现存的约会和会议请求 238
7.5.1转换日期和时间 238
7.5.2查询日历 240
7.5.3发送更新 247
7.5.4约会和会议的取消与删除 247
7.5.5处理会议请求 250
7.6设置提醒 252
7.7小结 253
第8章 与Active Directory交互 254
8.1与Active Directory连接 254
8.1.1 LDAP 254
8.1.2 Active Directory服务接口 255
8.1.3 Exchange CDO 256
8.1.4 CDO和ADSI之间的选择 257
8.1.5编写LDAP绑定字符串 258
8.2 Exchange开发人员的ADSI 259
8.2.1通用的支持接口 259
8.2.2打开对象 260
8.2.3理解属性超高速缓冲存储器 263
8.2.4获取属性值 264
8.2.5设置属性值 266
8.2.6创建对象 268
8.2.7删除对象 269
8.3理解Active Directory联系人、用户和邮箱 269
8.3.1 Person、Contact和User对象 270
8.3.2理解邮件激活型以及邮箱激活型 271
8.3.3 创建Contact和User对象 271
8.3.4用邮件激活对象 277
8.3.5使用邮箱 279
8.3.6管理User 和Contact对象 289
8.4.1使用组类型和组范围 294
8.4使用组 294
8.4.2创建Group对象 296
8.4.3处理Group成员资格 299
8.4.4管理组对象 302
8.5查询Active Directory 305
8.5.1使用ADO查询 306
8.5.2建立核心SELECT语句 307
8.5.3设置Command选项 310
8.6使用ADSI返回有关域的信息 313
8.6.1标识您的Active Directory服务器 313
8.6.2标识域 315
8.6.4 返回Exchange邮箱 317
8.6.3识别当前用户 317
8.6.5返回Exchange服务器 319
8.6.6从电子邮件地址返回Exchange服务器 321
8.7小结 323
第Ⅲ部分 扩展应用程序 327
第9章 使用Web存储系统事件 327
9.1 Exchange 2000中的事件概述 327
9.1.1采用事件的理由 328
9.1.2了解事件类型 328
9.1.3了解事件范例 330
9.2建立事件接收器 331
9.1.4安全性和事件接收器 331
9.2.1创建动态链接库 332
9.2.2对同步事件作出反应 336
9.2.3对异步事件作出反应 342
9.2.4对系统事件作出反应 345
9.2.5将事件接收器安装为COM+应用程序 347
9.3创建事件注册项目 353
9.3.1使用ADO创建事件注册项目 353
9.3.2使用RegEvent脚本创建事件注册 361
9.3.3管理事件注册项目 362
9.4.1在事件注册项目中定义自定义属性 366
9.4使用事件的自定义属性 366
9.4.2在事件接收器中读自定义字段 367
9.5使用应用程序日志调查事件错误 368
9.6小结 368
第10章 设计工作流应用程序 370
10.1工作流概述 370
10.1.1工作流背景 370
10.1.2理解工作流进程 371
10.1.3理解动作 372
10.1.4设置工作流中的安全性 373
10.1.5建立工作流应用程序 374
10.2.1定义工作流系统账户 375
10.2准备工作 375
10.2.2登记工作流创作者 377
10.3使用Exchange Workflow Designer 378
10.3.1介绍Workflow Designer 379
10.3.2使用Workflow Designer简例 379
10.3.3输入和输出进程 386
10.4编写工作流项目 387
10.4.1 WorkflowSession属性及方法 388
10.4.2添加审核项 389
10.4.3标识Sender 390
10.4.4发送通知消息 390
10.4.5读状态信息 391
10.5.1检查脚本语法 392
10.4.6删除工作流项目 392
10.5调试工作流脚本 392
10.5.2使用Event Viewer 393
10.5.3使用Script Debugger 393
10.6小结 393
第11章 利用Outlook 2000进行开发 394
11.1介绍MAPI目录树 394
11.2开发Outlook环境 395
11.2.1在MAPI目录树下创建文件夹 395
11.2.2在MAPI目录树下创建项目 397
11.3在Outlook环境下进行开发 401
11.3.1添加协作特性 401
11.3.2访问Outlook窗体的Web存储系统架构属性 402
11.3.3从Outlook窗体查询其他Web存储系统 404
11.4小结 406
第Ⅳ部分 建立Web应用程序 409
第12章 建立Exchange Web应用程序 409
12.1 Web应用程序概述 409
12.1.1 Web开发途径 409
12.1.2按数据而非窗体考虑 410
12.1.3理解Web存储系统窗体工作原理 410
12.2使用窗体注册表和窗体注册 412
12.2.1配置窗体注册表 412
12.2.2使用窗体注册 414
12.3.1设置执行权限和访问权力 420
12.3建立Web开发环境 420
12.3.2使用Web开发工具 422
12.4创建和注册Web存储系统窗体 425
12.4.1为Web页存储选择文件夹 425
12.4.2创建简单的主页 426
12.4.3创建框集主页 427
12.4.4获取文件夹内容 433
12.4.5显示项目 437
12.4.6创建项目 442
12.4.7保存项目 443
12.4.8删除项目 447
12.4.9重使用Outlook Web Access 449
12.5小结 451
第13章 XML和Exchange 452
13.1 XML和Exchange概述 452
13.1.1使用XML开发的原因 452
13.1.2使用XML建立应用程序 453
13.1.3理解HTTP和WebDAV 454
13.2理解XML基础 455
13.2.1建立XML文档 455
13.2.2创建XML元素 457
13.2.3集成XML名称空间 459
13.2.4用ASP页面创建XML 460
13.2.5使用XML数据岛 465
13.3从客户端进行HTTP请求 467
13.3.1 XMLHTTP方法及属性 467
13.3.2进行简单的HTTP请求 468
13.3.3使用Open方法 469
13.3.4设置标题字段 470
13.3.5发送HTTP请求及获取结果 471
13.3.6检查异步连接的状态 472
13.4使用XMLHTTP 474
13.4.1返回资源所有属性 474
13.4.2创建文件夹 477
13.4.3创建项目 478
13.4.4复制资源 479
13.4.5移动资源 480
13.4.6删除资源 481
13.5用XSL表达XML 482
13.5.1工作原理 483
13.5.2使用XSL特定元素 483
13.5.3建立XSL模板作为独立文件 484
13.5.4用XSL模式标识XML元素 486
13.5.5建立表 487
13.5.6对XSL模板使用XML数据岛 489
13.6响应码 493
13.7小结 496
14.1理解Exchange 2000 Server安全性 499
14.1.1 Exchange 2000 Server安全性工作原理 499
第Ⅴ部分 为企业做准备 499
第14章 设置安全性和权限 499
14.1.2为应用程序设置安全性 500
14.2管理Web存储系统文件夹的客户端权限 501
14.2.1使用用户界面赋予客户端权限 501
14.2.2理解权限继承 505
14.2.3覆盖权限 508
14.3使用安全性描述符属性 508
14.3.1理解安全性描述符属性 508
14.3.2解释DACL 513
14.3.3读安全性描述符的详细资料 517
14.3.4建立安全性描述符 519
14.4使用COM+组件为代码实施安全性 521
14.4.1使用COM+基于角色的安全性的原因 521
14.4.2配置COM+基于角色的安全性 522
14.4.3禁止匿名访问以有效使用COM+角色 526
14.5小结 527
第15章 测试和部署应用程序 528
15.1在单个服务器域中安装Exchange 528
15.1.1安装Windows 2000 Server 529
15.1.2配置域控制器 530
15.1.3 安装Exchange 2000 Server 531
15.2安装开发环境 533
15.1.4创建新管理员账户 533
15.2.1安装Office 2000及FrontPage Server扩展 534
15.2.2安装开发环境和工具 534
15.2.3创建Exchange开发MMC控制台 534
15.2.4添加附加用户 537
15.3部署特定的应用程序工具 537
15.4使用Windows Script Files自动安装 538
15.5小结 540
附录A Web存储系统架构属性 541
附录B 利用Outlook 2000设计窗体 576
术语 603