Windows编程循序渐进
基本信息
编辑推荐
看雪论坛、华章公司第一届编程大赛 邀您参加
本书用大量的实例演示使用Visual C++开发Windows应用程序的相关技术。
内容简介回到顶部↑
本书用大量的实例演示使用visual c++开发windows应用程序的相关技术。
全书分为3篇19章,分别是软件设计基础篇、软件设计综合应用篇、windows系统程序设计篇。内容包括软件开发起步、对话框应用程序、基本控件、文档与视图、gdi绘图技术、键盘与鼠标消息、网络通信基础、密码学算法、多媒体技术、数据库技术、综合实例开发、进程与线程、内存管理、进程间通信、线程同步、动态链接库、结构化异常处理、可执行文件格式(pe)、模块注入与函数挂接技术。
本书适用于windows程序设计的初学者,也可作为大中专院校相关专业教材。另外,本书还适合稍有基础的visual c++开发者阅读参考。
全书分为3篇19章,分别是软件设计基础篇、软件设计综合应用篇、windows系统程序设计篇。内容包括软件开发起步、对话框应用程序、基本控件、文档与视图、gdi绘图技术、键盘与鼠标消息、网络通信基础、密码学算法、多媒体技术、数据库技术、综合实例开发、进程与线程、内存管理、进程间通信、线程同步、动态链接库、结构化异常处理、可执行文件格式(pe)、模块注入与函数挂接技术。
本书适用于windows程序设计的初学者,也可作为大中专院校相关专业教材。另外,本书还适合稍有基础的visual c++开发者阅读参考。
作译者回到顶部↑
本书提供作译者介绍
张静盛,目前在盛大网络从事技术研发工作。自2005至今在看雪软件安全论坛担任“Win32/Win64编程”版版主(网名:北极星2003)。曾获第31届ACM/ICPC国际大学生程序设计竞赛亚洲赛区(上海)银奖。他追求专业技术的精纯,常为工作、为兴趣废寝忘食。
.. << 查看详细
.. << 查看详细
目录回到顶部↑
第一篇 软件设计基础篇
第1章 软件开发起步
1.1 建立mfc应用程序
1.2 分析框架结构
1.2.1 框架代码文件的结构
1.2.2 应用程序类
1.2.3 对话框类
1.2.4 添加消息响应
第2章 对话框应用程序
2.1 模态对话框
2.1.1 实例:使用mfc实现模态对话框
2.1.2 实例:使用win32api实现模态对话框
2.2 非模态对话框
2.2.1 实例:使用mfc实现非模态对话框
2.2.2 实例:使用win32api实现非模态对话框
2.3 属性对话框
2.3.1 实例:多页面切换程序
2.3.2 实例:向导对话框
2.4 对话框设计技巧
2.5 通用对话框
第1章 软件开发起步
1.1 建立mfc应用程序
1.2 分析框架结构
1.2.1 框架代码文件的结构
1.2.2 应用程序类
1.2.3 对话框类
1.2.4 添加消息响应
第2章 对话框应用程序
2.1 模态对话框
2.1.1 实例:使用mfc实现模态对话框
2.1.2 实例:使用win32api实现模态对话框
2.2 非模态对话框
2.2.1 实例:使用mfc实现非模态对话框
2.2.2 实例:使用win32api实现非模态对话框
2.3 属性对话框
2.3.1 实例:多页面切换程序
2.3.2 实例:向导对话框
2.4 对话框设计技巧
2.5 通用对话框
前言回到顶部↑
Windows操作系统是一种广泛认可的操作系统,凭借庞大的用户群体和良好的用户体验,一直占据着操作系统领域的主导地位。本书以Windows下系统程序设计技术为主,应用软件开发为辅,向读者展示Windows的系统机制。.
本书内容安排
本书设计了大量的实例演示Windows应用程序开发过程中的相关技术,分为3篇。
软件设计基础篇
·第1章,软件开发起步:编写第一个软件,熟悉MFC应用程序框架。
·第2章,对话框应用程序:熟悉模态、非模态对话框以及通常对话框的原理与使用方法。
·第3章,基本控件:介绍按钮、编辑框、列表框等基本控件的使用方法。
·第4章,文档与视图:介绍文档与视图的基本原理。
·第5章,GDI绘图技术:介绍GDI绘图技术的基本的GDI对象。
·第6章,键盘与鼠标消息:介绍键盘、鼠标消息的处理与模拟。
软件设计综合应用篇
第7章,网络通信基础:介绍网络模型、协议以及套接字编程和LSP的实现。
第8章,密码学算法:介绍常见的密码学算法及其实现。
第9章,多媒体技术:介绍几种多媒体控件的使用方式和屏幕截图、录像的实现。
第10章,数据库技术:介绍MFC ODBC和DAO基本使用方法。
第11章,综合实例开发:实现多个具有趣味性的实例。
Windows系统程序设计篇
第12章,进程与线程:介绍进程与线程的原理及其基本应用。
第13章,内存管理:介绍虚拟内存与内存映射两种内存管理机制。
第14章,进程间通信:介绍共享内存、管道等进程间通信方式的原理与实现方法。..
本书内容安排
本书设计了大量的实例演示Windows应用程序开发过程中的相关技术,分为3篇。
软件设计基础篇
·第1章,软件开发起步:编写第一个软件,熟悉MFC应用程序框架。
·第2章,对话框应用程序:熟悉模态、非模态对话框以及通常对话框的原理与使用方法。
·第3章,基本控件:介绍按钮、编辑框、列表框等基本控件的使用方法。
·第4章,文档与视图:介绍文档与视图的基本原理。
·第5章,GDI绘图技术:介绍GDI绘图技术的基本的GDI对象。
·第6章,键盘与鼠标消息:介绍键盘、鼠标消息的处理与模拟。
软件设计综合应用篇
第7章,网络通信基础:介绍网络模型、协议以及套接字编程和LSP的实现。
第8章,密码学算法:介绍常见的密码学算法及其实现。
第9章,多媒体技术:介绍几种多媒体控件的使用方式和屏幕截图、录像的实现。
第10章,数据库技术:介绍MFC ODBC和DAO基本使用方法。
第11章,综合实例开发:实现多个具有趣味性的实例。
Windows系统程序设计篇
第12章,进程与线程:介绍进程与线程的原理及其基本应用。
第13章,内存管理:介绍虚拟内存与内存映射两种内存管理机制。
第14章,进程间通信:介绍共享内存、管道等进程间通信方式的原理与实现方法。..
书摘回到顶部↑
第1章软件开发起步
从程序设计转化为软件设计,这是激动人心的时刻。这里面对的不再是黑色的、单调的控制台界面,而是一个崭新的环境。各种功能强大、界面漂亮的软件,将从你的手中诞生。软件开发的第一步是熟悉开发环境。本章将会介绍软件基本的开发框架,并对这个框架进行详细的介绍。
1.1建立MFC应用程序
本节主要介绍如何使用MFC框架生成默认的对话框软件。作为第一个软件,很简单,也不用添加任何代码,权当练手,熟悉一下开发环境。
启动Visual Studi0 2005后,首先需要新建项目,开发环境会针对特定的项目类型生成相应的框架代码。可以使用菜单命令“文件一新建一项目”,也可以直接使用快捷键Ctrl+Shift+N。打开“新建项目”对话框,如图1—1所示。
……
从程序设计转化为软件设计,这是激动人心的时刻。这里面对的不再是黑色的、单调的控制台界面,而是一个崭新的环境。各种功能强大、界面漂亮的软件,将从你的手中诞生。软件开发的第一步是熟悉开发环境。本章将会介绍软件基本的开发框架,并对这个框架进行详细的介绍。
1.1建立MFC应用程序
本节主要介绍如何使用MFC框架生成默认的对话框软件。作为第一个软件,很简单,也不用添加任何代码,权当练手,熟悉一下开发环境。
启动Visual Studi0 2005后,首先需要新建项目,开发环境会针对特定的项目类型生成相应的框架代码。可以使用菜单命令“文件一新建一项目”,也可以直接使用快捷键Ctrl+Shift+N。打开“新建项目”对话框,如图1—1所示。
……
评论交流
共有41人开贴评论 49人参与评论 36人参与打分 查看
评价等级:

发表于:2008-6-8 13:25:00
老实说,买这本书是冲着北极星去的,北极星的技术,在看雪论坛上毋庸置疑。但是对于这本书,我不得不说两句。、
首先,本书的定位太模糊了,其中的很多内容,对于初学者来说,太难,但是对于有一定基础的人来说,又太冗余拖沓,定位太模糊。
其次,书名叫windows编程,作者想要写的东西太多了,所以犯了浅尝辄止的毛病,很多内容就短短的几页纸,比如DLL编程,说得实在是太简单了,基本上没有多大的价值和意义。而有些东西,个人认为完全不必要放到书里面,比如加密算法这一章,占了很大的篇幅,这样的内容与主题完全无关,还不如把其他的一些章节充实。
最后,以这本书的厚度和深度,我想价格是稍微贵了一点。
做此评论,自认为是没有带任何偏见,仅仅是个人对本书的一点看法。
首先,本书的定位太模糊了,其中的很多内容,对于初学者来说,太难,但是对于有一定基础的人来说,又太冗余拖沓,定位太模糊。
其次,书名叫windows编程,作者想要写的东西太多了,所以犯了浅尝辄止的毛病,很多内容就短短的几页纸,比如DLL编程,说得实在是太简单了,基本上没有多大的价值和意义。而有些东西,个人认为完全不必要放到书里面,比如加密算法这一章,占了很大的篇幅,这样的内容与主题完全无关,还不如把其他的一些章节充实。
最后,以这本书的厚度和深度,我想价格是稍微贵了一点。
做此评论,自认为是没有带任何偏见,仅仅是个人对本书的一点看法。
评价等级:







发表于:2008-6-18 13:21:00
不好意思,我上次的评论,纯粹是站在我个人的角度而言,有失偏颇。
现在技术好、又愿意花大量的时间来贡献自己想法的人,实在是不多了,而北极星就是这样一个人,在论坛上每次都发了很高质量的帖子,也许做这些事情,花5分钟就能搞定,但是要完全用文字描述表达出来,要花费作者大量的心血。
写书也是一样,其中的例子,信手拈来,但是真正要做到深入浅出,让读者都明白,也需要作者花费大量的精力和时间,在这里要向北极星致敬。
至于这本书,我想是值得肯定的!特别是那些想从事WINDOWS编程,又有一些其他开发经验的人,是一本很好的引领教材。
但我仍然还是想给作者提出一点建议,那就是加密算法的篇章。我很同意作者的观点,那就是算法是程序的灵魂和基础,作者本人也是算法方面的高手。但是作者如果要在书里加入算法,选择加密这点,恐怕有失妥当,因为加密算法,不仅仅是算法的问题,而且还涉及到密码学的一些相关内容,让会让初学者望而生畏,所以是否考虑再版的时候,能够减少这些篇幅,转而增加其他的内容。
总之,作者花费了大量的心血,铸成了这部力作,表示祝贺,希望大家多支持北极星,也希望北极星能够带来更好的作品!
现在技术好、又愿意花大量的时间来贡献自己想法的人,实在是不多了,而北极星就是这样一个人,在论坛上每次都发了很高质量的帖子,也许做这些事情,花5分钟就能搞定,但是要完全用文字描述表达出来,要花费作者大量的心血。
写书也是一样,其中的例子,信手拈来,但是真正要做到深入浅出,让读者都明白,也需要作者花费大量的精力和时间,在这里要向北极星致敬。
至于这本书,我想是值得肯定的!特别是那些想从事WINDOWS编程,又有一些其他开发经验的人,是一本很好的引领教材。
但我仍然还是想给作者提出一点建议,那就是加密算法的篇章。我很同意作者的观点,那就是算法是程序的灵魂和基础,作者本人也是算法方面的高手。但是作者如果要在书里加入算法,选择加密这点,恐怕有失妥当,因为加密算法,不仅仅是算法的问题,而且还涉及到密码学的一些相关内容,让会让初学者望而生畏,所以是否考虑再版的时候,能够减少这些篇幅,转而增加其他的内容。
总之,作者花费了大量的心血,铸成了这部力作,表示祝贺,希望大家多支持北极星,也希望北极星能够带来更好的作品!
评价等级:







发表于:2008-6-11 22:39:00
本书要求读者有一定的C/C 语言基础,基础越扎实,学习本书就越轻松。
写这本书的目标,是希望初学者能够在最短的时间里尽快的成长起来。书中的每个例子,都是我自己成长过程中的一个脚印,经过提炼总结而成。在本书中我并没有详细介绍本书的学习流程,以及本书结构的设计思路,因为我不太想把自己的思路呈现的太过绝对化。毕竟我的学习方法和思路并不会适合于每一位读者。
但这里我还是觉得有必要说明一下。
(1)第一篇就是为初学者量身定做的,如果把这一篇6章的所以DEMO都跟着做一遍的话,估计不用一个星期就可以入门了。我不建议初学者直接去啃WIN32,一开始那里面有太多概念,很多都涉及操作系统原理,例如消息传递机制,对于初学者来说,这些都是难点。即便勉强记住了,很快也就会忘记,因为毕竟无法深刻理解。
(2)第二篇主要目标是提出一些趣味性比较强的目标,运用已经掌握的技术去实现,不仅能够提高能力,又能感受到趣味,保持一个良好的学习状态。每一部分的内容都比较基础,希望通过多个不同方面的技术引起读者的学习兴趣。在内容方面都没有进行过多深入的探讨。
(3)这部分是本书的重心,是关于windows核心编程方面的内容。我把一些比较重要且常用的技术进行了总结归类,并设计了特定的DEMO。因而几乎每一个DEMO都是能够非常直观地体现相应地技术。
这其实也是我自己当初学习的三个阶段,我并没有在书中明确。
“noicy”提到了浅尝辄止的毛病。浅尝辄止,确实如此,限于篇幅确实很难做到面面具到,相信本书在今后还有许多需要改进调整的地方。但若说加密算法这一章没有必要,我却不敢苟同。
加密算法,是很能够考验程序设计功底的一个事。介绍这部分,我的主要目标不是介绍算法本身,因为这些算法都是固定的,没什么介绍的必要。主要目标是希望读者能够根据这些算法去自己实现,从而达到锻炼的目标。我在大学是ACM出身的,多练算法无论对于思维还是程序设计能力都是很大帮助的。如果在基础程序设计中,写的程序少于400个的朋友,我希望你们保持一个良好的学习心态。因为不经意间产生的浮躁,可能会严重影响今后发展的潜力。一句话总结,这里我比较强调算法的重要性。
正如“noicy”所说的,本书
写这本书的目标,是希望初学者能够在最短的时间里尽快的成长起来。书中的每个例子,都是我自己成长过程中的一个脚印,经过提炼总结而成。在本书中我并没有详细介绍本书的学习流程,以及本书结构的设计思路,因为我不太想把自己的思路呈现的太过绝对化。毕竟我的学习方法和思路并不会适合于每一位读者。
但这里我还是觉得有必要说明一下。
(1)第一篇就是为初学者量身定做的,如果把这一篇6章的所以DEMO都跟着做一遍的话,估计不用一个星期就可以入门了。我不建议初学者直接去啃WIN32,一开始那里面有太多概念,很多都涉及操作系统原理,例如消息传递机制,对于初学者来说,这些都是难点。即便勉强记住了,很快也就会忘记,因为毕竟无法深刻理解。
(2)第二篇主要目标是提出一些趣味性比较强的目标,运用已经掌握的技术去实现,不仅能够提高能力,又能感受到趣味,保持一个良好的学习状态。每一部分的内容都比较基础,希望通过多个不同方面的技术引起读者的学习兴趣。在内容方面都没有进行过多深入的探讨。
(3)这部分是本书的重心,是关于windows核心编程方面的内容。我把一些比较重要且常用的技术进行了总结归类,并设计了特定的DEMO。因而几乎每一个DEMO都是能够非常直观地体现相应地技术。
这其实也是我自己当初学习的三个阶段,我并没有在书中明确。
“noicy”提到了浅尝辄止的毛病。浅尝辄止,确实如此,限于篇幅确实很难做到面面具到,相信本书在今后还有许多需要改进调整的地方。但若说加密算法这一章没有必要,我却不敢苟同。
加密算法,是很能够考验程序设计功底的一个事。介绍这部分,我的主要目标不是介绍算法本身,因为这些算法都是固定的,没什么介绍的必要。主要目标是希望读者能够根据这些算法去自己实现,从而达到锻炼的目标。我在大学是ACM出身的,多练算法无论对于思维还是程序设计能力都是很大帮助的。如果在基础程序设计中,写的程序少于400个的朋友,我希望你们保持一个良好的学习心态。因为不经意间产生的浮躁,可能会严重影响今后发展的潜力。一句话总结,这里我比较强调算法的重要性。
正如“noicy”所说的,本书
评价等级:







发表于:2008-6-18 9:43:00
笔者:在浅水中游戈的小虾
该书出来有些时候了,前些天笔者获得了该书,利用空闲的时间对本书总体的浏览了一遍。从内容上看,本书以MFC类库作为开发环境,作为以MFC为开发语言的读者来说,这是一个不错的消息,该书循序渐进的讲述了MFC类库的基础用法、应用程序的开发和Windows系统程序的设计。全书的内容被划分为三大篇章。
第一篇章主要讲述MFC的各种基础类库的基本用法,其中内容包括MFC的基本框架、对话框应用程序、基本控件的用法、文档与视图的操作、GDI绘图等MFC类库的使用和键盘与鼠标的消息处理,通过这一篇章可以让读者快速的掌握到MFC各种基础类库的操作与应用。
第二篇章讲述了软件的应用开发,内容包括了网络通信、密码学算法、多媒体技术和数据库的应用。本篇章的特点是在最后一章节中以实例进行讲解开发应用,让读者更能体会到理论与实践的运用。
第三篇章讲述了Windows系统程序的设计,也是本书的重点讲述的内容、其中内容包括进程与线程的运用、内存的管理、进程间的通信、线程的同步、动态链接库的运用、结构化异常的处理、可执行文件PE的格式和模块间的注入与函数的挂接技术,通过这篇章的学习,可以更能理解系统的运作,为以后的应用程序开发打下坚实的基础。
作为一本技术性的书籍,贯穿全文笔者比较欣赏的是本书图文并茂,代码有详细的注释,并详细的讲解了开发过程的原理和开发步骤,每一小节后面都附有精短的实例代码进行讲解,由浅至深,让人看上去一目了然,从中可以看出作者对本书倾注了不少的心血。
吴海淘,看雪论坛win32/win64版主
该书出来有些时候了,前些天笔者获得了该书,利用空闲的时间对本书总体的浏览了一遍。从内容上看,本书以MFC类库作为开发环境,作为以MFC为开发语言的读者来说,这是一个不错的消息,该书循序渐进的讲述了MFC类库的基础用法、应用程序的开发和Windows系统程序的设计。全书的内容被划分为三大篇章。
第一篇章主要讲述MFC的各种基础类库的基本用法,其中内容包括MFC的基本框架、对话框应用程序、基本控件的用法、文档与视图的操作、GDI绘图等MFC类库的使用和键盘与鼠标的消息处理,通过这一篇章可以让读者快速的掌握到MFC各种基础类库的操作与应用。
第二篇章讲述了软件的应用开发,内容包括了网络通信、密码学算法、多媒体技术和数据库的应用。本篇章的特点是在最后一章节中以实例进行讲解开发应用,让读者更能体会到理论与实践的运用。
第三篇章讲述了Windows系统程序的设计,也是本书的重点讲述的内容、其中内容包括进程与线程的运用、内存的管理、进程间的通信、线程的同步、动态链接库的运用、结构化异常的处理、可执行文件PE的格式和模块间的注入与函数的挂接技术,通过这篇章的学习,可以更能理解系统的运作,为以后的应用程序开发打下坚实的基础。
作为一本技术性的书籍,贯穿全文笔者比较欣赏的是本书图文并茂,代码有详细的注释,并详细的讲解了开发过程的原理和开发步骤,每一小节后面都附有精短的实例代码进行讲解,由浅至深,让人看上去一目了然,从中可以看出作者对本书倾注了不少的心血。
吴海淘,看雪论坛win32/win64版主
评价等级:







发表于:2008-6-18 9:35:00
我自己是一名程序员,比较喜好c/c 和汇编以及操作系统方面的书,这么多年来,读了不少书,也收藏了不少书。
目前市场上关于c/c 的书很多,但是选择一本适合初学的书,还是挺难的。有一些书偏重理论,读的过程中,会感觉比较枯燥,没有引人入胜的感觉,更不会让读者拍案叫好。这些书的作者多数是来自于高校的老师,语言也往往比较生硬乏味。
而在我看来,学习计算机编程,实际上应该是先由感性认识,然后再上升到理性认识的一个过程。是一个遇到问题解决问题的过程,是一个不断总结和积累的过程。这个过程中需要大量的实践。也就是说,只有书的作者亲自经历了这个过程,然后通过书的形式,来把自己的心得体会写出来与大家分享的话,我觉得就是一本好书。例如:罗云彬的win32汇编,梁肇新的编程高手等等。这些书之所以受到大家的欢迎,相信最重要的原因就是作者在写这本书之前,经历了大量的实践。因此他们写的书就比较生动,容易引人入胜。
《Windows编程循序渐进》一书的作者经过长期的从业经历,大量的实践。用生动的语言,娓娓道来。因此在读本书的过程,你会感到既轻松又愉快,又学有所获。通过这本书,可以让初学者少走弯路,能够在书的字里行间体味出作者的成长经历。是一本值得收藏的好书。
2008/06/06
| 我要写评论 |
| 查看所有评论交流(共41条) |


点击看大图





加载中...
