PARTⅠ 分布式应用的基础理论 1
第1章 分布式应用的概念 3
1-1 企业计算框架的演进 4
1-2 分布式应用的特征 5
1-3 分布式应用的模式 5
1-3-1 按照作用机制的划分 5
1-3-2 按照层次结构的划分 7
第2章 分布式应用的关键基础技术 9
2-1 网络协议体系 10
2-2-1 Internet和TCP/IP的发展 11
2-2 Internet/Intranet协议框架 11
2-2-2 TCP/IP协议体系 12
2-2-3 TCP/IP地址方案 13
2-2-4 从Internet到Intranet 14
2-3 Client/Server模型 14
2-4 基于Web的应用结构 16
2-5 远程过程调用 17
2-6 中间件 18
2-7 对象技术 18
2-8 软件组件技术 19
2-9 分布对象技术 21
第3章 Delphi的分布式应用开发支持 23
PARTⅠ小结 26
PARTⅠ深入读物和相关资源 26
PARTⅡ 开发SOCKETS通信应用 27
第4章 Sockets基本概念 29
4-1 基于Sockets的通信模型 30
4-2 Socket描述 30
4-3 Socket类型 31
4-4 基于Sockets通信的基本应用模式 32
4-5 Delphi的Socket组件总览 33
4-5-1 客户端和服务器Socket组件 33
4-5-2 Windows Socket对象 35
第5章 建立和关闭连接 39
5-1 客户端的操作 40
5-1-1 指定想要的服务器 40
5-1-2 建立连接 40
5-1-3 得到关于连接的信息 40
5-2-3 连接上客户端 41
5-2-2 监听客户端请求 41
5-2-4 得到关于连接的信息 41
5-2 服务器端的操作 41
5-1-4 关闭连接 41
5-2-1 指定端口 41
5-2-5 关闭服务器连接 42
第6章 响应Sockets事件 43
6-1 客户端事件 44
6-2 服务器端事件 45
6-3 错误事件 46
第7章 在Sockets上的读和写 49
7-2 阻塞型的读写 50
7-1 非阻塞型的读写 50
7-1-1 读和写事件 50
7-2-1 使用TWinSocketStream进行读写 51
7-2-2 在客户端使用线程 51
7-2-3 在服务器端使用线程 53
7-3 例Ⅱ.1,一个简单的聊天程序:Chat 55
7-3-1 功能说明 55
7-3-2 开发步骤 55
7-3-2-1 窗体设计 55
7-3-2-2 代码设计 56
7-3-3 运行和结果 59
7-3-4 要点归纳 59
第8章 例Ⅱ.2,一个采用多线程的聊天室服务器:ChatRoom 61
8-1 功能说明 62
8-2 开发步骤 62
8-2-1 窗体设计 62
8-2-2 代码设计 63
8-2-2-1 服务器线程 63
8-2-2-2 在关键事件点上显示线程信息 64
8-2-2-3 在关键事件点上显示连接信息 65
8-3 运行和结果 66
8-4 要点归纳 67
PART Ⅱ小结 68
PART Ⅱ深入读物和相关资源 68
PART Ⅲ 使用FastNet组件开发Internet应用 69
第9章 FastNet组件概述 71
第10章 实现基本传输功能的一些组件 75
10-1 PowerSock 76
10-2 NMGeneralServer 76
10-3 NMMsg和NMMsgServ 77
10-3-1 例Ⅲ.1:一个消息收发器 78
10-3-1-1 功能说明 78
10-3-1-2 窗体设计 78
10-3-1-3 代码设计 78
10-4 NMStrm和NMStrmServ 80
10-5 NMUDP 80
10-5-1 例Ⅲ.2一个UDP数据报收发器 81
10-5-1-1 功能说明 81
10-5-1-2 窗体设计 81
10-5-1-3 代码设计 82
第11章 实现内容解析的一些组件 85
11-1 NMURL 86
11-2 NMUUProcessor 86
11-2-1 例Ⅲ.3一个UU编码/解码器 86
11-2-1-1 功能说明 86
11-2-1-2 窗体设计 87
11-2-1-3 代码设计 87
第12章 实现网络探测功能的一些组件 89
12-3 NMEcho 90
12-2 NMTime 90
12-1 NMDayTime 90
12-4 NMFinger 91
12-4-1 例Ⅲ.4一个Finger探测器 91
12-4-1-1 功能说明 91
12-4-1-2 窗体设计 91
12-4-1-3 代码设计 92
第13章 实现资源获取的一些组件 95
13-1 NMFtp 96
13-2 NMHTTP 97
13-3-1-1 功能说明 98
13-3-1-2 窗体设计 98
13-3 NMPOP3 98
13-3-1 例Ⅲ.5 一个POP3邮件客户端 98
13-3-1-3 代码设计 99
13-4 NMSMTP 103
13-5 NMNNTP 103
PART Ⅲ小结 105
PART Ⅲ深入读物和相关资源 105
PARTⅣ 开发Web服务器应用 107
第14章 Web服务器应用概述 109
14-1 Web服务器应用的工作方式 110
14-1-1 URL的组成部分 110
14-1-2 HTTP请求消息的内容 111
14-1-3 服务客户端请求 112
14-2 Web服务器应用的类型 112
14-3 新建一个Web服务器应用 113
14-3-1 步骤 113
14-3-2-1 工程文件 114
14-3-2 认识新建立的工程 114
14-3-2-2 Web模块文件 116
第15章 Web服务器应用的结构 119
15-1 Web应用 120
15-2 Web模块和调度器 121
15-2-1 添加动作项到调度器 123
15-2-2 调度动作项 123
15-3 动作项 124
15-3-1 确定启用哪个动作项 124
15-3-1-2 请求方法类型 125
15-3-1-3 使能或禁止动作项 125
15-3-1-1 目标URL 125
15-3-1-4 选择一个缺省的动作项 126
15-3-2 用动作项响应请求消息 126
15-3-2-1 发送响应 126
15-3-2-2 使用多个动作项 127
15-4 例Ⅳ.1,一个最简单的Web服务器应用:Hello 127
15-4-1 功能说明 127
15-4-2 准备工作 127
15-4-3 开发步骤 128
15-4-5 要点归纳 129
15-4-4 运行和结果 129
第16章 使用请求和响应消息 131
16-1 获得客户端请求信息 132
16-1-1 包含请求头信息的属性 133
16-1-1-1 标识目标的属性 133
16-1-1-2 描述客户端的属性 133
16-1-1-3 标识请求意图的属性 133
16-1-1-4 描述期待的响应的属性 134
16-1-1-5 描述内容的属性 134
16-1-2 请求消息的内容 134
16-2 建立响应消息 134
16-2-1 填写响应头 135
16-2-1-2 指出要求的客户端动作 136
16-2-1-3 描述服务器应用 136
16-2-1-4 描述内容 136
16-2-2 设定响应内容 136
16-2-1-1 指出响应状态 136
16-2-3 发送响应消息 137
第17章 生成响应消息的内容 139
17-1 使用页面生成器 141
17-1-1 HTML模板和HTML透明标记 141
17-1-3 转换HTML透明标记 142
17-1-2 指定HTML模板 142
17-1-4 从动作项使用页面生成器 144
17-1-5 串联页面生成器 145
17-2 使用数据集页面生成器 146
17-3 使用表格生成器 147
17-3-1 定制表格的外观属性 147
17-3-1-1 指定表格属性 148
17-3-1-2 指定行属性 148
17-3-1-3 指定列 148
17-3-3 建立一个数据集表格生成器 149
17-3-2 在HTML文档中嵌入表格 149
17-4 增加一个会话到Web模块 150
17-3-4 建立一个查询表格生成器 150
第18章 调试Web服务器应用 153
18-1 使用Web应用调试器 154
18-1-1 编写Web应用调试程序 154
18-1-2 加载和调试Web调试程序 154
18-2-1 设置操作系统 156
18-2-1-2 在Windows2000上 156
18-2-1-1 在WindowsNT上 156
18-2 调试ISAPI、NSAPI、和Apache服务器应用 156
18-1-3 转换为Web应用程序 156
18-2-2 设置Web服务器 157
18-2-2-1 使用Microsoft IIS 157
18-2-2-2 使用Netscape Server 159
18-3 调试CGI和Win-CGI 160
18-3-1 模拟服务器 160
18-3-2 作为一个DLL调试 160
第19章 例Ⅳ.2,一个客户信息查询的Web服务器应用:CustInfo 163
19-2-1 设计数据库组件 164
19-1 功能说明 164
19-2 设计与实现 164
19-2-2 设计动作项 165
19-2-3 设计内容生成器 166
19-2-4 代码设计 167
19-2-5 关于使用 图示页 169
19-3 运行和结果 170
19-4 要点归纳 171
第20章 开发移动信息服务的Web服务器应用 173
20-1 WAP简介 174
20-1-1 WAP模型 174
20-1-2 WML语言 175
20-2 开发WAP应用 176
20-2-1 诺基亚的WAP Toolkit 176
12-2-2 设置Web服务器支持WML 177
12-2-3 用Delphi开发动态的WML内容 178
20-3-2 设计与实现 179
20-3-2-1 设计login页面 179
20-3-1 功能说明 179
20-3 例Ⅳ.3一个预定体育比赛票的WAP应用:TicketsOrder 179
20-3-2-2 设计Web服务器应用 180
20-3-2-3 设计数据库组件 181
20-3-2-4 设计页面生成器 181
20-3-3 设计动作项 184
20-3-4 运行和结果 185
20-3-5 要点归纳 187
PART Ⅳ小结 188
PART Ⅳ深入读物和相关资源 188
PARTⅤ 开发基于CORBA的分布式应用 189
第21章 CORBS原理概述 191
21-1 CORBA技术背景 192
21-1-1 OMG简介 192
21-1-2 CORBA的发展 193
21-2 CORBS规范 194
21-2-1 OMG对象模型 194
21-2-2 OMA参考模型 195
21-2-3 CORBA体系结构 196
21-2-4 对象交互的实现 198
21-2-5 ORB间互操作性 199
21-3-1 基于VisiBroker的CORBA应用 200
21-3 Delphi的CORBA支持 200
21-3-2 Smart Agent 201
21-3-3 激活服务器应用 202
21-3-4 动态绑定接口调用 202
第22章 开发CORBA服务器 203
22-1 新建一个CORBA服务器 204
22-1-1 步骤 204
22-1-2 CORBA对象的实例化模型 205
22-1-4-1 工程的组成 206
22-1-3 CORBA对象的线程模型 206
22-1-4 认识新建立的工程 206
22-1-4-2 对象的实现单元 207
22-1-4-3 定义Stub和Skeleton的单元 208
22-2 定义对象接口 212
22-3 注册服务器接口 214
22-3-1 使用接口库注册接口 214
22-3-2 使用OAD注册接口 215
22-4-1 公开或隐藏CORBA对象 217
22-4-2 传递客户端信息给服务器对象 217
22-4 使用BOA 217
第23章 开发CORBA客户端 219
23-1 新建一个CORBA客户端 220
23-2 使用Stubs 220
23-3 使用动态调用接口 221
23-3-1 获得接口 221
23-3-2 通过DII调用接口 222
23-4 使用ORB接口 223
23-4-1 在用户界面中显示CORBA对象 223
第24章 部署CORBA应用 225
24-1 使用Smart Agent 226
24-1-1 启动Smart Agent 226
24-1-2 配置ORB域 227
24-1-3 联接不同网络上的Smart Agent 227
24-1-3-1 使用一个agentaddr文件 227
24-1-3-2 使用一个多穴主机 228
第25章 例Ⅴ.1,一个最简单的CORBA应用:彩票机 229
25-1 功能说明 230
25-2 建立CORBA服务器 230
25-3 建立CORBA客户端 232
25-5 要点归纳 233
25-4 运行和结果 233
PART Ⅴ 小结 234
PART Ⅴ深入读物和相关资源 234
PART Ⅵ 开发基于COM/COM+的分布式应用 235
第26章 COM/DCOM原理概述 237
26-1 COM技术背景 238
26-1-1 从OLE到COM 238
26-1-2 COM解决的软件问题 240
26-2-1 COM基于的对象概念 241
26-2 COM/DCOM技术体系结构 241
26-2-2 COM接口 242
26-2-2-1 GUID 244
26-2-2-2 IUnknown 244
26-2-2-3 接口指针和Vtable 245
26-2-3 COM服务器 245
26-2-3-1 CoClasses和类工厂 246
26-2-3-2 三种类型的服务器 246
26-2-4 客户端到服务器的交互 247
26-2-4-1 Marshaling机制 248
26-2-4-2 接口定义 248
26-2-4-3 DCOM的特点 249
26-2-5-1 设置所有DCOM程序的默认安全机制 250
26-2-5 Windows系统的DCOM配置工具 250
26-2-5-2 设置DCOM程序的位置 251
26-2-5-3 为DCOM程序设置自定义权限 251
26-3 COM扩展 252
26-3-1 自动化 253
26-3-2 ActiveX控件 253
26-3-4 类型库 254
26-4 MTS和COM+技术概览 254
26-3-3 活动服务器页面 254
26-4-1 MTS和COM+应用的结构 256
26-4-1-1 MTS/COM+组件 256
26-4-1-2 MTS/COM+对象和环境对象 258
26-4-1-3 MTS/COM+客户端 259
26-4-1-4 MTS/COM+活动 259
26-4-2 访问数据 260
26-4-2-1 资源分配器 261
26-4-2-2 资源管理器 261
26-4-3 管理资源 261
26-4-3-3 释放资源 262
26-4-3-2 资源pooling 262
26-4-3-1 即时激活 262
26-4-3-4 对象pooling 263
26-4-4 处理事务 263
26-4-4-1 事务属性 264
26-4-4-2 对象环境持有事务属性 264
26-4-4-3 在事务中关联资源 264
26-4-4-4 Microsoft分布事务管理器 265
26-4-4-5 对象参与事务结果 265
26-4-4-6 有状态和无状态对象 266
26-4-5 MTS/COM+安全模型 267
26-4-6 Windows系统的MTS/COM+管理工具 267
26-4-6-1 Windows98和NT上的MTS Explorer 267
26-4-6-2 Windows2000上的组件服务管理工具 269
26-5 Delphi的COM支持 269
第27章 使用类型库 273
27-1 类型库编辑器 274
27-2 各种类型信息的信息页 275
27-2-1 类型库信息 275
27-2-1-2 类型库的Uses页 276
27-2-1-1 类型库的特征页 276
27-2-1-3 类型库的标记页 277
27-2-2 接口和调度接口信息 277
27-2-2-1 接口的特征页 278
27-2-2-2 接口的标记页 278
27-2-2-3 接口的成员 278
27-2-3 组件类信息 284
27-2-3-1 组件类的实现页 284
27-2-3-2 组件类标记 285
27-2-5 别名类型信息 286
27-2-6 记录类型信息 286
27-2-5-1 别名的特征页 286
27-2-4-1 枚举的特征页 286
27-2-4-2 枚举成员 286
27-2-4 枚举类型信息 286
27-2-6-1 记录成员 287
27-2-7 联合类型信息 287
27-2-7-1 联合成员 287
27-2-8 模块类型信息 287
27-2-8-1 模块的特征页 287
27-3-1 有效的类型 288
27-2-8-2 模块成员 288
27-3 建立和修改一个类型库 288
27-3-2 使用Object Pascal或IDL语法 290
27-3-2-1 特征描述 290
27-3-2-2 接口语法 291
27-3-2-3 调度接口语法 292
27-3-2-4 组件类语法 293
27-3-2-5 枚举语法 293
27-3-2-6 别名语法 294
27-3-2-7 记录语法 294
27-3-3-9 模块语法 295
27-3-2-8 联合语法 295
27-3-3 新建一个类型库 296
27-3-4 打开一个已有的类型库 296
27-3-5 增加类型对象到类型库 296
27-3-6 保存和注册类型库信息 297
27-3-6-1 Apply Updates对话框 297
27-3-6-2 保存一个类型库 298
27-3-6-3 刷新类型库 298
27-4 部署类型库 299
27-3-6-4 注册类型库 299
27-3-6-5 输出IDL文件 299
第28章 开发一个简单的COM对象 301
28-1 新建一个COM对象 302
28-1-1 步骤 302
28-1-2 COM对象的实例化类型 304
28-1-3 COM对象的线程模型 305
28-1-3-2 编写一个支持Apartment线程模型的对象 307
28-1-3-3 编写一个支持Neutral线程模型的对象 307
28-1-3-1 编写一个支持Free线程模型的对象 307
28-2 注册COM对象 308
28-2-1 注册in-process服务器 308
28-2-2 注册out-of-process服务器 308
28-3 调试和测试COM对象 309
第29章 开发自动化服务器 311
29-1 新建一个自动化对象 312
29-1-1 步骤 313
29-2 公开属性、方法和事件 314
29-2-1 公开自动化的属性 314
29-2-3 公开自动化的事件 315
29-2-2 公开自动化的方法 315
29-3 自动化接口 317
29-3-1 双重接口 317
29-3-2 调度接口 318
29-3-3 定制接口 318
29-4 mashaling数据 318
29-4-1 自动化兼容类型 318
29-5 例Ⅵ.1,彩票机自动化服务器:Lottery AutoServer 319
29-5-1 功能说明 319
29-4-3 定制marshaling 319
29-4-2 自动化marshaling的类型限制 319
29-5-2 开发步骤 320
29-5-3 运行和结果 321
29-5-4 要点归纳 321
第30章 开发自动化控制器 323
30-1 通过导入类型库,新建一个自动化控制器 324
30-2 在自动化控制器中处理事件 325
30-3 连接到服务器和断开连接 325
30-5 使用一个调度接口控制服务器 326
30-4 使用一个双重接口控制服务器 326
30-6 例Ⅵ.2,一个调用MS Word打印文档的自动化控制器 327
30-6-1 功能说明 327
30-6-2 准备工作 327
30-6-3 开发步骤 328
30-6-3-1 导入Word类型库 328
30-6-3-2 自动化控制器的窗体设计 329
30-6-3-3 自动化控制器的代码设计 329
30-7 例Ⅵ.3,彩票机自动化控制器LotteryAutoClient 331
30-7-1 功能说明 331
30-6-5 恢复环境 331
30-6-6 要点归纳 331
30-6-4 运行和结果 331
30-7-2 开发步骤 332
30-7-2-1 导入LotteryAutoServer的类型库 332
30-7-2-2 自动化控制器的窗体设计 333
30-7-2-3 自动化控制器的代码设计 333
30-7-3 运行和结果 334
30-7-4 要点归纳 334
第31章 开发ActiveX控件 335
31-2 从VCL控件生成ActiveX控件 337
31-1 ActiveX控件的元素 337
31-2-1 步骤 338
31-2-2 向导生成的文件 339
31-3 基于VCL窗体生成ActiveX控件 340
31-3-1 步骤 340
31-3-2 向导生成的文件 341
31-4 ActiveX控件中的属性、方法和事件 341
31-4-1 增加额外的属性、方法和事件 342
31-4-1-1 步骤 342
31-4-1-3 增加方法 343
31-4-1-2 增加属性 343
31-4-1-4 增加事件 344
31-4-2 公开ActiveX控件的属性 344
31-4-3 用类型库实现简单的数据绑定 345
31-4-4 在Delphi容器中实现ActiveX控件的简单数据绑定 346
31-4-5 例Ⅵ.4使用一个数据感知的ActiveX控件 347
31-4-5-1 导入ActiveX控件 347
31-4-5-2 新建一个应用并使用上述控件 349
31-5 为ActiveX控件建立一个属性页 350
31-5-1 新建一个属性页 350
31-4-5-3 运行和结果 350
31-5-2 增加控件到属性页 351
31-5-3 将属性页控件与ActiveX控件的属性关联 351
31-5-3-1 更新属性页 351
31-5-4 将属性页联接到ActiveX控件 352
31-6 ActiveX控件证书 352
31-6-1 设计时证书 352
31-6-2 运行时证书 353
31-7 在Web上部署一个ActiveX控件 353
31-7-1 部署ActiveX控件的步骤 353
31-7-2 设置部署选项 354
31-7-2-1 Project页上的选项 355
31-7-2-2 Package页上的选项 356
31-7-2-3 Additional Files页上的选项 357
31-8 例Ⅵ.5一个用ActiveForm实现的在线聊天程序:ActiveFormChat 357
31-8-1 功能说明 357
31-8-2 实现方法和步骤 358
31-8-2-1 窗体设计 358
31-3-2-2 编码实现通信功能 358
31-8-3 进行Web部署 359
31-8-4 设置Internet安全选项 360
31-8-5 运行和结果 362
31-8-6 要点归纳 363
第32章 开发ASP对象 365
32-1 新建一个ASP对象 366
32-1-1 步骤 367
32-1-2 建立的代码 368
32-2 作为in-process或out-of-process服务器 370
32-3 使用ASP内建对象 370
32-4-2 开发步骤 372
32-4-2-1 开发ASP对象 372
32-4-1 功能说明 372
32-4 例Ⅵ.6 一个简单的ASP对象和页面:Hello 372
32-4-2-2 编写ASP页面 373
32-4-3 运行和结果 373
32-4-4 要点归纳 374
第33章 开发MTS/COM+应用 375
33-1 事务对象的要求 376
33-2 新建一个MTS/COM+对象 377
33-2-1 步骤 377
33-2-2 MTS/COM+对象的线程模型 378
33-2-3 在类型库编辑器中设置COM+属性 379
33-2-4 访问对象环境 380
33-3 事务的启动和完成 380
33-3-1 自动事务 381
33-3-2 客户端控制的事务 381
33-3-3 服务器端控制的事务 382
33-4 在对象间共享状态信息 382
33-4-1 使用共享属性管理器 383
33-5 安装MTS/COM+组件 384
33-6-1 管理COM+应用程序 386
33-6 管理MTS/COM+组件 386
33-6-1-1 设置 服务器空闲时关闭 387
33-6-2 管理MTS/COM+组件 388
33-6-2-1 设置事务属性 389
33-6-3 管理接口 389
33-6-4 管理方法 390
33-7 实现基于角色的安全 391
33-7-1 管理工具控制的安全 391
33-8 例Ⅵ.7一个简单的MTS/COM+对象:Lottery MTSObject 393
33-8-1 功能说明 393
33-7-2 编码实现的安全 393
33-8-2 开发步骤 394
33-8-2-1 开发MTS对象 394
33-8-2-2 安装MTS/COM+组件 394
33-8-2-3 开发客户端:LotteryMTSClient 394
33-8-3 运行和结果 395
33-8-4 要点归纳 395
PART Ⅵ小结 396
PART Ⅵ深入读物和相关资源 396
PART Ⅶ 开发多层数据库应用 397
第34章 多层数据库应用开发概述 399
34-1 基于MIDAS的多层数据库应用概述 400
34-1-1 MIDAS简介 400
34-1-2 基于MIDAS的多层应用结构 401
34-1-3 MIDAS的基本工作原理 403
34-2 应用服务器的结构 404
34-2-1 使用IAppServer接口 405
34-2-2 使用事务数据模块 406
34-2-3 远程数据模块pooling 407
34-3 客户端应用的结构 408
34-3-1-1 DCOM连接 409
34-3-1-2 Socket连接 409
34-3-1 选择一个连接协议 409
34-3-1-3 Web连接 410
34-3-1-4 SOAP连接 411
34-3-1-5 CORBA连接 411
34-4 开发多层应用概述 411
第35章 开发应用服务器 413
35-1 新建一个应用服务器 414
35-2-1 配置RemoteDataModule 417
35-2 建立远程数据模块 417
35-2-1-1 指定类名 418
35-2-1-2 指定实例类型 418
35-2-1-3 指定线程模型 418
35-2-2 配置MTSDataModule 419
35-2-2-1 指定类名 419
35-2-2-2 指定线程模型 419
35-2-2-3 指定事务属性 420
35-2-3 配置SoapDataModule 420
35-2-4-1 指定类名 421
35-2-4-2 指定实例类型 421
35-2-4 配置CorbaDataModule 421
35-2-4-3 指定线程模型 422
35-3 建立数据供应器 422
35-4 扩展应用服务器的接口 423
35-4-1 增加远程数据模块接口的步骤 423
35-4-2 增加回调到应用服务器的接口 424
35-4-3 扩展事务型应用服务器的接口 424
35-5 管理多层应用中的事务 424
35-6 在远程数据模块中支持状态信息 425
35-7 注册和安装应用服务器 426
第36章 开发客户端应用 429
36-1 新建一个客户端应用 430
36-2 使用客户端数据集 432
36-3 使用连接组件 433
36-3-1 设置DCOMConnection 434
36-3-2 设置SocketConnection 434
36-3-3 设置WebConnection 435
36-3-4 设置SoapConnection 436
36-3-5 设置CorbaConnection 436
36-3-6 代理连接 437
36-3-7 连接到服务器 438
36-3-8 拆除或改变一个服务器连接 438
36-3-9 调用服务器接口 438
36-3-9-1 晚绑定的方法 438
36-3-9-2 早绑定的方法 439
第37章 例Ⅶ.1,一个简单的多层应用:EmpServer和EmpEdit 441
37-1 功能说明 442
37-2 建立应用服务器 442
37-2-1 开发步骤 442
37-2-2 代码设计 443
37-2-3 注册和运行 445
37-3 建立客户端应用 445
37-3-1 开发步骤 445
37-3-2 代码设计 447
37-3-3 运行和结果 449
37-4 要点归纳 449
第38章 基于ActiveX的MIDAS Web应用 451
38-1 基于ActiveX的MIDAS Web应用结构 452
38-2 为客户端应用建立一个ActiveForm 452
38-3-2 开发步骤 453
38-3-1 功能说明 453
38-3 例Ⅶ.2,一个简单的ActiveX客户端:EmpEditX 453
38-3-3 运行和结果 454
38-3-4 要点归纳 454
第39章 基于InternetExpress的MIDAS Web应用 455
39-1 基于InternetExpress的MIDAS Web应用结构 456
39-2 基于InternetExpress建立Web服务器应用 457
39-2-1 新建一个InternetExpress应用 457
39-2-2 使用JavaScript库 458
39-2-3 给予访问和加载应用服务器的许可 459
39-3 使用XMLBroker 461
39-3-1 获取XML数据包 462
39-3-2 从XML delta包申请更新 462
39-4 使用InetX页面生成器 463
39-4-1 使用Web页面编辑器 464
39-4-2 设置Web项的属性 465
39-4-2-1 Web项与XMLBroker的关联 465
39-4-2-2 Web项与动作项的关联 466
39-4-2-3 Web项的外观属性 466
39-4-3 定制InternetExpress页面生成器模板 466
39-5-2 开发步骤 468
39-5-1 功能说明 468
39-5 例Ⅶ.3,一个简单的InternetExpress应用:EmpEditXML 468
39-5-3 运行和结果 470
39-5-4 要点归纳 471
第40章 例Ⅶ.2,一个结合MIDAS、COM+的多层应用:BankMTS 473
40-1 功能说明 474
40-2 数据库设计 474
40-3 应用服务器的设计与实现 475
40-3-1 数据模块的搭建 475
40-3-2 代码设计 479
40-4-1 设计概述 481
40-3-3 安装对象到COM+应用程序 481
40-4 客户端的设计与实现 481
40-4-2 DCOM连接组件和XMLBROKER组件 482
40-4-3 页面生成器 484
40-4-4 动作项 491
40-5 运行和结果 494
40-6 要点归纳 496
PARTⅦ小结 498
PARTⅦ深入读物和相关资源 498
附录A 名词与术语索引 499