**
前言
**
许多人在刚开始接触Windows编程时,或从VB开始,或从MFC开始,这使得大家虽然写出了程序,但自己都不知道程序是如何运行的,从而造成写程序“容易”修改难、设计程序“容易”维护难的状况。本书是为Windows程序设计入门的初学者和想从根本上提高自己编程水平的爱好者编写的,试图为他们提供一条由入门到深入、由简单到复杂的编程设计之路。
API函数是Windows系统提供给应用程序的编程接口,任何用户应用程序必须运行在API函数之上。直接使用API编程是了解操作系统运行细节的最佳方式,而且熟知API函数也是对程序开发者的一个最基本的要求。本书将以API函数作为起点介绍Windows编程,这样做的好处是使读者撇开C++的特性专心熟悉Win32编程思路和消息驱动机制。
但是,在开发大型系统的时候,我们往往并不完全直接使用API函数,而是使用MFC类库框架程序。MFC对90%以上的API函数进行了面向对象化包装,完全体现了对象化程序设计的特点,是时下最流行的一个类库。
当读者熟悉最基本的API函数编程以后,就可以学习更高级的MFC编程了。虽然MFC仅仅是对API函数的简单封装,但由于读者对C++语言的了解不够,不清楚框架程序的工作机制,即便是有经验的程序员在MFC复杂的结构面前也显得非常困惑。他们会“用”MFC,却不知道为什么这么“用”,在写的程序出错时这种现象带来的问题就很明显了,他们不会改。
这种只会“用”的知识层次不能够达到现实的要求,因为在面对一个大的项目的时候,代码往往需要手工添加和修改,而很少能够依靠VC++的向导。为此,本书将从开发者的角度同读者一起来设计MFC中的类、函数和宏定义。通过对MFC类库的分析和了解,读者不仅能够更好地使用MFC类库,同时,对于自己设计和实现框架和类,无疑也有相当大的帮助。
本书后面讲述了Windows系统编程中当前最为热门的话题——DLL注入技术、远程进程技术、HOOK API技术等,并配有完整而具体的实例。
本书还讨论了Windows内核驱动程序设计和防火墙开发。这对于全面了解Windows操作系统的结构体系,学习独立开发应用软件是非常有帮助的。
目录
**[第6章 框架中的窗口
6.1 CWnd类的引出](https://yq.aliyun.com/articles/102432)**
6.2 窗口句柄映射
6.2.1 向CWnd对象分发消息
6.2.2 消息的传递方式
6.3 创建窗口
6.3.1 窗口函数
6.3.2 注册窗口类
6.3.3 消息钩子
6.3.4 最终实现
6.3.5 创建窗口的例子
6.4 消息映射
6.4.1 消息映射表
6.4.2 DECLARE_MESSAGE_MAP等宏的定义
6.5 消息处理
6.5.1 使用消息映射宏
6.5.2 消息的分发机制
6.5.3 消息映射应用举例
6.6 使用Microsoft基础类库
6.7 【实例】窗口查看器
6.7.1 窗口界面
6.7.2 获取目标窗口的信息
6.7.3 自制按钮