微信扫一扫,移动浏览光盘

简介

   该书全面介绍了如何编写Windows应用程序,带领你从基本菜单和鼠标输入入手,一步步进入Internet程序设计和数据库连接等高级主题。书中每章讲授一个主题,同时向你展示如何使用书中所描述的技巧并提供演示程序。对于不熟悉Visual C++,或者甚至不熟悉Windows程序设计的读者,可以通过本书迅速学习基础内容,掌握Windows程序设计调的基本技巧。而对于那些程序员,经验丰富的编程高手,也会感到本书是本函盖全部基础知识、内容全面的Visual C++程序设计手册,书中详细剖析像Internet程序设计和数据库连接这些很有价值的主题。    本书含有光盘,使其更加物有所值。你无需键入任何内容,即可使用书中展示的持巧。光盘中还包括了很多第三方演示程序和库。因此,你将有机会使用到适用于Windows程序开发的最好增件。    本书结构清晰、内容全面、由浅及深、注重实用,突出了抽象概念和具体技术的实质,并根据实际需要提供了大量示图和程序示例,便于读者学习。    读者对象:初、中级程序员、软件开发人员、网络管理员及广大计算机编程的业余爱好者。   

目录

前言

第1部分:visual c++基础

第1章 入门

visual c++6.0中的新特性

hello world1程序

helloword2程序

helloworld3atl控件

小结

第2章 充分利用visual studio ide的优势

使用visual studio ide

创建第一个项目

自定义ide

查看当前快捷键

增加、编辑或删除快捷方式

使用工具栏

显示和隐藏工具栏

自定义工具栏

小结

第3章 应用程序的调试

调试程序应该具备的性能

.visual studio集成式调试程序

准备进行调试的应用程序

在运行应用程序时使用调试程序

调试窗口

在调试时使用断点和单步执行操作

使用datatips信息以及quickwatch窗口

在调试过程中使用threads和exceptions对话框

简单调试技巧

使用消息框加速调试

调试输出

使用断言

对象倾倒

检测内存泄漏与cmemory state类

使用mfc跟踪

远程调试

just-in-time调试

编辑并继续调试

调试windows nt服务

小结

第4章 改善应用程序性能

优化代码

描述简介

了解有关应用程序描述的基本知识

了解profiler的运行情况

描述类型

设置高级描述器设置

启用visual c++6.0中的描述

从开发环境控制描述

选择需要描述的函数

了解prep程序

函数定时描述

函数范围描述

行描述选项

行覆盖描述

合并描述器输出

从描述器中输出数据

分析描述器数据

了解全局信息记录

局部信息记录

分析描述器的统计数据

使用microsoft excel处理profiler输出

描述动态链接库

描述activex组件或activex控件

描述内联代码

描述多线程应用程序

描述应用程序性能

使用cap工具删除重复调用

描述windowsnt服务

小结

第5章 杂项工具

spy++

自定义tools菜单

杂项工具的运作

浏览类

浏览mfc源代码

小结

第2部分:windows编程基础

第6章 mfc编程概述

什么是mfc

mfc的设计原理

mfc使用方面的优势

丰富的特性

可扩展体系结构

mfc层次设计

文件服务

窗口

图形

数据库支持

不使用mfc的原因

小结

第7章 菜单

创建和编辑菜单

创建菜单

mfc中的菜单消息

加速建

检查键盘输入

定义加速键

选择适当的加速键

多个加速键表

动态更改菜单

菜单命令范围

在运行时更改菜单

更改现有弹出菜单

永久及临时句柄映射

上下文菜单

小结

第8章 鼠标和键盘

输入基础以及系统状态

鼠标输入

创建鼠标消息处理程序

在屏幕坐标和窗口坐标之间转换

创建处理鼠标事件的mfc程序

非客户鼠标事件

更改鼠标光标

创建更改鼠标指针的mfc演示程序

捕获鼠标

限制鼠标移动

键盘输入

物理键盘

回显键盘焦点

小结

第9章 图形

介绍图形设备界面

图形类型

gdi设备类型

设备上下文

dc绘图属性

wm_paint消息

绘制坐标

触发wm_paint

响应除wm_paint之外的其他消息进行绘图

操纵文本

cdi颜色支持

文本颜色

对齐文本

调整文本

关于字体

什么是字体

将对象选人比

选择常备字体

选择非意备字体

画笔和画刷

画笔

画刷

映射模式

光栅操作

文本绘图画数

文本坐标的计算

剪取区域

小结

第10章 位图、调色板、dib以及双缓冲

位图内存和视频内存

创建cbitmap对象

加载和设置位图内容

将cbitmaps绘制到屏幕上

光栅操作

blitdemo程序

调色板和颜色

逻辑调色板

调色板事件

setsystempaletteuse()函数

设备无关位图

dib文件剖析

cdib类

showdib演示程序

双缓冲

小结

第11章 mfc异常处理

结构化异常处理

异常处理语法

抛出异常

捕获异常

错误处理技巧比较

处理错误代码

在正确上下文中处理错误

提高代码可读性

从构造函数中抛出异常

cexception类

创建和删除cexception对象

从cexception对象中检索错误信息

捕获多种异常类型

定义cexception派生类

研究cfileexception类

cfileexception演示程序

定义你自己的cexception派生类

高级异常处理技术

确定应该捕获异常的函数

确定放置在try块中的代码

确定放置在catch块中的代码

从虚函数中抛出异常

小结

第12章 控件

背景

创建控件

使用cbutton类

使用clistbox类

使用edit类

使用cstatic类

使用qscrollbar类

使用ccombobox类

mini editor程序

高级控件编程

添加一个键盘界面

修改控件行为

位图按钮

更改控件的颜色

小结

第13章 模式和非模式对话

使用对话编辑器

对话模板

创建新的对话模板

编辑一个对话模板

测试对话

cdialog类

模式与非模式对话购对比

用classwizard创建cdialog派生类

对话数据交换和校验

创建ddx变量

dodataexchange和updatedata

addressbook 演示程序

编辑演示程序的对话

ccontact类

取代oninitdialog

处理wm_destroy消息

显示数据

处理按钮通知

建立和测试演示程序

在对话中诞生控件类

创建控件类

addressbook演示程序:cautocompletecombobox

串行化

使每个类可串行化

实现serialize()虚函数

从磁盘中读取数据

把数据保存到磁盘

给addressbook演示程序添加串行化

小结

第14章 属性和属性页

cpropertysheet和cpropertypage

创建属性页资源

创建cpropertypage类

创建和显示模式的cpropertysheet

创建和显示非模式的cpropertysheet

在一个现有对话内创建和显示属性单

模式属性单演示程序

属性单和属性页提示和技巧

删除标准按钮

重定位标准按钮

更改标准按钮的标题

禁用选项卡

重新启用属性页

动态设置cpropertypage选项卡标题

更改选项卡的字体

使用cpropertypage选项卡助记符

小结

第15章 数据i/o

cstring类

创建字符串

访问字符串数据

比较

抽取子串

搜索

stringdemo程序

cfile类

filedemo程序

ccompressedfile类

compressdemo程序

数据压缩

huffman

lzss

lzw

ccompressedfile类函数

compressdemo内幕

用于串行通讯的cserial类

串行通讯

cserial类

cregistry类

注册表值

预定义的注册表键

常用注册表键

cregistry类的使用

使用剪贴板

小结

第16章 声音

播放录制好的声音

cwave类简介

使用windowsapi播放波形文件

cwave类函数

wavedemo程序

播放midi文件

什么是midi

cmidi类简介

cmidi类函数

mididemo程序

cd音频

ccdaudio类库简介

媒体控制接口

ccdaudio类函数

cdplayer程序

小结

第17章 计时器和onidie循环处理

计时器

用wm_timer设置计时器

用一个回调过程设置计时器

clock程序

使用cwinapp的onidle能力

onidledemo程序

小结

第3部分:体系结构

第18章 内存管理

系统内存管理

intel-86 32位分页寻址模式

windows 98的单进程地址空间

系统内存清理

进程私有内存

分配页

编译器内存分配

win32私有堆

共享内存

内存映射文件i/o

动态分配共享页

静态分配共享页

小结

第19章 文档、视图和sdi

文档/视图设计

cdocument类

在你的应用程序内声明一个文档类

cdocument的成员函数

理解文档和消息处理

取代虚文档函数

使用复杂文档数据

理解ccmdtargget和cdociten的益处

initinstance函数对文档的重要性

应用程序如何管理文档和视图

关注csingledoctemplate类

简介框架窗口

文档模板资源

字符串资源如何影响文档模板

分离字符串资源

看看常备视图资源

考虑文档模板生命周期

模板的高级用法

使用多个模板

销毁用adddoctemplate()成员函数添加的文档

了解和使用cview类

声明一个视图类

分析cview成员函数

使用视图和消息

cview类的mfc派生变形

cform视图与基于对话的应用程序的对比

返回框架窗口

理解afxgetmainwnd()的角色

hexviewsdi应用程序

小结

第20章 mdi应用程序的布局

重谈文档/视图模型

回顾cdocument类

管理文档、视图和框架窗口的复杂组合

使用多文档类型

使用文档的多个视图

了解cmdiframewnd类

了解cmdichildwnd类

了解cmultidoctemplate类

回顾使用cdocument类的开销

进一步考虑mdi应用程序

paintobj程序

理解拆分窗口

区分拆分窗口

理解特定于csplitterwnd类的内容

详细讲解动态拆分

在动态面板中使用不同的视图

使用cruntimeclass对象

对与多个文档关联的视图使用拆分器

使用静态拆分器

创建静态拆分器

了解共享滚动条

确定实际的和理想的尺寸

了解拆分器的性能问题

dynsplit程序

为窗口定义子类

使用mfc定义窗口子类

文档/视图体系结构的替代

小结

第21章 打印和打印预览

windowsapi打印机支持

打印机信息

理解字符特征的重要性

portland程序

用mfc进行打印

了解在打印中你的角色和框架的角色

了解mfc打印序列

进一步洞察mfc默认打印

打印协议

取代视图类函数和分页

了解cprintlnfo类

了解打印机的页和文档页的对比

实现分页

添加帮助函数

打印时分页

重谈页眉和页脚的打印

为打印分配gdi资源

扩大打印的图象

了解打印预览体系结构

打印预览过程

修改打印预览

增强应用程序的打印预览

了解cprintdialog类

hexviewmdi程序

小结

第22章 用于高级windows用户界面的mfc

更多的控制权

理解模式循环

runmodalloop()内部

模式循环参数

终止模式循环

生成模式应用程序

创建和关闭模式窗口

添加处理程序

简单的模式应用程序

进一步改进模式窗口

在透明客户区上绘制透明位图

绘制位图

确定在什么地方粘贴位图

兼容的设备上下文

bitmap结构

把所有图片叠合在一起

确保已被注意到

小结

第23章 状态栏和工具栏

创建和使用状态栏

创建状态栏

自定义状态栏

创建和控制工具栏

mfc控件栏

创建和初始化一个工具栏

使用rebar控件

小结

第24章 树视图和列表视图控件

ctreectrl

树视图控件基础知识

ctreectrl

ctredctrt演示程序

clistctrl

列表视图基础知识

clistctrl

小结

第25章 线程

线程

创建工作者线程

线程函数

创建用户界面线程

挂起和继续执行线程

使线程睡眠

终止一个线程

从一个线程中终止另一个线程

线程、进程和优先级

进程优先级类

在线程之间共享mfc对象

在多线程应用程序中使用c运行函数

threaddemo1程序

小结

第4部分:数据库编程

第26章 odbc

odbc定义与数据库术语

odbc产生自对标准的需要

odbc标准

okbcapi一致性层

odbcsql一致性层

odbc的实现

配置odbc

连接到一个数据源

查询数据和数据源

准备与执行sql请求

检索数据

断开与数据源的连接

使用odbc获取数据

为visual c++项目添加对odbc的支持

修改odbcdemo对话

添加初始化和数据库代码

使用odbc动态查询数据源

codbcdynamic类声明

codbcdynamic类如何工作

使用codbcdynamic类

小结

第27章 mfc数据库类

cdatabase类

crecordset类

构造一个记录集

打开一个记录集

使用rfx(记录字段交换)读写数据

过滤记录

排序返回的记录集中的记录

在结果集合中移动

保存记录

删除记录

使用mfc数据库类

添加对mfc数据库类的支持

为演示程序创建ui

添加工具类以封装用户数据

为表usermaster创建crecordset类

修改对话的头文件

修改对话的实现文件

参数化记录集与查询

为演示程序创建ui

创建usermaster记录集

修改crecordset类以接受参数

为应用程序添加查找功能

建立应用程序

创建参数化查询

演示数据库

创建权限记录集

小结

第28章 dao数据库编程

dao概览

dao的历史

dao层次结构

dao的多种内部形式

使用mfcdao类

cdaodatabase类

cdaoworkspace类

cdaorecordset类

mfcdao演示程序

小结

第5部分:扩展应用程序

第29章 使用dll

dll概述

动态库和静态库

加载dll

visualc++常规dll

了解常规dll上内部

动态加载dll

何时动态加载dll的例子

windows异常分支

使用皿上的全局c++对象

mfc扩展dll

理解mfc扩展四上的内部

通过mfc扩展dll导出类

关于afx_ext_class的更多内容

使用嵌套的mfc扩展dll

导出资源

编写在dll中封装文档和视图的演示程序

小结

第30章 在程序中添加图形

第三方库

imageobject库简介

bmp文件格式

gif文件格式

jpeg文件格式

pcx文件格式

tga文件格式

tif文件格式

库加载图象

显示图象

display程序

缩放、裁剪和改变颜色深度

从设备上下文中创建图象

从剪贴板创建图象

保存图象

图象处理

processlmage程序

小结

第6部分:组件对象模型编程

第31章 activex和activex控件设计介绍

理解activex的起源和使用

理解各种activex技术

理解自动化服务器

理解自动化控制器

定义activex控件

理解组件对象(com)模型对象

理解activex文档

理解activex容器

理解activex能够为你做些什么

确定你需要哪种activex组件

使用自动化服务器和控制器

使用activex控件

使用com对象

使用mfc来创建activex组件

使用activex模板库来创建activex组件

使用basecontrol框架来创建activex组件

创建你自己的框架

基本的activex组件体系结构

activex自动化服务器

activex控件

建立activex组件需要的支持工具

midl编译器

mktyplib

guidgen

regedit

注册服务器

ole2view

把工具添加到visual c++开发环境中

用mfc创建一个基本activex控件

创建基本的控件项目

控件注册

创建方法

属性

创建属性页

添加事件

持久性

绘制控件

标准绘制

小结

第32章 用mfc创建activex自动化服务器

创建基本项目

给应用程序添加一个自动化接口

注册服务器

为范例服务器编写支持代码

添加方法

给服务器添加属性

产生ole异常

理解双接口服务器

产生双接口ole异常

用c++进行服务器实例化

用c++实例化ole服务器时常见的问题

创建可共享的服务器

单一实例服务器

小结

第33章 活动模板库

atl概述

创建atl控件

把一个com对象添加到项目中

修改cdoublepend包含文件

实现接口函数

在c++中使用控件

数据类型

转换bstr

比较bstr

在调试器中查看一个bstr的内容

在web页中嵌入activex控件

小结

第7部分:因特网和html编程

第34章 因特网编程

cinternetsession类

cftpconnection类

从ftp服务器中检索文件

把文件发送给ftp服务器

其他ftp函数

cinternetfile类

cftpfilefind类

ftp程序

套接字和csocket类

创建套接字

连接到套接字

监听一个连接

读数据和写数据

sockets程序

sendemail程序

检索http文件

autodialer程序

小结

第35章 chtmlview类

创建一个chtmlview项目

把项目转换为使用chtmlview

导航chtmlview

simplebrowser程序

multibrowser程序

直接使用web浏览器控件

编写一个记录导航日志的浏览器

编写一个阻挡站点的浏览器

小结

第36章 动态html

html基础

层叠式风格单

全局风格单

风格单语法

简单的文件查看器

事件和对象模型

脚本

脚本元素

改变非文本元素

在文档加载时运行脚本

脚本对话

小结

第8部分:visual studio的高级用法

第37章 visoal studio脚本编制

visualstudio宏

quick macro

创建vbscript宏

理解vbscript宏

编辑vbscript宏

创建一个空宏

使用vbscript宏

加载宏文件

运行vbscript宏

把宏分配给工具栏

把宏分配给按键

理解vbscript

vbscript编程

使用变量

使用常量

使用函数和过程

使用developerstudio对象模型

访问该对象模型

使用application对象

使用范例应用程序

运行范例宏

理解范例宏

小结

第38章 编写自定义appwizard

appwizard的内部工作

appwizard管理器

ccustomappwiz类和dictionary(字典)

创建一个自定义appwizard

预置项目的默认设置的演示程序

创建sdiautomationwiz演示项目

定义ccustomappwiz类

使用宏字典

一个更高级的自定义appwizard

添加一个自定义对话

创建你自己的模板

更改newproj.inf文件

更改classwizard文件

更改appwizard模板

更改confirm.inf文件

为永久性的宏使用注册表

更改caboutwizappwiz类以使用注册表

小结

附录 光盘内容


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Visual C++6 bible
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,在线查阅资料!

    loading icon