Windows SDK 编程方式的问题
Windows SDK 编程的一般步骤为:
1. 注册窗口类, 使用到的结构 WNDCLASSEX, 函数 RegisterClassEx.
2. 创建窗口, 函数 CreateWindowEx.
3. 消息循环, 结构 MSG, 函数 GetMessage, TranslateMessage, DispatchMessage.
4. 进入无限循环, 消息处理 :-)
每一级窗口(或菜单)都是这样的:
1. 注册窗口类, 使用到的结构 WNDCLASSEX, 函数 RegisterClassEx.
2. 创建窗口, 函数 CreateWindowEx.
3. 消息循环, 结构 MSG, 函数 GetMessage, TranslateMessage, DispatchMessage.
4. 进入无限循环, 消息处理 :-)
窗口多了,窗口中的消息多了,会不会影响系统的稳定性? 如何理顺这种关系呢?
[解决办法]
合理的划分模块,消息不怕多,就怕乱
[解决办法]
消息循环并不等于是while(1)这样的循环, 因为你会发现它并不会像while(1)这样的死循环一样, 占用30%以上的CPU.
windows就是基于消息的, 所以你不用担这个问题.
[解决办法]
程序设计不当消耗了大量了cpu导致死机是有可能的!
所以理清楚各个消息控制就好,思路清楚!
[解决办法]
这个说法不完全正确
每一级窗口(或菜单)都是这样的:
1. 注册窗口类, 使用到的结构 WNDCLASSEX, 函数 RegisterClassEx.//每个窗口类都需要,但不是每个窗口需要
2. 创建窗口, 函数 CreateWindowEx.//每个窗口需要
3. 消息循环, 结构 MSG, 函数 GetMessage, TranslateMessage, DispatchMessage.
4. 进入无限循环, 消息处理 :-)
//3,4:每个线程需要,每个线程的所有窗口共用一个消息循环
[解决办法]
GDI32/USER32 还要存在一阵子