书籍详情
PowerBuilder Win32 API程序设计(高级卷)
作者:马贵安等编著
出版社:清华大学出版社
出版时间:2004-08-01
ISBN:9787302089872
定价:¥73.00
购买这本书可以去
内容简介
本书特点:·深层次诠释Win32API技术的内涵·全方位扩充和丰富PowerBuilder的功能·快速提升用户的PowerBuilder应用开发水准·适用于PowerBuilder7.0及以上版本·配书光盘提供了本书范例的全部源代码丛书特色:经典:全球第一套系统介绍PowerBuilder中Win32APl技术应用方案的书籍实用:面向一线程序员,适用于初、中、高各个级别的PowerBuilder程序员参考系统:全面涵盖Win32API开发技术,极大地扩充和丰富PowerBuilder应用功能通过Windows应用程序接口API,可以丰富和扩充PowerBuilder功能。本套丛书是目前国内外第一套系统介绍PowerBuilder中Win32API程序设计的书籍,丛书以丰富的实例,系统、全面、深入介绍了在PowerBuilder中调用Windows系统API函数的方法,提供了大量应用系统开发中迫切需要,而用PowerBuilder无法实现的功能。该书为《PowerBuilderWin32API程序设计宝典――高级卷》,全书由六篇十九章组成,内容包括Windows系统的消息机制、通过消息增强控件功能的方法及Windows通用控件的调用;Win32API打印控制、位图操作、逻辑字体与文本、网络与Internet、FTP应用开发、Winsock网络应用开发等。全书以一定的广度和深度阐述了Win32API程序设计中不易掌握,而且相关资料比较匮乏的内容。书中提供的有关消息、打印控制、位图操作、网络访问、FTP文件传输、Winsock等Win32API高级应用的解决方案,将大大扩充PowerBuilder的许多功能。本书可供具有一定PowerBuilder程序设计基础,而需要在PowerBuilder中进一步应用Win32API高级功能的程序员使用,也可供VisualBasic或Delphi等其它开发语言的程序员参考。
作者简介
马贵安,高级工程师,现供职于黄河水利水电开发总公司。长期从事MIS及GIS系统在企业的应用和推广工作。主持和参与开发了多个应用于水利、文物保护、水环境保护等领域的信息系统。对Win32API技术及其在PowerBuilder中的应用有很深的造诣。李明武,大学讲师,现供职于中国人民银行郑州培训学院信息部。长期从事计算机基础教学和网络颁布式数据应用系统的研发。精通包括PowerBuilder在内的多种开发语言。曾经参与《金融计算机应用》、《计算机操作基础教程》等已知的编写。牛永生,高级工程师,现供职于黄河流域水资源保护局。长期以来致力于PowerBuilder与Sybase数据库及地理信息系统在水资源保护领域应用系统的研发。其主持开发的水环境监测信息系统曾获省、部级奖。
目录
第一篇 Windows系统消息篇
第1章 Windows系统的消息机制 3
1.1 Windows 的工作机制 3
1.1.1 Windows 的工作方式――窗口. 事件和消息 3
1.1.2 句柄的概念 4
1.1.3 消息的概念 4
1.1.4 消息的类型 5
1.1.5 用于发送消息的API函数 7
1.2 事件与消息 9
1.2.1 从消息到事件 9
1.2.2 PB事件对消息的封装 11
1.3 消息应用的几个实例 20
1.3.1 通用消息设置对话框的超时关闭 20
1.3.2 通过消息设置窗口标题和定义窗口热键 22
1.3.3 使用消息控制窗口系统菜单 25
1.4 通过消息将应用图标加入到系统托盘中 27
1.4.1 相关函数和结构 27
1.4.2 载入图标的三种途径 29
1.4.3 创建实现相关功能的用户对象 32
1.4.4 应用实例 41
第2章 通过消息增强控件功能 47
2.1 进度条控件消息 47
2.1.1 进度条控件消息 47
2.1.2 通过消息改变进度条前景色和背景色 48
2.2 组合框控件消息 49
2.2.1 组合框控件消息 49
2.2.2 使用消息为组合框添加项目内容 51
2.2.3 组合框中项目内容的快速查找 52
2.2.4 使用消息为组合框添加文件列表 53
2.2.5 通过消息控制组合框的拉下或收起 54
2.3 列表框控件消息解析 56
2.3.1 列表框消息 56
2.3.2 随鼠标移动自动选择列表框中项 58
2.3.3 在列表框中快速查找开头含有某字符串的项 59
2.3.4 为含有超长文本的列表框增加提示功能 60
2.4 ListView控件消息 62
2.4.1 ListView控件消息 62
2.4.2 让ListView控件显示扁平滚动条 63
2.4.3 自动调整ListView控件的列宽 63
2.4.4 为ListView控件列增加Tooltips功能 65
2.5 TreeView控件消息 66
2.5.1 TreeView控件消息 66
2.5.2 设置TreeView控件节点文本的最大长度 68
2.5.3 仅允许TreeView控件节点文本中输入数字 69
第3章 Windows通用控件的调用 70
3.1 Windows通用控件概述 70
3.1.1 通用控件窗口类 70
3.1.2 判断通用控件动态库的版本 72
3.1.3 动态创建控件 76
3.2 月历控件调用 79
3.2.1 月历控件概述 79
3.2.2 月历控件的样式 80
3.2.3 月历控件的消息 81
3.2.4 创建应用于数据窗口的月历控件用户对象 86
3.2.5 在数据窗口中调用月历控件对象 122
3.3 日期与时间检出器控件的调用 127
3.3.1 日期与时间检出器控件概述 127
3.3.2 日期与时间检出控件的消息 129
3.3.3 创建日期与时间检出器控件用户对象 132
3.3.4 日期与时间检出器控件用户对象的调用 145
3.4 工具提示(ToolTip)控件 149
3.4.1 工具提示(ToolTip)控件概述 149
3.4.2 工具提示(ToolTip)控件的消息 150
3.4.3 创建工具提示(ToolTip)控件用户对象 157
3.4.4 窗口中调用工具提示控件用户对象 167
3.4.5 数据窗口中调用工具提示控件用户对象 169
3.5 动画控件的调用 171
3.5.1 动画控件概述 171
3.5.2 动画控件的消息 173
3.5.3 创建动画控件用户对象 174
3.5.4 调用动画控件用户对象 177
第4章 键盘消息机制及控制 179
4.1 系统键盘控制概述 179
4.1.1 键盘响应的消息机制 179
4.1.2 虚拟键定义 180
4.1.3 热键支持 183
4.2 键盘控制应用实例 183
4.2.1 设置ScrollLock. NumLock和CapsLock键的状态 183
4.2.2 数据窗口中用箭头键替代Tab键的功能 190
4.2.3 数据窗口中用Enter键替代Tab键的功能 192
4.2.4 屏幕及活动窗口图像捕捉功能的实现 194
4.2.5 通过Keybd_event函数最小化所有窗口 195
4.3 为PB应用注册热键 196
4.3.1 相关API函数 197
4.3.2 注册热键的方法 198
4.4 鼠标控制 201
4.4.1 将鼠标活动限定在某个范围内 201
4.4.2 追踪鼠标移动 204
4.4.3 使用动画鼠标指针 206
4.5 键盘输入法 208
4.5.1 键盘输入法相关API函数 208
4.5.2 获取系统键盘输入法列表 210
4.5.3 输入法的自动切换 211
第二篇 打印及打印机控制篇
第5章 Win32打印控制API基础 217
5.1 Win32打印机API概述 217
5.2 打印及打印机控制API函数 219
5.2.1 打开打印机对象函数 219
5.2.2 获取或设置打印机信息函数 220
5.2.3 获取或设置缺省打印机函数 222
5.2.4 枚举打印机及打印作业信息函数 223
5.2.5 获取打印设备属性函数 225
5.3 打印及打印机相关数据结构 228
5.3.1 DEVMODE结构 228
5.3.2 PRINTER_DEFAULTS结构 236
5.3.3 PRINTER_INFO_1结构 237
5.3.4 PRINTER_INFO_2结构 238
第6章 打印及打印机控制 240
6.1 系统缺省打印机的获取和设置 240
6.1.1 Windows 2000缺省打印机的获取和设置 240
6.1.2 Windows 95/98/Me缺省打印机的获取和设置 243
6.1.3 Windows NT 4.0默认打印机的获取和设置 246
6.2 获取系统安装的打印机列表 250
6.2.1 获取系统安装的打印机列表 250
6.2.2 获取指定打印机打印作业数目 253
6.3 获取打印设备的各项性能 255
6.3.1 获取打印机支持的纸型 255
6.3.2 获取打印机支持的纸盒 261
6.3.3 获取打印机支持的打印精度 264
第7章 定制仿Word打印. Excel页面设置对话框 267
7.1 打印机控制用户对象的建立 267
7.2 定制Word风格打印设置对话框 289
7.2.1 Word打印对话框的特点 289
7.2.2 Word风格打印对话框的建立 290
7.3 定制Excel风格的页面设置对话框 296
7.3.1 Excel风格的页面设置对话框的特点 296
7.3.2 定制Excel风格的页面设置对话框 297
7.4 综合示例 304
7.4.1 示例窗口 304
7.4.2 打印预览窗口 305
第三篇 位图操作篇
第8章 位图操作基础 311
8.1 设备场景 311
8.1.1 什么是设备场景? 311
8.1.2 设备场景的类型 313
8.1.3 获取和释放窗口的设备场景句柄 315
8.1.4 创建和删除设备场景 316
8.1.5 体验设备场景 318
8.2 位图. 画笔和刷子的基本概念 322
8.2.1 位图 322
8.2.2 画笔 324
8.2.3 刷子 328
8.2.4 自定义图案刷子 332
8.3 常用位图对象API函数 334
8.3.1 位图对象创建函数 334
8.3.2 位图对象绘制函数 336
8.3.3 对象操作函数 344
8.3.4 载入位图文件函数 346
8.3.5 休眠函数 348
8.4 光栅运算 348
8.4.1 什么是光栅运算? 348
8.4.2 Windows预定义光栅运算码 350
8.4.3 ROP效果演示 350
第9章 位图操作应用实例 357
9.1 图像透明显示效果的实现 357
9.1.1 通过光栅运算实现图像透明显示效果 357
9.1.2 图像透明显示效果的另一种解决方案 368
9.2 动画效果的实现 373
9.2.1 动画效果的实现基本思路 373
9.2.2 应用示例 375
9.3 图像特技显示效果的实现 378
9.3.1 各种图像特技显示效果的实现原理 378
9.3.2 特技显示效果的实现示例 382
9.4 图像特技效果在窗口中的应用 396
9.4.1 为窗口增加背景图案 396
9.4.2 程序退出时窗口变暗效果的实现 402
第四篇 逻辑字体与文本篇
第10章 逻辑字体与文本 411
10.1 字体概述 411
10.1.1 字体及其分类 411
10.1.2 字体家族 413
10.1.3 字符集 414
10.1.4 字体要素 415
10.2 系统字体枚举. 添加和删除 416
10.2.1 获取系统安装的字体列表 416
10.2.2 为系统注册新字体 421
10.2.3 注册字体实例――条形码的使用 428
10.3 逻辑字体对象的建立 429
10.3.1 创建逻辑字体 429
10.3.2 通过CreateFont函数创建逻辑字体 434
10.4 文本输出及显示特效的实现 436
10.4.1 文本输出相关API函数 436
10.4.2 文本旋转效果的实现 438
10.4.3 文本透明效果的实现 440
10.4.4 文本多彩效果的实现 441
10.5 通过文本函数增强PB进度条控件功能 443
10.5.1 改进的PB进度条控件 443
10.5.2 定制进度条控件 447
第五篇 网络与Internet篇
第11章 网络访问 455
11.1 网络连接对话框的调用 455
11.1.1 网络连接对话框函数 455
11.1.2 网络连接对话框函数 458
11.2 枚举和浏览网络资源 465
11.2.1 枚举网络资源 465
11.2.2 通过文件夹浏览通用对话框浏览网络资源 471
11.3 添加. 取消网络连接 475
11.3.1 相关API函数 475
11.3.2 连接网络资源示例 478
11.4 网络驱动器UNC路径名及映射 480
11.4.1 获取网络驱动器的UNC路径名 480
11.4.2 映射网络驱动器 482
11.5 网络时间同步 487
11.5.1 获取服务器的时间信息 487
11.5.2 与网络服务器时间同步 498
11.6 获取用户的网络登录名 501
11.7 判断网络的连接状态 503
11.8 检测网络IP地址能否联通 505
11.8.1 Ping命令与网际消息控制协议 (ICMP) 505
11.8.2 通过API函数发送ICMP回应请求 506
11.9 获取主机的MAC物理地址 512
11.9.1 ARP协议及其工作原理 513
11.9.2 通过IP地址获取本地或远程主机的MAC地址 514
第12章 Internet Explore浏览器 518
12.1 获取浏览器信息 518
12.1.1 取得默认浏览器的路径和文件名 518
12.1.2 取得IE浏览器的版本信息 521
12.2 从应用中打开浏览器 527
12.2.1 使用API函数打开浏览器 528
12.2.2 使用PB动态库中函数打开浏览器 529
12.3 巧用浏览器功能 529
12.3.1 文件下载 529
12.3.2 使用IE自动完成功能 532
12.3.3 操作IE的收藏夹 536
12.4 为IE工具栏添加自定义按钮 542
12.4.1 注册表中IE工具栏自定义按钮的相关信息 542
12.4.2 添加自定义按钮应用示例 544
12.5 在PB中定制浏览器 547
12.5.1 IE浏览器架构 547
12.5.2 WebBrowser控件的属性. 方法. 事件和OLE命令 548
12.5.3 使用WebBrowser控件定制浏览器 552
第13章 远程访问服务RAS 560
13.1 远程访问服务RAS 概述 5604
13.1.1 远程访问服务 560
13.1.2 远程访问服务API接口 561
13.1.3 Windows的RAS电话簿 563
13.1.4 RAS错误信息 564
13.2 调用RAS通用对话框 565
13.2.1 调用主拨号网络对话框 565
13.2.2 调用正在拨号对话框 568
13.2.3 调用拨号网络监视器对话框 570
13.2.4 Windows 2000/XP中调用连接属性对话框 572
13.2.5 Windows 95/98中调用连接属性对话框 575
13.2.6 调用创建新连接对话框 577
13.3 获取系统拨号连接列表 579
13.3.1 获取系统所有拨号连接列表 579
13.3.2 获取当前所有活动连接列表 582
13.4 建立与远程网络的连接 585
13.4.1 建立连接 585
13.4.2 获取连接状态 588
13.4.3 终止远程访问连接 591
13.4.4 建立PB远程访问用户对象 592
第14章 WinInet拨号连接控制 603
14.1 WinInet拨号连接API函数概述 603
14.2 启用拨号连接 605
14.2.1 启动IE默认拨号连接 605
14.2.2 启动指定拨号连接 608
14.3 确定网络连接状态 612
14.3.1 获取当前网络的连接状态 612
14.3.2 测试到Internet的网络连接条件 617
第15章 WinInet基础 620
15.1 Internet 协议 620
15.1.1 TCP/IP协议 620
15.1.2 HTTP协议 624
15.1.3 OSI模型高层接口――WinInet 623
15.2 WinInet接口函数 625
15.2.1 WinInet接口函数 625
15.2.2 WinInet接口函数句柄 627
15.2.3 WinInet句柄层次关系 628
15.3 WinInet版本及错误信息 631
15.3.1 确定WinInet版本的重要性 631
15.3.2 获取WinInet错误信息 635
第16章 FTP文件传输 643
16.1 FTP概述 643
16.1.1 FTP协议和工作原理 643
16.1.2 匿名FTP服务 644
16.2 建立Internet会话 645
16.2.1 FTP函数的调用层次 645
16.2.2 打开Internet会话句柄 647
16.2.3 建立Internet会话 651
16.3 FTP服务器目录操作 654
16.3.1 在FTP服务器上获取和切换工作目录 654
16.3.2 在FTP服务器上创建和移除目录 655
16.3.3 列出FTP服务器指定目录下的子目录或文件 659
16.4 FTP服务器文件操作 667
16.4.1 从FTP服务器下载文件 667
16.4.2 获取FTP服务器端文件的大小 670
16.4.3 向FTP服务器上传文件 674
16.4.4 删除FTP服务器端文件 678
16.4.5 重新命名FTP服务器端文件 681
16.5 通过FTPCommand函数发送FTP命令 684
16.5.1 FTP控制连接和数据连接 684
16.5.2 常用FTP命令 685
16.5.3 使用FTPCommand函数发送FTP命令 689
16.6 构筑FTP客户端应用系统 694
16.6.1 创建PB FTP用户对象 694
16.6.2 创建客户端文件和目录操作用户对象 712
16.6.3 构建FTP客户端应用系统 720
第六篇 Winsock网络应用开发篇
第17章 Winsock网络应用基础 749
17.1 Windows Sockets概述 749
17.1.1 Windows Sockets基本概念 749
17.1.2 Winsock在OSI模型中的地位 750
17.1.3 Winsock传输数据类型 752
17.1.4 Winsock的接口函数 753
17.1.5 Winsock工作流程 756
17.2 启动Winsock服务 758
17.2.1 Winsock服务启动和终止 758
17.2.2 处理Winsock错误 763
17.3 主机名称与IP地址 768
17.3.1 IP地址概述 768
17.3.2 IP地址IPv4与Ulong格式的相互转换 770
17.3.3 获取本地主机名称 772
17.3.4 获取主机IP地址 773
17.3.5 网络顺序和主机顺序数值位相互转换 778
17.4 通过Socket连接到远程主机 786
17.4.1 创建或关闭Socket 786
17.4.2 通过Socket连接到远程主机 787
17.4.3 与远程主机建立连接示例 790
17.4.4 绑定(Binding)Socket 794
17.4.5 接收数据 795
17.4.6 发送数据 799
17.4.7 侦听和接受连接请求 805
第18章 Winsock网络应用开发 808
18.1 创建Winsock用户对象 808
18.1.1 声明用户对象结构. 外部函数和常量 808
18.1.2 用户对象的事件处理程序 812
18.1.3 创建用户对象函数 814
18.2 通过Winsock实现FTP功能 830
18.2.1 通过Winsock实现FTP功能的基本思路 830
18.2.2 创建基于Winsock 的FTP用户对象 832
18.2.3 创建Winsock FTP应用 855
18.3 通过Winsock发送电子邮件 885
18.3.1 发送邮件的基本思路 886
18.3.2 创建基于Winsock 的SMTP用户对象 887
18.3.3 创建Winsock SMTP应用 897
18.4 使用Winsock API实现点对点通信 900
18.4.1 客户端程序 900
18.4.2 服务器端程序 904
第19章 Winsock控件及网络应用开发 908
19.1 Winsock控件的属性. 事件和方法 908
19.1.1 Winsock控件的属性 908
19.1.2 Winsock控件的方法 909
19.1.3 Winsock控件的事件 910
19.2 使用Winsock控件创建简单的网络应用 915
19.2.1 创建简单的TCP网络应用 915
19.2.2 创建简单的UDP网络应用 920
19.3 使用Winsock控件实现与远程时间服务器时间同步 923
19.3.1 与时间服务器时间同步的基本原理 924
19.3.2 与时间服务器时间同步应用示例 925
附录A 函数索引 929
附录B 结构索引 932
附录C 示例索引 935
第1章 Windows系统的消息机制 3
1.1 Windows 的工作机制 3
1.1.1 Windows 的工作方式――窗口. 事件和消息 3
1.1.2 句柄的概念 4
1.1.3 消息的概念 4
1.1.4 消息的类型 5
1.1.5 用于发送消息的API函数 7
1.2 事件与消息 9
1.2.1 从消息到事件 9
1.2.2 PB事件对消息的封装 11
1.3 消息应用的几个实例 20
1.3.1 通用消息设置对话框的超时关闭 20
1.3.2 通过消息设置窗口标题和定义窗口热键 22
1.3.3 使用消息控制窗口系统菜单 25
1.4 通过消息将应用图标加入到系统托盘中 27
1.4.1 相关函数和结构 27
1.4.2 载入图标的三种途径 29
1.4.3 创建实现相关功能的用户对象 32
1.4.4 应用实例 41
第2章 通过消息增强控件功能 47
2.1 进度条控件消息 47
2.1.1 进度条控件消息 47
2.1.2 通过消息改变进度条前景色和背景色 48
2.2 组合框控件消息 49
2.2.1 组合框控件消息 49
2.2.2 使用消息为组合框添加项目内容 51
2.2.3 组合框中项目内容的快速查找 52
2.2.4 使用消息为组合框添加文件列表 53
2.2.5 通过消息控制组合框的拉下或收起 54
2.3 列表框控件消息解析 56
2.3.1 列表框消息 56
2.3.2 随鼠标移动自动选择列表框中项 58
2.3.3 在列表框中快速查找开头含有某字符串的项 59
2.3.4 为含有超长文本的列表框增加提示功能 60
2.4 ListView控件消息 62
2.4.1 ListView控件消息 62
2.4.2 让ListView控件显示扁平滚动条 63
2.4.3 自动调整ListView控件的列宽 63
2.4.4 为ListView控件列增加Tooltips功能 65
2.5 TreeView控件消息 66
2.5.1 TreeView控件消息 66
2.5.2 设置TreeView控件节点文本的最大长度 68
2.5.3 仅允许TreeView控件节点文本中输入数字 69
第3章 Windows通用控件的调用 70
3.1 Windows通用控件概述 70
3.1.1 通用控件窗口类 70
3.1.2 判断通用控件动态库的版本 72
3.1.3 动态创建控件 76
3.2 月历控件调用 79
3.2.1 月历控件概述 79
3.2.2 月历控件的样式 80
3.2.3 月历控件的消息 81
3.2.4 创建应用于数据窗口的月历控件用户对象 86
3.2.5 在数据窗口中调用月历控件对象 122
3.3 日期与时间检出器控件的调用 127
3.3.1 日期与时间检出器控件概述 127
3.3.2 日期与时间检出控件的消息 129
3.3.3 创建日期与时间检出器控件用户对象 132
3.3.4 日期与时间检出器控件用户对象的调用 145
3.4 工具提示(ToolTip)控件 149
3.4.1 工具提示(ToolTip)控件概述 149
3.4.2 工具提示(ToolTip)控件的消息 150
3.4.3 创建工具提示(ToolTip)控件用户对象 157
3.4.4 窗口中调用工具提示控件用户对象 167
3.4.5 数据窗口中调用工具提示控件用户对象 169
3.5 动画控件的调用 171
3.5.1 动画控件概述 171
3.5.2 动画控件的消息 173
3.5.3 创建动画控件用户对象 174
3.5.4 调用动画控件用户对象 177
第4章 键盘消息机制及控制 179
4.1 系统键盘控制概述 179
4.1.1 键盘响应的消息机制 179
4.1.2 虚拟键定义 180
4.1.3 热键支持 183
4.2 键盘控制应用实例 183
4.2.1 设置ScrollLock. NumLock和CapsLock键的状态 183
4.2.2 数据窗口中用箭头键替代Tab键的功能 190
4.2.3 数据窗口中用Enter键替代Tab键的功能 192
4.2.4 屏幕及活动窗口图像捕捉功能的实现 194
4.2.5 通过Keybd_event函数最小化所有窗口 195
4.3 为PB应用注册热键 196
4.3.1 相关API函数 197
4.3.2 注册热键的方法 198
4.4 鼠标控制 201
4.4.1 将鼠标活动限定在某个范围内 201
4.4.2 追踪鼠标移动 204
4.4.3 使用动画鼠标指针 206
4.5 键盘输入法 208
4.5.1 键盘输入法相关API函数 208
4.5.2 获取系统键盘输入法列表 210
4.5.3 输入法的自动切换 211
第二篇 打印及打印机控制篇
第5章 Win32打印控制API基础 217
5.1 Win32打印机API概述 217
5.2 打印及打印机控制API函数 219
5.2.1 打开打印机对象函数 219
5.2.2 获取或设置打印机信息函数 220
5.2.3 获取或设置缺省打印机函数 222
5.2.4 枚举打印机及打印作业信息函数 223
5.2.5 获取打印设备属性函数 225
5.3 打印及打印机相关数据结构 228
5.3.1 DEVMODE结构 228
5.3.2 PRINTER_DEFAULTS结构 236
5.3.3 PRINTER_INFO_1结构 237
5.3.4 PRINTER_INFO_2结构 238
第6章 打印及打印机控制 240
6.1 系统缺省打印机的获取和设置 240
6.1.1 Windows 2000缺省打印机的获取和设置 240
6.1.2 Windows 95/98/Me缺省打印机的获取和设置 243
6.1.3 Windows NT 4.0默认打印机的获取和设置 246
6.2 获取系统安装的打印机列表 250
6.2.1 获取系统安装的打印机列表 250
6.2.2 获取指定打印机打印作业数目 253
6.3 获取打印设备的各项性能 255
6.3.1 获取打印机支持的纸型 255
6.3.2 获取打印机支持的纸盒 261
6.3.3 获取打印机支持的打印精度 264
第7章 定制仿Word打印. Excel页面设置对话框 267
7.1 打印机控制用户对象的建立 267
7.2 定制Word风格打印设置对话框 289
7.2.1 Word打印对话框的特点 289
7.2.2 Word风格打印对话框的建立 290
7.3 定制Excel风格的页面设置对话框 296
7.3.1 Excel风格的页面设置对话框的特点 296
7.3.2 定制Excel风格的页面设置对话框 297
7.4 综合示例 304
7.4.1 示例窗口 304
7.4.2 打印预览窗口 305
第三篇 位图操作篇
第8章 位图操作基础 311
8.1 设备场景 311
8.1.1 什么是设备场景? 311
8.1.2 设备场景的类型 313
8.1.3 获取和释放窗口的设备场景句柄 315
8.1.4 创建和删除设备场景 316
8.1.5 体验设备场景 318
8.2 位图. 画笔和刷子的基本概念 322
8.2.1 位图 322
8.2.2 画笔 324
8.2.3 刷子 328
8.2.4 自定义图案刷子 332
8.3 常用位图对象API函数 334
8.3.1 位图对象创建函数 334
8.3.2 位图对象绘制函数 336
8.3.3 对象操作函数 344
8.3.4 载入位图文件函数 346
8.3.5 休眠函数 348
8.4 光栅运算 348
8.4.1 什么是光栅运算? 348
8.4.2 Windows预定义光栅运算码 350
8.4.3 ROP效果演示 350
第9章 位图操作应用实例 357
9.1 图像透明显示效果的实现 357
9.1.1 通过光栅运算实现图像透明显示效果 357
9.1.2 图像透明显示效果的另一种解决方案 368
9.2 动画效果的实现 373
9.2.1 动画效果的实现基本思路 373
9.2.2 应用示例 375
9.3 图像特技显示效果的实现 378
9.3.1 各种图像特技显示效果的实现原理 378
9.3.2 特技显示效果的实现示例 382
9.4 图像特技效果在窗口中的应用 396
9.4.1 为窗口增加背景图案 396
9.4.2 程序退出时窗口变暗效果的实现 402
第四篇 逻辑字体与文本篇
第10章 逻辑字体与文本 411
10.1 字体概述 411
10.1.1 字体及其分类 411
10.1.2 字体家族 413
10.1.3 字符集 414
10.1.4 字体要素 415
10.2 系统字体枚举. 添加和删除 416
10.2.1 获取系统安装的字体列表 416
10.2.2 为系统注册新字体 421
10.2.3 注册字体实例――条形码的使用 428
10.3 逻辑字体对象的建立 429
10.3.1 创建逻辑字体 429
10.3.2 通过CreateFont函数创建逻辑字体 434
10.4 文本输出及显示特效的实现 436
10.4.1 文本输出相关API函数 436
10.4.2 文本旋转效果的实现 438
10.4.3 文本透明效果的实现 440
10.4.4 文本多彩效果的实现 441
10.5 通过文本函数增强PB进度条控件功能 443
10.5.1 改进的PB进度条控件 443
10.5.2 定制进度条控件 447
第五篇 网络与Internet篇
第11章 网络访问 455
11.1 网络连接对话框的调用 455
11.1.1 网络连接对话框函数 455
11.1.2 网络连接对话框函数 458
11.2 枚举和浏览网络资源 465
11.2.1 枚举网络资源 465
11.2.2 通过文件夹浏览通用对话框浏览网络资源 471
11.3 添加. 取消网络连接 475
11.3.1 相关API函数 475
11.3.2 连接网络资源示例 478
11.4 网络驱动器UNC路径名及映射 480
11.4.1 获取网络驱动器的UNC路径名 480
11.4.2 映射网络驱动器 482
11.5 网络时间同步 487
11.5.1 获取服务器的时间信息 487
11.5.2 与网络服务器时间同步 498
11.6 获取用户的网络登录名 501
11.7 判断网络的连接状态 503
11.8 检测网络IP地址能否联通 505
11.8.1 Ping命令与网际消息控制协议 (ICMP) 505
11.8.2 通过API函数发送ICMP回应请求 506
11.9 获取主机的MAC物理地址 512
11.9.1 ARP协议及其工作原理 513
11.9.2 通过IP地址获取本地或远程主机的MAC地址 514
第12章 Internet Explore浏览器 518
12.1 获取浏览器信息 518
12.1.1 取得默认浏览器的路径和文件名 518
12.1.2 取得IE浏览器的版本信息 521
12.2 从应用中打开浏览器 527
12.2.1 使用API函数打开浏览器 528
12.2.2 使用PB动态库中函数打开浏览器 529
12.3 巧用浏览器功能 529
12.3.1 文件下载 529
12.3.2 使用IE自动完成功能 532
12.3.3 操作IE的收藏夹 536
12.4 为IE工具栏添加自定义按钮 542
12.4.1 注册表中IE工具栏自定义按钮的相关信息 542
12.4.2 添加自定义按钮应用示例 544
12.5 在PB中定制浏览器 547
12.5.1 IE浏览器架构 547
12.5.2 WebBrowser控件的属性. 方法. 事件和OLE命令 548
12.5.3 使用WebBrowser控件定制浏览器 552
第13章 远程访问服务RAS 560
13.1 远程访问服务RAS 概述 5604
13.1.1 远程访问服务 560
13.1.2 远程访问服务API接口 561
13.1.3 Windows的RAS电话簿 563
13.1.4 RAS错误信息 564
13.2 调用RAS通用对话框 565
13.2.1 调用主拨号网络对话框 565
13.2.2 调用正在拨号对话框 568
13.2.3 调用拨号网络监视器对话框 570
13.2.4 Windows 2000/XP中调用连接属性对话框 572
13.2.5 Windows 95/98中调用连接属性对话框 575
13.2.6 调用创建新连接对话框 577
13.3 获取系统拨号连接列表 579
13.3.1 获取系统所有拨号连接列表 579
13.3.2 获取当前所有活动连接列表 582
13.4 建立与远程网络的连接 585
13.4.1 建立连接 585
13.4.2 获取连接状态 588
13.4.3 终止远程访问连接 591
13.4.4 建立PB远程访问用户对象 592
第14章 WinInet拨号连接控制 603
14.1 WinInet拨号连接API函数概述 603
14.2 启用拨号连接 605
14.2.1 启动IE默认拨号连接 605
14.2.2 启动指定拨号连接 608
14.3 确定网络连接状态 612
14.3.1 获取当前网络的连接状态 612
14.3.2 测试到Internet的网络连接条件 617
第15章 WinInet基础 620
15.1 Internet 协议 620
15.1.1 TCP/IP协议 620
15.1.2 HTTP协议 624
15.1.3 OSI模型高层接口――WinInet 623
15.2 WinInet接口函数 625
15.2.1 WinInet接口函数 625
15.2.2 WinInet接口函数句柄 627
15.2.3 WinInet句柄层次关系 628
15.3 WinInet版本及错误信息 631
15.3.1 确定WinInet版本的重要性 631
15.3.2 获取WinInet错误信息 635
第16章 FTP文件传输 643
16.1 FTP概述 643
16.1.1 FTP协议和工作原理 643
16.1.2 匿名FTP服务 644
16.2 建立Internet会话 645
16.2.1 FTP函数的调用层次 645
16.2.2 打开Internet会话句柄 647
16.2.3 建立Internet会话 651
16.3 FTP服务器目录操作 654
16.3.1 在FTP服务器上获取和切换工作目录 654
16.3.2 在FTP服务器上创建和移除目录 655
16.3.3 列出FTP服务器指定目录下的子目录或文件 659
16.4 FTP服务器文件操作 667
16.4.1 从FTP服务器下载文件 667
16.4.2 获取FTP服务器端文件的大小 670
16.4.3 向FTP服务器上传文件 674
16.4.4 删除FTP服务器端文件 678
16.4.5 重新命名FTP服务器端文件 681
16.5 通过FTPCommand函数发送FTP命令 684
16.5.1 FTP控制连接和数据连接 684
16.5.2 常用FTP命令 685
16.5.3 使用FTPCommand函数发送FTP命令 689
16.6 构筑FTP客户端应用系统 694
16.6.1 创建PB FTP用户对象 694
16.6.2 创建客户端文件和目录操作用户对象 712
16.6.3 构建FTP客户端应用系统 720
第六篇 Winsock网络应用开发篇
第17章 Winsock网络应用基础 749
17.1 Windows Sockets概述 749
17.1.1 Windows Sockets基本概念 749
17.1.2 Winsock在OSI模型中的地位 750
17.1.3 Winsock传输数据类型 752
17.1.4 Winsock的接口函数 753
17.1.5 Winsock工作流程 756
17.2 启动Winsock服务 758
17.2.1 Winsock服务启动和终止 758
17.2.2 处理Winsock错误 763
17.3 主机名称与IP地址 768
17.3.1 IP地址概述 768
17.3.2 IP地址IPv4与Ulong格式的相互转换 770
17.3.3 获取本地主机名称 772
17.3.4 获取主机IP地址 773
17.3.5 网络顺序和主机顺序数值位相互转换 778
17.4 通过Socket连接到远程主机 786
17.4.1 创建或关闭Socket 786
17.4.2 通过Socket连接到远程主机 787
17.4.3 与远程主机建立连接示例 790
17.4.4 绑定(Binding)Socket 794
17.4.5 接收数据 795
17.4.6 发送数据 799
17.4.7 侦听和接受连接请求 805
第18章 Winsock网络应用开发 808
18.1 创建Winsock用户对象 808
18.1.1 声明用户对象结构. 外部函数和常量 808
18.1.2 用户对象的事件处理程序 812
18.1.3 创建用户对象函数 814
18.2 通过Winsock实现FTP功能 830
18.2.1 通过Winsock实现FTP功能的基本思路 830
18.2.2 创建基于Winsock 的FTP用户对象 832
18.2.3 创建Winsock FTP应用 855
18.3 通过Winsock发送电子邮件 885
18.3.1 发送邮件的基本思路 886
18.3.2 创建基于Winsock 的SMTP用户对象 887
18.3.3 创建Winsock SMTP应用 897
18.4 使用Winsock API实现点对点通信 900
18.4.1 客户端程序 900
18.4.2 服务器端程序 904
第19章 Winsock控件及网络应用开发 908
19.1 Winsock控件的属性. 事件和方法 908
19.1.1 Winsock控件的属性 908
19.1.2 Winsock控件的方法 909
19.1.3 Winsock控件的事件 910
19.2 使用Winsock控件创建简单的网络应用 915
19.2.1 创建简单的TCP网络应用 915
19.2.2 创建简单的UDP网络应用 920
19.3 使用Winsock控件实现与远程时间服务器时间同步 923
19.3.1 与时间服务器时间同步的基本原理 924
19.3.2 与时间服务器时间同步应用示例 925
附录A 函数索引 929
附录B 结构索引 932
附录C 示例索引 935
猜您喜欢