第一章 网络程序开发基础 1
1.1 计算机网络基础 1
1.1.1 计算机网络的构成 1
1.1.2 计算机网络的作用 1
1.1.3 计算机网络分类 2
1.1.4 计算机网络的工作模型和网络协议 2
14.4.1 来自Objcct Wizard的代码 3
1.2.1 Internet 5
1.2 Internet与WWW 5
1.2.2 WWW 6
1.3 网络应用程序开发概述 7
1.3.1 概述 7
1.3.2 网络环境与C/S模式 7
1.4 小结 9
第二章 Visual C++和网络的关系 10
2.1 作为Windows开发系统的VC 10
2.1.1 Microsoft基础类 10
2.1.2 App Wizard 11
2.1.3 Class Wizard 11
2.1.4 资源编辑器 11
2.3.2 对象继承 12
2.2 文档视图结构 12
2.3.1 对象行为 12
2.3 基本VC++元素 12
2.3.3 由事件产生消息 13
2.3.4 对消息作出响应的对象 13
2.4 MAPI支持 13
2.5 Internet支持 13
2.5.1 Internet上的ActiveX 14
2.5.2 Asynchronous Monikers 14
2.5.3 WinInet 15
2.5.4 ISAP(Internet Server API) 15
2.6.2 Windows Sockets类 16
2.6 Internet和网络类 16
2.6.1 ISAPI类 16
2.6.3 WinInet类 17
2.7 小结 17
第三章 创建一个完整的MFC程序 18
3.1 创建一个显示字符串的程序 18
3.1.1 用App wizard创建一个外壳 18
3.1.2 显示字符串 18
3.2 创建ShowString菜单 22
3.3 创建ShowString对话框 25
3.3.1 ShowString的About对话框 25
3.3.2 ShowString的Options对话框 25
3.4.1 对话框类 27
3.4 使菜单工作 27
3.4.2 捕获消息 31
3.5 使对话框工作 33
3.6 在Options对话框中增加各种外观选项 34
3.6.1 改变Options对话框 34
3.6.2 在对话框类中增加成员变量 36
3.6.3 在文档类中增加成员变量 36
3.6.4 改变OnToolsOption() 38
3.6.5 改变OnDraw() 39
3.7 小结 40
4.1.2 ActiveX功能综述 41
4.1.1 AxtiveX的历史 41
4.1 ActiveX基本概念和术语 41
第四章 ActiveX概念和术语 41
4.1.3 ActiveX的要素 42
4.1.4 Active Server Pages(ASP) 42
4.1.5 ActiveX在因特网的应用 43
4.1.6 ActiveX数据库对象(ADO) 43
4.2 对象链接 44
4.3 对象嵌入 46
4.4 容器和服务器 48
4.5 更加直观的用户界面 48
4.6 组件对象模型 50
4.7 自动化 51
4.8 ActiveX控件 53
4.9 小结 53
第五章 创建ActiveX容器应用程序 54
5.1 改变ShowString程序 54
5.1.1 AppWizard-自动产生ActiveX容器代码 54
5.1.2 ShowString程序创建的步骤 71
5.2 移动 调整 跟踪 72
5.3 控制多个对象和对象选择 75
5.3.1 单击测试 75
5.3.2 画多个容器项 76
5.3.3 控制鼠标单击 77
5.3.4 控制双击 80
5.4 实现拖和放 81
5.4.1 实现脱出对象 81
5.4.2 实现放进对象 83
5.4.3 放时注册视 83
5.4.4 创建函数框架增加成员变量 84
5.4.5 函数ONDragEnter() 85
5.4.6 OnDragOver() 函数 87
5.4.7 函数OnDragLeave() 89
5.4.8 函数OnDragDrop() 90
5.4.9 测试放入功能 92
5.4.10 删除对象 92
5.5 小结 93
第六章 创建ActiveXServer应用程序 94
6.1 在ShowString程序中增加服务器功能 94
6.1.1 AppWizard的服务器样板文件 94
6.1.2 重新显示字符串 110
6.2 既是容器又是服务器的程序 115
6.2.1 创建另一个版本的ShowString程序 115
6.2.2 嵌套和递归问题 115
6.3.1 把ShowString 程序变化成ActiveX文档服务器程序 117
6.3 ActiveX文档 117
6.3.2 文档扩展名代码 119
6.3.4 最新版本的ShowString程序 119
6.3.3 ActiveX文档服务器代码 119
6.4 小结 121
第七章 创建ActiveX服务器自动化程序 122
7.1 重新设计ShowString程序 122
7.1.1 AppWizard添加的自动化样码 122
7.1.2 OnD 的Draw()函数 131
7.1.3 显示窗口 134
7.2 在VB中创建一个控制器程序 136
7.3 类型库和ActiveX内幕 138
7.4 小结 140
第八章 创建ActiveX控件程序 142
8.1 创建一个旋转骰子控件 143
8.1.1 创建控件外壳 143
8.1.2 AppWizard产生的代码 145
8.2 显视当前的值 148
8.2.1 增加属性 148
8.1.3 设计控件 148
8.2.2 写画的代码 151
8.3 响应鼠标单击和旋转骰子 153
8.3.1 通知容器 153
8.3.2 旋转骰子 155
8.4 创建一个更好的用户界面 156
8.4.1 一个位图图标 157
8.4.2 显示点 157
8.5 产生一个属性页 162
8.5.1 数字和点的对应 162
8.5.2 用户选择颜色 166
8.7 将来的改进 172
8.6 按要求旋转 172
8.7.1 允许和取息旋转 173
8.7.2 通用的骰子 173
8.7.3 骰子数组 173
8.8 小结 173
第九章 Active Server Page 174
9.1构建Active Server Page 174
9.1.1 Active Server Page是什么? 174
9.1.2 Active Server Page可以做什么? 175
9.1.3 Active Server Page是怎样工作的? 175
9.1.4 在Active Server Page中结合Script脚本 176
9.1.5 在Active Server Page中结合对象和组件 182
9.1.6 设置Active Server Page以及常见问题 184
9.2 单独利用Active Server Page工作 187
9.2.1 Request和Responsc对象 187
9.2.2 利用缓存输出 189
9.2.3 处理运行时间长的脚本以及内容大的主页 191
9.2.4 处理主页的Header 193
9.2.5 对主页的Headers进行授权操作 197
9.3 对多于一个的Active Server Page进行处理 200
9.3.1 从HTML和Form中接受信息 200
9.3.2 接受一个Query字段 205
9.3.3 重引导用户到另一个主页位置 209
9.3.4 包含其他文件 210
9.4 小结 212
第十章 数据库组件 213
10.1 Activcx数据对象 213
10.1.1 Activcx数据对象概述 213
10.1.2 使用Activcx数据对象 213
10.1.3 使用连接对象 216
10.2.1 用记录集显示记录 221
10.2 使用记录集 221
10.2.2 记录集游标和锁定类型 224
10.2.3 操作记录集的高级方法 226
10.3 小结 233
第十一章 Sockets,MAPI与Internet 234
11.1 使用Windows Sockets 234
11.2 使用Messaging API(MAPI) 237
11.2.1 什么是MAPI 237
11.2.2 在Win 95下Logo应用程序的需求 238
11.2.3 MAPI高级应用 240
11.2.4 公共消息调用 240
11.2.5 扩展MAPT 242
11.2.6 活动消息映射 242
11.2.7 使用WinInet类 243
11.2.8 使用Internet Server API(ISAPI)类 244
11.3 小结 248
第十二章 用WinInet类进行网络编程 249
12.1 设计Internet查询程序 249
12.2 建立Query对话框 250
12.3 查询HTTP站点 253
12.4 查询FTP站点 259
12.5 查询Gopher站点 261
12.6 用Gopher发送Finger查询 264
12.7 用Gopher发送Whois查询 268
12.8 小结 270
13.1 在Internet中嵌入ActiveX控件 272
第十三章 建立Internet ActiveX控件 272
13.2 在NetscopeNavegator网页中嵌入ActiveX控件 275
13.3 为初始化和脚本运行进行安全注册 277
13.4 在ActiveX和JaveApplet之间作出选择 281
13.5 用AppWizard建立更快的ActiveX控件 282
13.6 用异步属性加速控件的载入 286
13.6.1 属性 287
13.6.2 使用BLOB 287
13.6.3 改变Dieroll 288
13.6.4 调试Dieroll 296
13.7 小结 298
第十四章 活动模板库(ATL) 299
14.1 为什么使用ATL? 299
14.2 以Appwizard作为开始 299
14.3 使用Object Wizard 300
14.3.1 加入控件到工程中 300
14.3.2 给控件命名 302
14.3.3 设置控件的属性 302
14.3.4 支持库存属性 305
14.4 给控件增加属性 306
14.4.2 增加Ready State库存属性 309
14.4.3 增加自定义属性 310
14.4.4 属性初如化 313
14.4.5 增加异步属性 314
14.5 画控件 318
14.6 持久和属性页 322
14.6.1 增加属性页 323
14.10 初始化安全注册和脚本安全注册 324
14.6.3 属性包的持久性 327
14.6.2 在属性页和CDieRoll之间建立联系 327
14.7 在Control Pad中使用控件 328
14.8 增加事件 329
14.8.1 给事件接口增加方法 329
14.8.2 实现IConncctionPoint接口 330
14.8.3 触发Click事件 331
14.8.4 触发ReadyStateChange事件 331
14.9 公开DoRoll()函数 332
14.11 为在设计模式中使用控件作准备 334
14.12 尽量减小可执行文件的尺寸 336
14.13 在Web页中使用控件 338
14.14 小结 339
附录 基本类库中的消息映射函数 340