本书是为以Visual FoxPro作为开发工具的程序开发人员提供的开发案例参考书,作者以商业应用开发者的经验为基础,介绍在使用Visual FoxPro进行开发时的所有典型开发模式及应用案例。内容包括单用户应用程序模式开发案例、多用户共享数据库模式开发案例、客户/服务器模式开发案例、多层架构Web服务模式开发案例,以及使用ActiveX控件和API函数来扩展Visual FoxPro程序功能的开发案例。\r\n 本书适合广大Visual FoxPro初、中级程序开发人员学习,也适合Visual FoxPro高级程序员参考。
第1章 单用户模式——通用工资管理系统 \r\n 1.1 需求分析 \r\n 1.2 系统分析 \r\n 1.2.1 功能分析 \r\n 1.2.2 模块设计 \r\n 1.3 程序预览 \r\n 1.3.1 著作版权表单 \r\n 1.3.2 系统登录表单 \r\n 1.3.3 系统主画面表单 \r\n 1.3.4 工资账套管理表单 \r\n 1.3.5 编辑工资数据表单 \r\n 1.3.6 系统设置表单 \r\n 1.3.7 数据备份/恢复表单 \r\n 1.3.8 代发工资表单 \r\n 1.3.9 报表打印表单 \r\n 1.3.10 关闭系统 \r\n 1.3.11 编辑菜单 \r\n 1.3.12 查看菜单 \r\n 1.3.13 帮助菜单 \r\n 1.4 数据库分析与设计\r\n 1.4.1 操作员账号表tblOperator \r\n 1.4.2 部门名称表tblDepartment \r\n 1.4.3 人员信息表tblPerson \r\n 1.4.4 工资项目表tblSalaryItem \r\n 1.4.5 工资项目计算公式表tblFormula \r\n 1.4.6 代发工资银行表tblBank \r\n 1.4.7 账套表tblTally \r\n 1.4.8 打印设置表tblPrtSet \r\n 1.5 建立系统项目及数据库 \r\n 1.5.1 建立系统项目 \r\n 1.5.2 建立数据库 \r\n 1.6 系统主程序设计 \r\n 1.7 错误处理程序 \r\n 1.8 打开数据库程序 \r\n 1.9 建立著作版权表单 \r\n 1.10 建立系统登录表单 \r\n 1.11 建立系统菜单与快捷工具栏 \r\n 1.11.1 建立系统菜单 \r\n 1.11.2 建立快捷工具栏 \r\n 1.12 建立系统设置表单 \r\n 1.12.1 表单设计 \r\n 1.12.2 页框设计 \r\n 1.12.3 “部门设置”选项卡设计 \r\n 1.12.4 “人员信息”选项卡设计 \r\n 1.12.5 “工资项目”选项卡设计 \r\n 1.12.6 “项目公式”选项卡设计 \r\n 1.12.7 “代发银行”选项卡设计 \r\n 1.12.8 “操作员管理”选项卡设计 \r\n 1.13 建立账套管理表单 \r\n 1.13.1 表单设计 \r\n 1.13.2 “账套列表”表格设计 \r\n 1.13.3 “新建账套”按钮设计 \r\n 1.13.4 “新建账套”表单设计 \r\n 1.13.5 “删除账套”按钮设计 \r\n 1.13.6 “关闭”按钮设计 \r\n 1.14 建立编辑工资数据表单 \r\n 1.14.1 表单设计 \r\n 1.14.2 员工基本信息页框设计 \r\n 1.14.3 “工资数据编辑”表格设计 \r\n 1.14.4 功能操作页框设计 \r\n 1.15 建立数据备份/恢复表单 \r\n 1.15.1 表单设计 \r\n 1.15.2 页框设计 \r\n 1.15.3 “数据备份”页面设计 \r\n 1.15.4 “数据恢复”页面设计 \r\n 1.16 建立报表打印表单 \r\n 1.16.1 表单设计 \r\n 1.16.2 纸张方向选项按钮设计 \r\n 1.16.3 页边距设计 \r\n 1.16.4 缩放比例与纸张大小设计 \r\n 1.16.5 按钮设计 \r\n 1.17 建立关于表单 \r\n 1.18 程序关闭设计 \r\n 1.19 建立帮助文件 \r\n 1.19.1 建立帮助文件所使用的网页文件 \r\n 1.19.2 建立帮助文件 \r\n 1.20 程序发布 \r\n 1.20.1 发布前的准备工作 \r\n 1.20.2 发布程序制作 \r\n第2章 多用户模式——进销存管理系统 \r\n 2.1 Visual FoxPro对共享数据访问的支持策略 \r\n 2.1.1 数据访问控制 \r\n 2.1.2 数据更新控制 \r\n 2.1.3 共享访问的优化技术 \r\n 2.2 需求分析 \r\n 2.3 系统分析 \r\n 2.3.1 功能分析 \r\n 2.3.2 模块设计 \r\n 2.4 程序预览 \r\n 2.4.1 “指定共享数据库路径”表单 \r\n 2.4.2 “系统登录”表单 \r\n 2.4.3 系统主画面 \r\n 2.4.4 “进货单管理”表单 \r\n 2.4.5 “销货单管理”表单 \r\n 2.4.6 “存货查询”表单 \r\n 2.4.7 “财务管理”表单 \r\n 2.4.8 “系统设置”表单 \r\n 2.4.9 “数据备份/恢复”表单 \r\n 2.4.10 辅助功能 \r\n 2.5 数据库分析与设计 \r\n 2.5.1 操作员账号表tblOperator \r\n 2.5.2 药品名称表tblMedicine \r\n 2.5.3 供应商名称表tblProvider \r\n 2.5.4 客户名称表tblCustomer \r\n 2.5.5 进货单主表tblInMaster \r\n 2.5.6 进货单明细表tblIn \r\n 2.5.7 销货单主表tblOutMaster \r\n 2.5.8 销货单明细表tblOut \r\n 2.5.9 库存药品表tblStock \r\n 2.6 主程序设计 \r\n 2.7 错误处理程序 \r\n 2.8 “指定共享数据库路径”表单设计 \r\n 2.9 打开数据库和表 \r\n 2.10 “系统登录”表单设计 \r\n 2.11 建立系统菜单与快捷工具栏 \r\n 2.11.1 建立系统菜单 \r\n 2.11.2 建立快捷工具栏 \r\n 2.12 建立“系统设置”表单 \r\n 2.12.1 “系统设置”表单设计 \r\n 2.12.2 “药品管理”页面设计 \r\n 2.12.3 “供应商管理”页面设计 \r\n 2.12.4 “客户管理”页面设计 \r\n 2.12.5 “操作员管理”页面设计 \r\n 2.13 建立“进货单管理”表单 \r\n 2.13.1 表单及对象的关键属性和自定义方法设置 \r\n 2.13.2 表单启动及新开进货单设计 \r\n 2.13.3 修改和删除进货单设计 \r\n 2.13.4 保存进货单设计 \r\n 2.13.5 打印进货单设计 \r\n 2.14 建立“销货单管理”表单 \r\n 2.14.1 表单及对象的关键属性和自定义方法设置 \r\n 2.14.2 表单启动及新开进货单设计 \r\n 2.14.3 修改和删除销货单设计 \r\n 2.14.4 保存销货单设计 \r\n 2.14.5 打印销货单设计 \r\n 2.15 建立“存货查询”表单 \r\n 2.16 建立“财务管理”表单 \r\n 2.17 建立“数据备份/恢复”表单 \r\n 2.17.1 数据备份页面设计 \r\n 2.17.2 数据恢复页面设计 \r\n 2.18 程序关闭设计 \r\n 2.19 帮助及“关于”表单设计 \r\n 2.20 程序发布 \r\n 2.20.1 发布前的准备工作 \r\n 2.20.2 发布程序制作 \r\n 2.20.3 安装“进销存管理系统” \r\n第3章 客户/服务器模式——固定资产管理系统 \r\n 3.1 需求分析 \r\n 3.2 系统分析 \r\n 3.2.1 功能分析 \r\n 3.2.2 模块设计 \r\n 3.3 程序预览 \r\n 3.3.1 “著作版权”表单 \r\n 3.3.2 “系统登录”表单 \r\n 3.3.3 系统主界面 \r\n 3.3.4 “固定资产管理”表单 \r\n 3.3.5 “资产验收”表单 \r\n 3.3.6 '资产维修”表单 \r\n 3.3.7 “资产修复”表单 \r\n 3.3.8 “资产借出”表单 \r\n 3.3.9 “资产归还”表单 \r\n 3.3.10 “资产转移”表单 \r\n 3.3.11 资产报废、保存备注和打印台帐卡片 \r\n 3.3.12 “固定资产维修记录查询”表单 \r\n 3.3.13 “固定资产借出/归还记录查询”表单 \r\n 3.3.14 “固定资产转移记录查询”表单 \r\n 3.3.15 “系统设置”表单 \r\n 3.3.16 “切换用户重新登录”表单 \r\n 3.3.17 “数据备份/还原”表单 \r\n 3.4 数据库分析与设计 \r\n 3.4.1 用户账号表tblUsers \r\n 3.4.2 系统使用单位名称表tblComp \r\n 3.4.3 资产类型表tblAssetGroup \r\n 3.4.4 资产使用部门表tblDepart \r\n 3.4.5 资产计量单位表tblAssetUnit \r\n 3.4.6 固定资产表tblAsset \r\n 3.4.7 tblAsset表的结构表tblAssetStruct \r\n 3.4.8 固定资产维修表tblFix \r\n 3.4.9 tblFix表的结构表tblFixStruct \r\n 3.4.10 固定资产借出表tblBorrow \r\n 3.4.11 tblBorrow表的结构表tblBorrowStruct \r\n 3.4.12 固定资产转移表tblMove \r\n 3.4.13 tblMove表的结构表tblMoveStruct \r\n 3.5 存储过程设计 \r\n 3.5.1 p_GetRecordNumber存储过程 \r\n 3.5.2 p_GetQueryRecordNumber存储过程 \r\n 3.6 主程序设计 \r\n 3.7 错误处理程序 \r\n 3.8 获取连接句柄设计 \r\n 3.9 建立“著作版权”表单 \r\n 3.10 建立“系统登录”表单 \r\n 3.10.1 表单的属性设置 \r\n 3.10.2 表单的事件设置 \r\n 3.10.3 用户身份验证设计 \r\n 3.11 建立系统菜单与快捷工具栏 \r\n 3.11.1 建立系统菜单 \r\n 3.11.2 建立快捷工具栏 \r\n 3.12 建立“系统设置”表单 \r\n 3.12.1 “系统设置”表单设计 \r\n 3.12.2 “单位名称设置”页面设计 \r\n 3.12.3 “资产类别设置”页面设计 \r\n 3.12.4 “计量单位设置”页面设计 \r\n 3.12.5 “使用部门设置”页面设计 \r\n 3.12.6 “用户管理”页面设计 \r\n 3.13 建立“固定资产管理”表单 \r\n 3.13.1 表单及对象的关键属性设置 \r\n 3.13.2 读取数据设计 \r\n 3.13.3 资产报废设计 \r\n 3.13.4 保存数据设计 \r\n 3.13.5 打印台帐卡片设计 \r\n 3.14 建立“资产验收”表单 \r\n 3.14.1 表单及对象的关键属性设置 \r\n 3.14.2 表单的事件设置 \r\n 3.14.3 数据提交设计 \r\n 3.15 建立“资产维修”和“资产修复”表单 \r\n 3.15.1 建立“资产维修”表单 \r\n 3.15.2 建立“资产修复”表单 \r\n 3.16 建立“资产借出”和“资产归还”表单 \r\n 3.16.1 建立“资产借出”表单 \r\n 3.16.2 建立“资产归还”表单 \r\n 3.17 建立“资产转移”表单 \r\n 3.17.1 表单及对象的关键属性设置 \r\n 3.17.2 表单的事件设置 \r\n 3.17.3 对“打印转移登记单”和“确定”命令按钮的控制 \r\n 3.17.4 数据提交设计 \r\n 3.17.5 “固定资产转移登记单”报表设计 \r\n 3.18 建立“固定资产维修记录查询”表单 \r\n 3.18.1 表单及对象的关键属性设置 \r\n 3.18.2 读取数据设计 \r\n 3.18.3 打印维修记录设计 \r\n 3.19 建立“固定资产借出/归还记录查询”表单 \r\n 3.19.1 表单及对象的关键属性设置 \r\n 3.19.2 读取数据设计 \r\n 3.19.3 打印借出记录设计 \r\n 3.20 建立“固定资产转移记录查询”表单 \r\n 3.20.1 表单及对象的关键属性设置 \r\n 3.20.2 读取数据设计 \r\n 3.20.3 打印转移记录设计 \r\n 3.21 建立“切换用户重新登录”表单 \r\n 3.22 建立“数据备份/还原”表单 \r\n 3.22.1 表单及对象的关键属性设置 \r\n 3.22.2 读取服务器端备份文件列表设置 \r\n 3.22.3 对“开始还原”命令按钮的控制 \r\n 3.22.4 数据备份设计 \r\n 3.22.5 数据还原设计 \r\n 3.23 建立“关于”表单 \r\n 3.24 程序关闭设计 \r\n 3.25 程序发布 \r\n 3.25.1 制作服务器端数据库安装向导 \r\n 3.25.2 制作客户端数据连接向导 \r\n 3.25.3 发布前的准备工作 \r\n 3.25.4 创建发布目录 \r\n 3.25.5 创建服务器端安装程序 \r\n 3.25.6 创建客户端安装程序 \r\n 3.25.7 安装服务器端程序 \r\n 3.25.8 安装客户端程序 \r\n第4章 XML Web服务模式——水费管理与代收水费系统 \r\n 4.1 需求与系统分析 \r\n 4.1.1 功能分析 \r\n 4.1.2 模块设计 \r\n 4.2 程序预览 \r\n 4.2.1 水费管理系统 \r\n 4.2.2 代收水费系统 \r\n 4.3 数据库分析与设计 \r\n 4.3.1 操作员表tblUsers \r\n 4.3.2 客户表tblCustomer \r\n 4.3.3 水费表tblWater \r\n 4.3.4 操作日志表tblLog \r\n 4.4 存储过程设计 \r\n 4.5 水费管理系统设计 \r\n 4.5.1 主程序设计 \r\n 4.5.2 错误处理程序 \r\n 4.5.3 建立WaterCA类 \r\n 4.5.4 建立“系统登录”表单 \r\n 4.5.5 建立系统主表单 \r\n 4.5.6 “水费录入”页面设计 \r\n 4.5.7 “客户信息”页面设计 \r\n 4.5.8 “操作员管理”页面设计 \r\n 4.6 Web服务设计 \r\n 4.6.1 建立OLEPUBLIC类 \r\n 4.6.2 编译OLEPUBLIC类为COM服务程序 \r\n 4.6.3 安装并配置Internet信息服务(IIS) \r\n 4.6.4 创建并发布Web服务 \r\n 4.6.5 使用Web服务 \r\n 4.7 代收水费系统设计 \r\n 4.7.1 主程序设计 \r\n 4.7.2 错误处理程序 \r\n 4.7.3 建立“系统登录”表单 \r\n 4.7.4 建立系统主表单 \r\n 4.8 程序发布 \r\n 4.8.1 制作数据库安装工具 \r\n 4.8.2 创建发布目录 \r\n 4.8.3 创建安装程序 \r\n 4.8.4 安装SQL Server服务器端程序 \r\n 4.8.5 安装Web服务器端程序 \r\n 4.8.6 安装代收水费系统 \r\n 4.8.7 安装水费管理系统 \r\n第5章 ActiveX控件应用——ISDN线路监测系统 \r\n 5.1 需求与系统分析 \r\n 5.2 相关知识介绍 \r\n 5.2.1 相关的网络设备和术语介绍 \r\n 5.2.2 本系统基于的网络模型 \r\n 5.2.3 超级终端 \r\n 5.2.4 Winsock控件 \r\n 5.3 程序预览 \r\n 5.3.1 “ISDN监测”页面 \r\n 5.3.2 “系统设置”页面 \r\n 5.3.3 主表单的自动隐藏 \r\n 5.4 数据库分析与设计 \r\n 5.4.1 监测网点表tblSearch \r\n 5.4.2 自动监测时间表tblSet \r\n 5.4.3 ISDN IP地址表tblSetOther \r\n 5.5 主程序设计 \r\n 5.6 错误处理程序 \r\n 5.7 系统主界面表单设计 \r\n 5.7.1 主界面表单设计 \r\n 5.7.2 “ISDN监测”页面的设计 \r\n 5.7.3 “系统设置”页面的设计 \r\n 5.8 程序关闭设计 \r\n 5.9 程序发布 \r\n 5.9.1 发布前的准备工作 \r\n 5.9.2 发布程序制作 \r\n第6章 API函数应用——FTP文件传输工具 \r\n 6.1 需求与系统分析 \r\n 6.2 FTP概述 \r\n 6.2.1 FTP模型 \r\n 6.2.2 FTP命令 \r\n 6.2.3 FTP的响应编码 \r\n 6.3 使用Winsock控件进行FTP开发 \r\n 6.3.1 表单预览 \r\n 6.3.2 表单设计 \r\n 6.4 使用WinINet函数进行FTP开发 \r\n 6.4.1 可用于FTP开发的WinINet函数 \r\n 6.4.2 FTP函数句柄 \r\n 6.4.3 枚举目录、文件信息 \r\n 6.4.4 定位目录 \r\n 6.4.5 操纵FTP服务器上的目录 \r\n 6.4.6 从FTP服务器上下载文件 \r\n 6.4.7 上传文件到FTP服务器 \r\n 6.4.8 删除FTP服务器上的文件 \r\n 6.4.9 发送命令到FTP服务器上执行 \r\n 6.5 FTP文件传输工具预览 \r\n 6.5.1 连接到FTP服务器 \r\n 6.5.2 站点管理 \r\n 6.5.3 文件上传和下载 \r\n 6.5.4 删除文件或目录 \r\n 6.5.5 目录定位 \r\n 6.5.6 重命名文件或目录 \r\n 6.5.7 新建文件夹 \r\n 6.5.8 调整页面布局 \r\n 6.6 FTP文件传输工具设计 \r\n 6.6.1 新建类 \r\n 6.6.2 容器中的对象 \r\n 6.6.3 容器的Init事件设置 \r\n 6.6.4 容器的Destroy事件设置 \r\n 6.6.5 连接到FTP站点 \r\n 6.6.6 获得服务器端当前目录下的文件信息 \r\n 6.6.7 获得服务器端的当前目录名称 \r\n 6.6.8 改变工作目录 \r\n 6.6.9 grdLocal表格设计 \r\n 6.6.10 grdServer表格设计 \r\n 6.6.11 容器中的对象布局调整设计 \r\n 6.6.12 删除本地文件、目录设计 \r\n 6.6.13 删除服务器端文件、目录设计 \r\n 6.6.14 文件、目录上传设计 \r\n 6.6.15 文件、目录下载设计 \r\n 6.6.16 重命名文件、文件夹设计 \r\n 6.6.17 新建文件夹设计 \r\n 6.6.18 表格中的快捷菜单设计 \r\n 6.6.19 站点管理设计 \r\n 6.6.20 信息提示设计 \r\n 6.6.21 断开连接设计 \r\n 6.7 发布FTP文件传输工具类
Visual FoxPro是一个强大的快速关系数据库应用程序开发工具, 使用Visual FoxPro可以建立桌面数据库应用程序. 客户朋艮务器应用程序和基于组件的Web服务程序, 同时, 还可以使用ActiveX控件或API函数等方式来扩展Visual FoxPro的功能.
1. 本书面对的读者对象
本书是为以Visual FoxPro作为开发工具的程序开发人员提供的案例参考书, 作者以多年的商业开发经验为基础, 为读者提供了在各种架构和应用模式下进行应用程序开发的范例. 本书适合已经初步掌握Visual FoxPro语言的读者阅读.
2. 本书所选案例的特点
本书没有重复介绍同种模式的多个应用程序, 而是精心挑选了单用户模式. 多用户模式. 客户/服务器模式和多层架构的Web服务模式等不同类型的典型程序模型案例, 这几种程序模型通用性强, 适合多种具体的应用. 在介绍一些具体的案例的时候, 本书还介绍了与开发相关的主要知识, 以方便读者深入了解程序设计的原理, 如IP地址的格式. FTP协议规范. 应用程序基于的网络模型. 客户/服务器模式开发的概念以及SQL Server基础等.
3. 本书所选案例简介
·单用户模式--通用工资管理系统
通用工资管理系统是一个单用户系统.
通过该章的学习, 读者可掌握基本的Visual FoxPro数据库程序设计流程. 表单设计技巧. 错误处理方法, 以及表单与工具栏. 菜单的相应协调处理等内容.
·多用户模式--进销存管理系统
进销存管理系统是一个使用Visual FoxPro数据库的多用户系统, 数据库文件放置在局域网内的某个计算机上的共享文件夹中, 所有用户共享访问该数据库.
通过本章的学习, 读者可掌握Visual FoxPro的表和行缓冲方式. 冲突检测机制. 记录或表的加锁和解锁方法, 以及人工事务处理技术.
·客户朋艮务器模式固定资产管理系统
固定资产管理系统是一个基于SQL Pass Through(SPT)技术和临时表缓冲技术的客户朋艮务器系统. 客户朋艮务器模式是一种多用户应用程序开发模式, 它比单纯使用Visual FoxPro数据库通过共享访问来实现多用户访问提供了更多的服务器端支持, 开发者可以将应用程序功能合理地分布在数据库服务器端和客户端, 客户/服务器模式为解决数据的安全性. 并发处理和海量存储提供了可能.
通过对本章的学习, 读者可掌握使用SPT技术开发客户/服务器应用程序的基本模式. 编写存储过程的方法. 如何实现人工事务处理, 以及如何使SPT技术和Visual FoxPro的临时表缓冲技术协同工作, 用以保持服务器端与客户端的数据一致性.
·XMLWeb服务模式--水费管理与代收水费系统
水费管理系统是一个使用CursorAdapter技术的客户朋艮务器系统, 用于录入水费管理信息, 代收水费系统是一个使用Web服务的三层架构系统, 用于提供代收水费支持. CursorAdapter是从VisualFoxPro 8. 0开始提供的一种松散耦合数据连接工具, 它为多种数据连接方式提供了一种统一访问接口, 这使得数据可以在ODBC. ADO和XML连接方式之间进行切换. 并且, Visual FoxPro 8. 0提供了XMLAdapter工具, 这为XML数据与Visual FoxPro临时表数据的转换和编写中间层组件提供了便利.
本章中介绍的Web服务是一种松散耦合的组件技术, 通过Web服务, 可以将程序功能很方便地体现在互联网或企业内部网上. Web服务是通过XML来实现的, XML是Web服务的核心技术.
通过对本章的学习, 读者可掌握使用CursorAdapter时的冲突检测方法. Visual FoxPro临时表与XML数据的相互转换方法. 建立COM组件技术. 发布和使用Web服务的方法.
·Aetive X控制应用--ISDN线路监测系统
ISDN线路监测系统是一个利用Winsock控件对路由器备份网络通信线路进行监测的软件, 该软件可以自动登录远程路由器, 并执行一个Ping命令, 来检测备份线路的通信状况, 以便及时发现故障, 确保网络通信的畅通. 该软件可以用于数据中心机房, 用来自动监测辖属机构的网络通信状况.
为提高程序的开发效率, Visual FoxPro附送了10多个ActiveX控件, Winsock控件就是其中之一. ActiveX控件是以一种提供接口的方式提供功能服务的, 它就像一个被封装的模块, 可以被直接放置在其他应用程序中, 程序员无须关心其内部的工作机制和原理, 惟一需要了解的是如何调用其接口和如何对其响应事件进行分析处理.
通过本章的学习, 读者可以了解到一些基本的网络知识, 并应当掌握使用Winsock控件进行网络应用开发的具体步骤和注意事项.
·API函数应用--FTP文件传输工具
本章介绍了两种进行FTP开发的方式, 第一种是使用Winsock控件结合FTP协议规范进行开发的, 第二种是使用WinINet API函数进行开发的. 本章重点介绍的是后一种, 主要介绍了使用容器类对WinINet函数的封装设计方法. 用户可以直接通过该类实现在FTP服务器上进行文件上传和下载, 从本地或FTP服务器上删除目录或文件. 新建文件夹, 以及重命名文件和目录等功能. 该类可以被方便地集成到用户的程序中, 实现文件传输功能.
Visual FoxPro作为一种编程语言, 提供了强大的应用程序编程接口(Application Programming Interface, 简称API), 如果Visual FoxPro中没有包含应用程序所需要的功能, 则可以通过APl调用其他语言编写的函数, 来扩展Visual FoxPro的功能.
通过本章的学习, 读者可以了解到文件传输协议(File Transfer Protocol, 简称FTP)规范, 可掌握在Visual FoxPro中的API调用方法和类封装技术.
本书的编写得到了许多优秀Visual FoxPro程序开发人员的积极建议和大力支持, 在此向他们表示真挚的感谢. 此外, 以下人员参与了本书部分章节的资料搜集和编写工作, 他们是窦文奎. 刘新华. 陈彤. 杨海军. 姜雪梅. 姜岚. 张雪梅. 苗应选. 郭宝辉. 高国胜. 张栋. 王金锋. 张洪伦. 宗峰. 张铁林. 张宪国. 边长军. 王照星等.
由于时间仓促, 加之水平有限, 书中的不足之处在所难免, 敬请读者批评指正. 本书责任编辑的联系方法是quyanlian2@ptpress. com. cn, 欢迎来信交流. 读者也可以登录作者的编程园地网站http://www. vfptop. com进行交流.
微软公司MVP 张洪举
2005年3月