- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 3 章 开发Windows应用程序的技术基础 本章主要目的是向读者介绍编写Windows应用程序所采用的基本技术, 约定和惯例,API的结构与基本用法等作了介绍,对Windows应用程序的各个组成部分也作了初步介绍,并用框图的形式介绍Windows应用程序的工作原理 3.1 应用程序的结构与编译 解决多任务的关键是:控制核心应该从程序本身转移到Windows操作系统。应该由Windows操作系统决定那个应用程序可以占用CPU时间,程序的结构也不再是过程式程序中的赋值、循环、分支等C语言中常见的结构,而是消息,处理。为了解决这个问题,应用程序采用一种称为”事件驱动结构”是合适的。所谓非抢占式是指一旦这个应用程序取得了执行权,就一直要把这个程序执行下去,除非遇到新的消息来干预。否则,其他程序没有办法执行。如果把非抢占式和”事件驱动结构相结合,那就是Win16操作系统下的应用程序。 3.1.1 Windows应用程序的结构和C语言程序结构的比较 请见Windows应用程序的结构和C语言程序结构的比较 C语言程序的主体结构是 Main() { ………… } 定义函数1 定义函数2 。 定义函数n C语言程序的主体结构是主函数Main和一些函数定义所组成。 而Windows应用程序的结构可以用下面的框图来表示。 WinMain Windows Function 图3-1 Windows应用程序的结构有两个函数所组成,一个是WinMain函数,另一个称为窗口函数,又称窗口消息处理程序。 3.1.2 Windows应用程序的编译和C语言程序编译的比较 C语言的编译图示 (请见教材程序\3\C语言的编译用图表示如下.doc Windows应用程序编译图示(请见教材程序\3\Windows应用程序编译系统.doc). Windows应用程序编译系统工作步骤(请见教材程序\3\编译系统的工作过程.doc)。 编译应用程序所需的六个基本文件 什么资源文件与资源描述文件(.RC)?在编译中的作用? 模块定义文件(.DEF)的结构(请见教材程序\3\模块定义文件.doc)和在编译中的作用? 头文件(.H)的作用? WINDOWS.H头文件 (请见教材程序\3\WINDOWS.H头文件.doc)。 WINDEF.H头文件(请见教材程序\3\WINDEF.头文件.doc)。 项目文件(.MAKE)在编译中的作用? 3.2 Windows 应用程序设计接口(API) 学习API的重要性。 简要介绍两种API。 每个API主要有哪三个文件(请见教材程序\3\三个核心API组件.doc)。 每个文件的作用。 3.3 标识符的匈牙利命名惯例 为什么此惯例称为匈牙利命名惯例。 匈牙利命名惯例的两条约定。 要熟悉很多习惯用法。例如WPARAM和LPARAM 是习惯用法。 按照匈牙利命名惯例常用变量的字首(请见教材程序\3\常用变量的字首.doc 3.4 事件驱动程序设计 什么是事件驱动程序设计,它与传统程序设计有什么区别。 解释图3-4的工作原理(请见教材程序\3\事件驱动程序的工作原理.doc)。 消息与消息处理是实现事件驱动的关键。 3.5 动态链结和动态链结库 静态连接和动态连接的基本概念。 如何进行链结。 如何建立DLL文件请见其他有关文章和书籍。 3.6 PASCAL与WINAPI调用规范 什么是C调用规范。 Win 16中的PASCAL调用规范(_cdecl )。 Win 32中的PASCAL调用规范(_stdcall )。 Win32中的WINAPI调用规范(_stdcall ) 。 比较C,_cdecl ,_stdcall 三种调用规范。 调用规范的同义词(请见教材程序\3\调用规范的同义词.doc)。 3.7 Windows应用程序的工作原理 句柄与代号 。 單一应用程序情况下输入消息的获得与处理(请见教材程序\3\單一应用程序情况.doc) 。 消息循环程序及其解释(请见教材程序\3\消息循环.doc)。 应用程序的结束(请见教材程序\3\应用程序的结束.doc)。 窗口类的作用及其用法初步 3.8 窗口类的作用及其用法初步 每个Windows应用程序(或进程)都要有一个窗口,每个窗口代表一个应用程序。 窗口类结构与窗口类是不同又有联系的概念。 应用程序建立窗口的大概过程。 练习 3 1. 16位和 32位Windows 操作系统对应用程序的支持有什么不同? 2. Windows应用程序的编译和C语言程序编译有什么不同? 3. 资源描述
文档评论(0)