Windows程序内部运行机制笔记

Windows程序内部运行机制

1.Windows程序设计是一种完全不同于传统的的DOS方式的程序设计方法。它是一种事件驱动的方式的程序设计模式,主要是基于消息的。
eg.当用户在窗口中画图时的时候,按下鼠标左键,此时,操作系统会感知到这一事件,于是将事件包装成一个消息,投递到应用程序的消息队列中,然后应用程序从消息队列中取出消息并进行响应。在这个处理过程中,操作系统也会给应用程序”发送消息”。所谓”发送消息”,实际上是操纵系统调用程序中一个负责处理消息的函数,这个函数称为窗口过程

2.Windows操作系统提供了各种各样的函数,这些函数是Windows操作系统提供给应用程序编程的接口(Application Programming Interface),简称为API函数

3.SDK(Software Development Kit):软件开发包

4.一个完整的Win32程序,该程序实现的功能是创建一个窗口,并在该窗口中响应键盘及鼠标消息。程序实现的步骤为:
1)WinMain函数的定义
2)创建一个窗口
3)进行消息循环
4)编写窗口过程函数

5.创建一个完整的窗口,需要经过下面几个操作步骤:
1)编写WInMain函数,可以在MSDN上查找并复制
2)设计一个窗口类(WNDCLASS)
3)注册窗口类
4)创建窗口
5)显示及更新窗口
6)编写消息循环
7)编写窗口过程函数

6.回调函数的实现机制是:
1)定义一个回调函数
2)提供函数实现的一方在初始化的时候,将回调函数的函数指针注册给调用者
3)当特定的事件或条件发生的时候,调用者使用函数指针调用回调函数对事件进行处理

7.针对Windows的消息处理机制,窗口过程函数被调用的过程如下:
1)在设计窗口类的时候,将窗口过程函数的地址赋值给lpfnWndProc成员变量(lprnWndProc是一个函数指针,指向窗口过程函数,窗口过程函数是一个回调函数。)
2)调用RegisterClass(&wndclass)注册窗口类,那么系统就有了我们所编写的窗口过程函数的地址
3)当应用程序接收到某一窗口的消息时,调用DispatchMessage(&msg)将消息回传给系统。系统则利用先前注册窗口类时得到的函数指针,调用窗口过程函数的地址

8.要在窗口中输出文字或者显示图形,需要用到设备描述表(Device Context),简称DC。DC是一个包含设备(物理输出设备,如显示器,以及设备驱动程序)信息的结构体,在Window平台下,所有的图形操作都是利用DC来完成的。

(上述笔记来自于《VC++深入详解》)

猜你喜欢

转载自blog.csdn.net/lxjstudyit/article/details/52790607